KR20180136267A - 동형 암호화를 이용한 개인 정보 보호 방법 - Google Patents

동형 암호화를 이용한 개인 정보 보호 방법 Download PDF

Info

Publication number
KR20180136267A
KR20180136267A KR1020170074997A KR20170074997A KR20180136267A KR 20180136267 A KR20180136267 A KR 20180136267A KR 1020170074997 A KR1020170074997 A KR 1020170074997A KR 20170074997 A KR20170074997 A KR 20170074997A KR 20180136267 A KR20180136267 A KR 20180136267A
Authority
KR
South Korea
Prior art keywords
server
information
credit provider
service providing
provider server
Prior art date
Application number
KR1020170074997A
Other languages
English (en)
Other versions
KR101992402B1 (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 KR1020170074997A priority Critical patent/KR101992402B1/ko
Publication of KR20180136267A publication Critical patent/KR20180136267A/ko
Application granted granted Critical
Publication of KR101992402B1 publication Critical patent/KR101992402B1/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
    • 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/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • 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/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명에 의해 신용 제공자 서버에 가입하는 방법은, 사용자 단말기와, 신용 제공자 서버와, 키 저장 서버를 포함하는 환경에서 수행되며, 상기 방법은, 신용 제공자 서버가 사용자 단말기로부터 사용자 암호화키로 동형 암호화된 제1 개인정보와, 암호화되지 않은 제2 개인정보를 수신하는 제1 단계와;;신용 제공자 서버가 제2 개인 정보를 제1 암호화 키로 동형 암호화하고 저장하는 제2 단계와; 신용 제공자 서버가 사용자 단말기와 공유하는 랜덤값과 제1 복호화 키의 차이인 (제1 복호화 키 - 랜덤값)을 키 저장 서버로 전송하는 제3 단계와; 키 저장 서버가, 사용자 단말기로부터 전송받은 (사용자 복호화키 - 랜덤값)과 신용 제공자 서버로부터 전송받은 (제1 복호화 키 - 랜덤값)의 차이인 [(사용자 복호화키 - 랜덤값) - (제1 복호화 키 - 랜덤값)]을 제2 복호화키로 저장하는 제4 단계를 포함한다.

Description

동형 암호화를 이용한 개인 정보 보호 방법{Method for Protecting Personal Data Using Homomorphic Encryption}
본 발명은 동형 암호화를 이용한 개인 정보 보호 방법에 대한 것으로서 좀 더 구체적으로는, 온라인/오프라인 서비스를 이용하기 위해 가입할 때에 개인 정보를 보호할 수 있는 방법에 대한 것이다.
온라인 또는 오프라인 서비스를 이용하기 위해 사용자가 개인 정보를 제공하고 제공된 개인 정보는 서비스 제공 주체가 보관하는 것이 일반적이다. 개인정보 보호법에 따라서 보관 주체측이 보관하는 개인정보는 암호화되어 관리되어야 하지만 유출되지 않도록 관리하는 것은 용이하지 않고 실제로도 개인정보 유출의 문제가 발생하고 있다.
본 발명은 이러한 종래 기술의 문제점을 해결하기 위해, 서비스 제공자측은 복호화할 수 없도록 암호화된 개인 정보를 암호화한 데이터를 저장할 뿐이지만, 실제 서비스 제공에는 문제가 없으며, 제3자의 정보 요청에 대해서도 실제 개인 정보를 전달하지 않고도 요청받은 정보를 전달하는 효과가 있는 방법을 제공하는 것을 목적으로 한다.
본 발명에 의해 신용 제공자 서버에 가입하는 방법은, 사용자 단말기와, 신용 제공자 서버와, 키 저장 서버를 포함하는 환경에서 수행되며, 상기 방법은, 신용 제공자 서버가 사용자 단말기로부터 사용자 암호화키로 동형 암호화된 제1 개인정보와, 암호화되지 않은 제2 개인정보를 수신하는 제1 단계와;;신용 제공자 서버가 제2 개인 정보를 제1 암호화 키로 동형 암호화하고 저장하는 제2 단계와; 신용 제공자 서버가 사용자 단말기와 공유하는 랜덤값과 제1 복호화 키의 차이인 (제1 복호화 키 - 랜덤값)을 키 저장 서버로 전송하는 제3 단계와; 키 저장 서버가, 사용자 단말기로부터 전송받은 (사용자 복호화키 - 랜덤값)과 신용 제공자 서버로부터 전송받은 (제1 복호화 키 - 랜덤값)의 차이인 [(사용자 복호화키 - 랜덤값) - (제1 복호화 키 - 랜덤값)]을 제2 복호화키로 저장하는 제4 단계를 포함한다.
랜덤값은 사용자 단말기가 생성하여 신용 제공자 서버로 전송한 값일 수 있다.
랜덤값은 디피 헬만 키교환 방법에 의해서 공유되는 값일 수 있다.
상기 방법에 의해 신용 제공자 서버에 가입한 후 사용자의 서비스 제공 서버로의 가입 방법은, 서비스 제공 서버가 사용자 단말기로부터 사용자 정보를 요청하는 제1 단계와; 서비스 제공 서버가 신용 제공자 서버로부터 사용자 암호화키로 동형 암호화된 제1 개인정보 및 제1 암호화 키로 동형 암호화된 제2 개인 정보를 수신하는 제2 단계와; 서비스 제공 서버가 암호화된 개인 정보를 저장하는 제3 단계를 포함한다.
상기 서비스 제공 서버로의 가입 방법에 의해 가입한 사용자에 대한 정보를 서비스 제공 서버가 정보 소비자 서버에 제공하는 방법에 있어서, 서비스 제공 서버가 신용 제공자 서버에 제1 암호화키를 요청하는 제1 단계와; 서비스 제공 서버가 신용 제공자 서버로부터 제1 암호화키를 수신하는 제2 단계와; 서비스 제공 서버가 제1 암호화키로 트랜잭션 데이터를 동형 암호화하는 제3 단계와; 서비스 제공 서버가 제1 암호화키로 동형 암호화된 트랜잭션 데이터와 암호화된 개인 정보를 정보 소비자 서버로 전송하는 제4 단계와; 정보 소비자 서버가 암호화된 개인 정보와 트랜잭션 데이터에 대해서 연산을 수행하는 제5 단계와; 정보 소비자 서버가 신용 제공자 서버에 연산 결과에 대한 복호화를 요청하는 제6 단계와; 정보 소비자 서버가 신용 제공자 서버로부터 복호화된 데이터를 전송받는 제7 단계를 포함한다.
본 발명의 다른 형태에 의한, 서비스 제공 서버가 사용자에 대한 정보를 정보 소비자 서버에 제공하는 방법은, 서비스 제공 서버가 자체 암호화키로 트랜잭션 데이터를 동형 암호화하는 제1 단계와; 서비스 제공 서버가 제1 단계에서 암호화된 트랜잭션 데이터와 암호화된 개인 정보를 정보 소비자 서버로 전송하는 제2 단계와; 정보 소비자 서버가 암호화된 개인 정보와 트랜잭션 데이터에 대해서 연산을 수행하는 제3 단계와; 정보 소비자 서버가 신용 제공자 서버와 서비스 제공 서버에 연산 결과의 복호화를 요청하는 제4 단계와; 정보 소비자 서버가 신용 제공자 서버와 서비스 제공 서버로부터 복호화 결과를 전송받는 제5 단계를 포함한다.
본 발명에 의하면, 민감한 개인 정보를 서비스 제공자에게 제공하지 않고도, 필요한 경우 서비스 제공자가 보관하고 있는 개인 정보와 트랜잭션 정보를 정보 소비자에게 제공할 수 있는 효과가 제공된다.
도 1은 본 발명에 의한 신용 제공자 서버로의 가입 방법의 흐름도.
도 2는 본 발명에 의한 서비스 제공 서버로의 가입 방법의 흐름도.
도 3은 본 발명에 의해 서비스 제공 서버가 정보 소비자 서버로 정보를 제공하는 방법의 흐름도.
도 4는 서비스 제공 서버가 정보 소비자 서버로 정보를 제공하는 방법의 다른 실시예의 흐름도.
이하에서는 첨부 도면을 참조하여 본 발명에 대해서 자세하게 설명한다.
본 명세서에서 수행되는 정보(데이터) 전송 과정은 필요에 따라서 암호화/복호화가 적용될 수 있으며, 본 명세서 및 특허청구범위에서 정보(데이터) 전송 과정을 설명하는 표현은 별도로 언급되지 않더라도 모두 암호화/복호화하는 경우도 포함하는 것으로 해석되어야 한다. 본 명세서에서 "A로부터 B로 전송(전달)" 또는 "A가 B로부터 수신"과 같은 형태의 표현은 중간에 다른 매개체가 포함되어 전송(전달) 또는 수신되는 것도 포함하며, A로부터 B까지 직접 전송(전달) 또는 수신되는 것만을 표현하는 것은 아니다. 본 발명의 설명에 있어서 각 단계의 순서는 선행 단계가 논리적 및 시간적으로 반드시 후행 단계에 앞서서 수행되어야 하는 경우가 아니라면 각 단계의 순서는 비제한적으로 이해되어야 한다. 즉 위와 같은 예외적인 경우를 제외하고는 후행 단계로 설명된 과정이 선행 단계로 설명된 과정보다 앞서서 수행되더라도 발명의 본질에는 영향이 없으며 권리범위 역시 단계의 순서에 관계없이 정의되어야 한다. 그리고 본 명세서에서 “A 또는 B”은 A와 B 중 어느 하나를 선택적으로 가리키는 것 뿐만 아니라 A와 B 모두를 포함하는 것도 의미하는 것으로 정의된다. 또한, 본 명세서에서 "포함"이라는 용어는 포함하는 것으로 나열된 요소 이외에 추가로 다른 구성요소를 더 포함하는 것도 포괄하는 의미를 가진다.
본 명세서에서는 본 발명의 설명에 필요한 필수적인 구성요소만을 설명하며, 본 발명의 본질과 관계가 없는 구성요소는 언급하지 아니한다. 그리고 언급되는 구성요소만을 포함하는 배타적인 의미로 해석되어서는 아니되며 다른 구성요소도 포함할 수 있는 비배타적인 의미로 해석되어야 한다.
본 명세서에서 명시적인 표현이 없더라도 "암호화"는 동형 암호화(homomorphic encryption)을 의미하며, 동형 암호화가 아닌 암호화는 별도로 표기한다.
도 1에는 본 발명에 의한 신용 제공자 서버(20)로의 가입 방법의 흐름도가 도시되어 있다.
본 명세서에서 신용 제공자 서버(20)는 일종의 인증 기관이 운영하는 서버로서 사용자가 개인 정보를 제공하여 가입할 수 있다. 신용 제공자 서버(20)에 사용자가 개인 정보를 제공하여 가입한 후에 실제 서비스를 제공하는 서비스 제공 주체가 운영하는 서비스 제공 서버(40)에 가입할 때에는 추가적인 개인 정보를 제공하지 않아도 된다. 그러나 사용자가 서비스 제공 서버(40)측에 선택적으로 개인 정보를 제공하는 경우를 완전히 배제하는 것은 아니다. 예를 들어, 서비스 제공 서버(40)가 요구하는 민감하지 않은 추가적인 개인 정보는 서비스 제공 서버(40)에 제공할 수도 있다.
사용자는 사용자 단말기(10)를 통해 제2 개인 정보와 암호화된 제1 개인 정보를 신용 제공자 서버(20)에 전송한다(단계 100). 사용자의 개인 정보는 제1 개인 정보와 제2 개인 정보로 나뉜다. 제1 개인 정보는 사용자 단말기(10)의 사용자 암호화키(Ek)로 암호화되며, 제2 개인 정보는 후술하는 바와 같이 신용 제공자 서버(20)의 제1 암호화 키로 암호화된다. 제2 개인 정보는 신용 제공자 서버(20)측에서 암호화하도록 사용자가 동의한 개인 정보 예를 들어, 특정 개인을 확정할 수 없는 학력, 연봉, 재산, 직업군 등과 같은 정보를 의미한다. 일반적으로는 민감한 개인 정보 예를 들어, 이름, 주민등록번호, 주소 정보와 같은 항목을 제1 개인 정보로 설정해서 사용자 암호화키로 암호화한다. 사용자 단말기(10)는 사용자 암호화 키(Ek)에 대응하는 사용자 복호화 키(Dk)를 이용할 수 있다.
신용 제공자 서버(20)는 제2 개인 정보를 제1 암호화 키(ek1)로 암호화하고 저장한다(단계 105). 신용 제공자 서버(20)는 제1 암호화 키(ek1)에 대응하는 제1 복호화 키(dk1)을 이용할 수 있다.
사용자 단말기(10)는 디피 헬만 키 교환 방법(Diffie-Hellman key exchange) 등에 의해 신용 제공자 서버(20)와 공통의 랜덤값(r)을 공유한다(단계 110). 사용자 단말기(10)와 신용 제공자 서버(20)가 랜덤값(r)을 공유하는 방법은 디피 헬만 키 교환 방법 이외에도 공지되어 있는 다른 방법을 적용해도 무방하다.
다음으로 단계 115에서 사용자 복호화키(Dk)와 랜덤값(r)의 차이인 (Dk-r)을 키 저장 서버(30)로 전송한다. 신용 제공자 서버(20)는 제1 복호화 키(dk1)와 랜덤값(r)의 차이인 (dk1-r)을 키 저장 서버(30)로 전송한다(단계 120). 키 저장 서버(30)는 (Dk-r) - (dk1-r)의 연산을 수행하여 제2 복호화 키(dk2)로 저장한다(단계 125). 즉 사용자 복호화 키(Dk)는 신용 제공자 서버(20)가 이용 가능한 제1 복호화 키(dk1)와 키 저장 서버(30)가 이용 가능한 제2 복호화 키(dk2)로 나뉜다.
도 1의 실시예에서는 사용자 단말기(10)와 신용 제공자 서버(20)가 키 교환 방법 등을 통해서 랜덤값(r)을 공유하지만, 랜덤값(r)을 사용자 단말기(10)가 생성하여 신용 제공자 서버(20)로 전송하여 랜덤값(r)을 사용자 단말기(10)와 신용 제공자 서버(20)가 공유하게 할 수도 있다.
도 1에 의한 신용 제공자 서버(20)에 사용자가 개인 정보를 제공하여 가입 신청을 한 후에, 실제로 서비스를 이용하고자 하는 서비스 제공 주체의 서비스 제공 서버(40)에 가입 신청을 한다(단계 200). 이 때 사용자는 서비스 제공 서버(40)에 개인 정보를 제공하지 않는다. 가입 신청을 받은 서비스 제공 서버(40)는 해당 사용자의 정보를 신용 제공자 서버(20)에 요청한다.
신용 제공자 서버(20)는 암호화된 제1 개인 정보 및 제2 개인 정보를 전송한다(단계 210). 전술한 바와 같이, 제1 개인 정보는 사용자 암호화키로 암호화되어 있고 제2 개인 정보는 신용 제공자 서버(20)의 제1 암호화 키(ek1)로 암호화되어 있으므로, 복호화 키를 가지고 있지 않은 서비스 제공 서버(40)는 개인 정보를 알 수 없다. 서비스 제공 서버(40)는 암호화된 개인 정보(본 명세서에서 서비스 제공 서버에 저장되는 "암호화된 개인 정보"는 "사용자 암호화키로 암호화된 제1 개인 정보와 신용 제공자 서버(20)의 제1 암호화 키(ek1)으로 암호화된 제2 개인정보의 결합"으로 정의된다)의 사본을 저장한다(단계 215).
도 1 및 도 2의 가입 방법에 의해서 가입한 후에 사용자는 서비스 제공 서버(40)의 서비스를 이용할 수 있다. 서비스 이용 과정에서 사용자가 이용한 서비스의 내역 등 즉 트랜잭션 데이터가 축적될 수 있다. 예를 들어, 금융 서비스를 제공하는 서비스 제공 서버(40)의 경우에는, 사용자의 나이별, 성별, 지역별, 학력별, 직업별 등에 따라 선호하는 금융 상품의 종류가 축적될 수 있으며, 이렇게 축절된 데이터를 제3의 주체가 이용하고 싶어할 수 있다. 그런데 종래 기술에 의하면, 개인의 동의를 전제로 하고 있기는 하지만, 개인 정보와 트랜잭션 데이터가 정보 소비자인 제3의 주체에 그대로 제공되기 때문에 비록 동의했더라도 개인 정보의 무차별적이고 악의적인 유출이 가능한 문제가 있었다. 그러나 후술하는 바와 같이 본 발명에 따르면, 그러한 정보 소비자가 원하는 데이터를 전달하더라도 개인 정보의 유출이 원천적으로 불가능한 효과가 제공된다.
도 3에는 정보 소비자측의 정보 소비자 서버(60)가 서비스 제공 서버(40)에 데이터를 요청한 경우에 해당 데이터를 전달하는 방법의 흐름도가 도시되어 있다.
단계 300에서 정보 소비자 서버(60)가 서비스 제공 서버(40)에 데이터를 요청한다. 서비스 제공 서버(40)는 신용 제공자 서버(20)에 제1 암호화 키(ek1)를 요청한다(단계 305). 신용 제공자 서버(20)는 제1 암호화 키(ek1)를 서비스 제공 서버(40)로 전송한다(단계 310). 서비스 제공 서버(40)는 제1 암호화 키(ek1)로 트랜잭션 데이터를 암호화하고(단계 315), 암호화된 개인 정보와 함께 암호화된 트랜잭션 데이터를 정보 소비자 서버(60)로 전송한다(단계 320).
전술한 바와 같이 본 발명의 암호화는 동형 암호화이기 때문에, 암호화된 데이터에 대해서 연산을 하더라도 비암호화 상태의 데이터로 연산을 하는 것과 같은 효과가 있다. 정보 소비자 서버(60)는 전송받은 동형 암호화된 데이터에 대해서 얻고자 하는 결과를 위한 연산을 수행한다(단계 325). 예를 들어, 연령별, 직업별, 성별에 따라 축적된 트랜잭션 데이터 통계 등을 얻기 위한 연산을 수행할 수 있다.
그리고 정보 소비자 서버(60)는 신용 제공자 서버(20)에 연산 결과에 대한 복호화를 요청하고(단계 330), 신용 제공자 서버(20)로부터 복호화된 데이터를 전송받는다(단계 335). 여기에서 민감한 사용자 정보인 제1 개인 정보는 사용자 암호화 키에 의해서 암호화되어 있기 때문에 정보 소비자 서버(60)가 그러한 제1 개인 정보를 획득할 수는 없으며, 제2 개인 정보와 트랜잭션 데이터에 대한 연산 결과를 복호화할 수 있을 뿐이기 때문에 보안성이 종래 기술에 비해 훨씬 강화되면서도 정보 소비자 서버(60)가 얻고자 하는 결과를 얻을 수 있는 효과가 있다.
도 4에는 다른 실시예에 의한 정보 소비자 서버로의 정보 제공 방법의 흐름도가 도시되어 있다.
정보 소비자 서버(60)는 서비스 제공 서버(40)에 데이터를 요청한다(단계 400). 서비스 제공 서버(40)는 자체 암호화 키로 트랜잭션 데이터를 암호화한다(단계 405). 그리고 암호화된 데이터 즉 암호화된 개인 정보와 자체 암호화 키로 암호화된 트랜잭션 데이터를 정보 소비자 서버(60)로 전송한다(단계 410). 서비스 제공 서버(40)는 자체 복호화 키를 이용할 수 있다.
본 발명의 암호화는 동형 암호화이기 때문에, 암호화된 데이터에 대해서 연산을 하더라도 비암호화 상태의 데이터로 연산을 하는 것과 같은 효과가 있다. 정보 소비자 서버(60)는 전송받은 동형 암호화된 데이터에 대해서 얻고자 하는 결과를 위한 연산을 수행한다(단계 415).
그리고 정보 소비자 서버(60)는 신용 제공자 서버(20)와, 서비스 제공 서버(40)에 연산 결과에 대한 복호화를 요청하고(단계 420, 425), 신용 제공자 서버(20)와 서비스 제공 서버(40)로부터 복호화된 데이터를 전송받는다(단계 430, 435).
이 실시예에 의하더라도, 민감한 사용자 정보인 제1 개인 정보는 사용자 암호화 키에 의해서 암호화되어 있기 때문에 정보 소비자 서버(60)가 그러한 제1 개인 정보를 획득할 수는 없으며, 제2 개인 정보와 트랜잭션 데이터에 대한 연산 결과를 복호화할 수 있을 뿐이기 때문에 보안성이 종래 기술에 비해 훨씬 강화되면서도 정보 소비자 서버(60)가 얻고자 하는 결과를 얻을 수 있는 효과가 있다.
도 5에는 법적 권한을 가진 기관 예를 들어 정부의 수사기관이나 세금 징수 기관 등이 서비스 제공자 측에 개인 정보 및/또는 트랜잭션 데이터를 요청하는 경우에 그러한 개인 정보를 제공하는 방법의 흐름도가 도시되어 있다. 법적 권한 기관은 법률 및/또는 사법부의 결정에 의하여 개인 정보를 수집할 수 있다.
먼저 개인 정보 수집에 대한 법적 권한을 가진 법적 권한 기관 서버(70)가 서비스 제공 서버(40)에 데이터를 요청한다(단계 500). 서비스 제공 서버(40)는 암호화된 개인 정보 및/또는 트랜잭션 데이터를 전송한다(단계 505).
법적 권한 기관 서버(70)는 신용 제공자 서버(20)와 키 저장 서버(30)에 각각 데이터의 복호화를 요청한다(단계 510, 515). 신용 제공자 서버(20)는 제1 복호화 키(dk1)을 이용할 수 있고, 키 저장 서버(30)는 제2 복호화 키(dk2)를 이용할 수 있기 때문에, 두 복호화를 통해서 각각 복호화된 데이터를 병합하면 사용자 암호화 키(Ek)로 암호화된 제1 개인 정보까지 복호화한 데이터를 생성할 수 있다.
신용 제공자 서버(20)와 키 저장 서버(30) 어느 곳도 완전한 복호화 키(Dk)를 가지고 있지 않기 때문에 민감한 제1 개인 정보를 어느 곳도 복호화하여 볼 수 없고, 법적 권한 기관 서버(70)의 적법한 요청에 따라서 각각 복호화한 파편적인 정보만을 볼 수 있을 뿐이다. 오로지 법적 권한 기관 서버(70)만이 각각 복호화한 정보를 수신해서 병합함으로써 온전한 개인 정보를 확인할 수 있기 때문에, 개인 정보의 보안성이 종래 기술에 비해 획기적으로 고양되는 효과가 있다.
이상 첨부 도면을 참고하여 본 발명에 대해서 설명하였지만 본 발명의 권리범위는 후술하는 특허청구범위에 의해 결정되며 전술한 실시예 및/또는 도면에 제한되는 것으로 해석되어서는 아니된다. 그리고 특허청구범위에 기재된 발명의, 당업자에게 자명한 개량, 변경 및 수정도 본 발명의 권리범위에 포함된다는 점이 명백하게 이해되어야 한다.
10: 사용자 단말기
20: 신용 제공자 서버
30: 키 저장 서버
40: 서비스 제공 서버
60: 정보 소비자 서버
70: 법적 권한 기관 서버

Claims (6)

  1. 사용자 단말기와, 신용 제공자 서버와, 키 저장 서버를 포함하는 환경에서, 신용 제공자 서버에 가입하는 방법에 있어서,
    신용 제공자 서버가 사용자 단말기로부터 사용자 암호화키로 동형 암호화된 제1 개인정보와, 암호화되지 않은 제2 개인정보를 수신하는 제1 단계와,
    신용 제공자 서버가 제2 개인 정보를 제1 암호화 키로 동형 암호화하고 저장하는 제2 단계와,
    신용 제공자 서버가 사용자 단말기와 공유하는 랜덤값과 제1 복호화 키의 차이인 (제1 복호화 키 - 랜덤값)을 키 저장 서버로 전송하는 제3 단계와,
    키 저장 서버가, 사용자 단말기로부터 전송받은 (사용자 복호화키 - 랜덤값)과 신용 제공자 서버로부터 전송받은 (제1 복호화 키 - 랜덤값)의 차이인 [(사용자 복호화키 - 랜덤값) - (제1 복호화 키 - 랜덤값)]을 제2 복호화키로 저장하는 제4 단계를 포함하는,
    신용 제공자 서버로의 가입 방법.
  2. 청구항 1에 있어서,
    랜덤값은 사용자 단말기가 생성하여 신용 제공자 서버로 전송한 값인,
    신용 제공자 서버로의 가입 방법.
  3. 청구항 1에 있어서,
    랜덤값은 디피 헬만 키교환 방법에 의해서 공유되는 값인,
    신용 제공자 서버로의 가입 방법.
  4. 청구항 1 내지 청구항 3 중 어느 하나에 의한 신용 제공자 서버로의 가입 방법에 의해 가입한 후 사용자의 서비스 제공 서버로의 가입 방법에 있어서,
    서비스 제공 서버가 사용자 단말기로부터 사용자 정보를 요청하는 제1 단계와,
    서비스 제공 서버가 신용 제공자 서버로부터 사용자 암호화키로 동형 암호화된 제1 개인정보 및 제1 암호화 키로 동형 암호화된 제2 개인 정보를 수신하는 제2 단계와,
    서비스 제공 서버가 암호화된 개인 정보를 저장하는 제3 단계를 포함하는,
    서비스 제공 서버로의 가입 방법.
  5. 청구항 4의 서비스 제공 서버로의 가입 방법에 의해 가입한 사용자에 대한 정보를 정보 소비자 서버에 제공하는 방법에 있어서,
    서비스 제공 서버가 신용 제공자 서버에 제1 암호화키를 요청하는 제1 단계와,
    서비스 제공 서버가 신용 제공자 서버로부터 제1 암호화키를 수신하는 제2 단계와,
    서비스 제공 서버가 제1 암호화키로 트랜잭션 데이터를 동형 암호화하는 제3 단계와,
    서비스 제공 서버가 제1 암호화키로 동형 암호화된 트랜잭션 데이터와 암호화된 개인 정보를 정보 소비자 서버로 전송하는 제4 단계와,
    정보 소비자 서버가 암호화된 개인 정보와 트랜잭션 데이터에 대해서 연산을 수행하는 제5 단계와,
    정보 소비자 서버가 신용 제공자 서버에 연산 결과에 대한 복호화를 요청하는 제6 단계와,
    정보 소비자 서버가 신용 제공자 서버로부터 복호화된 데이터를 전송받는 제7 단계를 포함하는,
    사용자에 대한 정보를 정보 소비자 서버에 제공하는 방법.
  6. 청구항 4의 서비스 제공 서버로의 가입 방법에 의해 가입한 사용자에 대한 정보를 정보 소비자 서버에 제공하는 방법에 있어서,
    서비스 제공 서버가 자체 암호화키로 트랜잭션 데이터를 동형 암호화하는 제1 단계와,
    서비스 제공 서버가 제1 단계에서 암호화된 트랜잭션 데이터와 암호화된 개인 정보를 정보 소비자 서버로 전송하는 제2 단계와,
    정보 소비자 서버가 암호화된 개인 정보와 트랜잭션 데이터에 대해서 연산을 수행하는 제3 단계와,
    정보 소비자 서버가 신용 제공자 서버와 서비스 제공 서버에 연산 결과의 복호화를 요청하는 제4 단계와,
    정보 소비자 서버가 신용 제공자 서버와 서비스 제공 서버로부터 복호화 결과를 전송받는 제5 단계를 포함하는,
    사용자에 대한 정보를 정보 소비자 서버에 제공하는 방법.
KR1020170074997A 2017-06-14 2017-06-14 동형 암호화를 이용한 개인 정보 보호 방법 KR101992402B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170074997A KR101992402B1 (ko) 2017-06-14 2017-06-14 동형 암호화를 이용한 개인 정보 보호 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170074997A KR101992402B1 (ko) 2017-06-14 2017-06-14 동형 암호화를 이용한 개인 정보 보호 방법

Publications (2)

Publication Number Publication Date
KR20180136267A true KR20180136267A (ko) 2018-12-24
KR101992402B1 KR101992402B1 (ko) 2019-06-24

Family

ID=65010046

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170074997A KR101992402B1 (ko) 2017-06-14 2017-06-14 동형 암호화를 이용한 개인 정보 보호 방법

Country Status (1)

Country Link
KR (1) KR101992402B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020242509A1 (en) * 2019-05-31 2020-12-03 Intuit Inc. Privacy preserving server
KR102401485B1 (ko) * 2021-12-30 2022-05-24 주식회사 디사일로 동형 암호화된 데이터 처리 방법 및 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000017964A (ko) * 1999-12-31 2000-04-06 전동현 카드인식 기능을 구비한 키보드, 전자상거래 보안 시스템및 이를 이용한 물품구매 방법
KR20090001844A (ko) * 2007-05-28 2009-01-09 주식회사 핑거 모바일뱅킹을 이용한 모바일간 결제 서비스 방법
KR20100069373A (ko) * 2008-12-16 2010-06-24 주식회사 케이티 랜덤 값의 교환을 통한 수신 제한 시스템 및 방법
KR20100132782A (ko) * 2009-06-10 2010-12-20 에스케이 텔레콤주식회사 금융서비스 보안강화 시스템 및 방법, 그리고 이에 적용되는 장치
KR20140039361A (ko) * 2012-09-20 2014-04-02 동국대학교 경주캠퍼스 산학협력단 스마트 단말기를 통한 건강 상태 체크 방법 및 이를 이용한 건강 상태 체크 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000017964A (ko) * 1999-12-31 2000-04-06 전동현 카드인식 기능을 구비한 키보드, 전자상거래 보안 시스템및 이를 이용한 물품구매 방법
KR20090001844A (ko) * 2007-05-28 2009-01-09 주식회사 핑거 모바일뱅킹을 이용한 모바일간 결제 서비스 방법
KR20100069373A (ko) * 2008-12-16 2010-06-24 주식회사 케이티 랜덤 값의 교환을 통한 수신 제한 시스템 및 방법
KR20100132782A (ko) * 2009-06-10 2010-12-20 에스케이 텔레콤주식회사 금융서비스 보안강화 시스템 및 방법, 그리고 이에 적용되는 장치
KR20140039361A (ko) * 2012-09-20 2014-04-02 동국대학교 경주캠퍼스 산학협력단 스마트 단말기를 통한 건강 상태 체크 방법 및 이를 이용한 건강 상태 체크 시스템

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020242509A1 (en) * 2019-05-31 2020-12-03 Intuit Inc. Privacy preserving server
US11381381B2 (en) 2019-05-31 2022-07-05 Intuit Inc. Privacy preserving oracle
KR102401485B1 (ko) * 2021-12-30 2022-05-24 주식회사 디사일로 동형 암호화된 데이터 처리 방법 및 시스템
WO2023128340A1 (ko) * 2021-12-30 2023-07-06 주식회사 디사일로 동형 암호화된 데이터 처리 방법 및 시스템

Also Published As

Publication number Publication date
KR101992402B1 (ko) 2019-06-24

Similar Documents

Publication Publication Date Title
US10152603B2 (en) Systems and methods for detecting sensitive information leakage while preserving privacy
Mowbray et al. A client-based privacy manager for cloud computing
US10346627B2 (en) Privacy preserving data querying
Lucas et al. Flybynight: mitigating the privacy risks of social networking
US20140052989A1 (en) Secure data exchange using messaging service
US20130230168A1 (en) Information processing device, information processing method, and computer readable medium
KR20050085233A (ko) 전자 거래를 익명으로 처리하는 방법 및 시스템과 컴퓨터판독가능 기록 매체
US10250385B2 (en) Customer call logging data privacy in cloud infrastructure
US10887085B2 (en) System and method for controlling usage of cryptographic keys
US10063655B2 (en) Information processing method, trusted server, and cloud server
Kim et al. Client‐Side Deduplication to Enhance Security and Reduce Communication Costs
CN112287364A (zh) 数据共享方法、装置、***、介质及电子设备
US10979410B1 (en) Systems and methods for utilizing cryptology with virtual ledgers in support of transactions and agreements
KR101992402B1 (ko) 동형 암호화를 이용한 개인 정보 보호 방법
CN109391607B (zh) 数据加解密方法和装置、***
JP7147070B2 (ja) 複数の集約サーバを使用してデータ操作を防止すること
KR20220163483A (ko) 다자간 연산 및 k-익명성 기술 사용한 기밀 정보 보호
US10417448B2 (en) Management of sensitive information access and use
US20230367902A1 (en) Common data determining methods, apparatuses, and systems for protecting privacy
CN117371010A (zh) 数据匿踪查询方法、电子设备和可读存储介质
KR20160040399A (ko) 개인정보 관리 시스템 및 개인정보 관리 방법
CN114640524B (zh) 用于处理交易重放攻击的方法、装置、设备及介质
Chen et al. A verifiable and secret buyer–seller watermarking protocol
KR102224974B1 (ko) 서비스 서버 및 그 동작 방법
Abur et al. Privacy protection and collusion avoidance solution for cloud computing users

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant