KR20210158824A - Method and apparatus for generating synthetic data - Google Patents

Method and apparatus for generating synthetic data Download PDF

Info

Publication number
KR20210158824A
KR20210158824A KR1020210082692A KR20210082692A KR20210158824A KR 20210158824 A KR20210158824 A KR 20210158824A KR 1020210082692 A KR1020210082692 A KR 1020210082692A KR 20210082692 A KR20210082692 A KR 20210082692A KR 20210158824 A KR20210158824 A KR 20210158824A
Authority
KR
South Korea
Prior art keywords
data
reproduction
generating
reproduction data
encrypted text
Prior art date
Application number
KR1020210082692A
Other languages
Korean (ko)
Inventor
김민정
조지훈
윤효진
김영현
한규형
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to EP21202400.4A priority Critical patent/EP3985540B1/en
Priority to US17/500,013 priority patent/US20220116199A1/en
Publication of KR20210158824A publication Critical patent/KR20210158824A/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/6272Protecting 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 by registering files or documents with a third party
    • 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/602Providing cryptographic facilities or services
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Disclosed are a device and a method for generating synthetic data. According to one embodiment, the device for generating synthetic data includes: a synthetic data generating unit generating synthetic data corresponding to combined data obtained by combining original data possessed by each of a plurality of data providing devices; and a synthetic data providing unit providing the synthetic data to a data using device.

Description

재현 데이터 생성 장치 및 방법{METHOD AND APPARATUS FOR GENERATING SYNTHETIC DATA}Apparatus and method for generating reproduction data

개시되는 실시예들은 재현 데이터 생성 기술과 관련된다.The disclosed embodiments relate to techniques for generating reproducible data.

데이터 분석에서 데이터 결합은 분석의 성능을 고도화하기 위해 많이 사용되는 접근이다. 하지만, 여러 기관이 개인정보가 포함된 데이터를 서로 공유하여 데이터를 결합하는 것은 개인정보호법, GDPR(General Data Protection Regulation), HIPPA(Health Insurance Portability and Accountability Act) 등과 같은 여러 규제로 인해 사실상 불가능하다. 이와 같은 법적 규제를 피하기 위해서 비식별화 기법이 많이 사용되지만 비식별화 처리된 데이터도 결합 후 개인정보 노출 위험이 증가하게 된다. 또한, 종래 데이터 프라이버시 보호 기술은 암호화된(혹은 보호된) 데이터를 사용하기 때문에 분석 쿼리(query)에 따라 기술을 충족하는 기법을 고안해야 한다는 문제가 발생하여 전체 데이터 분석 과정의 소요 시간 및 복잡도를 크게 증가시킨다.In data analysis, data combining is a widely used approach to improve the performance of analysis. However, it is virtually impossible for multiple organizations to share data containing personal information and combine data with each other due to various regulations such as the Personal Information Protection Act, the General Data Protection Regulation (GDPR), and the Health Insurance Portability and Accountability Act (HIPPA). . Although de-identification techniques are often used to avoid such legal regulations, the risk of personal information exposure increases after combining de-identified data. In addition, since the conventional data privacy protection technology uses encrypted (or protected) data, there is a problem that a technique that meets the technology needs to be devised according to an analysis query, thereby reducing the time and complexity of the entire data analysis process. greatly increase

대한민국 공개특허공보 제10-2019-0096295호 (2019.08.19. 공개)Republic of Korea Patent Publication No. 10-2019-0096295 (published on August 19, 2019)

개시되는 실시예들은 재현 데이터 생성 장치 및 방법을 제공하기 위한 것이다.Disclosed embodiments are to provide an apparatus and method for generating reproduction data.

일 실시예에 따른 재현 데이터 생성 장치는, 복수의 데이터 제공 장치 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하는 재현 데이터 생성부; 및 상기 재현 데이터를 데이터 사용 장치로 제공하는 재현 데이터 제공부를 포함한다.An apparatus for generating reproduction data according to an embodiment includes a reproduction data generation unit generating synthetic data corresponding to combined data obtained by combining original data held by each of a plurality of data providing apparatuses; and a reproduction data providing unit that provides the reproduction data to a data using device.

상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치 각각으로부터 상기 원본 데이터에 대한 암호문을 수신하고, 상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성할 수 있다.The reproduction data generating unit may receive an encrypted text for the original data from each of the plurality of data providing devices, and generate the reproduction data based on the received encrypted text.

상기 재현 데이터 생성부는, 신뢰 실행 환경(Trusted Execution Environment, TEE) 내에서, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 복호화하고, 상기 TEE 내에서 상기 복호화를 통해 생성된 각 원본 데이터를 결합하여 상기 결합 데이터를 생성하고, 상기 TEE 내에서 상기 생성된 결합 데이터에 기초하여 상기 재현 데이터를 생성할 수 있다.The reproduction data generation unit decrypts the encrypted text received from each of the plurality of data providing devices in a Trusted Execution Environment (TEE), and combines each original data generated through the decryption in the TEE, The combined data may be generated, and the reproduction data may be generated based on the generated combined data in the TEE.

상기 원본 데이터에 대한 암호문은, 동형 암호(Homomorphic Encryption) 알고리즘을 이용하여 상기 복수의 데이터 제공 장치 각각에 의해 생성된 암호문일 수 있다.The encrypted text for the original data may be an encrypted text generated by each of the plurality of data providing devices using a homomorphic encryption algorithm.

상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 암호화된 상태로 이용하여 상기 결합 데이터에 대한 암호문을 생성하고, 상기 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 상기 재현 데이터에 대한 암호문을 생성하고, 상기 재현 데이터 제공부는, 상기 재현 데이터에 대한 암호문을 상기 데이터 사용 장치로 제공할 수 있다.The reproduction data generation unit generates an encrypted text for the combined data by using the encrypted text received from each of the plurality of data providing devices in an encrypted state, and uses the encrypted text for the combined data in an encrypted state to obtain the reproduced data may generate a cipher text for , and the reproduced data providing unit may provide the encrypted text for the reproduced data to the data using device.

