KR101481906B1 - System and method for preserving location data privacy in outsource database - Google Patents

System and method for preserving location data privacy in outsource database Download PDF

Info

Publication number
KR101481906B1
KR101481906B1 KR1020130090761A KR20130090761A KR101481906B1 KR 101481906 B1 KR101481906 B1 KR 101481906B1 KR 1020130090761 A KR1020130090761 A KR 1020130090761A KR 20130090761 A KR20130090761 A KR 20130090761A KR 101481906 B1 KR101481906 B1 KR 101481906B1
Authority
KR
South Korea
Prior art keywords
data
hai
tdi
encrypted
terminal
Prior art date
Application number
KR1020130090761A
Other languages
Korean (ko)
Inventor
홍승태
장미영
김형일
윤민
장재우
Original Assignee
전북대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전북대학교산학협력단 filed Critical 전북대학교산학협력단
Priority to KR1020130090761A priority Critical patent/KR101481906B1/en
Application granted granted Critical
Publication of KR101481906B1 publication Critical patent/KR101481906B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present invention relates to a system and method for preserving location data privacy in an outsourcing database. The system includes: a service providing server configured to store and provide encrypted Hilbert aggregation index (HAI) and transformed data index (TDI); a data storing terminal configured to generate and encrypt an HAI and a TDI corresponding to location data using the Hilbert curve, to upload the encrypted HAI and TDI to the service providing server, and to generate and provide a decryption key corresponding to the encrypted HAI and TDI; and a data using terminal configured to access the data storing terminal to obtain the decryption key, to access the service providing server to obtain the encrypted HAI and TDI, and to decrypt the encrypted HAI and TDI using the decryption key to identify location data corresponding to a query region.

Description

아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템 및 방법{SYSTEM AND METHOD FOR PRESERVING LOCATION DATA PRIVACY IN OUTSOURCE DATABASE}[0001] SYSTEM AND METHOD FOR PRESERVING LOCATION DATA PRIVACY IN OUTSOURCE DATABASE [0002]

본 발명은 아웃소싱 데이터베이스에 관한 것으로, 더욱 상세하게는 위치 데이터를 보다 안전하고 효율적으로 제공하기 위한 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템 및 방법에 관한 것이다. The present invention relates to an outsourcing database, and more particularly, to a system and method for maintaining location data privacy in an outsourcing database for providing location data more securely and efficiently.

최근 클라우드 컴퓨팅에 대한 관심이 증가됨에 따라 클라우드 컴퓨팅 환경을 기반으로 한 아웃소싱 데이터베이스(outsourced database)에 대한 연구가 활발히 진행되고 있다. Recently, research on outsourced databases based on cloud computing environment has been actively conducted as interest in cloud computing has increased.

아웃소싱 데이터베이스는 데이터 소유자가 자신의 핵심 역량에 집중하기 위해서, 자신이 소유하고 있는 데이터, 하드웨어, 소프트웨어 등의 시스템 관련자원 및 관리를 서비스 제공자에게 위탁하는 것을 말한다. 이러한 아웃소싱 데이터베이스는 개인 또는 회사가 IT 정보 서비스와 관련한 경험이 부족하다 할지라도, 적은 비용으로 데이터를 관리하기 용이하도록 지원해준다는 강점을 보인다. The outsourcing database refers to the data owner entrusting the service provider with the system related resources and management of data, hardware, and software that he owns in order to concentrate on his core competency. This outsourcing database has the advantage of being able to manage data at a low cost, even if the individual or company lacks experience with IT information services.

한편, 최근 GPS가 장착된 모바일 기기들이 빠르게 보급됨에 따라, 이를 이용한 위치 기반 서비스가 확산되고 있다. 위치기반 서비스(LBS: Location-Based Services)란 사용자의 위치정보를 바탕으로 부가적인 서비스를 제공하는 것을 말한다. 위치기반 서비스는 사용자의 위치를 기반으로 한 교통 정보, 친구 찾기, 인접한 위치 데이터(예를 들어, 레스토랑, 병원, 쇼핑몰 등) 검색, 상품 홍보 등의 서비스를 포함하는 데, 이러한 위치기반 서비스는 그 응용 분야가 넓어짐에 따라 사용자가 증가하는 추세를 보이고 있으며, 특히 SNS(Social Network Service)와 연계한 서비스가 등장함에 따라 생성되는 데이터양이 급증하고 있다. 이로 인해 위치기반 서비스를 위한 위치 데이터베이스의 아웃소싱 요구가 증가하고 있다. Meanwhile, as mobile devices equipped with GPS are rapidly spreading, location-based services using the devices are spreading. Location-based services (LBS) refers to providing additional services based on user's location information. The location-based service includes services such as traffic information based on the user's location, finding a friend, searching for adjacent location data (for example, restaurants, hospitals, shopping malls), and promoting products. As the application field becomes wider, the number of users is increasing. Especially, the amount of data generated due to the emergence of services linked with SNS (Social Network Service) is increasing rapidly. As a result, there is an increasing demand for outsourcing location databases for location based services.

하지만 이러한 위치 데이터베이스를 가공 없이 아웃소싱할 경우 이하의 문제점들이 발생한다. 첫 번째, 위치 데이터베이스는 데이터 소유자에게 있어 소중한 자산이기 때문에, 이를 그대로 제 3자에게 아웃소싱하는 것은 바람직하지 않다. 또한, 이러한 경우, 위치기반 서비스 사용자는 서비스를 제공받기 위해 자신의 실제 위치를 포함한 질의를 제 3자에게 전송해야 하는 데, 해당 정보가 통신 상에서 공격자에게 노출되거나 서비스 제공자가 악의적인 목적으로 해당 정보를 악용할 경우, 사용자가 자주 방문하는 장소 및 해당 장소를 방문하는 시간 등을 파악할 수 있게 됨으로써 개인의 사생활이 침해되는 문제가 발생할 수 있다. However, the following problems arise when outsourcing such a location database without processing. First, because the location database is a valuable asset to the data owner, it is not desirable to outsource it to a third party. In this case, the location-based service user must transmit a query including the actual location of the user to the third party in order to receive the service. If the information is exposed to the attacker in the communication or the service provider maliciously It is possible to grasp the place where the user frequently visits and the time when the user visits the place, thereby causing a problem that the personal privacy of the individual is violated.

이에 아웃소싱 데이터베이스에서 위치 데이터를 보호하기 위한 연구가 진행되고 있으며, 이는 크게 공간 좌표 변환 기법과 암호화 변환 기법으로 나눠진다. Therefore, researches are being conducted to protect position data in outsourcing databases, which are divided into spatial coordinate transformation and encryption transformation.

공간 좌표 변환 기법은 좌표 평면의 평행 이동, 데이터 분포 변환, 에러 삽입 등을 기반으로 위치 데이터의 좌표를 변환하는 것이다. 그러나 이러한 공간 좌표 변환 기법은 노출된 원본 데이터 및 변환된 데이터 쌍을 이용하여 좌표 변환에 사용된 수식을 용이하게 유도할 수 있다는 단점이 존재한다. 또한, 인접한 위치 데이터들간의 변환 거리가 유사하다는 특징으로 인해, 노출된 데이터로부터 인접한 데이터들의 실제 위치를 대략적으로 유추할 수 있는 문제점도 존재한다. The spatial coordinate transformation scheme transforms coordinates of position data based on parallel movement of coordinate plane, data distribution transformation, error insertion, and the like. However, there is a disadvantage that such a spatial coordinate transformation technique can easily derive the mathematical expression used in the coordinate transformation using the exposed original data and the converted data pair. Also, since the conversion distance between adjacent position data is similar, there is a problem that the actual position of adjacent data can be roughly deduced from the exposed data.

한편, 암호화 변환 기법은 DSA(Digital Signature Algorithm) 전자 서명 알고리즘, AES(Advanced Encryption Standard) 암호화 알고리즘 등을 기반으로 위치 데이터를 암호화함으로써 상기와 같은 공간 좌표 변환 기법의 문제점들을 해결하였다. On the other hand, the encryption conversion technique solves the problems of the space coordinate transformation technique by encrypting the position data based on DSA (Digital Signature Algorithm) digital signature algorithm and AES (Advanced Encryption Standard) encryption algorithm.

그러나 암호화 변환 기법은 객체 단위로 암호화를 수행하기 때문에 접근 순서 연관성 공격에 취약한 단점을 가진다. 접근 순서 연관성 공격은 사용자 질의 수행 시 파악된 객체 탐색 순서 및 노출된 위치 데이터를 사용하여, 객체 간의 연관성 및 데이터베이스에 저장된 다른 위치 데이터를 파악하는 공격을 말한다. However, since the cryptographic transformation scheme performs encryption on an object-by-object basis, it has a disadvantage that it is vulnerable to attack on the access order associativity. The access order associativity attack is an attack that grasps the associativity between objects and other position data stored in the database by using the object search order and the exposed position data detected at the time of executing the user query.

접근 순서 연관성 공격(access ordering relationship attack)이란 사용자 질의 수행 시 레코드 탐색 순서를 통해 파악된 레코드 간의 연관성 및 노출된 위치 데이터를 사용하여, 데이터베이스에 저장된 다른 위치 데이터를 파악하는 공격이다. An access ordering relationship attack is an attack that grasps other location data stored in a database by using association between records and exposed location data obtained through a record search order when a user query is performed.

