KR102514819B1 - Method and System for Private information retrieval of requested data from a single database through user crowding - Google Patents

Method and System for Private information retrieval of requested data from a single database through user crowding Download PDF

Info

Publication number
KR102514819B1
KR102514819B1 KR1020210088071A KR20210088071A KR102514819B1 KR 102514819 B1 KR102514819 B1 KR 102514819B1 KR 1020210088071 A KR1020210088071 A KR 1020210088071A KR 20210088071 A KR20210088071 A KR 20210088071A KR 102514819 B1 KR102514819 B1 KR 102514819B1
Authority
KR
South Korea
Prior art keywords
crowd
data
user terminals
requested
request query
Prior art date
Application number
KR1020210088071A
Other languages
Korean (ko)
Other versions
KR20230007170A (en
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 KR1020210088071A priority Critical patent/KR102514819B1/en
Publication of KR20230007170A publication Critical patent/KR20230007170A/en
Application granted granted Critical
Publication of KR102514819B1 publication Critical patent/KR102514819B1/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/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24547Optimisations to support specific applications; Extensibility of optimisers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90324Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 방법 및 시스템이 제시된다. 본 발명에서 제안하는 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 방법은 네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하는 단계, 상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하는 단계, 상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계, 상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하는 단계, 상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 단계 및 상기 군중 데이터 요청 큐어리를 수신 받은 단일 데이터베이스가 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단계를 포함한다. A method and system for achieving private retrieval of requested data from a single database through user crowd formation is presented. The method for achieving private retrieval of requested data from a single database through the formation of a crowd of users proposed in the present invention is a method in which a plurality of user terminals existing in a network collect a crowd for private information retrieval of requested data through a crowd. forming a data request query for a data file that each of a plurality of user terminals in the crowd wants to request; mutually sharing the data request query among all plurality of user terminals in the crowd; Generating a crowd request data list agreed upon by each of a plurality of user terminals, transmitting a crowd data request query to a single database based on the crowd request data list by one user terminal among the plurality of user terminals; and The single database receiving the crowd data request query transmits the requested data files to a plurality of user terminals within the crowd.

Description

사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 방법 및 시스템{Method and System for Private information retrieval of requested data from a single database through user crowding}Method and system for achieving private information retrieval of requested data from a single database through user crowding}

본 발명은 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 방법 및 시스템에 관한 것이다. The present invention relates to a method and system for achieving private retrieval of requested data from a single database through user crowd formation.

최근 데이터 검색 기술에 있어서, 단말이 데이터베이스에 데이터를 요청할 경우 원하는 데이터를 노출하지 않기 위한 큐어리의 정보량의 최소량에 대해서 알려져 있다[1],[2]. 종래기술[1]에서는 그리디 반복 알고리즘(greedy iterative algorithm)을 통해 큐어리를 생성하는 기법을 제시하였으며, 또 다른 종래기술[2]에서는 큐어리의 길이가 충분히 길 경우, 확률적 생성기법을 통해 신속하게 종래기술[1]에서 입증한 큐어리의 최소 정보량으로 원하는 데이터를 노출하지 않으면서 데이터베이스에 데이터를 요청할 수 있음을 보였다. In recent data retrieval technology, when a terminal requests data from a database, it is known about the minimum amount of information in a query for not exposing desired data [1], [2]. In the prior art [1], a technique for generating a queue through a greedy iterative algorithm was proposed, and in another prior art [2], when the length of a queue is sufficiently long, a rapid generation is performed through a stochastic generation technique. It was shown that data can be requested from the database without exposing the desired data with the minimum amount of information of Curiosity, which was proven in the prior art [1].

하지만 이러한 연구들은 기본적으로 단일 단말과 복수의 데이터베이스가 존재하는 네트워크를 가정하였다. 따라서, 복수의 단말이 존재할 때 늘어나는 트래픽 양에 대해서는 고려되지 않았으며, 데이터베이스의 수가 하나인 경우에는 비공개적 회수 달성 기법이 가져다 주는 이점이 없다. 만약 데이터를 요청하고자 하는 복수의 사용자가 군중을 이루어 서로 협력하여 데이터를 요청한다면, 각 단말이 개별적으로 단일 데이터베이스에 데이터를 요청하는 경우보다 더 적은 지연시간으로도 각 단말이 원하는 데이터를 프라이버시를 보장하면서 수신할 수 있다. However, these studies basically assumed a network with a single terminal and multiple databases. Therefore, when a plurality of terminals exist, the increased amount of traffic is not considered, and when the number of databases is one, there is no advantage brought by the non-public recovery achievement technique. If a plurality of users who want to request data form a crowd and cooperate with each other to request data, the privacy of the data each terminal wants is guaranteed with less latency than when each terminal individually requests data to a single database. You can receive while

네트워크 상의 데이터베이스는 개인이 최신 데이터를 검색하는 데 있어서 필수적인 자원이다. 그러나 공개적으로 접속이 가능한 데이터베이스는 역으로 사용자의 요청 내역을 통해 어떤 데이터를 요청했는지 추론할 수 있기에 개인 프라이버시를 침해할 수 있는 위험이 존재한다. Databases on the network are essential resources for individuals to search for up-to-date data. However, there is a risk of invading personal privacy because a publicly accessible database can infer which data has been requested through the user's request details.

따라서 개인이 요청한 데이터에 대한 정보를 데이터베이스 측에서 추론할 수 없도록 하는 통신 기법이 요구된다. 비공개적 회수 달성(private information retrieval)이라고도 불리는 이 기술은 개인 프라이버시 보장을 위한 필수적인 기술 중 하나로 제시되고 있으며, 데이터베이스로부터 개인이 프라이버시를 보장하면서 데이터를 빠르게 수신하는 기술 중 하나로 대두되고 있다. Therefore, a communication technique that prevents the database from inferring information about data requested by an individual is required. This technology, also called private information retrieval, has been proposed as one of the essential technologies for guaranteeing personal privacy, and has emerged as one of the technologies for quickly receiving data from a database while ensuring privacy for individuals.

비공개적 회수 달성 통신 기법에 대한 연구는 기본적으로 개인이 데이터베이스로부터 원하는 데이터와 원하는 데이터 이외의 다른 데이터를 함께 요청하여 원하는 데이터에 대한 정보를 숨기는 기법이 제안되고 있다. 이를 위해, 사용자는 큐어리(query)를 통해 원하는 데이터와 다른 데이터를 함께 데이터베이스에 요청한다. 이 과정에서 종래기술에 따른 비공개적 회수 달성을 위한 기술은 개인이 단순히 불필요한 데이터를 함께 요청하는 기법과 더불어 다수의 데이터베이스에 효율적으로 데이터를 나누어 요청함으로써 데이터 양을 줄이는 방향으로 진행되었다. Research on communication techniques for achieving non-public recall is basically proposing a technique in which an individual requests both desired data and data other than the desired data from the database and hides information about the desired data. To this end, a user requests desired data and other data to the database through a query. In this process, the technology for achieving private recovery according to the prior art has progressed in the direction of reducing the amount of data by efficiently dividing and requesting data to a plurality of databases together with a technique in which an individual simply requests unnecessary data together.

하지만 이러한 기법은 데이터 요청에 참여하는 사용자의 수가 늘어날수록 데이터 양이 빠르게 증가한다는 한계가 있으며 데이터베이스가 하나만 존재하는 상황에서는 효율성이 없어진다. However, this technique has a limitation that the amount of data increases rapidly as the number of users participating in data requests increases, and efficiency is lost in a situation where only one database exists.

[1] H. Sun, S. Jafar, "The capacity of private information retrieval," IEEE Trans. Inf. Theory, vo. 63, no. 7, pp. 4075-4088, Jul. 2017. [1] H. Sun, S. Jafar, "The capacity of private information retrieval," IEEE Trans. Inf. Theory, vo. 63, no. 7, p. 4075-4088, Jul. 2017. [2] H. Seo, W. Choi, "A Stochastic Approach in Private Information Retrieval", IEEE WCNC pp.1-6, Apr. 2018.[2] H. Seo, W. Choi, "A Stochastic Approach in Private Information Retrieval", IEEE WCNC pp.1-6, Apr. 2018.

본 발명이 이루고자 하는 기술적 과제는 복수의 사용자와 단일 데이터베이스가 존재하는 네트워크에서 사용자들이 군중을 이루어 보다 효율적으로 데이터를 프라이빗하게 요청하는 비공개적 회수 달성 방법 및 시스템을 제공하는데 있다. A technical problem to be achieved by the present invention is to provide a method and system for achieving private recovery in which users form a crowd and more efficiently request private data in a network in which a plurality of users and a single database exist.

일 측면에 있어서, 본 발명에서 제안하는 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 방법은 네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하는 단계, 상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하는 단계, 상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계, 상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하는 단계, 상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 단계 및 상기 군중 데이터 요청 큐어리를 수신 받은 단일 데이터베이스가 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단계를 포함한다. In one aspect, the method for achieving private information retrieval of requested data from a single database through the formation of a crowd of users proposed in the present invention achieves private information retrieval of requested data through a crowd of a plurality of user terminals existing in the network. Forming a crowd for the technique, generating a data request query for a data file to be requested by each of a plurality of user terminals in the crowd, and mutually passing the data request query among all plurality of user terminals in the crowd. Sharing, generating a crowd request data list agreed upon by each of the plurality of user terminals, and one user terminal among the plurality of user terminals putting a crowd data request query into a single database based on the crowd request data list. and transmitting, by the single database receiving the crowd data request query, requested data files to a plurality of user terminals within the crowd.

상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계는 상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계까지 소요되는 지연시간(

Figure 112021077445183-pat00001
)은 하기식과 같고, The step of mutually sharing the data request query among all the plurality of user terminals in the crowd is the delay time required until the step of mutually sharing the data request query among all the plurality of user terminals in the crowd (
Figure 112021077445183-pat00001
) is the same as the following formula,

Figure 112021077445183-pat00002
Figure 112021077445183-pat00002

여기서,

Figure 112021077445183-pat00003
은 복수의 사용자 단말의 수,
Figure 112021077445183-pat00004
는 데이터 요청 큐어리를 전송하는데 소요되는 시간을 나타낸다. here,
Figure 112021077445183-pat00003
is the number of a plurality of user terminals,
Figure 112021077445183-pat00004
represents the time required to transmit the data request query.

상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 단계는 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는데 소요되는 지연시간은 군중 내 복수의 사용자 단말의 데이터 요청 큐어리들 중 서로 다른 데이터 파일 개수에 비례하여 증가한다. In the step of transmitting, by one user terminal among the plurality of user terminals, a crowd data request query to a single database based on the crowd request data list, the delay time required for transmitting the crowd data request query to a single database is It increases in proportion to the number of different data files among data request queries of a plurality of user terminals.

상기 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는데 소요되는 지연시간(

Figure 112021077445183-pat00005
)은 하기식과 같고, Delay time required to transmit the crowd data request query to a single database (
Figure 112021077445183-pat00005
) is the same as the following formula,

Figure 112021077445183-pat00006
Figure 112021077445183-pat00006

여기서,

Figure 112021077445183-pat00007
Figure 112021077445183-pat00008
개의 복수의 사용자 단말이 요청하고자 하는 데이터 파일의 수가
Figure 112021077445183-pat00009
개인 경우 서로 다른 데이터 파일의 종류 수를 나타낸다. here,
Figure 112021077445183-pat00007
silver
Figure 112021077445183-pat00008
The number of data files that a plurality of user terminals want to request
Figure 112021077445183-pat00009
In the case of individuals, it indicates the number of different data file types.