상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치가 참여한 다자간 계산(multi-party computation) 프로토콜을 이용하여 상기 재현 데이터를 생성할 수 있다.The reproduction data generating unit may generate the reproduction data by using a multi-party computation protocol in which the plurality of data providing devices participate.

상기 재현 데이터 생성부는, 머신 러닝 기반의 재현 데이터 생성 모델을 이용하여 상기 재현 데이터를 생성할 수 있다.The reproduction data generator may generate the reproduction data using a machine learning-based reproduction data generation model.

상기 재현 데이터 생성 모델은, 차등 정보 보호(Differential Privacy)를 만족하는 재현 데이터를 생성하도록 사전 학습된 모델일 수 있다.The reproduction data generation model may be a pre-trained model to generate reproduction data satisfying differential privacy.

일 실시예에 따른 재현 데이터 생성 방법은, 복수의 데이터 제공 장치 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하는 단계; 및 상기 재현 데이터를 데이터 사용 장치로 제공하는 단계를 포함한다.A method of generating reproduction data according to an embodiment includes: generating synthetic data corresponding to combined data obtained by combining original data held by each of a plurality of data providing devices; and providing the reproduction data to a data using device.

상기 생성하는 단계는, 상기 복수의 데이터 제공 장치 각각으로부터 상기 원본 데이터에 대한 암호문을 수신하는 단계; 및 상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계를 포함할 수 있다.The generating may include: receiving an encrypted text for the original data from each of the plurality of data providing devices; and generating the reproduction data based on the received cipher text.

상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계는, 신뢰 실행 환경(Trusted Execution Environment, TEE) 내에서, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문에 대한 복호화하는 단계; 상기 TEE 내에서, 상기 복호화를 통해 생성된 각 원본 데이터를 결합하여 상기 결합 데이터를 생성하는 단계; 및 상기 TEE 내에서, 상기 생성된 결합 데이터에 기초하여 상기 재현 데이터를 생성하는 단계를 포함할 수 있다.The generating of the reproduction data based on the received encrypted text may include: decrypting the encrypted text received from each of the plurality of data providing devices in a Trusted Execution Environment (TEE); generating the combined data by combining the respective original data generated through the decoding in the TEE; and generating the reproduction data based on the generated combined data within the TEE.

상기 원본 데이터에 대한 암호문은, 동형 암호(Homomorphic Encryption) 알고리즘을 이용하여 상기 복수의 데이터 제공 장치 각각에 의해 생성된 암호문일 수 있다.The encrypted text for the original data may be an encrypted text generated by each of the plurality of data providing devices using a homomorphic encryption algorithm.

상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계는, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 암호화된 상태로 이용하여 상기 결합 데이터에 대한 암호문을 생성하는 단계; 및 상기 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 상기 재현 데이터에 대한 암호문을 생성하는 단계를 포함하고, 상기 제공하는 단계는, 상기 재현 데이터에 대한 암호문을 상기 데이터 사용 장치로 제공할 수 있다.The generating of the reproduced data based on the received encrypted text may include: generating an encrypted text for the combined data by using the encrypted text received from each of the plurality of data providing devices in an encrypted state; and generating an encrypted text for the reproduced data by using the encrypted text for the combined data in an encrypted state, wherein the providing includes providing the encrypted text for the reproduced data to the data using device. .

상기 재현 데이터를 생성하는 단계는, 상기 복수의 데이터 제공 장치가 참여한 다자간 계산(multi-party computation) 프로토콜을 이용하여 상기 재현 데이터를 생성할 수 있다.The generating of the reproduction data may include generating the reproduction data using a multi-party computation protocol in which the plurality of data providing devices participate.

상기 재현 데이터를 생성하는 단계는, 머신 러닝 기반의 재현 데이터 생성 모델을 이용하여 상기 재현 데이터를 생성할 수 있다.The generating of the reproduction data may include generating the reproduction data using a machine learning-based reproduction data generation model.

상기 재현 데이터 생성 모델은, 차등 정보 보호(Differential Privacy)를 만족하는 재현 데이터를 생성하도록 사전 학습된 모델일 수 있다.The reproduction data generation model may be a pre-trained model to generate reproduction data satisfying differential privacy.

개시되는 실시예들에 따르면, 데이터 프라이버시 보호 기술 하에서 각 데이터 제공 장치가 보유한 원본 데이터들을 암호화된(혹은 보호된) 상태로 결합함으로써 데이터 결합을 위해 각 데이터 제공 장치 사이의 데이터 공유를 요구하지 않으며 원본 데이터 유출을 방지할 수 있다. According to the disclosed embodiments, by combining the original data held by each data providing device in an encrypted (or protected) state under the data privacy protection technology, data sharing between each data providing device is not required for data combining, and the original data is not required. Data leakage can be prevented.

또한, 결합 데이터를 데이터 사용자에게 직접 제공하지 않고, 결합 데이터와 통계적 성질이 유사한 가짜 데이터인 재현 데이터를 데이터 사용자에게 제공함으로써 원본 데이터에 대한 보호와 분석 효율성을 모두 확보할 수 있게 된다.In addition, the combined data is not directly provided to the data user, but reproduced data, which is fake data with similar statistical properties to the combined data, is provided to the data user, thereby ensuring both protection of the original data and analysis efficiency.

도 1은 일 실시예에 따른 데이터 분석 시스템의 구성도
도 2는 일 실시예에 따른 재현 데이터 생성 장치의 구성도
도 3은 일 실시예에 따른 재현 데이터 생성 방법의 순서도
도 4는 일 실시예에 따른 재현 데이터 생성 과정을 나타낸 순서도
도 5는 다른 실시예에 따른 재현 데이터 생성 과정을 나타낸 순서도
도 6은 일 실시예에 따른 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
1 is a block diagram of a data analysis system according to an embodiment;
2 is a block diagram of an apparatus for generating reproduction data according to an embodiment;
3 is a flowchart of a method for generating reproduction data according to an embodiment;
4 is a flowchart illustrating a process of generating reproduction data according to an embodiment;
5 is a flowchart illustrating a process of generating reproduction data according to another embodiment;
6 is a block diagram illustrating and explaining a computing environment including a computing device according to an embodiment;