도1은 종래의 기술에 따른 접근 순서 연관성 공격의 예를 나타낸다. Figure 1 shows an example of an approach order associativity attack according to the prior art.

도1의 (a)의 루트 노트는 2개의 말단 노드 A, B를 저장하고 있고, 노드 A는 데이터 c, d, e, 노드 B는 데이터 f, g, h를 저장하고 있음을 알 수 있다. 악의적인 서비스 제공 서버 또는 공격자는 사용자가 요청하는 질의를 획득하여 레코드 탐색 순서를 확인할 수 있다. 예를 들어, 공격자가 레코드 탐색 순서 A→c, A→d, A→e를 알고 있으면, 데이터의 위치 측면에서 c, d, e는 연관성이 있으며, 노드 A의 영역은 위치 데이터 c, d, e를 포함함을 유추할 수 있다. 또한, 공격자가 노출된 위치 데이터 c를 알고 있을 경우, 도1의 (b)와 같이 영역 질의를 통해 공격을 수행할 수 있다. 먼저 영역 R1을 통해 영역 질의를 수행하면 영역 질의 결과가 c 만을 포함하기 때문에, d와 e는 c로부터 R1 범위 내에 있지 않음을 알 수 있다. 한편, R2 영역을 통한 질의 결과는 c, d를 포함하기 때문에, c에서 d까지의 거리가 R2-R1 이내임을 추정할 수 있다.1 (a) stores two end nodes A and B, and node A stores data c, d, and e, and node B stores data f, g, and h. The malicious service providing server or the attacker can obtain the query requested by the user and check the record search order. For example, if the attacker knows the record search sequence A → c, A → d, A → e, then c, d, and e are related in terms of data location, e. < / RTI > Also, if the attacker knows the exposed position data c, the attack can be performed through the area query as shown in FIG. 1 (b). First, if the region query is performed through the region R1, since the region query result includes only c, it can be seen that d and e are not within the R1 range from c. On the other hand, since the query result through the R2 region includes c and d, it can be estimated that the distance from c to d is within R2-R1.

이와 같이 접근 순서 연관성 공격은 레코드 간의 연관성 및 노출된 위치 데이터를 사용하여, 다른 데이터의 위치를 파악할 수 있기 때문에 매우 치명적이다. 또한, 질의 처리를 위해 다수의 통신 횟수가 필요하기 때문에, 통신비용이 증가하는 단점을 가진다.In this way, access order associativity attacks are very lethal because they can relate records and use exposed location data to locate other data. In addition, since a large number of communication times are required for query processing, communication costs increase.

이에 본 발명에서는 위치 데이터의 실제 위치 좌표를 그리드 구조 기반의 힐버트 커브를 이용하여 은닉함으로써 개인 정보 유출 문제 해결할 수 있도록 하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템 및 방법을 제공하고자 한다. Accordingly, it is an object of the present invention to provide a position data privacy preservation system and method in an outsourcing database that can solve personal information leakage problem by hiding actual position coordinates of position data using a Hilbert curve based on a grid structure.

F개의 위치 데이터를 데이터베이스의 한 레코드에 저장 및 암호화함으로써, 접근 순서 연관성 공격을 방지하여 위치 정보 보호 문제를 해결할 수 있도록 하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템 및 방법을 제공하고자 한다.A system and method for preserving location data privacy in an outsourced database, which enables to save the location data protection problem by preventing access order associativity attacks by storing and encrypting F position data in one record of the database.

더하여, 힐버트 순서를 기반으로 지역적인 클러스터링을 구축함으로써, 통신 메시지 크기를 최소화하여 질의 처리 속도를 개선할 수 있도록 하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템 및 방법을 제공하고자 한다.In addition, a system and method for preserving location data privacy in an outsourced database is provided that minimizes communication message size and improves query processing speed by establishing local clustering based on the Hilbert order.

또한, 암호화된 위치 데이터베이스상에서 질의 처리를 수행함으로써, 개인 정보를 지원하는 질의 서비스를 지원할 수 있는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템 및 방법을 제공하고자 한다. The present invention also provides a system and method for maintaining location data privacy in an outsourced database that can support a query service supporting personal information by performing query processing on an encrypted location database.

상기 과제를 해결하기 위한 수단으로서, 본 발명의 일 실시 형태에 따르면, 암호화된 HAI(Hilbert Aggregation Index)와 TDI(Transformed Data Index))를 저장 및 제공하는 서비스 제공 서버; 힐버트 커브를 이용하여 위치 데이터에 대응되는 HAI와 TDI를 생성하고, 상기 HAI와 TDI를 암호화하여 상기 서비스 제공 서버에 업로드하고, 상기 암호화된 HAI와 TDI에 대응되는 복호화키를 생성 및 제공하는 데이터 소유 단말; 및 상기 데이터 소유 단말에 접근하여 상기 복호화키를 획득하고, 상기 서비스 제공 서버에 접근하여 상기 암호화된 HAI와 TDI를 획득한 후, 상기 복호화키를 통해 상기 암호화된 HAI와 TDI를 복호화하여 질문 영역에 대응되는 위치 데이터를 파악하는 데이터 사용 단말;을 포함하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템을 제공한다. According to an aspect of the present invention, there is provided a service providing server for storing and providing encrypted Hilbert Aggregation Index (HAI) and Transformed Data Index (TDI) Generates HAI and TDI corresponding to the position data by using the Hilbert curve, encrypts the HAI and TDI and uploads the encrypted HAI and TDI to the service providing server, and generates and provides a decryption key corresponding to the encrypted HAI and TDI Terminal; And acquiring the decryption key by accessing the data-bearing terminal, acquiring the encrypted HAI and TDI by accessing the service providing server, decrypting the encrypted HAI and TDI through the decryption key, And a data use terminal for identifying corresponding location data. The system also includes a location data privacy maintenance system in an outsourcing database.

상기 데이터 소유 단말은 위치 데이터를 저장하는 원본 저장부; 힐버트 커브를 이용하여 상기 위치 데이터에 대응되는 HAI와 TDI를 생성하는 HAI 및 TDI 생성부; 상기 HAI와 TDI를 암호화함과 동시에 이에 대응되는 복호화키를 생성하는 암호화부; 상기 암호화된 HAI와 TDI를 상기 서비스 제공 서버에 업로드하는 데이터 업로드부; 및 상기 복호화키를 상기 데이터 사용 단말에 제공하는 복호화키 제공부;를 포함할 수 있다. The data owning terminal includes: an original storage unit for storing location data; An HAI and a TDI generator for generating HAI and TDI corresponding to the position data using a Hilbert curve; An encryption unit encrypting the HAI and the TDI and generating a corresponding decryption key; A data upload unit for uploading the encrypted HAI and the TDI to the service providing server; And a decryption key providing unit for providing the decryption key to the data using terminal.

상기 서비스 제공 서버는 상기 데이터 소유 단말이 제공하는 암호화된 HAI와 TDI를 저장하는 HAI 및 TDI 저장부; 상기 데이터 사용 단말의 위치 질의에 응답하여, 상기 암호화된 HAI를 제공하는 HAI 제공부; 및 상기 데이터 사용 단말의 레코드 제공 요청에 응답하여, 상기 암호화된 TDI를 검색하여 제공하는 TDI 제공부;를 포함할 수 있다. Wherein the service providing server comprises: an HAI and a TDI storage unit for storing encrypted HAI and TDI provided by the data owning terminal; An HAI providing unit for providing the encrypted HAI in response to a location query of the data using terminal; And a TDI providing unit for searching for and providing the encrypted TDI in response to a record providing request of the data using terminal.

상기 데이터 사용 단말은 상기 데이터 소유 단말로부터 상기 복호화키를 제공받는 복호화키 획득부; 상기 서비스 제공 서버에 위치를 질의하여 상기 암호화된 HAI를 획득한 후 상기 복호화키를 통해 복호화하고, 상기 복호화된 HAI를 검색하여 질의 영역에 해당하는 레코드를 파악하는 HAI 처리부; 및 상기 서비스 제공 서버에 상기 파악된 레코드에 대응되는 암호화된 TDI를 요청하여 제공받고 상기 복호화키를 통해 복호화함으로써, 사용자가 질의한 위치 데이터를 획득하는 TDI 처리부;를 포함할 수 있다.
The data use terminal comprising: a decryption key acquisition unit for receiving the decryption key from the data-bearing terminal; An HAI processing unit for querying the service providing server to obtain the encrypted HAI, decrypting the decrypted HAI through the decryption key, and retrieving the decrypted HAI and acquiring a record corresponding to the inquiry area; And a TDI processing unit for requesting the encrypted TDI corresponding to the identified record to the service providing server, receiving the decrypted TDI, and decrypting the received TDI through the decryption key, thereby acquiring position data queried by the user.