상기 군중 데이터 요청 큐어리를 수신 받은 단일 데이터베이스가 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단계는 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는데 소요되는 지연시간(

Figure 112021077445183-pat00010
)은 하기식과 같고, The step of transmitting the requested data files to a plurality of user terminals in the crowd by the single database receiving the crowd data request query is the delay time required to transmit the requested data files to the plurality of user terminals (
Figure 112021077445183-pat00010
) is the same as the following formula,

Figure 112021077445183-pat00011
Figure 112021077445183-pat00011

여기서,

Figure 112021077445183-pat00012
Figure 112021077445183-pat00013
개의 복수의 사용자 단말이 요청하고자 하는 데이터 파일의 수가
Figure 112021077445183-pat00014
개인 경우 서로 다른 데이터 파일의 종류 수,
Figure 112021077445183-pat00015
는 단일 데이터베이스가 단일 데이터 파일을 전송하는데 소요되는 시간을 나타내며, 요청된 데이터 파일들을 전송하는데 소요되는 지연시간(
Figure 112021077445183-pat00016
)은 데이터 파일 수에 비례하여 증가한다. here,
Figure 112021077445183-pat00012
silver
Figure 112021077445183-pat00013
The number of data files that a plurality of user terminals want to request
Figure 112021077445183-pat00014
the number of different types of data files in the case of individuals;
Figure 112021077445183-pat00015
represents the time required for a single database to transmit a single data file, and the delay time required to transmit the requested data files (
Figure 112021077445183-pat00016
) increases in proportion to the number of data files.

상기 요청 데이터 비공개적 회수 달성을 위한 복수의 사용자 단말의 프라이버시가 보호되기 위해 하기식을 만족하고, In order to protect the privacy of a plurality of user terminals for achieving the private collection of the requested data, the following formula is satisfied,

Figure 112021077445183-pat00017
Figure 112021077445183-pat00017

여기서,

Figure 112021077445183-pat00018
는 군중 데이터 요청 큐어리,
Figure 112021077445183-pat00019
Figure 112021077445183-pat00020
중에서 유니폼한 확률로 정해지는 파일 인덱스,
Figure 112021077445183-pat00021
는 단일 데이터베이스에 저장된 서로 다른 데이터 파일의 수,
Figure 112021077445183-pat00022
Figure 112021077445183-pat00023
Figure 112021077445183-pat00024
사이의 상호 정보량(mutual information)을 나타낸다. here,
Figure 112021077445183-pat00018
is the crowd data request query,
Figure 112021077445183-pat00019
Is
Figure 112021077445183-pat00020
A file index determined with a uniform probability among
Figure 112021077445183-pat00021
is the number of different data files stored in a single database,
Figure 112021077445183-pat00022
Is
Figure 112021077445183-pat00023
and
Figure 112021077445183-pat00024
represents the amount of mutual information between

상기 요청 데이터 비공개적 회수 달성하기 위한 프라이버시 레벨(

Figure 112021077445183-pat00025
)은 하기식과 같고, Privacy level to achieve the private collection of the requested data (
Figure 112021077445183-pat00025
) is the same as the following formula,

Figure 112021077445183-pat00026
Figure 112021077445183-pat00026

최적의 요청 데이터 비공개적 회수 달성 조건은 프라이버시 레벨이

Figure 112021077445183-pat00027
를 만족할 때 달성할 수 있으며,
Figure 112021077445183-pat00028
일 때는 요청된 데이터 파일에 대한 정보가 공개된 상태이며,
Figure 112021077445183-pat00029
에 대한 불확실성이 없는 상태이다. The optimal condition for achieving private retrieval of requested data is that the privacy level is
Figure 112021077445183-pat00027
can be achieved when satisfying
Figure 112021077445183-pat00028
When , information about the requested data file is open,
Figure 112021077445183-pat00029
There is no uncertainty about

또 다른 일 측면에 있어서, 본 발명에서 제안하는 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 시스템은 네트워크에서 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하고, 요청하고자 하는 데이터 파일에 대한 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 복수의 사용자 단말 및 상기 복수의 사용자 단말 중 하나의 사용자 단말로부터 상기 군중 데이터 요청 큐어리를 수신 받아 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단일 데이터베이스를 포함하고, 상기 복수의 사용자 단말은 네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성 기법을 위해 군중을 형성하고, 상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하고, 상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하고, 상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하고, 상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송한다. In another aspect, the system for achieving private information retrieval of requested data from a single database through the formation of a crowd of users proposed in the present invention uses a crowd for private information retrieval of requested data through a crowd in a network. A plurality of user terminals transmitting the crowd data request query for the data file to be formed and requested to a single database, and receiving the crowd data request query from one of the plurality of user terminals It includes a single database that transmits requested data files to user terminals, wherein a plurality of user terminals existing in a network form a crowd for a method of achieving private collection of requested data through a crowd, and the crowd Create a data request query for a data file that each of the plurality of user terminals within the crowd wants to request, mutually share the data request query among all the plurality of user terminals in the crowd, and each of the plurality of user terminals A crowd request data list is generated, and one user terminal among the plurality of user terminals transmits a crowd request data list to a single database based on the crowd request data list.

본 발명의 실시예들에 따른 비공개적 회수 달성 기법을 통해 복수의 사용자 단말이 군중을 이루어 보다 효율적으로 원하는 데이터를 노출하지 않으면서 단일 데이터베이스에 데이터를 요청할 수 있다. 또한, 사용자들의 수가 늘어남에 따라 증가하는 트래픽 양에 대한 문제도 개선할 수 있다. A plurality of user terminals can request data from a single database more efficiently without exposing desired data by forming a crowd through the non-public retrieval achievement technique according to embodiments of the present invention. In addition, the problem of increasing traffic volume as the number of users increases can also be improved.

도 1은 본 발명의 일 실시예에 따른 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 시스템의 구성을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 요청 데이터 비공개적 회수 달성 시스템의 각 구성이 동작하는 과정을 설명하기 위한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 군중 내 사용자 단말 수에 따른 전체 지연시간 및 프라이버시 레벨을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 군중 내 사용자 단말 수에 따른 기존 기법과 제안 기법의 전체 지연시간을 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따른 사용자 단말 간 프라이버시 레벨에 따른 전체 지연시간과 데이터베이스에 대한 프라이버시 레벨을 나타내는 도면이다.
도 7은 본 발명의 일 실시예에 따른 사용자 단말의 데이터 요청 빈도에 따른 전체 지연시간과 데이터베이스에 대한 프라이버시 레벨을 나타내는 도면이다.
1 is a diagram showing the configuration of a system for achieving non-public retrieval of requested data from a single database through the formation of a crowd of users according to an embodiment of the present invention.
2 is a flow chart illustrating a method for achieving non-public retrieval of requested data from a single database through the formation of a crowd of users according to an embodiment of the present invention.
3 is a flowchart for explaining the operation of each component of the system for achieving private collection of requested data according to an embodiment of the present invention.
4 is a diagram illustrating total delay time and privacy level according to the number of user terminals in a crowd according to an embodiment of the present invention.
5 is a diagram showing total delay times of existing and proposed techniques according to the number of user terminals in a crowd according to an embodiment of the present invention.
6 is a diagram illustrating a total delay time according to a privacy level between user terminals and a privacy level for a database according to an embodiment of the present invention.
7 is a diagram illustrating a total delay time according to data request frequency of a user terminal and a privacy level for a database according to an embodiment of the present invention.

본 발명에서는 사용자가 단일 데이터베이스에 데이터를 요청할 때 복수의 사용자들이 군중을 이루어 요청 데이터의 프라이버시를 보장하는 비공개적 회수 달성 방법 및 시스템을 제안한다. 일반적으로 사용자가 네트워크 상의 데이터베이스에 원하는 데이터를 요청할 경우, 사용자가 원하는 데이터가 무엇인지 데이터베이스는 알 수 있으며 이를 노출하지 않기 위해서는 원하는 데이터 이외에 추가적인 데이터도 함께 요청해야 한다. 종래기술에 따른 비공개적 회수 달성을 위한 기술에서는 개인이 불필요한 데이터를 함께 요청하는 기법과 다수의 데이터베이스에 데이터를 나누어 요청하는 상황만을 다루었다. 이에 따라 사용자들의 수가 늘어남에 따라 증가하는 트래픽 양에 대한 해결책을 필요로 한다. In the present invention, when a user requests data to a single database, a plurality of users form a crowd to provide a method and system for achieving private recovery, which guarantees the privacy of requested data. In general, when a user requests desired data from a database on the network, the database knows what data the user wants, and in order not to expose it, additional data must be requested in addition to the desired data. In the technology for achieving private recovery according to the prior art, only the technique of requesting unnecessary data by an individual and the situation of dividing and requesting data to a plurality of databases have been dealt with. Accordingly, a solution to the increasing amount of traffic is required as the number of users increases.

네트워크 상의 데이터베이스는 개인이 최신 데이터를 검색하는 데 있어서 필수적인 자원이다. 그러나 공개적으로 접속이 가능한 데이터베이스는 역으로 사용자의 요청 내역을 통해 어떤 데이터를 요청했는지 추론할 수 있기에 개인 프라이버시를 침해할 수 있는 위험이 존재한다. Databases on the network are essential resources for individuals to search for up-to-date data. However, there is a risk of invading personal privacy because a publicly accessible database can infer which data has been requested through the user's request details.

따라서 개인이 요청한 데이터에 대한 정보를 데이터베이스 측에서 추론할 수 없도록 하는 통신 기법이 요구된다. 비공개적 회수 달성(private information retrieval)이라고도 불리는 이 기술은 개인 프라이버시 보장을 위한 필수적인 기술 중 하나로 제시되고 있으며, 데이터베이스로부터 개인이 프라이버시를 보장하면서 데이터를 빠르게 수신하는 기술 중 하나로 대두되고 있다. Therefore, a communication technique that prevents the database from inferring information about data requested by an individual is required. This technology, also called private information retrieval, has been proposed as one of the essential technologies for guaranteeing personal privacy, and has emerged as one of the technologies for quickly receiving data from a database while ensuring privacy for individuals.

이러한 추세와 더불어 본 발명에서는 네트워크에 데이터베이스가 하나만 존재할 때 복수의 개인 단말이 군중을 이루어 효율적인 비공개적 회수 달성을 위한 통신 시스템 기법을 다루고 있다. In line with this trend, the present invention deals with a communication system technique for achieving efficient private collection by forming a crowd of a plurality of personal terminals when there is only one database in the network.

본 발명에서는 사용자들이 군중을 이루어 데이터를 요청할 경우 단일 데이터베이스가 존재하는 네트워크에서도 복수의 사용자가 보다 효율적으로 프라이빗하게 데이터를 요청하는 비공개적 회수 달성 기법을 제시하며, 제안하는 기법은 TRL 2단계 정도의 원천 기술에 해당한다고 볼 수 있다. 이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.In the present invention, when users request data in a crowd, a method for achieving private retrieval is proposed in which a plurality of users request data more efficiently and privately even in a network where a single database exists. It can be considered as a source technology. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 시스템의 구성을 나타내는 도면이다. 1 is a diagram showing the configuration of a system for achieving non-public retrieval of requested data from a single database through the formation of a crowd of users according to an embodiment of the present invention.