이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The following detailed description is provided to provide a comprehensive understanding of the methods, devices, and/or systems described herein. However, this is merely an example, and the present invention is not limited thereto.

본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.In describing the embodiments of the present invention, if it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. And, the terms to be described later are terms defined in consideration of functions in the present invention, which may vary according to usage, intention of an operator, or custom. Therefore, the definition should be made based on the content throughout this specification. The terminology used in the detailed description is for the purpose of describing embodiments of the present invention only, and should in no way be limiting. Unless explicitly used otherwise, expressions in the singular include the meaning of the plural. In this description, expressions such as “comprising” or “comprising” are intended to indicate certain features, numbers, steps, acts, elements, some or a combination thereof, one or more other than those described. It should not be construed to exclude the presence or possibility of other features, numbers, steps, acts, elements, or any part or combination thereof.

도 1은 일 실시예에 따른 데이터 분석 시스템의 구성도이다.1 is a block diagram of a data analysis system according to an embodiment.

도 1을 참조하면, 일 실시예에 따른 데이터 분석 서비스 시스템(100)은 복수의 데이터 제공 장치(110), 재현 데이터 생성 장치(120) 및 데이터 사용 장치(130)를 포함한다.Referring to FIG. 1 , a data analysis service system 100 according to an exemplary embodiment includes a plurality of data providing devices 110 , reproduction data generating devices 120 , and data using devices 130 .

복수의 데이터 제공 장치(110)는 각각 데이터 사용 장치(130)에 의한 분석 대상이 되는 원본 데이터를 소유하는 장치이다. The plurality of data providing devices 110 are devices each possessing original data to be analyzed by the data using device 130 .

이때, 데이터 제공 장치(110)가 원본 데이터를 소유하고 있다는 것은 데이터 제공 장치(110)가 내부에 구비된 저장 수단에 원본 데이터를 저장하고 있거나, 원본 데이터를 저장하고 있는 외부 장치에 접근하여 원본 데이터를 획득 가능함을 의미할 수 있다.At this time, the fact that the data providing device 110 owns the original data means that the data providing device 110 stores the original data in a storage means provided therein, or accesses an external device storing the original data to access the original data. may mean that it is possible to obtain

한편, 원본 데이터는 예를 들어, 유전자 데이터, 진료 기록, 금융 거래 정보(예를 들어, 계좌번호, 계좌 입출금 내역 등), 개인 식별 정보(예를 들어, 이름, 주민등록번호 등) 등과 같이 법률 상 허가되지 않은 제3자에 대한 공개가 금지되거나 개인의 프라이버시 보호, 보안 상의 필요성 등에 따라 비공개가 요구되는 민감 정보를 포함하고 있는 데이터일 수 있다.On the other hand, original data is, for example, genetic data, medical records, financial transaction information (eg, account number, account deposit and withdrawal details, etc.), personal identification information (eg, name, resident registration number, etc.) It may be data that contains sensitive information that is not disclosed to third parties that have not been disclosed or that is required to be kept confidential according to personal privacy protection and security needs.

한편, 도 1에 도시된 실시예에서는 데이터 제공 장치(110)가 2개인 것으로 예시하고 있으나, 데이터 제공 장치(110)의 개수는 반드시 도시된 예에 한정되는 것은 아니며, 실시예에 따라 변경될 수 있다.Meanwhile, although the embodiment shown in FIG. 1 exemplifies that there are two data providing devices 110 , the number of data providing devices 110 is not necessarily limited to the illustrated example, and may be changed according to embodiments. have.

재현 데이터 생성 장치(120)는 복수의 데이터 제공 장치(110) 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하고, 생성된 재현 데이터를 데이터 사용 장치(130)로 제공하는 장치이다.The reproduced data generating apparatus 120 generates synthetic data corresponding to combined data by combining the original data held by each of the plurality of data providing apparatuses 110 , and uses the generated reproduced data to the data using apparatus 130 . device that provides

일 실시예에 따르면, 결합 데이터에 대한 재현 데이터는 결합 데이터와 동일 또는 유사한 통계적 특성을 가진 데이터를 의미하며, 실시예에 따라 차등 정보 보호(Differential Privacy)를 만족하도록 생성될 수 있다. According to an embodiment, the reproduction data for the combined data means data having the same or similar statistical characteristics as the combined data, and may be generated to satisfy differential privacy according to an embodiment.

데이터 사용 장치(130)는 재현 데이터 생성 장치(120)로부터 제공받는 재현 데이터를 이용하여 재현 데이터에 대응되는 결합 데이터에 대한 분석 결과를 생성하기 위한 장치이다.The data using device 130 is a device for generating an analysis result for combined data corresponding to the representation data using the representation data provided from the representation data generating device 120 .

일 실시예에 따르면, 결합 데이터에 대한 분석 결과는 예를 들어, 예측 분석(predictive analysis), 통계 분석(statistical analysis), 분류(classification), 군집화(clustering) 등과 같이 결합 데이터와 관련된 유의미한 새로운 정보를 생성, 검출 또는 추출하는 다양한 종류의 데이터 분석에 대한 결과일 수 있으며, 반드시 특정한 종류의 분석 결과로 한정되는 것은 아니다.According to an embodiment, the analysis result of the combined data is, for example, predictive analysis, statistical analysis, classification, clustering, etc. meaningful new information related to the combined data. It may be a result of various types of data analysis that is generated, detected, or extracted, and is not necessarily limited to a specific type of analysis result.

도 2는 일 실시예에 따른 재현 데이터 생성 장치의 구성도이다.2 is a block diagram of an apparatus for generating reproduction data according to an embodiment.

도 2를 참조하면, 일 실시예에 따른 재현 데이터 생성 장치(120)는 재현 데이터 생성부(121) 및 재현 데이터 제공부(122)를 포함한다.Referring to FIG. 2 , the reproduction data generating apparatus 120 according to an exemplary embodiment includes a reproduction data generating unit 121 and a reproduction data providing unit 122 .