상기 과제를 해결하기 위한 수단으로서, 본 발명의 다른 실시 형태에 따르면, 데이터 소유 단말이 힐버트 커브를 이용하여 위치 데이터에 대응되는 HAI(Hilbert Aggregation Index)와 TDI(Transformed Data Index))를 생성한 후 암호화하고, 상기 암호화된 HAI와 TDI는 서비스 제공 서버에 업로드하고, 상기 암호화된 HAI와 TDI에 대응되는 복호화키는 데이터 사용 단말에 제공하는 암호화 단계; 상기 데이터 사용 단말이 상기 서비스 제공 서버에 위치를 질의하여 상기 암호화된 HAI를 획득하고, 상기 복호화키를 통해 상기 암호화된 HAI를 복호화하여 질의 영역에 해당하는 레코드를 파악하는 HAI처리 단계; 및 상기 데이터 사용 단말이 상기 서비스 제공 서버에 상기 레코드 영역을 질의하여 상기 레코드 영역에 대응되는 암호화된 TDI를 획득하고, 상기 복호화키를 통해 상기 암호화된 TDI를 복호화하여 사용자가 질의한 위치 데이터를 획득하는 TDI 처리 단계;를 포함하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 방법을 제공한다. As a means for solving the above problems, according to another embodiment of the present invention, the data owning terminal generates a Hilbert Aggregation Index (HAI) and a Transformed Data Index (TDI) corresponding to position data using a Hilbert curve An encryption step of uploading the encrypted HAI and TDI to a service providing server, and providing a decryption key corresponding to the encrypted HAI and TDI to a data using terminal; An HAI processing step of the data using terminal acquiring the encrypted HAI by querying a location of the service providing server, decrypting the encrypted HAI through the decryption key and grasping a record corresponding to the inquiry area; And the data using terminal obtains the encrypted TDI corresponding to the record area by querying the record area to the service providing server, decrypts the encrypted TDI through the decryption key, and obtains the position data queried by the user And a TDI processing step of storing location data privacy in an outsourcing database.

상기 암호화 단계는 힐버트 커브를 이용하여 2차원 위치 데이터를 1차원 데이터로 변환한 후, 힐버트 커브 ID를 참고하여 위치 데이터에 대응되는 HAI 및 TDI를 생성하는 단계; 상기 HAI 및 TDI를 암호화하고, 상기 암호화된 HAI 및 TDI에 대응되는 복호화키를 생성하는 단계; 상기 암호화된 HAI 및 TDI를 상기 서비스 제공 서버에 업로드하는 단계; 및 복호화키 제공을 요청하는 데이터 제공 단말이 발생하면, 상기 데이터 사용 단말에 대한 사용자 인증 절차를 수행한 후 상기 데이터 사용 단말에 상기 복호화키를 제공하는 단계;를 포함할 수 있다. Wherein the encrypting step comprises: converting the two-dimensional position data into one-dimensional data using a Hilbert curve; generating HAI and TDI corresponding to the position data with reference to the Hilbert curve ID; Encrypting the HAI and TDI, and generating a decryption key corresponding to the encrypted HAI and TDI; Uploading the encrypted HAI and TDI to the service providing server; And providing the decryption key to the data using terminal after performing a user authentication procedure for the data using terminal when the data providing terminal requesting the decryption key is generated.

상기 HAI 처리 단계는 상기 데이터 사용 단말이 상기 서비스 제공 서버에 위치를 질의하여 암호화된 HAI를 제공받는 단계; 및 상기 데이터 사용 단말이 상기 데이터 소유 단말이 사전에 제공한 복호화키를 통해 상기 암호화된 HAI를 복호화하고, 힐버트 커브 ID를 기반으로 질의 영역에 해당하는 레코드를 검색하는 단계를 포함할 수 있다. The HAI processing step includes the steps of the data-using terminal querying the service providing server for location and receiving the encrypted HAI; And decrypting the encrypted HAI using the decryption key previously provided by the data-bearing terminal, and searching the record corresponding to the inquiry area based on the Hilbert curve ID.

상기 TDI 처리 단계는 “검색된 레코드 개수ㅧ팬아웃 F(F은 2이상의 자연수)” 가 사용자가 요구하는 k 최근 접점(F는 2 이상의 자연수) 보다 작으면, 레코드 검색 영역을 이웃 그리드 셀로 확장하여 검색을 반복하는 단계; “검색된 레코드 개수ㅧ팬아웃 F”가 사용자가 요구하는 k 최근 접점 이상이면, 상기 데이터 사용 단말은 상기 검색된 레코드에 대응되는 암호화된 TDI을 상기 서비스 제공 서버를 통해 획득한 후 상기 데이터 소유 단말이 사전에 제공한 복호화키를 이용하여 복호화하여, 사용자가 질의한 위치 데이터를 추출하는 단계; 상기 데이터 사용 단말이 상기 추출된 위치 데이터 중에서 질의 지점으로부터 k-최근접점까지의 거리를 반지름으로 하는 원의 외접 사각형을 질의 영역으로 설정한 후 복호화된 HAI를 기반으로 상기 레코드를 추가 검색하는 단계; 상기 레코드가 추가 검색되면, 상기 추가 검색된 레코드에 대응되는 암호화된 TDI 레코드를 상기 서비스 제공 서버를 통해 추가 획득한 후 상기 복호화키로 복호화하여 사용자가 질의한 위치 데이터를 추가 추출하는 단계; 및 상기 추출된 위치 데이터 중에서 질의 지점으로부터 가장 가까운 k개의 데이터를 최종 결과로 선별하는 단계;를 포함할 수 있다. If the number of retrieved records and fanout F (F is a natural number of 2 or more) is smaller than the kth contact point (F is a natural number of 2 or more) requested by the user, the TDI processing step expands the record search area into neighboring grid cells ≪ / RTI > If the number of records retrieved " fan-out F " is greater than or equal to the k-th contact point requested by the user, the data using terminal obtains the encrypted TDI corresponding to the retrieved record through the service providing server, Decrypting the decrypted data using the decryption key provided to the user, and extracting position data queried by the user; Setting a circle circumscribed rectangle having a radius from a query point to a k-most recent contact point as a query area among the extracted position data of the data using terminal, and further searching the record based on the decoded HAI; Adding the encrypted TDI record corresponding to the further searched record to the service providing server, decrypting the encrypted TDI record with the decryption key, and further extracting the location data queried by the user when the record is further searched; And selecting k data closest to the query point among the extracted position data as a final result.

상기 과제를 해결하기 위한 수단으로서, 본 발명의 또 다른 실시 형태에 따르면, 데이터 소유 단말이 위치 데이터를 암호화하여 서비스 제공 서버에 업로드하고, 상기 암호화된 위치 데이터에 대응되는 복호화키를 생성하여 데이터 사용 단말에 제공하는 암호화 단계; 및 상기 데이터 사용 단말이 상기 서비스 제공 서버에 질의하여 상기 암호화된 위치 데이터를 획득한 후 상기 복호화키를 통해 복호화하여 위치 데이터를 획득하는 질의 단계;를 포함하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 방법을 제공한다. As a means for solving the above problems, according to another embodiment of the present invention, a data owning terminal encrypts and uploads position data to a service providing server, generates a decryption key corresponding to the encrypted position data, An encryption step provided to the terminal; And a query step of querying the service providing server to obtain the encrypted location data and decoding the received location data using the decryption key to obtain location data. to provide.

상기 암호화 단계는 데이터 소유 단말이 위치 데이터를 암호화하고, 상기 암호화된 위치 데이터에 대응되는 복호화키를 생성하는 단계: 상기 암호화된 위치 데이터는 서비스 제공 서버에 업로드하는 단계; 및 상기 데이터 사용 단말이 접근하여 복호화키 제공을 요청하면, 상기 데이터 사용 단말에 대한 사용자 인증을 수행한 후 상기 암호화된 위치 데이터에 대응되는 복호화키를 제공하는 단계;를 포함할 수 있다. Wherein the encrypting step encrypts the location data by the data owning terminal and generates a decryption key corresponding to the encrypted location data: uploading the encrypted location data to the service providing server; And providing the decryption key corresponding to the encrypted location data after performing the user authentication on the data using terminal when the data using terminal requests access to the decryption key providing server to provide the decryption key.

상기 질의 단계는 상기 데이터 사용 단말이 접근하여 위치 데이터 제공을 요청하면, 상기 서비스 제공 서버가 상기 데이터 사용 단말에 대한 사용자 인증을 수행한 후 상기 암호화된 위치 데이터를 제공하는 단계; 및 상기 암호화된 위치 데이터를 상기 복호화키를 통해 복호화하여 위치 데이터를 획득하는 단계;를 포함할 수 있다.
The querying step comprises: providing the encrypted location data after the service providing server performs user authentication on the data using terminal when the data using terminal requests access to provide location data; And decrypting the encrypted location data using the decryption key to obtain location data.

본 발명에 따르면, 사용자의 위치 정보 보호 및 위치 데이터 보호를 지원하는 안전한 아웃소싱 데이터베이스를 구축 및 서비스 할 수 있게 된다. 또한 위치 정보 서비스 제공자는 제안하는 공간 질의처리 알고리즘을 통해 아웃소싱 데이터베이스 기반의 서비스 시스템을 구축하고, 클라우드 컴퓨팅 환경에서 사용자에게 신뢰성 있는 서비스를 제공하여, 클라우드 컴퓨팅 환경에서의 아웃소싱 데이터베이스를 이용한 위치 기반 서비스 활성화에 기여할 수 있게 된다.
According to the present invention, a secure outsourcing database that supports location information protection and location data protection of a user can be constructed and serviced. In addition, the location information service provider constructs a service system based on the outsourced database through the proposed spatial query processing algorithm and provides reliable services to the users in the cloud computing environment to enable location based service activation using the outsourced database in the cloud computing environment . ≪ / RTI >

도1은 종래의 기술에 따른 접근 순서 연관성 공격의 예를 나타낸다.
도2 및 도3은 본 발명의 일 실시예에 따른 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템을 도시한 도면이다.
도4은 본 발명의 일 실시예에 따른 원본 데이터, HAI, 및 TDI를 도시한 도면이다.
도5는 본 발명의 일 실시예에 따른 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전을 위한 데이터 암호화 방법을 설명하기 위한 도면이다.
도6은 본 발명의 일 실시예에 따른 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전을 위한 위치 질의 방법을 설명하기 위한 도면이다.
도7은 본 발명의 일 실시예에 따른 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전을 위한 위치 질의 방법의 적용 예를 나타낸 도면이다.
도8a 및 도8b는 본 발명의 다른 실시예에 따른 위치 질의 방법을 설명하기 위한 도면이다.
도9는 본 발명의 다른 실시예에 따른 위치 질의 방법의 적용 예를 나타낸 도면이다.
Figure 1 shows an example of an approach order associativity attack according to the prior art.
FIG. 2 and FIG. 3 illustrate a location data privacy preservation system in an outsourcing database according to an embodiment of the present invention.
4 is a diagram illustrating source data, HAI, and TDI according to an embodiment of the present invention.
5 is a view for explaining a data encryption method for preserving location data privacy in an outsourcing database according to an embodiment of the present invention.
FIG. 6 is a diagram for explaining a location query method for preserving location data privacy in an outsourced database according to an embodiment of the present invention. Referring to FIG.
FIG. 7 is a diagram illustrating an application example of a location query method for preserving location data privacy in an outsourcing database according to an embodiment of the present invention. Referring to FIG.
8A and 8B are views for explaining a position query method according to another embodiment of the present invention.
9 is a diagram illustrating an application example of a position query method according to another embodiment of the present invention.

이하 첨부된 도면을 참조하여 본 발명에 대해 구체적으로 살펴보기로 한다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

다만, 본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 용어가 동일하더라도 표시하는 부분이 상이하면 도면 부호가 일치하지 않음을 미리 말해두는 바이다.In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. Even if the terms are the same, it is to be noted that when the portions to be displayed differ, the reference signs do not coincide.

그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 설정된 용어들로서 이는 실험자 및 측정자와 같은 사용자의 의도 또는 관례에 따라 달라질 수 있으므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention as claimed.

본 명세서에서 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, etc. in this specification may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the relevant art and are to be interpreted in an ideal or overly formal sense unless explicitly defined in the present application Do not.

이하 첨부된 도면을 참조하여 본 발명에 대해 구체적으로 설명하기로 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings. In order to facilitate the understanding of the present invention, the same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.

본 발명에서는 힐버트 커브를 이용하여 2차원 위치 데이터(x, y coordinates)를 1차원 데이터로 변환함으로써, 데이터의 실제 좌표를 은닉하도록 한다. 이를 위해 위치 데이터베이스는 그리드 구조로 나타내어지며, 힐버트 커브를 적용하여 각 그리드 셀에 힐버트 커브 ID를 차례로 부여한다. 힐버트 커브는 다차원 데이터를 1차원 데이터로 인덱싱하기 위한 기법으로, 특히 위치 데이터베이스에서 힐버트 커브를 통해 부여된 ID가 근사한 데이터들은 위치적으로 근접함을 보장한다. In the present invention, two-dimensional position data (x, y coordinates) are converted into one-dimensional data by using a Hilbert curve, so that actual coordinates of data are concealed. To this end, the position database is represented by a grid structure, and a Hilbert curve is applied to sequentially assign Hilbert curve IDs to each grid cell. Hilbert curve is a technique for indexing multidimensional data as one-dimensional data. In particular, Hilbert curve in the location database guarantees proximity of approximated data with ID.

또한, 힐버트 커브는 그리드 셀의 크기에 따라 다양한 레벨로 생성 가능하며 방향성을 지니기 때문에, 해당 정보가 주어지지 않을 경우 힐버트 커브를 동해 변환된 데이터로부터 원본 데이터를 유추하기 힘들다는 장점을 보인다.
In addition, the Hilbert curve can be generated at various levels according to the size of the grid cell, and has directionality. Therefore, if the information is not given, the Hilbert curve is advantageous in that it is difficult to deduce original data from the transformed data.

도2 및 도3은 본 발명의 일 실시예에 따른 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템을 도시한 도면이다. FIG. 2 and FIG. 3 illustrate a location data privacy preservation system in an outsourcing database according to an embodiment of the present invention.

먼저, 도2을 참고하면 본 발명의 위치 데이터 보호 시스템은 데이터 소유 단말(10), 서비스 제공 서버(20), 및 적어도 하나의 데이터 사용 단말(30)로 구성될 수 있다. Referring to FIG. 2, the location data protection system of the present invention may include a data holding terminal 10, a service providing server 20, and at least one data using terminal 30.

계속하여, 도3을 참고하면 본 발명의 데이터 소유 단말(10)늘 암호화되기 전의 원본 데이터를 저장하는 원본 저장부(11), 힐버트 커브를 이용하여 원본 데이터에 대응되는 HAI(Hilbert Aggregation Index)와 TDI(Transformed Data Index))를 생성하는 HAI 및 TDI 생성부 (12), HAI와 TDI를 암호화함과 동시에 이에 대응되는 복호화키를 생성하는 암호화부(13), 암호화된 HAI와 TDI를 서비스 제공 서버(20)에 업로드하는 데이터 업로드부(14), 및 데이터 사용 단말(30)이 접근하면, 사용자 인증 절차를 수행한 후 복호화키를 제공하는 복호화키 제공부(15) 등을 포함하여 구성될 수 있다. 3, an original storage unit 11 for storing original data before being encrypted, a Hilbert Aggregation Index (HAI) corresponding to the original data using the Hilbert curve, An encryption unit 13 for encrypting the HAI and the TDI and generating a decryption key corresponding to the HAI and the TDI, an encryption unit 13 for encrypting the encrypted HAI and the TDI, And a decryption key providing unit 15 for providing a decryption key after performing a user authentication procedure when the data uploading unit 14 and the data using terminal 30 approach each other, have.

도4에 도시된 바와 같이, 본 발명의 원본 데이터는 그리드 구조를 가지는 2차원의 위치 데이터고, HAI는 HAI 레코드의 ID를 의미하는 “ID”와, 해당 HAI 레코드가 포함되는 힐버트 커브의 시작과 끝을 의미하는 “Start Hilbert Value(SHV)” 및“End Hilbert Value(EHV)”로 구성될 수 있다. TDI는 TDI 레코드의 ID를 의미하는 “ID” 및 해당 TDI 레코드에 포함되는 실제 위치 데이터의 집합을 의미하는 “cell info”로 구성될 수 있다.
4, the original data of the present invention is a two-dimensional positional data having a grid structure, HAI is an ID indicating an ID of an HAI record, a start of a Hilbert curve including the corresponding HAI record, Quot ;, " Start Hilbert Value (SHV) ", and " End Hilbert Value (EHV) " The TDI may be composed of an " ID " meaning an ID of a TDI record and a " cell info " meaning a set of actual position data included in the corresponding TDI record.

서비스 제공 서버(20)는 데이터 소유 단말(10)이 제공하는 암호화된 HAI와 TDI를 저장하는 HAI 및 TDI 저장부(21), 데이터 사용 단말(30)가 접근하여 위치 질의 동작을 수행하면, 이에 응답하여 암호화된 HAI를 제공하는 HAI 제공부(22), 및 데이터 사용 단말(30)가 제공 요청한 레코드에 대응되는 암호화된 TDI를 검색하여 제공하는 TDI 제공부(23) 등을 포함하여 구성될 수 있다.
The service providing server 20 accesses the HAI, the TDI storing unit 21, and the data using terminal 30, which store the encrypted HAI and the TDI provided by the data owning terminal 10, An HAI providing unit 22 for providing an encrypted HAI in response to the request, and a TDI providing unit 23 for retrieving and providing an encrypted TDI corresponding to a record requested by the data using terminal 30 have.

데이터 사용 단말(30)은 데이터 소유 단말(10)에 접근하여 복호화키를 제공받는 복호화키 획득부(31), 서비스 제공 서버(20)로의 질의를 통해 암호화된 HAI를 제공받고 데이터 소유 단말(10)이 제공한 복호화키를 통해 복호화한 후, 복호화된 HAI를 검색하여 질의 영역에 해당하는 레코드를 파악하는 HAI 처리부(32), HAI 처리부(32)에 의해 파악된 레코드에 대응되는 암호화된 TDI를 서비스 제공 서버(20)에 요청하여 제공받고, 데이터 소유 단말(10)이 제공한 복호화키를 통해 이를 복호화하여 사용자가 질의한 데이터를 획득하는 TDI 처리부(33) 등을 포함하여 구성될 수 있다.
The data using terminal 30 is provided with a decryption key obtaining unit 31 which accesses the data owning terminal 10 and provides a decryption key to the data providing terminal 10, The HAI processing unit 32 for retrieving the decrypted HAI and grasping a record corresponding to the inquiry area, the encrypted TDI corresponding to the record identified by the HAI processing unit 32, And a TDI processing unit 33 that is requested by the service providing server 20 and is received and decrypted through a decryption key provided by the data owning terminal 10 to obtain data queried by the user.

도5는 본 발명의 일 실시예에 따른 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전을 위한 데이터 암호화 방법을 설명하기 위한 도면이다. 5 is a view for explaining a data encryption method for preserving location data privacy in an outsourcing database according to an embodiment of the present invention.

먼저, 데이터 소유 단말(10)은 원본 데이터의 실제 좌표를 은닉하기 위해, 힐버트 커브를 이용하여 2차원 위치 데이터(x,y coordinates)인 원본 데이터를 1차원 데이터로 변환한다(S11). 즉, 힐버트 커브를 적용하여 원본 데이터의 각 그리드 셀에 힐버트 커브 ID를 부여한다. First, in order to hide the actual coordinates of the original data, the data owning terminal 10 converts the original data, which is two-dimensional position data (x, y coordinates), into one-dimensional data using the Hilbert curve (S11). That is, a Hilbert curve is applied to each grid cell of the original data to give a Hilbert curve ID.

그리고 나서, 각 그리드 셀에 부여된 힐버트 커브 ID를 참고하여 원본 데이터에 대응되는 HAI 및 TDI를 생성한다(S12). 즉, 각 TDI 레코드가 팬아웃 F개의 위치 데이터를 저장하도록 구성되면, 데이터 소유 단말(10)은 힐버트 커브 ID에 따라 최초 F(F는 2 이상의 자연수)개의 위치 데이터를 검색하고, 검색을 시작한 그리드 셀 ID 및 F 번째 위치 데이터가 검색된 셀 ID를 각각 HAI 첫 번째 레코드의 Start Hilbert Value, End Hilbert value로 설정한다. 그리고 검색된 F개의 위치 데이터는 TDI 첫 번째 레코드의 cell info에 저장한다. 이후, F개의 데이터를 추가적으로 검색할 때마다, HAI와 TDI의 다음 레코드에 해당 정보를 저장한다. 이러한 동작은 위치 데이터베이스 상의 모든 그리드 셀이 검색될 동안 반복 수행된다. Then, HAI and TDI corresponding to the original data are generated with reference to the Hilbert curve ID assigned to each grid cell (S12). That is, if each TDI record is configured to store F-number of position data, the data-bearing terminal 10 searches the first F (F is a natural number of 2 or more) position data according to the Hilbert curve ID, The cell ID and the cell ID in which the Fth position data is retrieved are set to the Start Hilbert Value and End Hilbert Value of the first record of the HAI, respectively. Then, the F position data retrieved is stored in cell info of the first record of TDI. Each time F data is additionally retrieved, it is stored in the next record of HAI and TDI. This operation is repeated while all the grid cells on the location database are retrieved.

예를 들어, TDI의 팬아웃이 F=3이라 가정할 때, 도4의 원본 데이터의 최초 3개의 위치 데이터 a, b, c를 검색하기 위해서는 그리드 셀 0번과 1번에서 검색을 수행해야 한다. 따라서 HAI 첫 번째 레코드의 Start Hilbert Value, End Hilbert value는 도4의 HAI와 같이 각각 0과 1로 설정한다. 이때, 검색된 위치 데이터 a, b, c는 도4의 TDI와 같이 첫 번째 레코드의 cell info에 저장된다. 다음으로 F=3개의 데이터를 검색하기 위해서는 그리드 셀 2번에서부터 5번까지 검색이 이루어진다. 이를 통해 그리드 셀 2번, 4번, 5번에서 각각 d, f, g 위치 데이터가 검색된다. 따라서 HAI의 두 번째 레코드의 Start Hilbert Value 및 End Hilbert value를 각각 2와 5로 설정되고, 검색된 위치 데이터 d, f, g는 TDI의 두 번째 레코드의 cell info에 저장된다. 이와 동일한 원리로, 나머지 HAI와 TDI의 값들이 각각 채워지게 된다. For example, suppose that the fanout of TDI is F = 3. In order to retrieve the first three positional data a, b, c of the original data in Fig. 4, the search must be performed in grid cells 0 and 1 . Therefore, the Start Hilbert Value and the End Hilbert Value of the first HAI record are set to 0 and 1, respectively, as shown in HAI in FIG. At this time, the retrieved position data a, b, and c are stored in the cell info of the first record as shown in the TDI of FIG. Next, in order to retrieve F = 3 data, search is performed from grid cells 2 to 5. Thus, d, f, and g position data are retrieved from grid cells 2, 4, and 5, respectively. Therefore, the Start Hilbert Value and the End Hilbert Value of the second record of the HAI are set to 2 and 5, respectively, and the retrieved position data d, f, and g are stored in the cell info of the second record of the TDI. On the same principle, the remaining values of HAI and TDI are filled, respectively.

단계 S2를 통해 HAI와 TDI가 생성 완료되면, 데이터 소유 단말(10)늘 AES(Advanced Encryption Standards) 등의 알고리즘을 통해 HAI 및 TDI를 암호화한 후(S13), 서비스 제공 서버(20)에 업로드한다(S14). After HAI and TDI are generated through step S2, the data-bearing terminal 10 always encrypts HAI and TDI through an algorithm such as Advanced Encryption Standard (AES) (S13) and uploads it to the service providing server 20 (S14).

이러한 상태에서, 데이터 소유 단말(10)에 데이터 사용 단말(30)에 접근한 후 사용자 인증 정보를 전송하면서 복호화키 제공을 요청하면(S15), 데이터 소유 단말(10)늘 이에 응답하여 사용자 인증 절차를 수행한 후(S16), 암호화 된 HAI 및 TDI를 복호화할 수 있는 복호화키를 데이터 사용 단말(30)에 제공한다(S17). In this state, when accessing the data using terminal 30 to the data owning terminal 10 and requesting the provision of a decryption key while transmitting the user authentication information (S15), the data owning terminal 10 always responds to the user authentication procedure (S16), and provides a decryption key for decrypting the encrypted HAI and TDI to the data using terminal 30 (S17).

즉, 본 발명에서는 위치 데이터의 실제 위치 좌표를 그리드 구조 기반의 힐버트 커브를 이용하여 은닉함으로써, 개인 정보가 유출될 가능성을 사전에 차단해줌을 알 수 있다. 또한, F개의 위치 데이터를 데이터베이스의 한 레코드에 저장 및 암호화함으로써, 접근 순서 연관성 공격 가능성을 사전에 방지하고, 이에 따라 위치 데이터가 보다 안전하게 보호될 수 있도록 한다.
That is, according to the present invention, the actual position coordinates of the position data are concealed using the Hilbert curve based on the grid structure, thereby preventing the possibility of leakage of personal information in advance. In addition, by storing and encrypting the F position data in one record of the database, the access order associativity attack possibility is prevented in advance and thus the position data can be more safely protected.

도6은 본 발명의 일 실시예에 따른 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전을 위한 위치 질의 방법을 설명하기 위한 도면이다. FIG. 6 is a diagram for explaining a location query method for preserving location data privacy in an outsourced database according to an embodiment of the present invention. Referring to FIG.

만약, 데이터 사용 단말(30)이 서비스 제공 서버(20)에게 위치 질의 동작을 수행하면(S21), 서비스 제공 서버(20)는 데이터 사용 단말(30)에 대한 사용자 인증을 수행한 후, 암호화된 HAI를 검색하여 데이터 사용 단말(30)에 제공한다(S22).If the data using terminal 30 performs a location inquiry operation to the service providing server 20 in step S21, the service providing server 20 performs user authentication on the data using terminal 30, And provides the HAI to the data using terminal 30 (S22).

그러면 데이터 사용 단말(30)은 데이터 소유 단말(10)이 사전에 제공한 복호화키를 통해 서비스 제공 서버(20)이 제공한 암호화된 HAI를 복호화한 후(S23), 복호화된 HAI를 검색하여 질의 영역에 해당하는 그리드 셀들의 힐버트 커브 ID를 찾고, 이진 탐색을 통해 해당 셀들을 포함하는 레코드를 검색한다(S24). Then, the data using terminal 30 decrypts the encrypted HAI provided by the service providing server 20 through the decryption key previously provided by the data owning terminal 10 (S23), searches the decrypted HAI, Finds the Hilbert curve ID of the grid cells corresponding to the region, and searches the record including the corresponding cells through the binary search (S24).

영역 질의를 위한 HAI의 레코드들이 검색되면, 해당 레코드들의 ID((2, 4,5))를 서비스 제공 서버(20)에게 제공하면서 이에 대응되는 TDI 레코드 제공을 요청한다(S25). (2, 4, 5) of the corresponding records to the service providing server 20 while requesting the provision of the corresponding TDI record (S25).

이에 서비스 제공 서버(20)가 해당 ID에 대응되는 TDI의 레코드들을 검색하여, 데이터 사용 단말(30)에게 제공하면(S26), 데이터 사용 단말(30)은 데이터 소유 단말(10)이 사전에 제공한 복호화키를 이용하여 암호화된 TDI 레코드를 복호화함으로써, 실제로 저장되어 있는 위치 데이터를 추출하고 영역 질의를 종료한다(S27). 이때, 암호화된 HAI와 TDI는 동일한 AES 알고리즘을 통해 암호화되어 있기 때문에 동일한 복호화키를 이용하여 복호화될 수 있다.
When the service providing server 20 retrieves the records of the TDI corresponding to the ID and provides the retrieved records to the data using terminal 30 in step S26, The encrypted TDI record is decrypted using one decryption key to extract the actually stored location data, and the area query is terminated (S27). At this time, since the encrypted HAI and TDI are encrypted through the same AES algorithm, they can be decrypted using the same decryption key.

도7은 본 발명의 일 실시예에 따른 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전을 위한 위치 질의 방법의 적용 예를 나타낸 도면으로, 도7에서는TDI의 팬아웃이 F=3이라고 가정하기로 한다. FIG. 7 is a diagram illustrating an application example of a location query method for preserving location data privacy in an outsourced database according to an embodiment of the present invention. In FIG. 7, it is assumed that F = 3 in TDI.

데이터 사용 단말(30)은 서비스 제공 서버(20)로부터 사전에 전송받은 암호화된HAI를 복호화키를 통해 복원하고, 자신의 질의 영역이 그리드 셀 2, 3, 4, 7번에 해당되는 것을 확인한 후, HAI에서 해당 셀들을 포함하는 레코드를 검색한다. 이때, 그리드 셀 2, 3, 4번은 HAI의 2번째 레코드에, 그리드 셀 7번은 HAI의 4, 5번째 레코드에 포함된다. 따라서 데이터 사용 단말(30)은 서비스 제공 서버(20)에게 2, 4, 5번 TDI 레코드를 요청한다. 데이터 사용 단말(30)은 데이터 소유 단말(10)로부터 사전에 전송받은 복호화키를 이용하여 해당 레코드를 복원한다. 즉, 데이터 사용 단말(30)은 2번 TDI 레코드를 복호화하여 위치 데이터 d, f, g, 4번 레코드를 통해 k, l, e, 5번 레코드를 통해 m, n, o를 각각 찾는다.The data using terminal 30 restores the encrypted HAI previously received from the service providing server 20 through the decryption key and confirms that its own query area corresponds to the grid cells 2, 3, 4, and 7 , And retrieves a record including the corresponding cells in the HAI. At this time, the grid cells 2, 3 and 4 are included in the second record of the HAI, and the grid cell 7 is included in the fourth and fifth records of the HAI. Therefore, the data using terminal 30 requests the service providing server 20 for TDI records 2, 4, and 5. The data using terminal 30 restores the record using the decryption key previously transmitted from the data holding terminal 10. [ That is, the data terminal 30 decodes the second TDI record and searches m, n, and o through the position data d, f, g, and the fourth record k, l, e,

이는 실제 질의 영역에 포함되는 위치 데이터인 d, f, k, l, m을 모두 포함하며, 데이터 사용 단말(30)은 위치 데이터의 공간 좌표를 바탕으로 실제 질의 영역 내부에 포함된 d, f, k, l, m를 찾는다. 한편, 팬아웃 F개의 데이터를 하나의 단위로 전송받음으로써, 접근 순서 연관성 공격의 확률을 감소시킬 수 있다.
F, k, l, and m, which are included in the actual query area, and the data use terminal 30 includes the location data d, f, Find k, l, m. On the other hand, by receiving F-numbered pieces of data in one unit, it is possible to reduce the probability of an access order association attack.

도8a 및 도8b는 본 발명의 다른 실시예에 따른 위치 질의 방법을 설명하기 위한 도면으로, 힐버트 커브 기반 위치 데이터 보호 기법을 통해 암호화된 아웃소싱 데이터베이스 상에서의 k-최근접점 탐색 질의를 처리하는 과정에 관한 것이다. 8A and 8B are views for explaining a location query method according to another embodiment of the present invention. In the process of processing a k-nearest neighbor search query on an encrypted outsourced database through a Hilbert curve-based location data protection technique .

데이터 사용 단말(30)이 서비스 제공 서버(20)에게 위치 질의 동작을 수행하면(S31), 서비스 제공 서버(20)는 이에 대응되는 암호화된 HAI를 검색하여 데이터 사용 단말(30)에 제공한다(S32).When the data using terminal 30 performs a location inquiry operation to the service providing server 20 (S31), the service providing server 20 searches for the encrypted HAI corresponding thereto and provides the retrieved HAI to the data using terminal 30 S32).

그러면 데이터 사용 단말(30)은 데이터 소유 단말(10)이 사전에 제공한 복호화키를 통해 서비스 제공 서버(20)이 제공한 암호화된 HAI를 복호화한 후(S33), 복호화된 HAI를 검색하여 질의 영역에 해당하는 그리드 셀들의 힐버트 커브 ID를 찾고, 이진 탐색을 통해 해당 셀들을 포함하는 레코드(tuple)을 검색한다(S34). Then, the data using terminal 30 decrypts the encrypted HAI provided by the service providing server 20 through the decryption key previously provided by the data owning terminal 10 (S33), searches the decrypted HAI, The Hilbert curve ID of the grid cells corresponding to the region is searched for, and a tuple including the corresponding cells is searched through binary searching (S34).

다만,“검색된 레코드 개수ㅧ팬아웃 F” 가 사용자가 요구하는 k 최근 접점(F는 2 이상의 자연수) 보다 작으면(S35), 검색 영역을 이웃 그리드 셀로 확장하여 검색을 반복한다(S34, S36). However, if the "number of retrieved records ㅧ fanout F" is smaller than the k-th contact (F is a natural number of 2 or more) requested by the user (S35), the search area is extended to neighboring grid cells and the search is repeated (S34, S36) .

“검색된 레코드 개수ㅧ팬아웃 F”가 사용자가 요구하는 k 최근 접점 이상이면, 데이터 사용 단말(30)은 검색된 레코드의 ID를 서비스 제공 서버(20)에 전송하여 그에 해당하는 TDI 레코드를 제공 요청하고(S37), 서비스 제공 서버(20)는 이에 응답하여 해당 ID에 대응되는 TDI의 레코드들을 제공한다(S38).If the number of retrieved records " fan out F " is equal to or more than the kth contact point requested by the user, the data using terminal 30 transmits the ID of the retrieved record to the service providing server 20 and requests the service providing server 20 to provide the corresponding TDI record (S37), the service providing server 20 provides the records of the TDI corresponding to the corresponding ID in response thereto (S38).

그러면, 데이터 사용 단말(30)은 데이터 소유 단말(10)이 사전에 제공한 복호화키를 이용하여 암호화된 TDI 레코드들을 복호화함으로써, 실제로 저장되어 있는 위치 데이터를 추출한다(S39).Then, the data using terminal 30 extracts the actually stored location data by decoding the encrypted TDI records using the decryption key previously provided by the data owning terminal 10 (S39).

그리고 나서, 데이터 사용 단말(30)은 추출된 위치 데이터 중에서 질의 지점으로부터 k-최근접점까지의 거리를 반지름으로 하는 원의 외접 사각형을 질의 영역으로 설정한 후 복호화된 HAI를 재검색한다(S40). 해당 과정을 통해 실제 k-최근접점 결과이지만 이전 단계에서 찾아지지 못한 k-최근접점 데이터의 검색이 가능하다. Then, the data-using terminal 30 sets a circle circumscribed rectangle having the radius from the query point to the k-nearest point as the query area among the extracted position data, and then re-searches the decoded HAI (S40). Through this process, it is possible to search for k-nearest contact data which is the result of actual k-close contact but not found in the previous step.

만약, 추가로 검색된 레코드가 존재하면(S41), 해당 레코드를 서비스 제공 서버(20)에게 재요청하고(S42), 서비스 제공 서버(20)는 그와 상응하는 TDI 레코드를 데이터 사용 단말(30)에게 제공하고(S43), 데이터 사용 단말(30)늘 이를 복호화하여 저장되어 있는 위치 데이터를 추출한다(S43). The service providing server 20 sends the corresponding record to the service providing server 20 (S42), and the service providing server 20 transmits the corresponding TDI record to the data providing terminal 30 (S41) (S43), and always decodes the data using terminal 30 to extract the stored location data (S43).

마지막으로 데이터 사용 단말(30)은 추출된 위치 데이터 중에서 질의 지점으로부터 가장 가까운 k개의 데이터를 최종 결과로 선별하도록 한다(S44).
Finally, the data use terminal 30 selects k data closest to the query point among the extracted position data as a final result (S44).

도9는 본 발명의 다른 실시예에 따른 위치 질의 방법의 적용 예를 나타낸 도면으로, TDI의 팬아웃이 팬아웃 F=3, k=2 일 때, HCT 기법을 통해 암호화 된 아웃소싱 데이터베이스 상에서의 k-최근접점 질의 처리 알고리즘의 예제를 나타낸다. 9 is a diagram showing an application example of a location inquiry method according to another embodiment of the present invention. In FIG. 9, when the fanout of the TDI is F = 3 and k = 2, - An example of the nearest point query processing algorithm is shown.