도 1을 참조하면,

Figure 112021077445183-pat00030
개의 사용자 단말(110)과 사용자 단말이 요청하는 데이터를 전송해주는 단일 데이터베이스(120)로 구성된 네트워크를 가정한다. 데이터베이스는 서로 다른
Figure 112021077445183-pat00031
개의 데이터 파일
Figure 112021077445183-pat00032
(121)를 저장하고 있다.
Figure 112021077445183-pat00033
개의 파일은 모두 동일한 크기를 갖는다. 각각의 사용자 단말은 임의의 파일 하나를 단일 데이터베이스(120)에 요청하고자 한다. 사용자 단말이 각각의 요청하고자 하는 파일을 원하는 확률은 유니폼(uniform)하며 이때 임의의 사용자 단말
Figure 112021077445183-pat00034
가 요청하는 파일을
Figure 112021077445183-pat00035
로 나타낸다. Referring to Figure 1,
Figure 112021077445183-pat00030
Assume a network composed of two user terminals 110 and a single database 120 transmitting data requested by the user terminals. databases are different
Figure 112021077445183-pat00031
data files
Figure 112021077445183-pat00032
(121) is stored.
Figure 112021077445183-pat00033
All files have the same size. Each user terminal wants to request one arbitrary file from the single database 120 . The probability that a user terminal wants each file to request is uniform, and at this time, any user terminal
Figure 112021077445183-pat00034
files requested by
Figure 112021077445183-pat00035
represented by

복수의 사용자 단말(110) 간 통신과 복수의 사용자 단말(110)과 단일 데이터베이스(120) 사이의 통신은 무소음 채널을 통해 이루어지며 양방향 통신이 가능하며 복수의 사용자 단말(110) 간 통신은 단일 데이터베이스(120) 측에서 엿들을 수 없다고 가정한다. Communication between the plurality of user terminals 110 and communication between the plurality of user terminals 110 and the single database 120 is performed through a noiseless channel, and bidirectional communication is possible, and communication between the plurality of user terminals 110 is a single database. Assume that the (120) side cannot overhear.

복수의 사용자 단말(110)이 단일 데이터 파일을 요청하는 데이터 요청 큐어리를 전송하는데 소용되는 시간은

Figure 112021077445183-pat00036
이며 단일 데이터베이스가 단일 데이터 파일을 전송하는데 소요되는 시간은
Figure 112021077445183-pat00037
이다. 데이터 요청 큐어리 전송 시간 및 데이터 파일 전송 시간은 파일의 수에 비례하여 늘어난다. The time required for the plurality of user terminals 110 to transmit a data request query requesting a single data file is
Figure 112021077445183-pat00036
and the time taken for a single database to transfer a single data file is
Figure 112021077445183-pat00037
am. Data request queue transmission time and data file transmission time increase in proportion to the number of files.

본 발명의 일 실시예에 따른 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 시스템은 복수의 사용자 단말(110) 및 단일 데이터베이스(120)를 포함한다. A system for achieving private retrieval of requested data from a single database through user crowd formation according to an embodiment of the present invention includes a plurality of user terminals 110 and a single database 120 .

본 발명의 일 실시예에 따른 복수의 사용자 단말(110)은 네트워크에서 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하고, 요청하고자 하는 데이터 파일에 대한 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송한다. A plurality of user terminals 110 according to an embodiment of the present invention form a crowd for a private information retrieval technique through a crowd in a network, and request crowd data for a data file to be requested. Send queries to a single database.

먼저, 네트워크에 존재하는 복수의 사용자 단말(110)이 군중을 통한 요청 데이터 비공개적 회수 달성 기법을 위해 군중을 형성한다. 도 1을 참조하면, 본 발명의 일 실시예에 따른 군중 내 복수의 사용자 단말(110)은 사용자 단말1(111), 사용자 단말2(112), ..., 사용자 단말N(113)을 포함한다. First, a plurality of user terminals 110 existing in the network form a crowd for a method of achieving private collection of requested data through the crowd. Referring to FIG. 1, a plurality of user terminals 110 in a crowd according to an embodiment of the present invention include a user terminal 1 111, a user terminal 2 112, ..., and a user terminal N 113. do.

이후, 형성된 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성한다. 도 1을 참조하면, 본 발명의 일 실시예에 따른 사용자 단말1(111)은 데이터 요청 큐어리(F1)를 생성하고, 사용자 단말2(112)는 데이터 요청 큐어리(F2)를 생성하고, 사용자 단말N(113)은 데이터 요청 큐어리(FN)를 생성한다. Thereafter, each of a plurality of user terminals in the formed crowd creates a data request query for a data file to be requested. Referring to FIG. 1 , user terminal 1 111 according to an embodiment of the present invention generates a data request query F 1 , and user terminal 2 112 generates a data request query F 2 . And, the user terminal N 113 generates a data request query (F N ).

군중 내 복수의 사용자 단말(110) 간에 데이터 요청 큐어리(F1, F2, ..., FN)를 상호 공유한다. The data request query (F 1 , F 2 , ... , F N ) is mutually shared among the plurality of user terminals 110 in the crowd.

군중 내 모든 복수의 사용자 단말(110) 간에 데이터 요청 큐어리(F1, F2, ..., FN) 공유를 완료하면, 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성한다. When sharing of the data request query (F 1 , F 2 , ... , F N ) is completed among all the plurality of user terminals 110 in the crowd, each of the plurality of user terminals generates an agreed upon crowd request data list.

이후, 복수의 사용자 단말(110) 중 임의의 하나의 사용자 단말이 합의된 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송한다(131). Thereafter, any one of the plurality of user terminals 110 transmits a crowd data request query to a single database based on the agreed upon crowd request data list (131).

본 발명의 일 실시예에 따른 단일 데이터베이스(120)는 복수의 사용자 단말(110) 중 하나의 사용자 단말로부터 군중 데이터 요청 큐어리를 수신 받아 군중 내 복수의 사용자 단(110)말에게 요청된 데이터 파일들을 전송한다(132). 단일 데이터베이스(120)에는 복수의 데이터베이스 데이터(121)가 저장될 수 있다. The single database 120 according to an embodiment of the present invention receives a crowd data request query from one of the plurality of user terminals 110 and receives a data file requested by a plurality of user terminals 110 in the crowd. (132). A plurality of database data 121 may be stored in a single database 120 .

도 2는 본 발명의 일 실시예에 따른 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 방법을 설명하기 위한 흐름도이다. 2 is a flow chart illustrating a method for achieving non-public retrieval of requested data from a single database through the formation of a crowd of users according to an embodiment of the present invention.

제안하는 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 방법은 네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하는 단계(210), 상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하는 단계(220), 상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계(230), 상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하는 단계(240), 상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 단계(250) 및 상기 군중 데이터 요청 큐어리를 수신 받은 단일 데이터베이스가 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단계(260)를 포함한다. The proposed method for achieving private retrieval of requested data from a single database through formation of a crowd of users is a step in which a plurality of user terminals existing in the network form a crowd for private information retrieval of requested data through a crowd. (210), generating a data request query for a data file to be requested by each of the plurality of user terminals in the crowd (220), mutually sharing the data request query among all the plurality of user terminals in the crowd Step 230, each of the plurality of user terminals generating an agreed crowd request data list Step 240, one user terminal among the plurality of user terminals performs a crowd data request query based on the crowd request data list Transmitting to a single database (250) and transmitting (260) the requested data files to a plurality of user terminals in the crowd by the single database receiving the crowd data request query.

단계(210)에서, 네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성한다. 도 1을 참조하면, 본 발명의 일 실시예에 따른 군중 내 복수의 사용자 단말(110)은 사용자 단말1(111), 사용자 단말2(112), ..., 사용자 단말N(113)을 포함한다. In step 210, a plurality of user terminals present in the network form a crowd for private information retrieval of requested data through the crowd. Referring to FIG. 1, a plurality of user terminals 110 in a crowd according to an embodiment of the present invention include a user terminal 1 111, a user terminal 2 112, ..., and a user terminal N 113. do.

단계(220)에서, 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성한다. 도 1을 참조하면, 본 발명의 일 실시예에 따른 사용자 단말1(111)은 데이터 요청 큐어리(F1)를 생성하고, 사용자 단말2(112)는 데이터 요청 큐어리(F2)를 생성하고, 사용자 단말N(113)은 데이터 요청 큐어리(FN)를 생성한다. In step 220, each of a plurality of user terminals in the crowd creates a data request query for a data file to be requested. Referring to FIG. 1 , user terminal 1 111 according to an embodiment of the present invention generates a data request query F 1 , and user terminal 2 112 generates a data request query F 2 . And, the user terminal N 113 generates a data request query (F N ).

단계(230)에서, 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리(F1, F2, ..., FN)를 상호 공유한다. In step 230, the data request queries F 1 , F 2 , ... , F N are mutually shared among all the plurality of user terminals in the crowd.

단계(240)에서, 군중 내 모든 복수의 사용자 단말 간에 데이터 요청 큐어리(F1, F2, ..., FN) 공유를 완료하면, 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성한다. In step 240, when sharing of the data request query (F 1 , F 2 , ... , F N ) is completed among all of the plurality of user terminals in the crowd, each of the plurality of user terminals generates an agreed upon crowd request data list. generate

단계(250)에서, 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송한다. In step 250, one user terminal among a plurality of user terminals transmits a crowd data request query to a single database based on the crowd request data list.

단계(260)에서, 군중 데이터 요청 큐어리를 수신 받은 단일 데이터베이스가 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송한다. In step 260, the single database receiving the crowd data request query transmits the requested data files to a plurality of user terminals within the crowd.

도 3을 참조하여, 본 발명의 일 실시예에 따른 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 시스템의 각 구성이 동작하는 과정을 더욱 상세히 설명한다. Referring to FIG. 3 , the operation process of each component of the system for achieving non-public retrieval of requested data from a single database through the formation of a crowd of users according to an embodiment of the present invention will be described in more detail.

도 3은 본 발명의 일 실시예에 따른 요청 데이터 비공개적 회수 달성 시스템의 각 구성이 동작하는 과정을 설명하기 위한 흐름도이다. 3 is a flowchart for explaining the operation of each component of the system for achieving private collection of requested data according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 시스템은 복수의 사용자 단말 및 단일 데이터베이스를 포함한다. A system for achieving private retrieval of requested data from a single database through user crowd formation according to an embodiment of the present invention includes a plurality of user terminals and a single database.

도 3을 참조하면, 단계(320)은 복수의 사용자 단말 중 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 하나의 사용자 단말이 동작하는 과정을 나타내고, 단계(310)은 복수의 사용자 단말 중 군중 데이터 요청 큐어리를 전송하지 않는 나머지 사용자 단말들이 동작하는 과정을 나타내고, 단계(330)은 단일 데이터베이스가 동작하는 과정을 나타낸다. Referring to FIG. 3, step 320 shows a process in which one user terminal transmitting a crowd data request query to a single database among a plurality of user terminals operates, and step 310 shows a process of operating crowd data among a plurality of user terminals. The process of operating the remaining user terminals not transmitting the request query is shown, and step 330 shows the process of operating a single database.