일 실시예에서, 재현 데이터 생성부(121) 및 재현 데이터 제공부(122)는 하나 이상의 프로세서 또는 하나 이상의 프로세서 및 소프트웨어의 결합에 의해 구현될 수 있으며, 도시된 예와 달리 구체적 동작에 있어 명확히 구분되지 않을 수 있다.In one embodiment, the reproduction data generating unit 121 and the reproduction data providing unit 122 may be implemented by one or more processors or a combination of one or more processors and software, and are clearly distinguished in specific operation unlike the illustrated example. it may not be

재현 데이터 생성부(121)는 복수의 데이터 제공 장치(110) 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터를 생성한다.The reproduction data generating unit 121 generates reproduction data corresponding to combined data obtained by combining original data held by each of the plurality of data providing apparatuses 110 .

일 실시예에 따르면, 재현 데이터 생성부(121)는 복수의 데이터 제공 장치(110) 각각으로부터 각 데이터 제공 장치(110)가 보유한 원본 데이터에 대한 암호문을 수신하고, 각 데이터 제공 장치(110)로부터 수신된 암호문에 기초하여 결합 데이터에 대한 재현 데이터를 생성할 수 있다.According to an embodiment, the reproduction data generating unit 121 receives an encrypted text for the original data held by each data providing device 110 from each of the plurality of data providing devices 110 , and from each data providing device 110 . Reproduction data for the combined data may be generated based on the received ciphertext.

구체적으로, 일 실시예에 따르면, 복수의 데이터 제공 장치(110)로부터 수신되는 암호문은 예를 들어, AES(Advanced Encryption Standard) 알고리즘, DES(Data Encryption Standard) 알고리즘 등과 같은 대칭키 암호 알고리즘 또는 RSA(Rivest, Shamir, Adleman) 알고리즘, ElGarmal 알고리즘 등과 같은 공개키 암호 알고리즘을 이용하여 암호화된 암호문일 수 있다. Specifically, according to an embodiment, the cipher text received from the plurality of data providing devices 110 is, for example, a symmetric key encryption algorithm such as AES (Advanced Encryption Standard) algorithm, DES (Data Encryption Standard) algorithm, or RSA ( Rivest, Shamir, Adleman) algorithm, ElGarmal algorithm, etc. may be a ciphertext encrypted using a public key encryption algorithm.

이 경우, 각 데이터 제공 장치(110)는 예를 들어, 디피-헬만(Diffie-Hellman) 키 교환 프로토콜을 이용하여 재현 데이터 생성 장치(120)와 사전 공유된 암호키 또는 재현 데이터 생성 장치(120)에 의해 공개된 공개키를 이용하여 자신이 보유한 원본 데이터를 암호화한 후, 암호화를 통해 생성된 암호문을 재현 데이터 생성 장치(120)로 제공할 수 있다. In this case, each data providing device 110, for example, using the Diffie-Hellman (Diffie-Hellman) key exchange protocol and the encryption key or reproduction data generating device 120 shared in advance with the reproduction data generating device 120 After encrypting the original data held by the user using the public key disclosed by , the encrypted text generated through encryption may be provided to the reproduction data generating apparatus 120 .

또한, 재현 데이터 생성부(121)는 각 데이터 제공 장치(110)와 사전 공유된 암호키 또는 공개키에 대응되는 비밀키를 이용하여 각 데이터 제공 장치(110)로부터 수신된 암호문을 복호화한 후, 복호화된 각 원본 데이터를 결합함으로써 결합 데이터를 생성할 수 있다. In addition, the reproduction data generating unit 121 decrypts the encrypted text received from each data providing device 110 by using an encryption key or a private key corresponding to the public key pre-shared with each data providing device 110, Combined data can be generated by combining each decrypted original data.

한편, 일 실시예에 따르면, 재현 데이터 생성부(121)는 머신 러닝(Machine learning) 기반의 재현 데이터 생성 모델을 이용하여 결합 데이터에 대한 재현 데이터를 생성할 수 있다. 구체적으로, 재현 데이터 생성 모델은 예를 들어, GAN(Generative Adversarial Network)와 같이 인공 신경망(Artificial Neural Network)에 기반하여 입력 데이터에 대한 재현 데이터를 생성하도록 사전 학습된 모델일 수 있다. 다른 예로, 재현 데이터 생성 모델은 예를 들어, DP-GAN(Differential Private Generative Adversarial Network)와 같이 차등 정보 보호(Differential Privacy)를 만족하는 재현 데이터를 생성하도록 사전 학습된 모델일 수 있다. 그러한, 재현 데이터 생성부(121)는 상술한 예 외도로 공지된 다양한 재현 데이터 생성 기술을 이용하여 결합 데이터에 대한 재현 데이터를 생성할 수 있다.Meanwhile, according to an embodiment, the reproduction data generation unit 121 may generate reproduction data for the combined data using a machine learning-based reproduction data generation model. Specifically, the reproduction data generation model may be, for example, a pre-trained model to generate reproduction data for the input data based on an artificial neural network such as a generative adversarial network (GAN). As another example, the reproduction data generation model may be a pre-trained model to generate reproduction data satisfying differential privacy, such as, for example, a Differential Private Generative Adversarial Network (DP-GAN). As such, the reproduction data generation unit 121 may generate reproduction data for the combined data using various reproduction data generation techniques known as the above-described exception diagram.

한편, 상술한 실시예에서, 재현 데이터 생성부(121)는 신뢰 실행 환경(Trusted Execution Environment) 내에서 암호문에 대한 복호화, 결합 데이터 생성 및 재현 데이터 생성을 수행할 수 있다.Meanwhile, in the above-described embodiment, the reproduction data generation unit 121 may perform decryption of the ciphertext, generation of combined data, and generation of reproduction data in a Trusted Execution Environment.