데이터 사용 단말(30)늘 서비스 제공 서버(20)로부터 전송받은 HAI를 복호화키를 통해 복원한다. 데이터 사용 단말(30)은 자신의 질의 지점이 그리드 셀 12에 해당되는 것을 찾은 후, HAI에서 해당 셀을 포함하는 레코드를 검색한다. 그리드 셀 12는 HAI에서 6번째 레코드에 해당하며, 탐색한 레코드의 개수(1개)ㅧ팬아웃(3)늘 k=2보다 크기 때문에, 데이터 사용 단말(30)늘 서비스 제공 서버(20)에게 6번 TDI 레코드를 요청한다. 서비스 제공 서버(20)로부터 해당 레코드를 전송받으면, 데이터 소유 단말(10)로부터 전송받은 복호화키를 이용해 해당 레코드를 복원한다. 이를 통해, 데이터 사용 단말(30)늘 위치 데이터 p, q를 찾는다. The data using terminal 30 always restores the HAI transmitted from the service providing server 20 through the decryption key. The data using terminal 30 finds its query point corresponding to the grid cell 12, and then searches for a record including the cell in the HAI. The grid cell 12 corresponds to the sixth record in the HAI and is always larger than k = 2 because of the number of records searched (1), fan-out (3) Request TDI record 6. When the record is received from the service providing server 20, the record is restored by using the decryption key transmitted from the data owning terminal 10. Thus, the data use terminal 30 always searches for the position data p, q.

다음으로, 현재 찾아진 k-최근접점 데이터의 정확성을 검증하기 위해서 질의 지점에서 k=2번째 데이터인 z(z은 양의 실수)까지의 거리를 반지름으로 하는 원을 찾는다. 해당 원의 외접 사각형을 질의 영역으로 하여 영역 질의를 수행하면, 셀 8, 11, 12, 13, 14, 15가 탐색된다. 해당 셀들을 포함하는 HAI의 5, 6번 레코드 중, 5번 레코드는 현재 전송받지 못했기 때문에 이를 서비스 제공 서버(20)에게 요청한다. 서비스 제공 서버(20)는 TDI의 5번 레코드를 전송하고, 데이터 사용 단말(30)늘 이를 수신 및 해독하여, 해당 레코드에 포함된 위치 데이터 m, n, o를 찾는다. 한편, 해당 데이터들은 현재 2-최근접점 객체인 p보다 거리가 멀기 때문에, 최종적인 결과로 p, q를 추출한다.
Next, in order to verify the accuracy of the currently-found k-nearest contact data, a circle having a radius from the query point to the k = 2-th data z (z is a positive real number) is found. When the area query is performed with the circumscribed rectangle of the circle as a query area, cells 8, 11, 12, 13, 14, and 15 are searched. Among the records 5 and 6 of the HAI including the corresponding cells, the fifth record is not received at present, so it requests the service providing server 20 for the record. The service providing server 20 transmits the record 5 of TDI and always receives and decodes the data using terminal 30 to find the position data m, n, o included in the record. On the other hand, since the data are farther than the current 2-point contact object p, p and q are extracted as final results.

이상에서 살펴본 바와 같이, 본 발명에서는 힐버트 순서를 기반으로 지역적인 클러스터링을 구축함으로써, 통신 메시지 크기를 최소화하고, 이에 따라 질의 처리 속도를 개선할 수 있도록 함을 알 수 있다. 그리고 암호화된 위치 데이터베이스상에서 질의 처리를 수행함으로써, 개인 정보를 지원하는 질의 서비스 지원이 가능해짐을 알 수 있다.
As described above, according to the present invention, it is possible to minimize the communication message size and improve the query processing speed by constructing the local clustering based on the Hilbert order. Also, by performing query processing on the encrypted location database, it is possible to support query service supporting personal information.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.

Claims (11)

암호화된 HAI(Hilbert Aggregation Index)와 TDI(Transformed Data Index))를 저장 및 제공하는 서비스 제공 서버;
힐버트 커브를 이용하여 위치 데이터에 대응되는 HAI와 TDI를 생성하고, 상기 HAI와 TDI를 암호화하여 상기 서비스 제공 서버에 업로드하고, 상기 암호화된 HAI와 TDI에 대응되는 복호화키를 생성 및 제공하는 데이터 소유 단말; 및
상기 데이터 소유 단말에 접근하여 상기 복호화키를 획득하고, 상기 서비스 제공 서버에 접근하여 상기 암호화된 HAI와 TDI를 획득한 후, 상기 복호화키를 통해 상기 암호화된 HAI와 TDI를 복호화하여 질문 영역에 대응되는 위치 데이터를 파악하는 데이터 사용 단말;을 포함하며,
상기 서비스 제공 서버는
상기 데이터 소유 단말이 제공하는 암호화된 HAI와 TDI를 저장하는 HAI 및 TDI 저장부;
상기 데이터 사용 단말의 위치 질의에 응답하여, 상기 암호화된 HAI를 제공하는 HAI 제공부; 및
상기 데이터 사용 단말의 레코드 제공 요청에 응답하여, 상기 암호화된 TDI를 검색하여 제공하는 TDI 제공부;를 포함하는 것을 특징으로 하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템.
A service providing server for storing and providing encrypted Hilbert Aggregation Index (HAI) and Transformed Data Index (TDI));
Generates HAI and TDI corresponding to the position data by using the Hilbert curve, encrypts the HAI and TDI and uploads the encrypted HAI and TDI to the service providing server, and generates and provides a decryption key corresponding to the encrypted HAI and TDI Terminal; And
Accessing the data-bearing terminal to acquire the decryption key, acquiring the encrypted HAI and TDI by accessing the service providing server, decrypting the encrypted HAI and TDI through the decryption key, And a data use terminal for recognizing the position data that is obtained by the obtaining,
The service providing server
An HAI and TDI storage unit for storing encrypted HAI and TDI provided by the data-bearing terminal;
An HAI providing unit for providing the encrypted HAI in response to a location query of the data using terminal; And
And a TDI supplier for searching for and providing the encrypted TDI in response to a record providing request of the data using terminal.
제1항에 있어서, 상기 데이터 소유 단말은
위치 데이터를 저장하는 원본 저장부;
힐버트 커브를 이용하여 상기 위치 데이터에 대응되는 HAI와 TDI를 생성하는 HAI 및 TDI 생성부;
상기 HAI와 TDI를 암호화함과 동시에 이에 대응되는 복호화키를 생성하는 암호화부;
상기 암호화된 HAI와 TDI를 상기 서비스 제공 서버에 업로드하는 데이터 업로드부; 및
상기 복호화키를 상기 데이터 사용 단말에 제공하는 복호화키 제공부;를 포함하는 것을 특징으로 하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템.
The method of claim 1, wherein the data-
An original storage unit for storing position data;
An HAI and a TDI generator for generating HAI and TDI corresponding to the position data using a Hilbert curve;
An encryption unit encrypting the HAI and the TDI and generating a corresponding decryption key;
A data upload unit for uploading the encrypted HAI and the TDI to the service providing server; And
And a decryption key providing unit for providing the decryption key to the data using terminal.
삭제delete 제1항에 있어서, 상기 데이터 사용 단말은
상기 데이터 소유 단말로부터 상기 복호화키를 제공받는 복호화키 획득부;
상기 서비스 제공 서버에 위치를 질의하여 상기 암호화된 HAI를 획득한 후 상기 복호화키를 통해 복호화하고, 상기 복호화된 HAI를 검색하여 질의 영역에 해당하는 레코드를 파악하는 HAI 처리부; 및
상기 서비스 제공 서버에 상기 파악된 레코드에 대응되는 암호화된 TDI를 요청하여 제공받고 상기 복호화키를 통해 복호화함으로써, 사용자가 질의한 위치 데이터를 획득하는 TDI 처리부;를 포함하는 것을 특징으로 하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 시스템.
The method of claim 1, wherein the data-
A decryption key obtaining unit for receiving the decryption key from the data-bearing terminal;
An HAI processing unit for querying the service providing server to obtain the encrypted HAI, decrypting the decrypted HAI through the decryption key, and retrieving the decrypted HAI and acquiring a record corresponding to the inquiry area; And
And a TDI processing unit for requesting an encrypted TDI corresponding to the identified record to the service providing server, receiving the decrypted TDI, and decoding the decrypted TDI by using the decryption key, Location data privacy preservation system.
데이터 소유 단말이 힐버트 커브를 이용하여 위치 데이터에 대응되는 HAI(Hilbert Aggregation Index)와 TDI(Transformed Data Index))를 생성한 후 암호화하고, 상기 암호화된 HAI와 TDI는 서비스 제공 서버에 업로드하고, 상기 암호화된 HAI와 TDI에 대응되는 복호화키는 데이터 사용 단말에 제공하는 암호화 단계;
상기 데이터 사용 단말이 상기 서비스 제공 서버에 위치를 질의하여 상기 암호화된 HAI를 획득하고, 상기 복호화키를 통해 상기 암호화된 HAI를 복호화하여 질의 영역에 해당하는 레코드를 파악하는 HAI처리 단계; 및
상기 데이터 사용 단말이 상기 서비스 제공 서버에 상기 레코드 영역을 질의하여 상기 레코드 영역에 대응되는 암호화된 TDI를 획득하고, 상기 복호화키를 통해 상기 암호화된 TDI를 복호화하여 사용자가 질의한 위치 데이터를 획득하는 TDI 처리 단계;를 포함하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 방법.
The data-bearing terminal generates a Hilbert Aggregation Index (HAI) and a Transformed Data Index (TDI) corresponding to the position data using the Hilbert curve, encrypts the encrypted HAI and TDI, uploads the encrypted HAI and TDI to the service providing server, An encryption step of providing a decryption key corresponding to encrypted HAI and TDI to a data using terminal;
An HAI processing step of the data using terminal acquiring the encrypted HAI by querying a location of the service providing server, decrypting the encrypted HAI through the decryption key and grasping a record corresponding to the inquiry area; And
The data using terminal queries the record providing area to the service providing server to acquire the encrypted TDI corresponding to the record area and decrypts the encrypted TDI through the decryption key to obtain the inquired location data TDI processing of the location data in the outsourced database.
제5항에 있어서, 상기 암호화 단계는
힐버트 커브를 이용하여 2차원 위치 데이터를 1차원 데이터로 변환한 후, 힐버트 커브 ID를 참고하여 위치 데이터에 대응되는 HAI 및 TDI를 생성하는 단계;
상기 HAI 및 TDI를 암호화하고, 상기 암호화된 HAI 및 TDI에 대응되는 복호화키를 생성하는 단계;
상기 암호화된 HAI 및 TDI를 상기 서비스 제공 서버에 업로드하는 단계; 및
복호화키 제공을 요청하는 데이터 제공 단말이 발생하면, 상기 데이터 사용 단말에 대한 사용자 인증 절차를 수행한 후 상기 데이터 사용 단말에 상기 복호화키를 제공하는 단계;를 포함하는 것을 특징으로 하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 방법.
6. The method of claim 5, wherein the encrypting step
Converting the two-dimensional position data into one-dimensional data using the Hilbert curve, generating HAI and TDI corresponding to the position data by referring to the Hilbert curve ID;
Encrypting the HAI and TDI, and generating a decryption key corresponding to the encrypted HAI and TDI;
Uploading the encrypted HAI and TDI to the service providing server; And
And providing the decryption key to the data using terminal after performing a user authentication procedure for the data using terminal when a data providing terminal requesting a decryption key is generated, Location data privacy preservation method.
제5항에 있어서, 상기 HAI 처리 단계는
상기 데이터 사용 단말이 상기 서비스 제공 서버에 위치를 질의하여 암호화된 HAI를 제공받는 단계; 및
상기 데이터 사용 단말이 상기 데이터 소유 단말이 사전에 제공한 복호화키를 통해 상기 암호화된 HAI를 복호화하고, 힐버트 커브 ID를 기반으로 질의 영역에 해당하는 레코드를 검색하는 단계를 포함하는 것을 특징으로 하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 방법.
6. The method of claim 5, wherein the HAI processing step
Receiving the encrypted HAI by querying the service providing server for the location; And
And decrypting the encrypted HAI using a decryption key previously provided by the data-bearing terminal and searching for a record corresponding to the inquiry area based on the Hilbert curve ID. A method for preserving location data privacy in a database.
제5항에 있어서, 상기 TDI 처리 단계는
“검색된 레코드 개수ㅧ팬아웃 F(F은 2이상의 자연수)” 가 사용자가 요구하는 k 최근 접점(F는 2 이상의 자연수) 보다 작으면, 레코드 검색 영역을 이웃 그리드 셀로 확장하여 검색을 반복하는 단계;
“검색된 레코드 개수ㅧ팬아웃 F”가 사용자가 요구하는 k 최근 접점 이상이면, 상기 데이터 사용 단말은 상기 검색된 레코드에 대응되는 암호화된 TDI을 상기 서비스 제공 서버를 통해 획득한 후 상기 데이터 소유 단말이 사전에 제공한 복호화키를 이용하여 복호화하여, 사용자가 질의한 위치 데이터를 추출하는 단계;
상기 데이터 사용 단말이 상기 추출된 위치 데이터 중에서 질의 지점으로부터 k-최근접점까지의 거리를 반지름으로 하는 원의 외접 사각형을 질의 영역으로 설정한 후 복호화된 HAI를 기반으로 상기 레코드를 추가 검색하는 단계;
상기 레코드가 추가 검색되면, 상기 추가 검색된 레코드에 대응되는 암호화된 TDI 레코드를 상기 서비스 제공 서버를 통해 추가 획득한 후 상기 복호화키로 복호화하여 사용자가 질의한 위치 데이터를 추가 추출하는 단계; 및
상기 추출된 위치 데이터 중에서 질의 지점으로부터 가장 가까운 k개의 데이터를 최종 결과로 선별하는 단계;를 포함하는 것을 특징으로 하는 아웃소싱 데이터베이스에서의 위치 데이터 프라이버시 보전 방법.
6. The method of claim 5, wherein the TDI processing step comprises:
Repeating the search by expanding the record search area to a neighboring grid cell if the number of records found " fan out F (F is a natural number of 2 or more) " is smaller than a kth contact point (F is a natural number of 2 or more) requested by the user;
If the number of records retrieved " fan-out F " is greater than or equal to the k-th contact point requested by the user, the data using terminal obtains the encrypted TDI corresponding to the retrieved record through the service providing server, Decrypting the decrypted data using the decryption key provided to the user, and extracting position data queried by the user;
Setting a circle circumscribed rectangle having a radius from a query point to a k-most recent contact point as a query area among the extracted position data of the data using terminal, and further searching the record based on the decoded HAI;
Adding the encrypted TDI record corresponding to the further searched record to the service providing server, decrypting the encrypted TDI record with the decryption key, and further extracting the location data queried by the user when the record is further searched; And
And selecting k data closest to the query point from the extracted position data as a final result. ≪ RTI ID = 0.0 > 8. < / RTI >
삭제delete 삭제delete 삭제delete
KR1020130090761A 2013-07-31 2013-07-31 System and method for preserving location data privacy in outsource database KR101481906B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130090761A KR101481906B1 (en) 2013-07-31 2013-07-31 System and method for preserving location data privacy in outsource database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130090761A KR101481906B1 (en) 2013-07-31 2013-07-31 System and method for preserving location data privacy in outsource database