먼저, 네트워크에 존재하는 복수의 사용자 단말에서 원하는 데이터가 발생한다고 가정한다(311, 321). 그러면, 네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성한다. First, it is assumed that desired data is generated from a plurality of user terminals existing in the network (311, 321). Then, a plurality of user terminals present in the network form a crowd for private information retrieval of requested data through the crowd.

형성된 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성한다(312, 322). Each of a plurality of user terminals in the formed crowd creates a data request query for a data file to be requested (312, 322).

이후, 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유한다(313, 323). Thereafter, the data request query is mutually shared among all the plurality of user terminals in the crowd (313, 323).

군중 내 모든 복수의 사용자 단말 간에 데이터 요청 큐어리를 상호 공유하는 단계까지 소요되는 지연시간(

Figure 112021077445183-pat00038
)은 하기식과 같다: Delay time required to mutually share the data request query among all the plurality of user terminals in the crowd (
Figure 112021077445183-pat00038
) is equal to:

Figure 112021077445183-pat00039
.
Figure 112021077445183-pat00039
.

여기서,

Figure 112021077445183-pat00040
은 복수의 사용자 단말의 수,
Figure 112021077445183-pat00041
는 데이터 요청 큐어리를 전송하는데 소요되는 시간을 나타낸다. here,
Figure 112021077445183-pat00040
is the number of a plurality of user terminals,
Figure 112021077445183-pat00041
represents the time required to transmit the data request query.

군중 내 모든 복수의 사용자 단말 간에 데이터 요청 큐어리 공유를 완료하면, 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성한다(314, 324). When sharing of the data request query is completed among all the plurality of user terminals in the crowd, each of the plurality of user terminals generates an agreed upon crowd request data list (314, 324).

복수의 사용자 단말 중 하나의 사용자 단말이 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송한다(325). One user terminal among a plurality of user terminals transmits a crowd data request query to a single database based on the crowd request data list (325).

이때 군중 내 복수의 사용자 단말의 요청 데이터 중 서로 다른 데이터 파일의 수에 비례하여 군중 데이터 요청 단계에 소요되는 지연시간이 늘어난다. 예를 들어, 3명의 사용자가 요청하고자 하는 데이터 파일이

Figure 112021077445183-pat00042
일 경우
Figure 112021077445183-pat00043
은 겹치기 때문에 전체 소요 시간은
Figure 112021077445183-pat00044
가 된다. At this time, the delay time required for the crowd data request step increases in proportion to the number of different data files among the requested data of a plurality of user terminals in the crowd. For example, a data file that 3 users want to request is
Figure 112021077445183-pat00042
case
Figure 112021077445183-pat00043
overlap, so the total time required is
Figure 112021077445183-pat00044
becomes

군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는데 소요되는 지연시간(

Figure 112021077445183-pat00045
)은 하기식과 같다: Latency to send crowd data request queries to a single database (
Figure 112021077445183-pat00045
) is equal to:

Figure 112021077445183-pat00046
.
Figure 112021077445183-pat00046
.

여기서,

Figure 112021077445183-pat00047
Figure 112021077445183-pat00048
개의 복수의 사용자 단말이 요청하고자 하는 데이터 파일의 수가
Figure 112021077445183-pat00049
개인 경우 서로 다른 데이터 파일의 종류 수를 나타낸다. here,
Figure 112021077445183-pat00047
silver
Figure 112021077445183-pat00048
The number of data files that a plurality of user terminals want to request
Figure 112021077445183-pat00049
In the case of individuals, it indicates the number of different data file types.

단일 데이터베이스는 복수의 사용자 단말 중 하나의 사용자 단말로부터 군중 데이터 요청 큐어리를 수신 받는다(330). A single database receives a crowd data request query from one user terminal among a plurality of user terminals (330).

단일 데이터베이스는 저장된 데이터 파일 중 요청된 데이터 파일을 군중 내 복수의 사용자 단말에게 전송한다(332). The single database transmits the requested data file among the stored data files to a plurality of user terminals in the crowd (332).

이때 멀티캐스트 시간, 다시 말해 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는데 소요되는 지연시간(

Figure 112021077445183-pat00050
)은 하기식과 같다: At this time, the multicast time, that is, the delay time required to transmit the data files requested to the plurality of user terminals (
Figure 112021077445183-pat00050
) is equal to:

Figure 112021077445183-pat00051
.
Figure 112021077445183-pat00051
.

여기서,

Figure 112021077445183-pat00052
Figure 112021077445183-pat00053
개의 복수의 사용자 단말이 요청하고자 하는 데이터 파일의 수가
Figure 112021077445183-pat00054
개인 경우 서로 다른 데이터 파일의 종류 수,
Figure 112021077445183-pat00055
는 단일 데이터베이스가 단일 데이터 파일을 전송하는데 소요되는 시간을 나타내다. 요청된 데이터 파일들을 전송하는데 소요되는 지연시간(
Figure 112021077445183-pat00056
)은 데이터 파일 수에 비례하여 증가한다. here,
Figure 112021077445183-pat00052
silver
Figure 112021077445183-pat00053
The number of data files that a plurality of user terminals want to request
Figure 112021077445183-pat00054
the number of different types of data files in the case of individuals;
Figure 112021077445183-pat00055
represents the time required for a single database to transfer a single data file. Delay time required to transmit the requested data files (
Figure 112021077445183-pat00056
) increases in proportion to the number of data files.

따라서 전체 지연시간

Figure 112021077445183-pat00057
Figure 112021077445183-pat00058
으로 나타낼 수 있다. Therefore, the total delay time
Figure 112021077445183-pat00057
Is
Figure 112021077445183-pat00058
can be expressed as

군중 내 복수의 사용자 단말은 요청했던 데이터 파일을 데이터베이스로부터 수신한다(316, 326). A plurality of user terminals in the crowd receive the requested data file from the database (316, 326).

임의의 사용자 단말이 데이터베이스에 데이터 파일

Figure 112021077445183-pat00059
를 요청하기 위해 군중 데이터 요청 큐어리
Figure 112021077445183-pat00060
를 보낸다고 하자. 파일 인덱스
Figure 112021077445183-pat00061
Figure 112021077445183-pat00062
중에서 유니폼한 확률로 정해진다. 그러면 정보이론의 관점에서 사용자 단말의 프라이버시가 완벽하게 보호되기 위해서는 다음 식을 만족하여야 한다(perfect privacy condition): Arbitrary user terminal files data files in the database
Figure 112021077445183-pat00059
Crowd data request query to request
Figure 112021077445183-pat00060
Suppose we send file index
Figure 112021077445183-pat00061
Is
Figure 112021077445183-pat00062
determined by uniform probability. Then, from the point of view of information theory, in order to perfectly protect the privacy of the user terminal, the following equation must be satisfied (perfect privacy condition):

Figure 112021077445183-pat00063
.
Figure 112021077445183-pat00063
.

여기서,

Figure 112021077445183-pat00064
는 군중 데이터 요청 큐어리,
Figure 112021077445183-pat00065
Figure 112021077445183-pat00066
중에서 유니폼한 확률로 정해지는 파일 인덱스,
Figure 112021077445183-pat00067
는 단일 데이터베이스에 저장된 서로 다른 데이터 파일의 수,
Figure 112021077445183-pat00068
Figure 112021077445183-pat00069
Figure 112021077445183-pat00070
사이의 상호 정보량(mutual information)을 나타낸다. here,
Figure 112021077445183-pat00064
is the crowd data request query,
Figure 112021077445183-pat00065
Is
Figure 112021077445183-pat00066
A file index determined with a uniform probability among
Figure 112021077445183-pat00067
is the number of different data files stored in a single database,
Figure 112021077445183-pat00068
Is
Figure 112021077445183-pat00069
and
Figure 112021077445183-pat00070
represents the amount of mutual information between

하지만, 완벽한 프라이버시 조건은 전체 파일의 카디널리티(cardinality)에 영향을 받는다. 따라서 전체 파일의 수

Figure 112021077445183-pat00071
가 늘어남에 따라 완벽한 프라이버시 조건은 만족하기 어려워진다. 따라서, 본 발명에서는 프라이버시가 보장되는 정도를 측정하기 위해 프라이버시 레벨(privacy level)이라는 메트릭을 제안한다. 제안하는 프라이버시 레벨(
Figure 112021077445183-pat00072
)은 다음과 같은 식으로 나타낼 수 있다: However, the perfect privacy condition is affected by the cardinality of the entire file. Therefore, the total number of files
Figure 112021077445183-pat00071
As , the perfect privacy condition becomes difficult to satisfy. Therefore, in the present invention, a metric called a privacy level is proposed to measure the degree to which privacy is guaranteed. The suggested privacy level (
Figure 112021077445183-pat00072
) can be expressed as:

Figure 112021077445183-pat00073
.
Figure 112021077445183-pat00073
.

완벽한 프라이버시 조건은 프라이버시 레벨이

Figure 112021077445183-pat00074
를 만족할 때 달성할 수 있으며
Figure 112021077445183-pat00075
일 때는 사용자가 요청한 데이터 파일에 대한 정보가 공개된 상태이며
Figure 112021077445183-pat00076
에 대한 불확실성이 없는 상태이다. The perfect privacy condition is that the privacy level
Figure 112021077445183-pat00074
can be achieved when satisfying
Figure 112021077445183-pat00075
When , the information about the data file requested by the user is public.
Figure 112021077445183-pat00076
There is no uncertainty about

도 4는 본 발명의 일 실시예에 따른 군중 내 사용자 단말 수에 따른 전체 지연시간 및 프라이버시 레벨을 나타내는 도면이다. 4 is a diagram illustrating total delay time and privacy level according to the number of user terminals in a crowd according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 성능은 네트워크 내에

Figure 112021077445183-pat00077
개의 사용자 단말이 단일 데이터베이스에 데이터를 요청할 때 각각의 단말 별로 데이터를 요청하는 상황과 군중을 형성하여 데이터를 요청할 때 소요되는 전체 지연시간(Overall latency)
Figure 112021077445183-pat00078
와 프라이버시 레벨
Figure 112021077445183-pat00079
로 측정하였다. Performance according to an embodiment of the present invention is within the network
Figure 112021077445183-pat00077
When two user terminals request data from a single database, the situation in which each terminal requests data and the overall latency required when requesting data by forming a crowd (Overall latency)
Figure 112021077445183-pat00078
and privacy level
Figure 112021077445183-pat00079
was measured.

도 4를 참조하면, 복수의 사용자 단말 간 프라이버시 레벨 조건과 데이터베이스에 대한 프라이버시 레벨 조건이 없는 경우를 나타낸다. Referring to FIG. 4 , a case in which there is no privacy level condition between a plurality of user terminals and a privacy level condition for a database is shown.

시뮬레이션 환경은 단일 데이터베이스에

Figure 112021077445183-pat00080
개의 파일이 저장되어있는 환경을 가정하였다. 또한 단일 데이터 파일을 전송하는데 소요되는 시간은
Figure 112021077445183-pat00081
이며, 단일 데이터 요청 큐어리를 전송하는데 소요되는 시간은
Figure 112021077445183-pat00082
이라고 가정하였다. The simulation environment is in a single database
Figure 112021077445183-pat00080
It is assumed that an environment in which two files are stored. Also, the time taken to transfer a single data file is
Figure 112021077445183-pat00081
, and the time required to transmit a single data request query is
Figure 112021077445183-pat00082
was assumed.