다른 실시예에 따르면, 복수의 데이터 제공 장치(110)로부터 수신되는 암호문은 동형 암호(Homomorphic encryption) 알고리즘을 이용하여 암호화된 암호문일 수 있다. 이때, 동형 암호 알고리즘은 원본 데이터에 대한 암호문을 암호화된 상태로 이용하여 원본 데이터에 특정 연산을 수행한 결과에 대한 암호문을 생성할 수 있도록 하는 암호 알고리즘을 의미한다. 한편, 원본 데이터에 대한 암호문 생성을 위해 이용되는 동형 암호 알고리즘은 반드시 특정한 알고리즘으로 한정되는 것은 아니며, 데이터 결합 및 재현 데이터 생성을 위해 수행되어야 할 연산의 종류 및 효율성 등을 고려하여 공지된 다양한 동형 암호 알고리즘이 이용될 수 있다. According to another embodiment, the ciphertext received from the plurality of data providing devices 110 may be ciphertext encrypted using a homomorphic encryption algorithm. In this case, the homomorphic encryption algorithm refers to an encryption algorithm capable of generating a ciphertext for the result of performing a specific operation on the original data by using the ciphertext for the original data in an encrypted state. On the other hand, the homomorphic encryption algorithm used to generate the cipher text for the original data is not necessarily limited to a specific algorithm, and various known homomorphic encryption algorithms are considered in consideration of the type and efficiency of operations to be performed for data combination and reproduction data generation. Algorithms may be used.

구체적으로, 재현 데이터 생성부(121)는 복수의 데이터 제공 장치(110) 각각으로부터 동형 암호 알고리즘을 이용하여 암호화된 암호문이 수신된 경우, 수신된 각 암호문을 암호화된 상태로 결합하여 각 암호문에 대응되는 원본 데이터를 결합한 결합 데이터에 대한 암호문을 생성할 수 있다.Specifically, when an ciphertext encrypted using a homomorphic encryption algorithm is received from each of the plurality of data providing devices 110, the reproduction data generating unit 121 combines each received ciphertext in an encrypted state to correspond to each ciphertext. It is possible to generate a ciphertext for the combined data by combining the original data to be used.

또한, 재현 데이터 생성부(121)는 생성된 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 결합 데이터에 대응하는 재현 데이터에 대한 암호문을 생성할 수 있다. 구체적으로, 재현 데이터 생성부(121)는 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 결합 데이터 생성 모델을 이용한 연산을 수행함으로써 재현 데이터에 대한 암호문을 생성할 수 있다.Also, the reproduction data generating unit 121 may generate an encrypted text for the reproduction data corresponding to the combined data by using the encrypted text for the generated combined data in an encrypted state. Specifically, the reproduction data generation unit 121 may generate the encrypted text for the reproduction data by performing an operation using the combined data generation model by using the encrypted text for the combined data in an encrypted state.

한편, 또 다른 실시예에 따르면, 재현 데이터 생성부(121)는 복수의 데이터 제공 장치(110)가 참여한 다자간 계산(multi-parity computation) 프로토콜을 이용하여 재현 데이터를 생성할 수 있다. 구체적으로, 재현 데이터 생성부(121)는 결합 데이터 생성 모델을 이용하여 재현 데이터를 생성하기 위한 연산을 각 데이터 제공 장치(110)와의 다자간 계산 프로토콜을 통해 수행함으로써 결합 데이터에 대한 재현 데이터를 생성할 수 있다. 이때, 다자간 계산 프로토콜은 반드시 특정한 방식으로 한정되는 것은 아니며 공지된 다양한 다자간 계산 방식이 이용될 수 있다.Meanwhile, according to another embodiment, the reproduction data generation unit 121 may generate reproduction data using a multi-parity computation protocol in which a plurality of data providing devices 110 participate. Specifically, the reproduction data generation unit 121 generates reproduction data for the combined data by performing an operation for generating reproduction data using the combined data generation model through a multi-party calculation protocol with each data providing device 110 . can In this case, the multi-party calculation protocol is not necessarily limited to a specific method, and various known multi-party calculation methods may be used.

재현 데이터 제공부(122)는 재현 데이터 생성부(121)에 의해 생성된 재현 데이터를 데이터 사용 장치(130)로 제공한다. The reproduction data providing unit 122 provides the reproduction data generated by the reproduction data generating unit 121 to the data using device 130 .

이때, 일 실시예에 따르면, 재현 데이터 생성부(121)에 의해 생성된 재현 데이터는 동형 암호 알고리즘을 이용하여 암호화된 재현 데이터일 수 있다. In this case, according to an embodiment, the reproduction data generated by the reproduction data generating unit 121 may be reproduction data encrypted using a homomorphic encryption algorithm.

도 3은 일 실시예에 따른 재현 데이터 생성 방법의 순서도이다.3 is a flowchart of a method for generating reproduction data according to an embodiment.

도 3에 도시된 방법은 재현 데이터 생성 장치(120)에 의해 수행될 수 있다.The method illustrated in FIG. 3 may be performed by the reproduction data generating apparatus 120 .

도 3을 참조하면, 우선, 재현 데이터 생성 장치(120)는 복수의 데이터 제공 장치(110) 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터를 생성한다(310).Referring to FIG. 3 , first, the reproduction data generating apparatus 120 generates reproduction data corresponding to combined data obtained by combining original data held by each of the plurality of data providing apparatuses 110 ( 310 ).

이때, 일 실시예에 따르면, 재현 데이터 생성 장치(120)는, 복수의 데이터 제공 장치(110) 각각으로부터 원본 데이터에 대한 암호문을 수신하고, 수신된 암호문에 기초하여 재현 데이터를 생성할 수 있다.In this case, according to an embodiment, the reproduction data generating apparatus 120 may receive the encrypted text for the original data from each of the plurality of data providing apparatuses 110 , and generate reproduction data based on the received encrypted text.

다른 실시예에 따르면, 재현 데이터 생성 장치(120)는 복수의 데이터 제공 장치(110)가 참여한 다자간 계산 프로토콜을 이용하여 재현 데이터를 생성할 수 있다.According to another embodiment, the reproduction data generating apparatus 120 may generate the reproduction data by using a multi-party calculation protocol in which a plurality of data providing apparatuses 110 participate.