Publications (1)

Publication Number Publication Date
KR101481906B1 true KR101481906B1 (en) 2015-01-14

Family

ID=52588845

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130090761A KR101481906B1 (en) 2013-07-31 2013-07-31 System and method for preserving location data privacy in outsource database

Country Status (1)

Country Link
KR (1) KR101481906B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101791219B1 (en) 2016-02-29 2017-10-27 아주대학교산학협력단 Location data preserving apparatus using point transformation method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090114419A (en) * 2007-01-26 2009-11-03 인터디지탈 테크날러지 코포레이션 Method and apparatus for securing location information and access control using the location information
KR20100075355A (en) * 2008-12-24 2010-07-02 창신정보통신(주) Privacy enhanced mobile phone based path tracking apparatus and its operation mechanism
US20120284511A1 (en) * 2011-05-04 2012-11-08 Qualcomm Incorporated Method and Apparatus for Transmitting Bulk Emergency Data while Preserving User Privacy

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090114419A (en) * 2007-01-26 2009-11-03 인터디지탈 테크날러지 코포레이션 Method and apparatus for securing location information and access control using the location information
KR20100075355A (en) * 2008-12-24 2010-07-02 창신정보통신(주) Privacy enhanced mobile phone based path tracking apparatus and its operation mechanism
US20120284511A1 (en) * 2011-05-04 2012-11-08 Qualcomm Incorporated Method and Apparatus for Transmitting Bulk Emergency Data while Preserving User Privacy

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WEI-WEI NI , NANJING SOUTHEAST UNIVERSITY(2012.01.16) *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101791219B1 (en) 2016-02-29 2017-10-27 아주대학교산학협력단 Location data preserving apparatus using point transformation method

Similar Documents

Publication Publication Date Title
Mouratidis et al. Shortest path computation with no information leakage
Puttaswamy et al. Preserving location privacy in geosocial applications
Kim et al. Hilbert curve-based cryptographic transformation scheme for spatial query processing on outsourced private data
Ghinita Private queries and trajectory anonymization: a dual perspective on location privacy
Dehkordi et al. Improvement of the hash-based RFID mutual authentication protocol
CN104967693A (en) Document similarity calculation method facing cloud storage based on fully homomorphic password technology
CN116415079B (en) Top-K track similarity query method for privacy protection
Gahi et al. Privacy preserving scheme for location-based services
Yuan et al. Towards privacy-preserving and practical image-centric social discovery
WO2018116826A1 (en) Message transmission system, communication terminal, server device, message transmission method, and program
KR101481906B1 (en) System and method for preserving location data privacy in outsource database
Dewri et al. Mobile local search with noisy locations
Khoshgozaran et al. A taxonomy of approaches to preserve location privacy in location-based services
Bu et al. SEF: a secure, efficient, and flexible range query scheme in two-tiered sensor networks
WO2019178792A1 (en) Ciphertext search method and system supporting access control
Wen et al. Sse: A secure searchable encryption scheme for urban sensing and querying
Hashem et al. A unified framework for authenticating privacy preserving location based services
Wang et al. A novel privacy-and integrity-preserving approach for multidimensional data range queries in two-tiered wireless sensor networks
Sarath et al. Privacy preservation and content protection in location based queries
Padmanaban Location privacy in location based services: unsolved problem and challenge
CN112632297B (en) Secure space text skyline query method based on encryption index
JP2016042632A (en) Information concealment device, information concealment method, and information concealment program
CN117272391B (en) Interest point query method and equipment
Zhao et al. RemindU: A secure and efficient location based reminder system
Anju et al. Location Based Service Applications to secure locations with dual encryption

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171124

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190218

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200122

Year of fee payment: 6

R401 Registration of restoration