시뮬레이션 결과를 살펴보면 군중 내 사용자 단말 수가 증가하는 경우 전체 지연시간(CIA Privacy Level)이 선형적으로 증가하는 것을 확인할 수 있다. 또한 데이터베이스에 대한 프라이버시 레벨(CIA Latency)도 함께 증가하여 사용자 단말 수가 많을수록 높은 수준의 프라이버시를 보장하는 것이 가능함을 확인할 수 있다.Looking at the simulation results, it can be seen that the total latency (CIA Privacy Level) increases linearly when the number of user terminals in the crowd increases. In addition, it can be seen that the privacy level (CIA Latency) for the database also increases, so that a higher level of privacy can be guaranteed as the number of user terminals increases.

도 5는 본 발명의 일 실시예에 따른 군중 내 사용자 단말 수에 따른 기존 기법과 제안 기법의 전체 지연시간을 나타내는 도면이다. 5 is a diagram showing total delay times of existing and proposed techniques according to the number of user terminals in a crowd according to an embodiment of the present invention.

도 5를 참조하면, 데이터베이스에 대한 프라이버시 레벨 조건(

Figure 112021077445183-pat00083
)이 존재하는 경우를 나타낸다. Referring to FIG. 5, the privacy level condition for the database (
Figure 112021077445183-pat00083
) indicates the presence of

시뮬레이션 환경은 단일 데이터베이스에

Figure 112021077445183-pat00084
개의 파일이 저장되어있는 환경을 가정하였다. 또한 단일 데이터 파일을 전송하는데 소요되는 시간은
Figure 112021077445183-pat00085
이며 단일 데이터 요청 큐어리를 전송하는데 소요되는 시간은
Figure 112021077445183-pat00086
이라고 가정하였으며, 서버에 대한 프라이버시 레벨 조건
Figure 112021077445183-pat00087
를 만족하도록 데이터를 요청한다.The simulation environment is in a single database
Figure 112021077445183-pat00084
It is assumed that an environment in which two files are stored. Also, the time taken to transfer a single data file is
Figure 112021077445183-pat00085
and the time taken to transmit a single data request query is
Figure 112021077445183-pat00086
, and the privacy level condition for the server
Figure 112021077445183-pat00087
request data to satisfy

시뮬레이션 결과를 살펴보면 기존 기법과 제안기법 모두 군중 내 사용자 단말 수가 증가함에 따라 전체 지연시간이 증가하는 것을 확인할 수 있다. 하지만 제안 기법을 사용하는 경우에는 일정 수 이상의 사용자가 존재하면 군중 내 사용자 단말들의 요청 데이터만으로도 서버에 대한 프라이버시 레벨 조건을 만족할 수 있기에 증가 속도가 기존 기법에 비해 매우 적음을 알 수 있다. Looking at the simulation results, it can be seen that the total delay time increases as the number of user terminals in the crowd increases in both the existing and proposed methods. However, in the case of using the proposed technique, if there are more than a certain number of users, the privacy level condition for the server can be satisfied with only the requested data of the user terminals in the crowd, so the increase rate is very small compared to the existing technique.

도 6은 본 발명의 일 실시예에 따른 사용자 단말 간 프라이버시 레벨에 따른 전체 지연시간과 데이터베이스에 대한 프라이버시 레벨을 나타내는 도면이다. 6 is a diagram illustrating a total delay time according to a privacy level between user terminals and a privacy level for a database according to an embodiment of the present invention.

도 6을 참조하면, 사용자 단말 간 프라이버시 레벨 조건(

Figure 112021077445183-pat00088
)이 존재하는 경우를 나타낸다. Referring to FIG. 6, the privacy level condition between user terminals (
Figure 112021077445183-pat00088
) indicates the presence of

시뮬레이션 환경은

Figure 112021077445183-pat00089
명의 사용자 단말이 군중을 이루며 단일 데이터베이스에
Figure 112021077445183-pat00090
개의 파일이 저장되어있는 환경을 가정하였다. 또한 단일 데이터 파일을 전송하는데 소요되는 시간은
Figure 112021077445183-pat00091
이며 단일 데이터 요청 큐어리를 전송하는데 소요되는 시간은
Figure 112021077445183-pat00092
이라고 가정하였다.the simulation environment
Figure 112021077445183-pat00089
A crowd of user terminals is stored in a single database.
Figure 112021077445183-pat00090
It is assumed that an environment in which two files are stored. Also, the time taken to transfer a single data file is
Figure 112021077445183-pat00091
and the time taken to transmit a single data request query is
Figure 112021077445183-pat00092
was assumed.

시뮬레이션 결과를 살펴보면 사용자간 프라이버시 레벨 조건이 높아질수록 데이터베이스에 대한 프라이버시 레벨(CIA Privacy Level)도 함께 증가하는 것을 볼 수 있다. 하지만 어느 수준 이상이 되면 요청 데이터 리스트가 데이터베이스 내 모든 파일을 포함하게 되어 더 이상 데이터베이스에 대한 프라이버시 레벨이 높아지지 않는다. 또한 일정 수준 이하의 사용자 단말 간 프라이버시 레벨 조건에서는 전체 지연시간(CIA Overall Latency)이 느리게 증가하는 것을 볼 수 있다. 이는 사용자 단말 간 프라이버시 레벨 조건이 낮을 때에는 전체 지연시간이 데이터베이스에 대한 프라이버시 레벨 조건에 영향을 받다가 사용자 단말 간 프라이버시 레벨 조건이 높아지면 전체 지연시간이 사용자 단말 간 프라이버시 레벨 조건에 따라 함께 증가하기 때문이다. Looking at the simulation results, it can be seen that as the privacy level condition between users increases, the privacy level for the database (CIA Privacy Level) also increases. However, above a certain level, the requested data list includes all files in the database, so the privacy level for the database does not increase any more. In addition, under the condition of the privacy level between user terminals below a certain level, it can be seen that the overall latency (CIA Overall Latency) increases slowly. This is because when the privacy level condition between user terminals is low, the total delay time is affected by the privacy level condition for the database, but when the privacy level condition between user terminals increases, the total delay time increases according to the privacy level condition between user terminals. .

도 7은 본 발명의 일 실시예에 따른 사용자 단말의 데이터 요청 빈도에 따른 전체 지연시간과 데이터베이스에 대한 프라이버시 레벨을 나타내는 도면이다.7 is a diagram illustrating a total delay time according to data request frequency of a user terminal and a privacy level for a database according to an embodiment of the present invention.

도 7을 참조하면, 사용자 단말 간 프라이버시 레벨 조건(

Figure 112021077445183-pat00093
)이 존재하는 경우를 나타낸다. Referring to FIG. 7, the privacy level condition between user terminals (
Figure 112021077445183-pat00093
) indicates the presence of

시뮬레이션 환경은

Figure 112021077445183-pat00094
명의 사용자 단말이 모일 때까지 군중을 형성하며 단일 데이터베이스에
Figure 112021077445183-pat00095
개의 파일이 저장되어있는 환경을 가정하였다. 또한 단일 데이터 파일을 전송하는데 소요되는 시간은
Figure 112021077445183-pat00096
이며 단일 데이터 요청 큐어리를 전송하는데 소요되는 시간은
Figure 112021077445183-pat00097
이라고 가정하였다. the simulation environment
Figure 112021077445183-pat00094
form a crowd until a number of user terminals are gathered and stored in a single database
Figure 112021077445183-pat00095
It is assumed that an environment in which two files are stored. Also, the time taken to transfer a single data file is
Figure 112021077445183-pat00096
and the time taken to transmit a single data request query is
Figure 112021077445183-pat00097
was assumed.

시뮬레이션 결과를 보면 사용자 단말의 데이터 요청 빈도가 높아짐에 따라 전체 지연시간이 감소하는 것을 확인할 수 있다. 이는 군중 내 사용자 단말 수를 모집하기 위해 소요되는 평균 시간이

Figure 112021077445183-pat00098
에 반비례하여 감소하기 때문이다. 데이터베이스에 대한 프라이버시 레벨은 동일한 것을 확인할 수 있는데 이는 군중 내 사용자 단말 수가 동일하기에 요청하는 데이터 파일 리스트의 수가 일정하기 때문이다. Looking at the simulation results, it can be seen that the total delay time decreases as the frequency of requesting data from the user terminal increases. This means that the average time taken to recruit the number of user terminals in the crowd is
Figure 112021077445183-pat00098
because it decreases in inverse proportion to It can be confirmed that the privacy level for the database is the same because the number of user terminals in the crowd is the same and the number of requested data file lists is constant.

본 발명에서 제안하는 기법을 사용하여 네트워크 내에

Figure 112021077445183-pat00099
개의 사용자 단말이 단일 데이터베이스에 데이터를 요청할 때 각 상황 별로 전체 지연시간을 다음과 같이 분석할 수 있다. 각 사용자 단말이
Figure 112021077445183-pat00100
중에서 각 파일을 원하는 확률은 유니폼 하다고 가정하였다.In the network using the technique proposed in the present invention
Figure 112021077445183-pat00099
When the number of user terminals request data from a single database, the total delay time for each situation can be analyzed as follows. each user terminal
Figure 112021077445183-pat00100
It is assumed that the probability of wanting each file is uniform.

사용자 단말 간 프라이버시 레벨 조건과 데이터베이스에 대한 프라이버시 레벨 조건이 없는 경우, 전체 지연시간에 대한 계산 값은 다음과 같이 나타낼 수 있다: When there is no privacy level condition between user terminals and a privacy level condition for the database, the calculated value for the total delay time can be expressed as follows:

Figure 112021077445183-pat00101
.
Figure 112021077445183-pat00101
.

또한

Figure 112021077445183-pat00102
은 다음 확률 분포를 따른다: also
Figure 112021077445183-pat00102
follows the probability distribution:

Figure 112021077445183-pat00103
.
Figure 112021077445183-pat00103
.

이때

Figure 112021077445183-pat00104
Figure 112021077445183-pat00105
값을 갖는 확률 값이다. 사용자 단말 간 프라이버시 레벨 조건이 없기에 각 사용자 단말이 요청하는 데이터 파일 수
Figure 112021077445183-pat00106
은 1이다. At this time
Figure 112021077445183-pat00104
silver
Figure 112021077445183-pat00105
It is a probability value that has a value. The number of data files requested by each user terminal because there is no privacy level condition between user terminals
Figure 112021077445183-pat00106
is 1.

따라서,

Figure 112021077445183-pat00107
에 대한 전체 지연시간
Figure 112021077445183-pat00108
의 기댓값인 평균 전체 지연시간
Figure 112021077445183-pat00109
는 다음과 같이 나타낼 수 있다: thus,
Figure 112021077445183-pat00107
total delay time for
Figure 112021077445183-pat00108
Average overall latency, which is the expected value of
Figure 112021077445183-pat00109
can be expressed as:

Figure 112021077445183-pat00110
.
Figure 112021077445183-pat00110
.

이때

Figure 112021077445183-pat00111
Figure 112021077445183-pat00112
이다. At this time
Figure 112021077445183-pat00111
silver
Figure 112021077445183-pat00112
am.

또한, 제안하는 기법으로 데이터를 요청하는 경우 달성할 수 있는 평균 프라이버시 레벨은 다음과 같이 나타낼 수 있다: In addition, the average privacy level that can be achieved when requesting data with the proposed technique can be expressed as follows:

Figure 112021077445183-pat00113
.
Figure 112021077445183-pat00113
.