이후, 재현 데이터 생성 장치(120)는 생성된 재현 데이터를 데이터 사용 장치(130)로 제공한다(320).Thereafter, the reproduction data generating apparatus 120 provides the generated reproduction data to the data using apparatus 130 ( 320 ).

도 4는 일 실시예에 따른 재현 데이터 생성 과정을 나타낸 순서도이다.4 is a flowchart illustrating a process of generating reproduction data according to an exemplary embodiment.

도 4에 도시된 과정은 도 3에 도시된 310 단계에서 수행될 수 있다.The process shown in FIG. 4 may be performed in step 310 shown in FIG. 3 .

도 4를 참조하면, 우선, 재현 데이터 생성 장치(120)는 복수의 데이터 제공 장치(110) 각각으로부터 각 데이터 제공 장치(110)가 보유한 원본 데이터에 대한 암호문을 수신한다(410).Referring to FIG. 4 , first, the reproduction data generating apparatus 120 receives an cipher text for the original data held by each data providing apparatus 110 from each of the plurality of data providing apparatuses 110 ( 410 ).

이후, 재현 데이터 생성 장치(120)는 신뢰 실행 환경 내에서, 각 데이터 제공 장치(110)로부터 수신된 암호문을 복호화한다(420).Thereafter, the reproduction data generating device 120 decrypts the encrypted text received from each data providing device 110 in the trusted execution environment ( 420 ).

이후, 재현 데이터 생성 장치(120)는 신뢰 실행 환경 내에서, 복호화를 통해 생성된 각 원본 데이터를 결합하여 결합 데이터를 생성한다(430).Thereafter, the reproduction data generating apparatus 120 generates combined data by combining each original data generated through decryption in the trusted execution environment ( 430 ).

이후, 재현 데이터 생성 장치(120)는 신뢰 실행 환경 내에서, 결합 데이터에 대응하는 재현 데이터를 생성한다(440).Thereafter, the reproduction data generating apparatus 120 generates reproduction data corresponding to the combined data in the trusted execution environment ( 440 ).

도 5는 다른 실시예에 따른 재현 데이터 생성 과정을 나타낸 순서도이다.5 is a flowchart illustrating a process of generating reproduction data according to another exemplary embodiment.

도 5에 도시된 과정은 도 3에 도시된 310 단계에서 수행될 수 있다.The process illustrated in FIG. 5 may be performed in step 310 illustrated in FIG. 3 .

도 5를 참조하면, 우선, 재현 데이터 생성 장치(120)는 복수의 데이터 제공 장치(110) 각각으로부터 동형 암호 알고리즘을 이용하여 암호화된 원본 데이터에 대한 암호문을 수신한다(510).Referring to FIG. 5 , first, the reproduction data generating apparatus 120 receives a cipher text for original data encrypted using a homomorphic encryption algorithm from each of the plurality of data providing apparatuses 110 ( 510 ).

이후, 재현 데이터 생성 장치(120)는 각 데이터 제공 장치(110)로부터 수신된 암호문을 암호화된 상태로 이용하여, 수신된 각 암호문에 대한 원문 데이터를 결합한 결합 데이터에 대한 암호문을 생성한다(520).Thereafter, the reproduction data generating device 120 uses the encrypted text received from each data providing device 110 in an encrypted state, and generates an encrypted text for the combined data by combining the original text data for each received encrypted text (520) .

이후, 재현 데이터 생성 장치(120)는 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 결합 데이터에 대응하는 재현 데이터에 대한 암호문을 생성한다(530).Thereafter, the reproduction data generating apparatus 120 generates an encrypted text for the reproduction data corresponding to the combined data by using the encrypted text for the combined data in an encrypted state ( 530 ).

도 6은 일 실시예에 따른 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도이다. 6 is a block diagram illustrating and explaining a computing environment including a computing device according to an embodiment.

도 6에 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.In the embodiment shown in FIG. 6 , each component may have different functions and capabilities other than those described below, and may include additional components in addition to those described below.

도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 도 2에 도시된 재현 데이터 생성 장치(120)에 포함된 하나 이상의 컴포넌트일 수 있다.The illustrated computing environment 10 includes a computing device 12 . In one embodiment, the computing device 12 may be one or more components included in the representation data generating device 120 shown in FIG. 2 .

컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.Computing device 12 includes at least one processor 14 , computer readable storage medium 16 , and communication bus 18 . The processor 14 may cause the computing device 12 to operate in accordance with the exemplary embodiments discussed above. For example, the processor 14 may execute one or more programs stored in the computer-readable storage medium 16 . The one or more programs may include one or more computer-executable instructions that, when executed by the processor 14, configure the computing device 12 to perform operations in accordance with the exemplary embodiment. can be

컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.Computer-readable storage medium 16 is configured to store computer-executable instructions or program code, program data, and/or other suitable form of information. The program 20 stored in the computer readable storage medium 16 includes a set of instructions executable by the processor 14 . In one embodiment, computer-readable storage medium 16 includes memory (volatile memory, such as random access memory, non-volatile memory, or a suitable combination thereof), one or more magnetic disk storage devices, optical disk storage devices, flash It may be memory devices, other forms of storage medium accessed by computing device 12 and capable of storing desired information, or a suitable combination thereof.

통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.Communication bus 18 interconnects various other components of computing device 12 , including processor 14 and computer readable storage medium 16 .

컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.Computing device 12 may also include one or more input/output interfaces 22 and one or more network communication interfaces 26 that provide interfaces for one or more input/output devices 24 . The input/output interface 22 and the network communication interface 26 are coupled to the communication bus 18 . Input/output device 24 may be coupled to other components of computing device 12 via input/output interface 22 . Exemplary input/output device 24 may include a pointing device (such as a mouse or trackpad), a keyboard, a touch input device (such as a touchpad or touchscreen), a voice or sound input device, various types of sensor devices, and/or imaging devices. input devices and/or output devices such as display devices, printers, speakers and/or network cards. The exemplary input/output device 24 may be included in the computing device 12 as a component constituting the computing device 12 , and may be connected to the computing device 12 as a separate device distinct from the computing device 12 . may be

