KR20220048876A - 재현 데이터 생성 장치 및 방법 - Google Patents

재현 데이터 생성 장치 및 방법 Download PDF

Info

Publication number
KR20220048876A
KR20220048876A KR1020200132247A KR20200132247A KR20220048876A KR 20220048876 A KR20220048876 A KR 20220048876A KR 1020200132247 A KR1020200132247 A KR 1020200132247A KR 20200132247 A KR20200132247 A KR 20200132247A KR 20220048876 A KR20220048876 A KR 20220048876A
Authority
KR
South Korea
Prior art keywords
data
reproduction
generating
reproduction data
encrypted text
Prior art date
Application number
KR1020200132247A
Other languages
English (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 KR1020200132247A priority Critical patent/KR20220048876A/ko
Priority to EP21202400.4A priority patent/EP3985540B1/en
Priority to US17/500,013 priority patent/US20220116199A1/en
Publication of KR20220048876A publication Critical patent/KR20220048876A/ko

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
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • 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
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

재현 데이터 생성을 위한 장치 및 방법이 개시된다. 일 실시예에 따른 재현 데이터 생성 장치는 복수의 데이터 제공 장치 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하는 재현 데이터 생성부; 및 상기 재현 데이터를 데이터 사용 장치로 제공하는 재현 데이터 제공부를 포함한다.

Description

재현 데이터 생성 장치 및 방법{METHOD AND APPARATUS FOR GENERATING SYNTHETIC DATA}
개시되는 실시예들은 재현 데이터 생성 기술과 관련된다.
데이터 분석에서 데이터 결합은 분석의 성능을 고도화하기 위해 많이 사용되는 접근이다. 하지만, 여러 기관이 개인정보가 포함된 데이터를 서로 공유하여 데이터를 결합하는 것은 개인정보호법, GDPR(General Data Protection Regulation), HIPPA(Health Insurance Portability and Accountability Act) 등과 같은 여러 규제로 인해 사실상 불가능하다. 이와 같은 법적 규제를 피하기 위해서 비식별화 기법이 많이 사용되지만 비식별화 처리된 데이터도 결합 후 개인정보 노출 위험이 증가하게 된다. 또한, 종래 데이터 프라이버시 보호 기술은 암호화된(혹은 보호된) 데이터를 사용하기 때문에 분석 쿼리(query)에 따라 기술을 충족하는 기법을 고안해야 한다는 문제가 발생하여 전체 데이터 분석 과정의 소요 시간 및 복잡도를 크게 증가시킨다.
대한민국 공개특허공보 제10-2019-0096295호 (2019.08.19. 공개)
개시되는 실시예들은 재현 데이터 생성 장치 및 방법을 제공하기 위한 것이다.
일 실시예에 따른 재현 데이터 생성 장치는, 복수의 데이터 제공 장치 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하는 재현 데이터 생성부; 및 상기 재현 데이터를 데이터 사용 장치로 제공하는 재현 데이터 제공부를 포함한다.
상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치 각각으로부터 상기 원본 데이터에 대한 암호문을 수신하고, 상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성할 수 있다.
상기 재현 데이터 생성부는, 신뢰 실행 환경(Trusted Execution Environment, TEE) 내에서, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 복호화하고, 상기 TEE 내에서 상기 복호화를 통해 생성된 각 원본 데이터를 결합하여 상기 결합 데이터를 생성하고, 상기 TEE 내에서 상기 생성된 결합 데이터에 기초하여 상기 재현 데이터를 생성할 수 있다.
상기 원본 데이터에 대한 암호문은, 동형 암호(Homomorphic Encryption) 알고리즘을 이용하여 상기 복수의 데이터 제공 장치 각각에 의해 생성된 암호문일 수 있다.
상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 암호화된 상태로 이용하여 상기 결합 데이터에 대한 암호문을 생성하고, 상기 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 상기 재현 데이터에 대한 암호문을 생성하고, 상기 재현 데이터 제공부는, 상기 재현 데이터에 대한 암호문을 상기 데이터 사용 장치로 제공할 수 있다.
상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치가 참여한 다자간 계산(multi-party computation) 프로토콜을 이용하여 상기 재현 데이터를 생성할 수 있다.
상기 재현 데이터 생성부는, 머신 러닝 기반의 재현 데이터 생성 모델을 이용하여 상기 재현 데이터를 생성할 수 있다.
상기 재현 데이터 생성 모델은, 차등 정보 보호(Differential Privacy)를 만족하는 재현 데이터를 생성하도록 사전 학습된 모델일 수 있다.
일 실시예에 따른 재현 데이터 생성 방법은, 복수의 데이터 제공 장치 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하는 단계; 및 상기 재현 데이터를 데이터 사용 장치로 제공하는 단계를 포함한다.
상기 생성하는 단계는, 상기 복수의 데이터 제공 장치 각각으로부터 상기 원본 데이터에 대한 암호문을 수신하는 단계; 및 상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계를 포함할 수 있다.
상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계는, 신뢰 실행 환경(Trusted Execution Environment, TEE) 내에서, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문에 대한 복호화하는 단계; 상기 TEE 내에서, 상기 복호화를 통해 생성된 각 원본 데이터를 결합하여 상기 결합 데이터를 생성하는 단계; 및 상기 TEE 내에서, 상기 생성된 결합 데이터에 기초하여 상기 재현 데이터를 생성하는 단계를 포함할 수 있다.
상기 원본 데이터에 대한 암호문은, 동형 암호(Homomorphic Encryption) 알고리즘을 이용하여 상기 복수의 데이터 제공 장치 각각에 의해 생성된 암호문일 수 있다.
상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계는, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 암호화된 상태로 이용하여 상기 결합 데이터에 대한 암호문을 생성하는 단계; 및 상기 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 상기 재현 데이터에 대한 암호문을 생성하는 단계를 포함하고, 상기 제공하는 단계는, 상기 재현 데이터에 대한 암호문을 상기 데이터 사용 장치로 제공할 수 있다.
상기 재현 데이터를 생성하는 단계는, 상기 복수의 데이터 제공 장치가 참여한 다자간 계산(multi-party computation) 프로토콜을 이용하여 상기 재현 데이터를 생성할 수 있다.
상기 재현 데이터를 생성하는 단계는, 머신 러닝 기반의 재현 데이터 생성 모델을 이용하여 상기 재현 데이터를 생성할 수 있다.
상기 재현 데이터 생성 모델은, 차등 정보 보호(Differential Privacy)를 만족하는 재현 데이터를 생성하도록 사전 학습된 모델일 수 있다.
개시되는 실시예들에 따르면, 데이터 프라이버시 보호 기술 하에서 각 데이터 제공 장치가 보유한 원본 데이터들을 암호화된(혹은 보호된) 상태로 결합함으로써 데이터 결합을 위해 각 데이터 제공 장치 사이의 데이터 공유를 요구하지 않으며 원본 데이터 유출을 방지할 수 있다.
또한, 결합 데이터를 데이터 사용자에게 직접 제공하지 않고, 결합 데이터와 통계적 성질이 유사한 가짜 데이터인 재현 데이터를 데이터 사용자에게 제공함으로써 원본 데이터에 대한 보호와 분석 효율성을 모두 확보할 수 있게 된다.
도 1은 일 실시예에 따른 데이터 분석 시스템의 구성도
도 2는 일 실시예에 따른 재현 데이터 생성 장치의 구성도
도 3은 일 실시예에 따른 재현 데이터 생성 방법의 순서도
도 4는 일 실시예에 따른 재현 데이터 생성 과정을 나타낸 순서도
도 5는 다른 실시예에 따른 재현 데이터 생성 과정을 나타낸 순서도
도 6은 일 실시예에 따른 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
도 1은 일 실시예에 따른 데이터 분석 시스템의 구성도이다.
도 1을 참조하면, 일 실시예에 따른 데이터 분석 서비스 시스템(100)은 복수의 데이터 제공 장치(110), 재현 데이터 생성 장치(120) 및 데이터 사용 장치(130)를 포함한다.
복수의 데이터 제공 장치(110)는 각각 데이터 사용 장치(130)에 의한 분석 대상이 되는 원본 데이터를 소유하는 장치이다.
이때, 데이터 제공 장치(110)가 원본 데이터를 소유하고 있다는 것은 데이터 제공 장치(110)가 내부에 구비된 저장 수단에 원본 데이터를 저장하고 있거나, 원본 데이터를 저장하고 있는 외부 장치에 접근하여 원본 데이터를 획득 가능함을 의미할 수 있다.
한편, 원본 데이터는 예를 들어, 유전자 데이터, 진료 기록, 금융 거래 정보(예를 들어, 계좌번호, 계좌 입출금 내역 등), 개인 식별 정보(예를 들어, 이름, 주민등록번호 등) 등과 같이 법률 상 허가되지 않은 제3자에 대한 공개가 금지되거나 개인의 프라이버시 보호, 보안 상의 필요성 등에 따라 비공개가 요구되는 민감 정보를 포함하고 있는 데이터일 수 있다.
한편, 도 1에 도시된 실시예에서는 데이터 제공 장치(110)가 2개인 것으로 예시하고 있으나, 데이터 제공 장치(110)의 개수는 반드시 도시된 예에 한정되는 것은 아니며, 실시예에 따라 변경될 수 있다.
재현 데이터 생성 장치(120)는 복수의 데이터 제공 장치(110) 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하고, 생성된 재현 데이터를 데이터 사용 장치(130)로 제공하는 장치이다.
일 실시예에 따르면, 결합 데이터에 대한 재현 데이터는 결합 데이터와 동일 또는 유사한 통계적 특성을 가진 데이터를 의미하며, 실시예에 따라 차등 정보 보호(Differential Privacy)를 만족하도록 생성될 수 있다.
데이터 사용 장치(130)는 재현 데이터 생성 장치(120)로부터 제공받는 재현 데이터를 이용하여 재현 데이터에 대응되는 결합 데이터에 대한 분석 결과를 생성하기 위한 장치이다.
일 실시예에 따르면, 결합 데이터에 대한 분석 결과는 예를 들어, 예측 분석(predictive analysis), 통계 분석(statistical analysis), 분류(classification), 군집화(clustering) 등과 같이 결합 데이터와 관련된 유의미한 새로운 정보를 생성, 검출 또는 추출하는 다양한 종류의 데이터 분석에 대한 결과일 수 있으며, 반드시 특정한 종류의 분석 결과로 한정되는 것은 아니다.
도 2는 일 실시예에 따른 재현 데이터 생성 장치의 구성도이다.
도 2를 참조하면, 일 실시예에 따른 재현 데이터 생성 장치(120)는 재현 데이터 생성부(121) 및 재현 데이터 제공부(122)를 포함한다.
일 실시예에서, 재현 데이터 생성부(121) 및 재현 데이터 제공부(122)는 하나 이상의 프로세서 또는 하나 이상의 프로세서 및 소프트웨어의 결합에 의해 구현될 수 있으며, 도시된 예와 달리 구체적 동작에 있어 명확히 구분되지 않을 수 있다.
재현 데이터 생성부(121)는 복수의 데이터 제공 장치(110) 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터를 생성한다.
일 실시예에 따르면, 재현 데이터 생성부(121)는 복수의 데이터 제공 장치(110) 각각으로부터 각 데이터 제공 장치(110)가 보유한 원본 데이터에 대한 암호문을 수신하고, 각 데이터 제공 장치(110)로부터 수신된 암호문에 기초하여 결합 데이터에 대한 재현 데이터를 생성할 수 있다.
구체적으로, 일 실시예에 따르면, 복수의 데이터 제공 장치(110)로부터 수신되는 암호문은 예를 들어, AES(Advanced Encryption Standard) 알고리즘, DES(Data Encryption Standard) 알고리즘 등과 같은 대칭키 암호 알고리즘 또는 RSA(Rivest, Shamir, Adleman) 알고리즘, ElGarmal 알고리즘 등과 같은 공개키 암호 알고리즘을 이용하여 암호화된 암호문일 수 있다.
이 경우, 각 데이터 제공 장치(110)는 예를 들어, 디피-헬만(Diffie-Hellman) 키 교환 프로토콜을 이용하여 재현 데이터 생성 장치(120)와 사전 공유된 암호키 또는 재현 데이터 생성 장치(120)에 의해 공개된 공개키를 이용하여 자신이 보유한 원본 데이터를 암호화한 후, 암호화를 통해 생성된 암호문을 재현 데이터 생성 장치(120)로 제공할 수 있다.
또한, 재현 데이터 생성부(121)는 각 데이터 제공 장치(110)와 사전 공유된 암호키 또는 공개키에 대응되는 비밀키를 이용하여 각 데이터 제공 장치(110)로부터 수신된 암호문을 복호화한 후, 복호화된 각 원본 데이터를 결합함으로써 결합 데이터를 생성할 수 있다.
한편, 일 실시예에 따르면, 재현 데이터 생성부(121)는 머신 러닝(Machine learning) 기반의 재현 데이터 생성 모델을 이용하여 결합 데이터에 대한 재현 데이터를 생성할 수 있다. 구체적으로, 재현 데이터 생성 모델은 예를 들어, GAN(Generative Adversarial Network)와 같이 인공 신경망(Artificial Neural Network)에 기반하여 입력 데이터에 대한 재현 데이터를 생성하도록 사전 학습된 모델일 수 있다. 다른 예로, 재현 데이터 생성 모델은 예를 들어, DP-GAN(Differential Private Generative Adversarial Network)와 같이 차등 정보 보호(Differential Privacy)를 만족하는 재현 데이터를 생성하도록 사전 학습된 모델일 수 있다. 그러한, 재현 데이터 생성부(121)는 상술한 예 외도로 공지된 다양한 재현 데이터 생성 기술을 이용하여 결합 데이터에 대한 재현 데이터를 생성할 수 있다.
한편, 상술한 실시예에서, 재현 데이터 생성부(121)는 신뢰 실행 환경(Trusted Execution Environment) 내에서 암호문에 대한 복호화, 결합 데이터 생성 및 재현 데이터 생성을 수행할 수 있다.
다른 실시예에 따르면, 복수의 데이터 제공 장치(110)로부터 수신되는 암호문은 동형 암호(Homomorphic encryption) 알고리즘을 이용하여 암호화된 암호문일 수 있다. 이때, 동형 암호 알고리즘은 원본 데이터에 대한 암호문을 암호화된 상태로 이용하여 원본 데이터에 특정 연산을 수행한 결과에 대한 암호문을 생성할 수 있도록 하는 암호 알고리즘을 의미한다. 한편, 원본 데이터에 대한 암호문 생성을 위해 이용되는 동형 암호 알고리즘은 반드시 특정한 알고리즘으로 한정되는 것은 아니며, 데이터 결합 및 재현 데이터 생성을 위해 수행되어야 할 연산의 종류 및 효율성 등을 고려하여 공지된 다양한 동형 암호 알고리즘이 이용될 수 있다.
구체적으로, 재현 데이터 생성부(121)는 복수의 데이터 제공 장치(110) 각각으로부터 동형 암호 알고리즘을 이용하여 암호화된 암호문이 수신된 경우, 수신된 각 암호문을 암호화된 상태로 결합하여 각 암호문에 대응되는 원본 데이터를 결합한 결합 데이터에 대한 암호문을 생성할 수 있다.
또한, 재현 데이터 생성부(121)는 생성된 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 결합 데이터에 대응하는 재현 데이터에 대한 암호문을 생성할 수 있다. 구체적으로, 재현 데이터 생성부(121)는 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 결합 데이터 생성 모델을 이용한 연산을 수행함으로써 재현 데이터에 대한 암호문을 생성할 수 있다.
한편, 또 다른 실시예에 따르면, 재현 데이터 생성부(121)는 복수의 데이터 제공 장치(110)가 참여한 다자간 계산(multi-parity computation) 프로토콜을 이용하여 재현 데이터를 생성할 수 있다. 구체적으로, 재현 데이터 생성부(121)는 결합 데이터 생성 모델을 이용하여 재현 데이터를 생성하기 위한 연산을 각 데이터 제공 장치(110)와의 다자간 계산 프로토콜을 통해 수행함으로써 결합 데이터에 대한 재현 데이터를 생성할 수 있다. 이때, 다자간 계산 프로토콜은 반드시 특정한 방식으로 한정되는 것은 아니며 공지된 다양한 다자간 계산 방식이 이용될 수 있다.
재현 데이터 제공부(122)는 재현 데이터 생성부(121)에 의해 생성된 재현 데이터를 데이터 사용 장치(130)로 제공한다.
이때, 일 실시예에 따르면, 재현 데이터 생성부(121)에 의해 생성된 재현 데이터는 동형 암호 알고리즘을 이용하여 암호화된 재현 데이터일 수 있다.
도 3은 일 실시예에 따른 재현 데이터 생성 방법의 순서도이다.
도 3에 도시된 방법은 재현 데이터 생성 장치(120)에 의해 수행될 수 있다.
도 3을 참조하면, 우선, 재현 데이터 생성 장치(120)는 복수의 데이터 제공 장치(110) 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터를 생성한다(310).
이때, 일 실시예에 따르면, 재현 데이터 생성 장치(120)는, 복수의 데이터 제공 장치(110) 각각으로부터 원본 데이터에 대한 암호문을 수신하고, 수신된 암호문에 기초하여 재현 데이터를 생성할 수 있다.
다른 실시예에 따르면, 재현 데이터 생성 장치(120)는 복수의 데이터 제공 장치(110)가 참여한 다자간 계산 프로토콜을 이용하여 재현 데이터를 생성할 수 있다.
이후, 재현 데이터 생성 장치(120)는 생성된 재현 데이터를 데이터 사용 장치(130)로 제공한다(320).
도 4는 일 실시예에 따른 재현 데이터 생성 과정을 나타낸 순서도이다.
도 4에 도시된 과정은 도 3에 도시된 310 단계에서 수행될 수 있다.
도 4를 참조하면, 우선, 재현 데이터 생성 장치(120)는 복수의 데이터 제공 장치(110) 각각으로부터 각 데이터 제공 장치(110)가 보유한 원본 데이터에 대한 암호문을 수신한다(410).
이후, 재현 데이터 생성 장치(120)는 신뢰 실행 환경 내에서, 각 데이터 제공 장치(110)로부터 수신된 암호문을 복호화한다(420).
이후, 재현 데이터 생성 장치(120)는 신뢰 실행 환경 내에서, 복호화를 통해 생성된 각 원본 데이터를 결합하여 결합 데이터를 생성한다(430).
이후, 재현 데이터 생성 장치(120)는 신뢰 실행 환경 내에서, 결합 데이터에 대응하는 재현 데이터를 생성한다(440).
도 5는 다른 실시예에 따른 재현 데이터 생성 과정을 나타낸 순서도이다.
도 5에 도시된 과정은 도 3에 도시된 310 단계에서 수행될 수 있다.
도 5를 참조하면, 우선, 재현 데이터 생성 장치(120)는 복수의 데이터 제공 장치(110) 각각으로부터 동형 암호 알고리즘을 이용하여 암호화된 원본 데이터에 대한 암호문을 수신한다(510).
이후, 재현 데이터 생성 장치(120)는 각 데이터 제공 장치(110)로부터 수신된 암호문을 암호화된 상태로 이용하여, 수신된 각 암호문에 대한 원문 데이터를 결합한 결합 데이터에 대한 암호문을 생성한다(520).
이후, 재현 데이터 생성 장치(120)는 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 결합 데이터에 대응하는 재현 데이터에 대한 암호문을 생성한다(530).
도 6은 일 실시예에 따른 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도이다.
도 6에 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 도 2에 도시된 재현 데이터 생성 장치(120)에 포함된 하나 이상의 컴포넌트일 수 있다.
컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.
이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 전술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
10: 컴퓨팅 환경
12: 컴퓨팅 장치
14: 프로세서
16: 컴퓨터 판독 가능 저장 매체
18: 통신 버스
20: 프로그램
22: 입출력 인터페이스
24: 입출력 장치
26: 네트워크 통신 인터페이스
100: 데이터 분석 서비스 시스템
110, 110-1, 110-2: 데이터 제공 장치
120: 재현 데이터 생성 장치
121: 재현 데이터 생성부
122: 재현 데이터 제공부
130: 데이터 사용 장치

Claims (16)

  1. 복수의 데이터 제공 장치 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하는 재현 데이터 생성부; 및
    상기 재현 데이터를 데이터 사용 장치로 제공하는 재현 데이터 제공부를 포함하는 재현 데이터 생성 장치.
  2. 청구항 1에 있어서,
    상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치 각각으로부터 상기 원본 데이터에 대한 암호문을 수신하고, 상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 재현 데이터 생성 장치.
  3. 청구항 2에 있어서,
    상기 재현 데이터 생성부는, 신뢰 실행 환경(Trusted Execution Environment, TEE) 내에서, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 복호화하고, 상기 TEE 내에서 상기 복호화를 통해 생성된 각 원본 데이터를 결합하여 상기 결합 데이터를 생성하고, 상기 TEE 내에서 상기 생성된 결합 데이터에 기초하여 상기 재현 데이터를 생성하는 재현 데이터 생성 장치.
  4. 청구항 2에 있어서,
    상기 원본 데이터에 대한 암호문은, 동형 암호(Homomorphic Encryption) 알고리즘을 이용하여 상기 복수의 데이터 제공 장치 각각에 의해 생성된 암호문인 재현 데이터 생성 장치.
  5. 청구항 4에 있어서,
    상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 암호화된 상태로 이용하여 상기 결합 데이터에 대한 암호문을 생성하고, 상기 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 상기 재현 데이터에 대한 암호문을 생성하고,
    상기 재현 데이터 제공부는, 상기 재현 데이터에 대한 암호문을 상기 데이터 사용 장치로 제공하는 재현 데이터 생성 장치.
  6. 청구항 1에 있어서,
    상기 재현 데이터 생성부는, 상기 복수의 데이터 제공 장치가 참여한 다자간 계산(multi-party computation) 프로토콜을 이용하여 상기 재현 데이터를 생성하는 재현 데이터 생성 장치.
  7. 청구항 1에 있어서,
    상기 재현 데이터 생성부는, 머신 러닝 기반의 재현 데이터 생성 모델을 이용하여 상기 재현 데이터를 생성하는 재현 데이터 생성 장치.
  8. 청구항 1에 있어서,
    상기 재현 데이터 생성 모델은, 차등 정보 보호(Differential Privacy)를 만족하는 재현 데이터를 생성하도록 사전 학습된 모델인 재현 데이터 생성 장치.
  9. 복수의 데이터 제공 장치 각각이 보유한 원본 데이터를 결합한 결합 데이터에 대응하는 재현 데이터(synthetic data)를 생성하는 단계; 및
    상기 재현 데이터를 데이터 사용 장치로 제공하는 단계를 포함하는 재현 데이터 생성 방법.
  10. 청구항 9에 있어서,
    상기 생성하는 단계는, 상기 복수의 데이터 제공 장치 각각으로부터 상기 원본 데이터에 대한 암호문을 수신하는 단계; 및
    상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계를 포함하는 재현 데이터 생성 방법.
  11. 청구항 10에 있어서,
    상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계는, 신뢰 실행 환경(Trusted Execution Environment, TEE) 내에서, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문에 대한 복호화하는 단계;
    상기 TEE 내에서, 상기 복호화를 통해 생성된 각 원본 데이터를 결합하여 상기 결합 데이터를 생성하는 단계; 및
    상기 TEE 내에서, 상기 생성된 결합 데이터에 기초하여 상기 재현 데이터를 생성하는 단계를 포함하는 재현 데이터 생성 방법.
  12. 청구항 10에 있어서,
    상기 원본 데이터에 대한 암호문은, 동형 암호(Homomorphic Encryption) 알고리즘을 이용하여 상기 복수의 데이터 제공 장치 각각에 의해 생성된 암호문인 재현 데이터 생성 방법.
  13. 청구항 12에 있어서,
    상기 수신된 암호문에 기초하여 상기 재현 데이터를 생성하는 단계는, 상기 복수의 데이터 제공 장치 각각으로부터 수신된 암호문을 암호화된 상태로 이용하여 상기 결합 데이터에 대한 암호문을 생성하는 단계; 및
    상기 결합 데이터에 대한 암호문을 암호화된 상태로 이용하여 상기 재현 데이터에 대한 암호문을 생성하는 단계를 포함하고,
    상기 제공하는 단계는, 상기 재현 데이터에 대한 암호문을 상기 데이터 사용 장치로 제공하는 재현 데이터 생성 방법.
  14. 청구항 9에 있어서,
    상기 재현 데이터를 생성하는 단계는, 상기 복수의 데이터 제공 장치가 참여한 다자간 계산(multi-party computation) 프로토콜을 이용하여 상기 재현 데이터를 생성하는 재현 데이터 생성 방법.
  15. 청구항 9에 있어서,
    상기 재현 데이터를 생성하는 단계는, 머신 러닝 기반의 재현 데이터 생성 모델을 이용하여 상기 재현 데이터를 생성하는 재현 데이터 생성 방법.
  16. 청구항 15에 있어서,
    상기 재현 데이터 생성 모델은, 차등 정보 보호(Differential Privacy)를 만족하는 재현 데이터를 생성하도록 사전 학습된 모델인 재현 데이터 생성 방법.
KR1020200132247A 2020-10-13 2020-10-13 재현 데이터 생성 장치 및 방법 KR20220048876A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020200132247A KR20220048876A (ko) 2020-10-13 2020-10-13 재현 데이터 생성 장치 및 방법
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 (1)

Application Number Priority Date Filing Date Title
KR1020200132247A KR20220048876A (ko) 2020-10-13 2020-10-13 재현 데이터 생성 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20220048876A true KR20220048876A (ko) 2022-04-20

Family

ID=80685612

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200132247A KR20220048876A (ko) 2020-10-13 2020-10-13 재현 데이터 생성 장치 및 방법

Country Status (3)

Country Link
US (1) US20220116199A1 (ko)
EP (1) EP3985540B1 (ko)
KR (1) KR20220048876A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12008140B2 (en) * 2019-09-27 2024-06-11 Avast S oftware s.r.o. Privacy personas using synthetic personally identifiable information

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190096295A (ko) 2018-02-08 2019-08-19 애플 인크. 생성적 적대 신경망을 이용한 비공개화된 머신 러닝

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101566171B1 (ko) * 2007-03-09 2015-11-06 삼성전자 주식회사 디지털 저작권 관리 방법 및 장치
US9866454B2 (en) * 2014-03-25 2018-01-09 Verizon Patent And Licensing Inc. Generating anonymous data from web data
US9946895B1 (en) * 2015-12-15 2018-04-17 Amazon Technologies, Inc. Data obfuscation
US10601786B2 (en) * 2017-03-02 2020-03-24 UnifyID Privacy-preserving system for machine-learning training data
US10726300B2 (en) * 2018-05-01 2020-07-28 Scribe Fusion, LLC System and method for generating and processing training data
US10536344B2 (en) * 2018-06-04 2020-01-14 Cisco Technology, Inc. Privacy-aware model generation for hybrid machine learning systems
US20190188386A1 (en) * 2018-12-27 2019-06-20 Intel Corporation Protecting ai payloads running in gpu against main cpu residing adversaries
EP3879421A1 (en) * 2020-03-11 2021-09-15 ABB Schweiz AG Method and system for enhancing data privacy of an industrial system or electric power system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190096295A (ko) 2018-02-08 2019-08-19 애플 인크. 생성적 적대 신경망을 이용한 비공개화된 머신 러닝

Also Published As

Publication number Publication date
US20220116199A1 (en) 2022-04-14
EP3985540B1 (en) 2023-08-30
EP3985540A1 (en) 2022-04-20

Similar Documents

Publication Publication Date Title
Gupta et al. Secure data storage and sharing techniques for data protection in cloud environments: A systematic review, analysis, and future directions
US11277257B2 (en) Method and apparatus for performing operation using encrypted data
JP2014119486A (ja) 秘匿検索処理システム、秘匿検索処理方法、および秘匿検索処理プログラム
KR102143525B1 (ko) 교집합 연산을 지원하는 함수 암호를 위한 방법 및 이를 이용한 장치
WO2019203936A1 (en) Systems and methods for use in computer network security
CN114039785B (zh) 数据加密、解密、处理方法、装置、设备和存储介质
CN112953974B (zh) 数据碰撞方法、装置、设备及计算机可读存储介质
Suresh et al. Securing personal health record system in cloud using user usage based encryption
WO2016103960A1 (ja) 制御装置、解析装置、復号装置および送信装置
Thilakanathan et al. Secure multiparty data sharing in the cloud using hardware-based TPM devices
Elmogazy et al. Towards healthcare data security in cloud computing
Mohammad Encryption Strategies for Protecting Data in SaaS Applications
EP3985540A1 (en) Method and apparatus for generating synthetic data
KR20210158824A (ko) 재현 데이터 생성 장치 및 방법
EP3410630B1 (en) General data protection method for multicentric sensitive data storage and sharing
KR20210082019A (ko) 교집합 연산을 위한 장치 및 방법
CN116361849A (zh) 一种加密数据库的备份数据加密、解密方法及装置
EP3644545A1 (en) Apparatus and method for encryption and decryption
US11438136B2 (en) Encryption apparatus and method for encrypting encryption target data in data based on homomorphic encryption algorithm
US20230161907A1 (en) Method and system for unifying de-identified data from mulitple sources
EP3902194A1 (en) Method and apparatus for training analysis model
RU2804040C1 (ru) Способ разграничения доступа к данным с помощью шифрования на основе атрибутов
KR102625088B1 (ko) 데이터 공유 장치 및 방법
Prathap et al. Enhancing security by two-way decryption of message passing of EMR in public cloud
US20230412574A1 (en) Concept for sharing data