데이터베이스에 대한 프라이버시 레벨 조건(

Figure 112021077445183-pat00114
)이 존재하는 경우, 데이터베이스에 대한 프라이버시 레벨이
Figure 112021077445183-pat00115
이상이 되어야 하는 네트워크 상황에서는 군중 내 사용자 단말이 요청하는 서로 다른 데이터 파일의 수
Figure 112021077445183-pat00116
Figure 112021077445183-pat00117
을 만족하여야 한다. 그렇지 못하는 경우에는 데이터베이스에 요청 데이터 리스트를 전송하는 사용자 단말이 임의로 다른 파일을 추가하여 프라이버시 레벨 조건을 만족하도록 한다.Privacy level condition for the database (
Figure 112021077445183-pat00114
) is present, the privacy level for the database is
Figure 112021077445183-pat00115
The number of different data files requested by user terminals in the crowd in a network situation that must be
Figure 112021077445183-pat00116
this
Figure 112021077445183-pat00117
should be satisfied. If not, the user terminal transmitting the requested data list to the database arbitrarily adds another file to satisfy the privacy level condition.

따라서, 전체 지연시간은 다음과 같이 나타낼 수 있다: Therefore, the total delay time can be expressed as:

Figure 112021077445183-pat00118
.
Figure 112021077445183-pat00118
.

따라서,

Figure 112021077445183-pat00119
에 대한 전체 지연시간
Figure 112021077445183-pat00120
의 기댓값인 평균 전체 지연시간
Figure 112021077445183-pat00121
는 다음과 같이 나타낼 수 있다: thus,
Figure 112021077445183-pat00119
total delay time for
Figure 112021077445183-pat00120
Average overall latency, which is the expected value of
Figure 112021077445183-pat00121
can be expressed as:

Figure 112021077445183-pat00122
.
Figure 112021077445183-pat00122
.

이때,

Figure 112021077445183-pat00123
Figure 112021077445183-pat00124
이다. At this time,
Figure 112021077445183-pat00123
Is
Figure 112021077445183-pat00124
am.

사용자 단말 간 프라이버시 레벨 조건(

Figure 112021077445183-pat00125
)이 존재하는 경우, 일반적으로 사용자 단말 간 요청 데이터 공유 과정에서도 프라이버시가 보장되어야 한다. 이를 위해 사용자 단말 간 요청 데이터 정보 공유과정에 프라이버시 레벨 조건
Figure 112021077445183-pat00126
을 만족하여야 하는 상황도 고려하였다. 사용자 단말들이 요청 데이터를 공유할 때 본인이 원하는 데이터 이외에 추가적으로 부가적인 데이터도 함께 요청하게 되며 각 사용자 단말이 요청하는 데이터 파일 수는
Figure 112021077445183-pat00127
이 된다. 따라서 전체 지연시간은 다음과 같이 나타낼 수 있다: Privacy level conditions between user terminals (
Figure 112021077445183-pat00125
) exists, in general, privacy must be guaranteed even in the process of sharing requested data between user terminals. To this end, privacy level conditions in the process of sharing requested data information between user terminals
Figure 112021077445183-pat00126
were also considered. When user terminals share requested data, they request additional data in addition to the data they want, and the number of data files requested by each user terminal is
Figure 112021077445183-pat00127
becomes Therefore, the total delay time can be expressed as:

Figure 112021077445183-pat00128
.
Figure 112021077445183-pat00128
.

따라서,

Figure 112021077445183-pat00129
에 대한 전체 지연시간
Figure 112021077445183-pat00130
의 기댓값인 평균 전체 지연시간
Figure 112021077445183-pat00131
는 다음과 같이 나타낼 수 있다: thus,
Figure 112021077445183-pat00129
total delay time for
Figure 112021077445183-pat00130
Average overall latency, which is the expected value of
Figure 112021077445183-pat00131
can be expressed as:

Figure 112021077445183-pat00132
.
Figure 112021077445183-pat00132
.

이때,

Figure 112021077445183-pat00133
Figure 112021077445183-pat00134
이다.At this time,
Figure 112021077445183-pat00133
Is
Figure 112021077445183-pat00134
am.

사용자 단말 요청이 비동기적으로 이루어지는 경우, 실제 네트워크 환경에서는 사용자 단말이 비동기적으로 데이터를 요청하게 된다. 따라서 사용자 단말의 데이터 요청이 푸아송 도착 과정(Poisson arrival process) 모델을 따라

Figure 112021077445183-pat00135
의 빈도수로 발생한다고 가정하였다. 이때
Figure 112021077445183-pat00136
Figure 112021077445183-pat00137
시간 동안 평균적으로 도달하는 사용자 단말 데이터 요청 수이다. 사용자 단말들은 군중 내 사용자 단말의 수가
Figure 112021077445183-pat00138
개가 될 때까지 기다리며, 군중이 형성되는데 소요되는 군중 형성 시간은 다음과 같이 나타낼 수 있다: When a user terminal request is made asynchronously, in an actual network environment, the user terminal requests data asynchronously. Therefore, the data request of the user terminal follows the Poisson arrival process model.
Figure 112021077445183-pat00135
It was assumed that it occurs with a frequency of . At this time
Figure 112021077445183-pat00136
Is
Figure 112021077445183-pat00137
This is the number of user terminal data requests arriving on average over time. User terminals are determined by the number of user terminals in the crowd.
Figure 112021077445183-pat00138
Waiting for a dog, the crowd formation time required to form a crowd can be expressed as:

Figure 112021077445183-pat00139
.
Figure 112021077445183-pat00139
.

이때,

Figure 112021077445183-pat00140
는 각 사용자 단말 요청이 도달하기까지의 사용자 단말 도착 간 시간의 집합이다. 일반적으로 데이터 요청 큐어리를 교환하는 시간은 사용자 단말 도착 간 시간에 비해 매우 작아 군중 형성 시간에서는 도착 간 시간만 고려한다.At this time,
Figure 112021077445183-pat00140
is the set of user terminal arrival time until each user terminal request arrives. In general, the time for exchanging data request queues is very small compared to the time between arrivals of user terminals, and only the time between arrivals is considered in the crowd formation time.

따라서, 사용자 단말이 비동기적으로 데이터를 요청하는 상황에서의 전체 지연시간은 다음과 같이 나타낼 수 있다: Therefore, the total delay time in a situation where the user terminal asynchronously requests data can be expressed as follows:

Figure 112021077445183-pat00141
.
Figure 112021077445183-pat00141
.

따라서,

Figure 112021077445183-pat00142
Figure 112021077445183-pat00143
에 대한 전체 지연시간
Figure 112021077445183-pat00144
의 기댓값인 평균 전체 지연시간
Figure 112021077445183-pat00145
는 다음과 같이 나타낼 수 있다.thus,
Figure 112021077445183-pat00142
class
Figure 112021077445183-pat00143
total delay time for
Figure 112021077445183-pat00144
Average overall latency, which is the expected value of
Figure 112021077445183-pat00145
can be expressed as:

Figure 112021077445183-pat00146
.
Figure 112021077445183-pat00146
.

본 발명의 실시예에 따른 사용자 군중 형성을 통한 단일 데이터베이스로부터의 요청 데이터 비공개적 회수 달성 방법 및 시스템은 개인 프라이버시 보장 데이터 요청 기법의 원천 기술로 활용될 수 있다. 또한, 데이터베이스에 데이터를 요청하는 핵심적인 기술이기 때문에 모바일 및 개인 PC 사용자 단말의 데이터베이스 접속이 요구되는 분야에 적용할 수 있다.The method and system for achieving non-public collection of requested data from a single database through the formation of a crowd of users according to an embodiment of the present invention can be used as a source technology for a personal privacy guarantee data request technique. In addition, since it is a key technology for requesting data from a database, it can be applied to fields requiring database access of mobile and personal PC user terminals.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다.  또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다.  이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다.  예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다.  또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The devices described above may be implemented as hardware components, software components, and/or a combination of hardware components and software components. For example, devices and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), It may be implemented using one or more general purpose or special purpose computers, such as a programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. A processing device may run an operating system (OS) and one or more software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of software. For convenience of understanding, there are cases in which one processing device is used, but those skilled in the art will understand that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it can include. For example, a processing device may include a plurality of processors or a processor and a controller. Other processing configurations are also possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다.  소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다.  소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of the foregoing, which configures a processing device to operate as desired or processes independently or collectively. The device can be commanded. Software and/or data may be any tangible machine, component, physical device, virtual equipment, computer storage medium or device, intended to be interpreted by or provide instructions or data to a processing device. can be embodied in The software may be distributed on networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer readable media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다.  상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.  상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.  컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.  프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.  The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program commands recorded on the medium may be specially designed and configured for the embodiment or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. - includes hardware devices specially configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter, as well as machine language codes such as those produced by a compiler.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다.  예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with limited examples and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques may be performed in an order different from the method described, and/or components of the described system, structure, device, circuit, etc. may be combined or combined in a different form than the method described, or other components may be used. Or even if it is replaced or substituted by equivalents, appropriate results can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims are within the scope of the following claims.

Claims (14)

네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하는 단계;
상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하는 단계;
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계;
상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하는 단계;
상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 단계; 및
상기 군중 데이터 요청 큐어리를 수신 받은 단일 데이터베이스가 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단계
를 포함하고,
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계는,
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계까지 소요되는 지연시간(
Figure 112022097948948-pat00212
)은 하기식과 같고,
Figure 112022097948948-pat00213

여기서,
Figure 112022097948948-pat00214
은 복수의 사용자 단말의 수,
Figure 112022097948948-pat00215
는 데이터 요청 큐어리를 전송하는데 소요되는 시간을 나타내는
요청 데이터 비공개적 회수 달성 방법.
Forming a crowd by a plurality of user terminals existing in the network for private information retrieval of requested data through the crowd;
generating a data request query for a data file to be requested by each of a plurality of user terminals in the crowd;
mutually sharing the data request query among all the plurality of user terminals in the crowd;
Generating a crowd request data list agreed upon by each of the plurality of user terminals;
transmitting a crowd data request query to a single database based on the crowd request data list by one user terminal among the plurality of user terminals; and
Transmitting, by the single database receiving the crowd data request query, requested data files to a plurality of user terminals within the crowd
including,
The step of mutually sharing the data request query among all the plurality of user terminals in the crowd,
Delay time required until the step of mutually sharing the data request query among all the plurality of user terminals in the crowd (
Figure 112022097948948-pat00212
) is the same as the following formula,
Figure 112022097948948-pat00213

here,
Figure 112022097948948-pat00214
is the number of a plurality of user terminals,
Figure 112022097948948-pat00215
represents the time taken to transmit the data request query
How to achieve private retrieval of requested data.
네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하는 단계;
상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하는 단계;
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계;
상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하는 단계;
상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 단계; 및
상기 군중 데이터 요청 큐어리를 수신 받은 단일 데이터베이스가 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단계
를 포함하고,
상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 단계는,
군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는데 소요되는 지연시간은 군중 내 복수의 사용자 단말의 데이터 요청 큐어리들 중 서로 다른 데이터 파일 개수에 비례하여 증가하고,
상기 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는데 소요되는 지연시간(
Figure 112022097948948-pat00216
)은 하기식과 같고,
Figure 112022097948948-pat00217