이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 전술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Although the present invention has been described in detail through representative embodiments above, those of ordinary skill in the art to which the present invention pertains can make various modifications to the above-described embodiments without departing from the scope of the present invention. will understand Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined by the claims described below as well as the claims and equivalents.

10: 컴퓨팅 환경
12: 컴퓨팅 장치
14: 프로세서
16: 컴퓨터 판독 가능 저장 매체
18: 통신 버스
20: 프로그램
22: 입출력 인터페이스
24: 입출력 장치
26: 네트워크 통신 인터페이스
100: 데이터 분석 서비스 시스템
110, 110-1, 110-2: 데이터 제공 장치
120: 재현 데이터 생성 장치
121: 재현 데이터 생성부
122: 재현 데이터 제공부
130: 데이터 사용 장치
10: Computing Environment
12: computing device
14: Processor
16: computer readable storage medium
18: communication bus
20: Program
22: input/output interface
24: input/output device
26: network communication interface
100: data analysis service system
110, 110-1, 110-2: data providing device
120: reproduction data generating device
121: reproduction data generation unit
122: reproduction data providing unit
130: data use device

Claims (16)

복수의 데이터 제공 장치 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하는 재현 데이터 생성부; 및
상기 재현 데이터를 데이터 사용 장치로 제공하는 재현 데이터 제공부를 포함하는 재현 데이터 생성 장치.
a reproduction data generation unit generating synthetic data corresponding to combined data obtained by combining original data possessed by each of a plurality of data providing devices; and
and a reproduction data providing unit that provides the reproduction data to a data using apparatus.
청구항 1에 있어서,
상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치 각각으로부터 상기 원본 데이터에 대한 암호문을 수신하고, 상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 재현 데이터 생성 장치.
The method according to claim 1,
The reproduction data generating unit receives the cipher text for the original data from each of the plurality of data providing devices, and generates the reproduced data based on the received cipher text.
청구항 2에 있어서,
상기 재현 데이터 생성부는, 신뢰 실행 환경(Trusted Execution Environment, TEE) 내에서, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 복호화하고, 상기 TEE 내에서 상기 복호화를 통해 생성된 각 원본 데이터를 결합하여 상기 결합 데이터를 생성하고, 상기 TEE 내에서 상기 생성된 결합 데이터에 기초하여 상기 재현 데이터를 생성하는 재현 데이터 생성 장치.
3. The method according to claim 2,
The reproduction data generation unit decrypts the encrypted text received from each of the plurality of data providing devices in a Trusted Execution Environment (TEE), and combines each original data generated through the decryption in the TEE, The reproduction data generating apparatus generates the combined data, and generates the reproduction data based on the generated combined data in the TEE.
청구항 2에 있어서,
상기 원본 데이터에 대한 암호문은, 동형 암호(Homomorphic Encryption) 알고리즘을 이용하여 상기 복수의 데이터 제공 장치 각각에 의해 생성된 암호문인 재현 데이터 생성 장치.
3. The method according to claim 2,
The encrypted text for the original data is an encrypted text generated by each of the plurality of data providing apparatuses using a homomorphic encryption algorithm.
청구항 4에 있어서,
상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 암호화된 상태로 이용하여 상기 결합 데이터에 대한 암호문을 생성하고, 상기 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 상기 재현 데이터에 대한 암호문을 생성하고,
상기 재현 데이터 제공부는, 상기 재현 데이터에 대한 암호문을 상기 데이터 사용 장치로 제공하는 재현 데이터 생성 장치.
5. The method according to claim 4,
The reproduction data generation unit generates an encrypted text for the combined data by using the encrypted text received from each of the plurality of data providing devices in an encrypted state, and uses the encrypted text for the combined data in an encrypted state to obtain the reproduction data generate a ciphertext for
and the reproduction data providing unit provides an encrypted text for the reproduction data to the data using device.
청구항 1에 있어서,
상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치가 참여한 다자간 계산(multi-party computation) 프로토콜을 이용하여 상기 재현 데이터를 생성하는 재현 데이터 생성 장치.
The method according to claim 1,
The reproduction data generating unit is configured to generate the reproduction data by using a multi-party computation protocol in which the plurality of data providing apparatuses participate.
청구항 1에 있어서,
상기 재현 데이터 생성부는, 머신 러닝 기반의 재현 데이터 생성 모델을 이용하여 상기 재현 데이터를 생성하는 재현 데이터 생성 장치.
The method according to claim 1,
The reproduction data generation unit is configured to generate the reproduction data by using a machine learning-based reproduction data generation model.
청구항 1에 있어서,
상기 재현 데이터 생성 모델은, 차등 정보 보호(Differential Privacy)를 만족하는 재현 데이터를 생성하도록 사전 학습된 모델인 재현 데이터 생성 장치.
The method according to claim 1,
The reproduction data generation model is a reproduction data generation apparatus that is a model pre-trained to generate reproduction data that satisfies differential privacy.
복수의 데이터 제공 장치 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하는 단계; 및
상기 재현 데이터를 데이터 사용 장치로 제공하는 단계를 포함하는 재현 데이터 생성 방법.
generating synthetic data corresponding to combined data obtained by combining original data possessed by each of a plurality of data providing devices; and
and providing the reproduction data to a data using device.
청구항 9에 있어서,
상기 생성하는 단계는, 상기 복수의 데이터 제공 장치 각각으로부터 상기 원본 데이터에 대한 암호문을 수신하는 단계; 및
상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계를 포함하는 재현 데이터 생성 방법.
10. The method of claim 9,
The generating may include: receiving an encrypted text for the original data from each of the plurality of data providing devices; and
and generating the reproduction data based on the received cipher text.
청구항 10에 있어서,
상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계는, 신뢰 실행 환경(Trusted Execution Environment, TEE) 내에서, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문에 대한 복호화하는 단계;
상기 TEE 내에서, 상기 복호화를 통해 생성된 각 원본 데이터를 결합하여 상기 결합 데이터를 생성하는 단계; 및
상기 TEE 내에서, 상기 생성된 결합 데이터에 기초하여 상기 재현 데이터를 생성하는 단계를 포함하는 재현 데이터 생성 방법.
11. The method of claim 10,
The generating of the reproduction data based on the received encrypted text may include: decrypting the encrypted text received from each of the plurality of data providing devices in a Trusted Execution Environment (TEE);
generating the combined data by combining the respective original data generated through the decoding in the TEE; and
and generating, within the TEE, the reproduction data based on the generated combined data.
청구항 10에 있어서,
상기 원본 데이터에 대한 암호문은, 동형 암호(Homomorphic Encryption) 알고리즘을 이용하여 상기 복수의 데이터 제공 장치 각각에 의해 생성된 암호문인 재현 데이터 생성 방법.
11. The method of claim 10,
The encrypted text for the original data is an encrypted text generated by each of the plurality of data providing devices using a homomorphic encryption algorithm.
청구항 12에 있어서,
상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계는, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 암호화된 상태로 이용하여 상기 결합 데이터에 대한 암호문을 생성하는 단계; 및
상기 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 상기 재현 데이터에 대한 암호문을 생성하는 단계를 포함하고,
상기 제공하는 단계는, 상기 재현 데이터에 대한 암호문을 상기 데이터 사용 장치로 제공하는 재현 데이터 생성 방법.
13. The method of claim 12,
The generating of the reproduced data based on the received encrypted text may include: generating an encrypted text for the combined data by using the encrypted text received from each of the plurality of data providing devices in an encrypted state; and
using the encrypted text for the combined data in an encrypted state to generate an encrypted text for the reproduced data,
In the providing step, the reproduced data generating method provides an encrypted text for the reproduced data to the data using device.
청구항 9에 있어서,
상기 재현 데이터를 생성하는 단계는, 상기 복수의 데이터 제공 장치가 참여한 다자간 계산(multi-party computation) 프로토콜을 이용하여 상기 재현 데이터를 생성하는 재현 데이터 생성 방법.
10. The method of claim 9,
The generating of the reproduction data may include generating the reproduction data using a multi-party computation protocol in which the plurality of data providing devices participate.
청구항 9에 있어서,
상기 재현 데이터를 생성하는 단계는, 머신 러닝 기반의 재현 데이터 생성 모델을 이용하여 상기 재현 데이터를 생성하는 재현 데이터 생성 방법.
10. The method of claim 9,
The generating of the reproduction data may include generating the reproduction data using a machine learning-based reproduction data generation model.
청구항 15에 있어서,
상기 재현 데이터 생성 모델은, 차등 정보 보호(Differential Privacy)를 만족하는 재현 데이터를 생성하도록 사전 학습된 모델인 재현 데이터 생성 방법.
16. The method of claim 15,
The reproduction data generation model is a reproduction data generation method that is a pre-trained model to generate reproduction data satisfying differential privacy.
KR1020210082692A 2020-06-24 2021-06-24 Method and apparatus for generating synthetic data KR20210158824A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP21202400.4A EP3985540B1 (en) 2020-10-13 2021-10-13 Method and apparatus for generating synthetic data
US17/500,013 US20220116199A1 (en) 2020-10-13 2021-10-13 Method and apparatus for generating synthetic data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200077152 2020-06-24
KR20200077152 2020-06-24

Publications (1)

Publication Number Publication Date
KR20210158824A true KR20210158824A (en) 2021-12-31

Family

ID=79177895

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210082692A KR20210158824A (en) 2020-06-24 2021-06-24 Method and apparatus for generating synthetic data

Country Status (1)

Country Link
KR (1) KR20210158824A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230161779A (en) 2022-05-19 2023-11-28 서울대학교산학협력단 Device and Method for Homomorphic Permutation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190096295A (en) 2018-02-08 2019-08-19 애플 인크. Privatized machine learning using generative adversarial networks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190096295A (en) 2018-02-08 2019-08-19 애플 인크. Privatized machine learning using generative adversarial networks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230161779A (en) 2022-05-19 2023-11-28 서울대학교산학협력단 Device and Method for Homomorphic Permutation

Similar Documents

Publication Publication Date Title
US11277257B2 (en) Method and apparatus for performing operation using encrypted data
US10771245B2 (en) Systems and methods for use in computer network security
JP2014119486A (en) Secret retrieval processing system, secret retrieval processing method, and secret retrieval processing program
KR102143525B1 (en) Method for function encryption supporting set intersection operation and apparatus using the same
CN112953974B (en) Data collision method, device, equipment and computer readable storage medium
KR20200047002A (en) Method for comparing ciphertext using homomorphic encryption and apparatus for executing thereof
CN114039785B (en) Data encryption, decryption and processing methods, devices, equipment and storage medium
Suresh et al. Securing personal health record system in cloud using user usage based encryption
WO2016103960A1 (en) Control device, statistical analysis device, decoding device and transmitting device
Thilakanathan et al. Secure multiparty data sharing in the cloud using hardware-based TPM devices
Mohammad Encryption Strategies for Protecting Data in SaaS Applications
Elmogazy et al. Towards healthcare data security in cloud computing
EP3985540A1 (en) Method and apparatus for generating synthetic data
KR20210158824A (en) Method and apparatus for generating synthetic data
JP2014137474A (en) Tamper detection device, tamper detection method, and program
KR20210082019A (en) Apparatus and method for set intersection operation
EP3410630B1 (en) General data protection method for multicentric sensitive data storage and sharing
KR102284877B1 (en) Efficient functional encryption for set intersection
KR20210118717A (en) Method and apparatus for performing operation using encrypted data
EP3644545A1 (en) Apparatus and method for encryption and decryption
KR102690536B1 (en) Apparatus and method for encryption
US20230161907A1 (en) Method and system for unifying de-identified data from mulitple sources
EP3902194A1 (en) Method and apparatus for training analysis model
Kumar et al. Multiple Precision Arithmetic with Blowfish Crypto Method for Medical Data Storage Using Blockchain Technology
RU2804040C1 (en) Method for restriction of access to data using attribute-based encryption

Legal Events

Date Code Title Description
A201 Request for examination