여기서,
Figure 112022097948948-pat00218
Figure 112022097948948-pat00219
개의 복수의 사용자 단말이 요청하고자 하는 데이터 파일의 수가
Figure 112022097948948-pat00220
개인 경우 서로 다른 데이터 파일의 종류 수를 나타내는
요청 데이터 비공개적 회수 달성 방법.
Forming a crowd by a plurality of user terminals existing in the network for private information retrieval of requested data through the crowd;
generating a data request query for a data file to be requested by each of a plurality of user terminals in the crowd;
mutually sharing the data request query among all the plurality of user terminals in the crowd;
Generating a crowd request data list agreed upon by each of the plurality of user terminals;
transmitting a crowd data request query to a single database based on the crowd request data list by one user terminal among the plurality of user terminals; and
Transmitting, by the single database receiving the crowd data request query, requested data files to a plurality of user terminals within the crowd
including,
Transmitting, by one user terminal among the plurality of user terminals, a crowd data request query to a single database based on the crowd request data list,
The delay time required to transmit the crowd data request query to a single database increases in proportion to the number of different data files among the data request queries of a plurality of user terminals in the crowd,
Delay time required to transmit the crowd data request query to a single database (
Figure 112022097948948-pat00216
) is the same as the following formula,
Figure 112022097948948-pat00217

here,
Figure 112022097948948-pat00218
silver
Figure 112022097948948-pat00219
The number of data files that a plurality of user terminals want to request
Figure 112022097948948-pat00220
Indicates the number of different types of data files in the case of individuals.
How to achieve private retrieval of requested data.
네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하는 단계;
상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하는 단계;
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계;
상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하는 단계;
상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 단계; 및
상기 군중 데이터 요청 큐어리를 수신 받은 단일 데이터베이스가 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단계
를 포함하고,
상기 군중 데이터 요청 큐어리를 수신 받은 단일 데이터베이스가 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단계는,
복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는데 소요되는 지연시간(
Figure 112022097948948-pat00221
)은 하기식과 같고,
Figure 112022097948948-pat00222

여기서,
Figure 112022097948948-pat00223
Figure 112022097948948-pat00224
개의 복수의 사용자 단말이 요청하고자 하는 데이터 파일의 수가
Figure 112022097948948-pat00225
개인 경우 서로 다른 데이터 파일의 종류 수,
Figure 112022097948948-pat00226
는 단일 데이터베이스가 단일 데이터 파일을 전송하는데 소요되는 시간을 나타내고,
요청된 데이터 파일들을 전송하는데 소요되는 지연시간(
Figure 112022097948948-pat00227
)은 데이터 파일 수에 비례하여 증가하는
요청 데이터 비공개적 회수 달성 방법.
Forming a crowd by a plurality of user terminals existing in the network for private information retrieval of requested data through the crowd;
generating a data request query for a data file to be requested by each of a plurality of user terminals in the crowd;
mutually sharing the data request query among all the plurality of user terminals in the crowd;
Generating a crowd request data list agreed upon by each of the plurality of user terminals;
transmitting a crowd data request query to a single database based on the crowd request data list by one user terminal among the plurality of user terminals; and
Transmitting, by the single database receiving the crowd data request query, requested data files to a plurality of user terminals within the crowd
including,
The step of transmitting the requested data files to a plurality of user terminals in the crowd by the single database receiving the crowd data request query,
Delay time required to transmit requested data files to a plurality of user terminals (
Figure 112022097948948-pat00221
) is the same as the following formula,
Figure 112022097948948-pat00222

here,
Figure 112022097948948-pat00223
silver
Figure 112022097948948-pat00224
The number of data files that a plurality of user terminals want to request
Figure 112022097948948-pat00225
the number of different types of data files in the case of individuals;
Figure 112022097948948-pat00226
represents the time taken for a single database to transfer a single data file,
Delay time required to transmit the requested data files (
Figure 112022097948948-pat00227
) increases in proportion to the number of data files.
How to achieve private retrieval of requested data.
네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하는 단계;
상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하는 단계;
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계;
상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하는 단계;
상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 단계; 및
상기 군중 데이터 요청 큐어리를 수신 받은 단일 데이터베이스가 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단계
를 포함하고,
상기 요청 데이터 비공개적 회수 달성을 위한 복수의 사용자 단말의 프라이버시가 보호되기 위해 하기식을 만족하고,
Figure 112022097948948-pat00228

여기서,
Figure 112022097948948-pat00229
는 군중 데이터 요청 큐어리,
Figure 112022097948948-pat00230
Figure 112022097948948-pat00231
중에서 유니폼한 확률로 정해지는 파일 인덱스,
Figure 112022097948948-pat00232
는 단일 데이터베이스에 저장된 서로 다른 데이터 파일의 수,
Figure 112022097948948-pat00233
Figure 112022097948948-pat00234
Figure 112022097948948-pat00235
사이의 상호 정보량(mutual information)을 나타내는
요청 데이터 비공개적 회수 달성 방법.
Forming a crowd by a plurality of user terminals existing in the network for private information retrieval of requested data through the crowd;
generating a data request query for a data file to be requested by each of a plurality of user terminals in the crowd;
mutually sharing the data request query among all the plurality of user terminals in the crowd;
Generating a crowd request data list agreed upon by each of the plurality of user terminals;
transmitting a crowd data request query to a single database based on the crowd request data list by one user terminal among the plurality of user terminals; and
Transmitting, by the single database receiving the crowd data request query, requested data files to a plurality of user terminals within the crowd
including,
In order to protect the privacy of a plurality of user terminals for achieving the private collection of the requested data, the following formula is satisfied,
Figure 112022097948948-pat00228

here,
Figure 112022097948948-pat00229
is the crowd data request query,
Figure 112022097948948-pat00230
Is
Figure 112022097948948-pat00231
A file index determined with a uniform probability among
Figure 112022097948948-pat00232
is the number of different data files stored in a single database,
Figure 112022097948948-pat00233
Is
Figure 112022097948948-pat00234
and
Figure 112022097948948-pat00235
representing the amount of mutual information between
How to achieve private retrieval of requested data.
제4항에 있어서,
상기 요청 데이터 비공개적 회수 달성하기 위한 프라이버시 레벨(
Figure 112022097948948-pat00236
)은 하기식과 같고,
Figure 112022097948948-pat00237

최적의 요청 데이터 비공개적 회수 달성 조건은 프라이버시 레벨이
Figure 112022097948948-pat00238
를 만족할 때 달성할 수 있으며,
Figure 112022097948948-pat00239
일 때는 요청된 데이터 파일에 대한 정보가 공개된 상태이며,
Figure 112022097948948-pat00240
에 대한 불확실성이 없는 상태인
요청 데이터 비공개적 회수 달성 방법.
According to claim 4,
Privacy level to achieve the private collection of the requested data (
Figure 112022097948948-pat00236
) is the same as the following formula,
Figure 112022097948948-pat00237

The optimal condition for achieving private retrieval of requested data is that the privacy level is
Figure 112022097948948-pat00238
can be achieved when satisfying
Figure 112022097948948-pat00239
When , information about the requested data file is open,
Figure 112022097948948-pat00240
in which there is no uncertainty about
How to achieve private retrieval of requested data.
네트워크에서 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하고, 요청하고자 하는 데이터 파일에 대한 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 복수의 사용자 단말; 및
상기 복수의 사용자 단말 중 하나의 사용자 단말로부터 상기 군중 데이터 요청 큐어리를 수신 받아 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단일 데이터베이스
를 포함하고,
상기 복수의 사용자 단말은,
네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성 기법을 위해 군중을 형성하고,
상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하고,
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하고,
상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하고,
상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하고,
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하는 단계까지 소요되는 지연시간(
Figure 112022097948948-pat00241
)은 하기식과 같고,
Figure 112022097948948-pat00242

여기서,
Figure 112022097948948-pat00243
은 복수의 사용자 단말의 수,
Figure 112022097948948-pat00244
는 데이터 요청 큐어리를 전송하는데 소요되는 시간을 나타내는 요청 데이터 비공개적 회수 달성 시스템.
A plurality of user terminals that form a crowd for private information retrieval of requested data through a crowd in a network and transmit a crowd data request query for a data file to be requested to a single database; and
A single database that receives the crowd data request query from one of the plurality of user terminals and transmits requested data files to a plurality of user terminals in the crowd.
including,
The plurality of user terminals,
A plurality of user terminals existing in the network form a crowd for the technique of achieving private collection of requested data through the crowd;
Creating a data request query for a data file to be requested by each of a plurality of user terminals in the crowd;
Mutually sharing the data request query among all the plurality of user terminals in the crowd;
Each of the plurality of user terminals generates an agreed crowd request data list,
One user terminal among the plurality of user terminals transmits a crowd data request query to a single database based on the crowd request data list;
Delay time required until the step of mutually sharing the data request query among all the plurality of user terminals in the crowd (
Figure 112022097948948-pat00241
) is the same as the following formula,
Figure 112022097948948-pat00242

here,
Figure 112022097948948-pat00243
is the number of a plurality of user terminals,
Figure 112022097948948-pat00244
A system for achieving request data private retrieval where R represents the time taken to transmit the data request queue.
네트워크에서 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하고, 요청하고자 하는 데이터 파일에 대한 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 복수의 사용자 단말; 및
상기 복수의 사용자 단말 중 하나의 사용자 단말로부터 상기 군중 데이터 요청 큐어리를 수신 받아 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단일 데이터베이스
를 포함하고,
상기 복수의 사용자 단말은,
네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성 기법을 위해 군중을 형성하고,
상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하고,
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하고,
상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하고,
상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하고,
상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는데 소요되는 지연시간은 군중 내 복수의 사용자 단말의 데이터 요청 큐어리들 중 서로 다른 데이터 파일 개수에 비례하여 증가하며,
상기 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는데 소요되는 지연시간(
Figure 112022097948948-pat00245
)은 하기식과 같고,
Figure 112022097948948-pat00246

여기서,
Figure 112022097948948-pat00247
Figure 112022097948948-pat00248
개의 복수의 사용자 단말이 요청하고자 하는 데이터 파일의 수가
Figure 112022097948948-pat00249
개인 경우 서로 다른 데이터 파일의 종류 수를 나타내는
요청 데이터 비공개적 회수 달성 시스템.
A plurality of user terminals that form a crowd for private information retrieval of requested data through a crowd in a network and transmit a crowd data request query for a data file to be requested to a single database; and
A single database that receives the crowd data request query from one of the plurality of user terminals and transmits requested data files to a plurality of user terminals in the crowd.
including,
The plurality of user terminals,
A plurality of user terminals existing in the network form a crowd for the technique of achieving private collection of requested data through the crowd;
Creating a data request query for a data file to be requested by each of a plurality of user terminals in the crowd;
Mutually sharing the data request query among all the plurality of user terminals in the crowd;
Each of the plurality of user terminals generates an agreed crowd request data list,
One user terminal among the plurality of user terminals transmits a crowd data request query to a single database based on the crowd request data list;
The delay time required for one user terminal among the plurality of user terminals to transmit a crowd data request query to a single database based on the crowd request data list is different from data request queries among data request queries of a plurality of user terminals in the crowd. Increases in proportion to the number of files,
Delay time required to transmit the crowd data request query to a single database (
Figure 112022097948948-pat00245
) is the same as the following formula,
Figure 112022097948948-pat00246

here,
Figure 112022097948948-pat00247
silver
Figure 112022097948948-pat00248
The number of data files that a plurality of user terminals want to request
Figure 112022097948948-pat00249
Indicates the number of different types of data files in the case of individuals.
A system for achieving private retrieval of requested data.
네트워크에서 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하고, 요청하고자 하는 데이터 파일에 대한 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 복수의 사용자 단말; 및
상기 복수의 사용자 단말 중 하나의 사용자 단말로부터 상기 군중 데이터 요청 큐어리를 수신 받아 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단일 데이터베이스
를 포함하고,
상기 복수의 사용자 단말은,
네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성 기법을 위해 군중을 형성하고,
상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하고,
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하고,
상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하고,
상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하고,
상기 단일 데이터베이스가 상기 군중 데이터 요청 큐어리를 수신 받아 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는데 소요되는 지연시간(
Figure 112022097948948-pat00250
)은 하기식과 같고,
Figure 112022097948948-pat00251

여기서,
Figure 112022097948948-pat00252
Figure 112022097948948-pat00253
개의 복수의 사용자 단말이 요청하고자 하는 데이터 파일의 수가
Figure 112022097948948-pat00254
개인 경우 서로 다른 데이터 파일의 종류 수,
Figure 112022097948948-pat00255
는 데이터베이스가 단일 데이터 파일을 전송하는데 소요되는 시간을 나타내고,
요청된 데이터 파일들을 전송하는데 소요되는 지연시간(
Figure 112022097948948-pat00256
)은 데이터 파일 수에 비례하여 증가하는
요청 데이터 비공개적 회수 달성 시스템.
A plurality of user terminals that form a crowd for private information retrieval of requested data through a crowd in a network and transmit a crowd data request query for a data file to be requested to a single database; and
A single database that receives the crowd data request query from one of the plurality of user terminals and transmits requested data files to a plurality of user terminals in the crowd.
including,
The plurality of user terminals,
A plurality of user terminals existing in the network form a crowd for the technique of achieving private collection of requested data through the crowd;
Creating a data request query for a data file to be requested by each of a plurality of user terminals in the crowd;
Mutually sharing the data request query among all the plurality of user terminals in the crowd;
Each of the plurality of user terminals generates an agreed crowd request data list,
One user terminal among the plurality of user terminals transmits a crowd data request query to a single database based on the crowd request data list;
Delay time required for the single database to receive the crowd data request query and transmit requested data files to a plurality of user terminals in the crowd (
Figure 112022097948948-pat00250
) is the same as the following formula,
Figure 112022097948948-pat00251

here,
Figure 112022097948948-pat00252
silver
Figure 112022097948948-pat00253
The number of data files that a plurality of user terminals want to request
Figure 112022097948948-pat00254
the number of different types of data files in the case of individuals;
Figure 112022097948948-pat00255
represents the time taken by the database to transfer a single data file,
Delay time required to transmit the requested data files (
Figure 112022097948948-pat00256
) increases in proportion to the number of data files.
A system for achieving private retrieval of requested data.
네트워크에서 군중을 통한 요청 데이터 비공개적 회수 달성(private information retrieval) 기법을 위해 군중을 형성하고, 요청하고자 하는 데이터 파일에 대한 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하는 복수의 사용자 단말; 및
상기 복수의 사용자 단말 중 하나의 사용자 단말로부터 상기 군중 데이터 요청 큐어리를 수신 받아 군중 내 복수의 사용자 단말에게 요청된 데이터 파일들을 전송하는 단일 데이터베이스
를 포함하고,
상기 복수의 사용자 단말은,
네트워크에 존재하는 복수의 사용자 단말이 군중을 통한 요청 데이터 비공개적 회수 달성 기법을 위해 군중을 형성하고,
상기 군중 내 복수의 사용자 단말 각각이 요청하고자 하는 데이터 파일에 대한 데이터 요청 큐어리를 생성하고,
상기 군중 내 모든 복수의 사용자 단말 간에 상기 데이터 요청 큐어리를 상호 공유하고,
상기 복수의 사용자 단말 각각이 합의된 군중 요청 데이터 리스트를 생성하고,
상기 복수의 사용자 단말 중 하나의 사용자 단말이 상기 군중 요청 데이터 리스트에 기초하여 군중 데이터 요청 큐어리를 단일 데이터베이스에 전송하고,
상기 복수의 사용자 단말은,
상기 요청 데이터 비공개적 회수 달성을 위한 프라이버시가 보호되기 위해 하기식을 만족하고,
Figure 112022097948948-pat00257

여기서,
Figure 112022097948948-pat00258
는 군중 데이터 요청 큐어리,
Figure 112022097948948-pat00259
Figure 112022097948948-pat00260
중에서 유니폼한 확률로 정해지는 파일 인덱스,
Figure 112022097948948-pat00261
는 데이터베이스에 저장된 서로 다른 데이터 파일의 수,
Figure 112022097948948-pat00262
Figure 112022097948948-pat00263
Figure 112022097948948-pat00264
사이의 상호 정보량(mutual information)을 나타내는
요청 데이터 비공개적 회수 달성 시스템.
A plurality of user terminals that form a crowd for private information retrieval of requested data through a crowd in a network and transmit a crowd data request query for a data file to be requested to a single database; and
A single database that receives the crowd data request query from one of the plurality of user terminals and transmits requested data files to a plurality of user terminals in the crowd.
including,
The plurality of user terminals,
A plurality of user terminals existing in the network form a crowd for the technique of achieving private collection of requested data through the crowd;
Creating a data request query for a data file to be requested by each of a plurality of user terminals in the crowd;
Mutually sharing the data request query among all the plurality of user terminals in the crowd;
Each of the plurality of user terminals generates an agreed crowd request data list,
One user terminal among the plurality of user terminals transmits a crowd data request query to a single database based on the crowd request data list;
The plurality of user terminals,
Satisfies the following formula in order to protect the privacy for achieving the private recovery of the requested data,
Figure 112022097948948-pat00257

here,
Figure 112022097948948-pat00258
is the crowd data request query,
Figure 112022097948948-pat00259
Is
Figure 112022097948948-pat00260
A file index determined with a uniform probability among
Figure 112022097948948-pat00261
is the number of different data files stored in the database,
Figure 112022097948948-pat00262
Is
Figure 112022097948948-pat00263
and
Figure 112022097948948-pat00264
representing the amount of mutual information between
A system for achieving private retrieval of requested data.
제9항에 있어서,
상기 요청 데이터 비공개적 회수 달성을 위한 상기 복수의 사용자 단말의 프라이버시 레벨(
Figure 112022097948948-pat00265
)은 하기식과 같고,
Figure 112022097948948-pat00266

최적의 요청 데이터 비공개적 회수 달성 조건은 프라이버시 레벨이
Figure 112022097948948-pat00267
를 만족할 때 달성할 수 있으며,
Figure 112022097948948-pat00268
일 때는 요청된 데이터 파일에 대한 정보가 공개된 상태이며,
Figure 112022097948948-pat00269
에 대한 불확실성이 없는 상태인
요청 데이터 비공개적 회수 달성 시스템.
According to claim 9,
The privacy level of the plurality of user terminals for achieving the private collection of the requested data (
Figure 112022097948948-pat00265
) is the same as the following formula,
Figure 112022097948948-pat00266

The optimal condition for achieving private retrieval of requested data is that the privacy level is
Figure 112022097948948-pat00267
can be achieved when satisfying
Figure 112022097948948-pat00268
When , information about the requested data file is open,
Figure 112022097948948-pat00269
in which there is no uncertainty about
A system for achieving private retrieval of requested data.
삭제delete 삭제delete 삭제delete 삭제delete
KR1020210088071A 2021-07-05 2021-07-05 Method and System for Private information retrieval of requested data from a single database through user crowding KR102514819B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210088071A KR102514819B1 (en) 2021-07-05 2021-07-05 Method and System for Private information retrieval of requested data from a single database through user crowding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210088071A KR102514819B1 (en) 2021-07-05 2021-07-05 Method and System for Private information retrieval of requested data from a single database through user crowding

Publications (2)

Publication Number Publication Date
KR20230007170A KR20230007170A (en) 2023-01-12
KR102514819B1 true KR102514819B1 (en) 2023-03-29

Family

ID=84923769

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210088071A KR102514819B1 (en) 2021-07-05 2021-07-05 Method and System for Private information retrieval of requested data from a single database through user crowding

Country Status (1)

Country Link
KR (1) KR102514819B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102145687B1 (en) * 2019-04-24 2020-08-19 한국과학기술원 Carrier aggregation system, and method and apparatus for transmission based on cached information of user equipment in the same

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201812646A (en) * 2016-07-18 2018-04-01 美商南坦奧美克公司 Distributed machine learning system, method of distributed machine learning, and method of generating proxy data
KR102184275B1 (en) * 2019-04-03 2020-11-30 한국과학기술원 Electronic apparatus and communication system for optimally achieving private information retrieval with low upload cost based on probabilistic technique, and operating method of the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102145687B1 (en) * 2019-04-24 2020-08-19 한국과학기술원 Carrier aggregation system, and method and apparatus for transmission based on cached information of user equipment in the same

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
서효운, ‘분산 정보의 빠르고 안전한 검색 및 합의에 대한 연구’, 한국과학기술원 박사학위 논문, 2020.02.20.,*

Also Published As

Publication number Publication date
KR20230007170A (en) 2023-01-12

Similar Documents

Publication Publication Date Title
Movahedi et al. An efficient population-based multi-objective task scheduling approach in fog computing systems
Wang et al. Maptask scheduling in mapreduce with data locality: Throughput and heavy-traffic optimality
US9922051B2 (en) Image-based faceted system and method
Potu et al. Optimizing resource scheduling based on extended particle swarm optimization in fog computing environments
Maguluri et al. Stochastic models of load balancing and scheduling in cloud computing clusters
Yang et al. Timely-throughput optimal coded computing over cloud networks
CN110308984B (en) Cross-cluster computing system for processing geographically distributed data
Martha et al. h-MapReduce: a framework for workload balancing in MapReduce
Vakilinia et al. Analysis and optimization of big-data stream processing
CN106294778A (en) Information-pushing method and device
Xiang et al. Optimizing differentiated latency in multi-tenant, erasure-coded storage
Shafik et al. Admitting new requests in fog networks according to erlang b distribution
KR102514819B1 (en) Method and System for Private information retrieval of requested data from a single database through user crowding
Kiamari et al. Coding for edge-facilitated wireless distributed computing with heterogeneous users
US10970250B2 (en) System, data management method, and file server
Li et al. Hybrid DE-EM algorithm for Gaussian mixture model-based wireless channel multipath clustering
CN110958666A (en) Network slice resource mapping method based on reinforcement learning
Joshi et al. Synergy via redundancy: Adaptive replication strategies and fundamental limits
KR102235149B1 (en) Decoding order selecting method for improvement the fairness of secure communication in uplink noma network with cooperative jamming, and the system thereof
Gamgam et al. Water-Filling Based Scheduling for Weighted Binary Freshness in Cache Update Systems
Liu et al. ROUTE: run‐time robust reducer workload estimation for MapReduce
Wu et al. A new heuristic computation offloading method based on cache-assisted model
Kundu et al. Swarm intelligence in cloud environment
JP2006023948A (en) Resource search method, cluster system, computer, and cluster
Rakhee et al. Analysis of G–queue with unreliable server

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right