[go: up one dir, main page]

KR101992402B1 - Method for Protecting Personal Data Using Homomorphic Encryption - Google Patents

Method for Protecting Personal Data Using Homomorphic Encryption Download PDF

Info

Publication number
KR101992402B1
KR101992402B1 KR1020170074997A KR20170074997A KR101992402B1 KR 101992402 B1 KR101992402 B1 KR 101992402B1 KR 1020170074997 A KR1020170074997 A KR 1020170074997A KR 20170074997 A KR20170074997 A KR 20170074997A KR 101992402 B1 KR101992402 B1 KR 101992402B1
Authority
KR
South Korea
Prior art keywords
server
information
credit provider
service providing
user
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020170074997A
Other languages
Korean (ko)
Other versions
KR20180136267A (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 KR1020170074997A priority Critical patent/KR101992402B1/en
Publication of KR20180136267A publication Critical patent/KR20180136267A/en
Application granted granted Critical
Publication of KR101992402B1 publication Critical patent/KR101992402B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 단계를 포함한다.A method for subscribing to a credit provider server in accordance with the present invention is performed in an environment including a user terminal, a credit provider server and a key storage server, the method comprising the steps of: A first step of receiving the first personal information and the second private information that is not encrypted; a second step of the credit provider server iso-encrypting and storing the second personal information with the first encryption key; A third step of transmitting, to the key storage server, a difference between a random value shared by the credit provider server with the user terminal and a first decryption key (a first decryption key-random value); The key storage server stores the [(User Decryption Key - random value) - (the first decryption key - the random value) which is the difference between the (user decryption key - random value) received from the user terminal and the Decryption key-random value)] as a second decryption key.

Description

동형 암호화를 이용한 개인 정보 보호 방법{Method for Protecting Personal Data Using Homomorphic Encryption}Method for Protecting Personal Data Using Homogeneous Encryption [

본 발명은 동형 암호화를 이용한 개인 정보 보호 방법에 대한 것으로서 좀 더 구체적으로는, 온라인/오프라인 서비스를 이용하기 위해 가입할 때에 개인 정보를 보호할 수 있는 방법에 대한 것이다.The present invention relates to a method for protecting personal information using the same type of encryption, and more particularly, to a method for protecting personal information when subscribing to use an online / offline service.

온라인 또는 오프라인 서비스를 이용하기 위해 사용자가 개인 정보를 제공하고 제공된 개인 정보는 서비스 제공 주체가 보관하는 것이 일반적이다. 개인정보 보호법에 따라서 보관 주체측이 보관하는 개인정보는 암호화되어 관리되어야 하지만 유출되지 않도록 관리하는 것은 용이하지 않고 실제로도 개인정보 유출의 문제가 발생하고 있다.In order to use online or offline services, it is common for users to provide personal information and to keep the personal information provided by the service provider. According to the Personal Information Protection Act, the personal information stored by the storage side should be encrypted and managed, but it is not easy to manage the leakage of personal information.

본 발명은 이러한 종래 기술의 문제점을 해결하기 위해, 서비스 제공자측은 복호화할 수 없도록 암호화된 개인 정보를 암호화한 데이터를 저장할 뿐이지만, 실제 서비스 제공에는 문제가 없으며, 제3자의 정보 요청에 대해서도 실제 개인 정보를 전달하지 않고도 요청받은 정보를 전달하는 효과가 있는 방법을 제공하는 것을 목적으로 한다.In order to solve the problems of the related art, the present invention solves the problems of the related art, and the service provider only stores the encrypted data of the encrypted personal information so that it can not be decrypted, but there is no problem in actual service provision, It is an object of the present invention to provide a method for transmitting requested information without transmitting information.

본 발명에 의해 신용 제공자 서버에 가입하는 방법은, 사용자 단말기와, 신용 제공자 서버와, 키 저장 서버를 포함하는 환경에서 수행되며, 상기 방법은, 신용 제공자 서버가 사용자 단말기로부터 사용자 암호화키로 동형 암호화된 제1 개인정보와, 암호화되지 않은 제2 개인정보를 수신하는 제1 단계와;;신용 제공자 서버가 제2 개인 정보를 제1 암호화 키로 동형 암호화하고 저장하는 제2 단계와; 신용 제공자 서버가 사용자 단말기와 공유하는 랜덤값과 제1 복호화 키의 차이인 (제1 복호화 키 - 랜덤값)을 키 저장 서버로 전송하는 제3 단계와; 키 저장 서버가, 사용자 단말기로부터 전송받은 (사용자 복호화키 - 랜덤값)과 신용 제공자 서버로부터 전송받은 (제1 복호화 키 - 랜덤값)의 차이인 [(사용자 복호화키 - 랜덤값) - (제1 복호화 키 - 랜덤값)]을 제2 복호화키로 저장하는 제4 단계를 포함한다.A method for subscribing to a credit provider server in accordance with the present invention is performed in an environment including a user terminal, a credit provider server and a key storage server, the method comprising the steps of: A first step of receiving the first personal information and the second private information that is not encrypted; a second step of the credit provider server iso-encrypting and storing the second personal information with the first encryption key; A third step of transmitting, to the key storage server, a difference between a random value shared by the credit provider server with the user terminal and a first decryption key (a first decryption key-random value); The key storage server stores the [(User Decryption Key - random value) - (the first decryption key - the random value) which is the difference between the (user decryption key - random value) received from the user terminal and the Decryption key-random value)] as a second decryption key.

랜덤값은 사용자 단말기가 생성하여 신용 제공자 서버로 전송한 값일 수 있다.The random value may be a value generated by the user terminal and transmitted to the credit provider server.

랜덤값은 디피 헬만 키교환 방법에 의해서 공유되는 값일 수 있다.The random value may be a value shared by the Diffie-Hellman key exchange method.

상기 방법에 의해 신용 제공자 서버에 가입한 후 사용자의 서비스 제공 서버로의 가입 방법은, 서비스 제공 서버가 사용자 단말기로부터 사용자 정보를 요청하는 제1 단계와; 서비스 제공 서버가 신용 제공자 서버로부터 사용자 암호화키로 동형 암호화된 제1 개인정보 및 제1 암호화 키로 동형 암호화된 제2 개인 정보를 수신하는 제2 단계와; 서비스 제공 서버가 암호화된 개인 정보를 저장하는 제3 단계를 포함한다.A method for subscribing to a service provider server after subscribing to a credit provider server according to the method comprises: a first step of the service provider server requesting user information from a user terminal; A second step of the service providing server receiving from the credit provider server first personal information that is isomorphically encrypted with the user encryption key and second personal information that is isomorphically encrypted with the first encryption key; And a third step in which the service providing server stores the encrypted personal information.

상기 서비스 제공 서버로의 가입 방법에 의해 가입한 사용자에 대한 정보를 서비스 제공 서버가 정보 소비자 서버에 제공하는 방법에 있어서, 서비스 제공 서버가 신용 제공자 서버에 제1 암호화키를 요청하는 제1 단계와; 서비스 제공 서버가 신용 제공자 서버로부터 제1 암호화키를 수신하는 제2 단계와; 서비스 제공 서버가 제1 암호화키로 트랜잭션 데이터를 동형 암호화하는 제3 단계와; 서비스 제공 서버가 제1 암호화키로 동형 암호화된 트랜잭션 데이터와 암호화된 개인 정보를 정보 소비자 서버로 전송하는 제4 단계와; 정보 소비자 서버가 암호화된 개인 정보와 트랜잭션 데이터에 대해서 연산을 수행하는 제5 단계와; 정보 소비자 서버가 신용 제공자 서버에 연산 결과에 대한 복호화를 요청하는 제6 단계와; 정보 소비자 서버가 신용 제공자 서버로부터 복호화된 데이터를 전송받는 제7 단계를 포함한다.A method of providing a service providing server with information on a user subscribed by a subscription method to a service providing server, the method comprising: a first step of the service providing server requesting a first encryption key to a credit provider server; ; A second step of the service providing server receiving the first encryption key from the credit provider server; A third step of the service providing server isotically encrypting the transaction data with the first encryption key; A fourth step in which the service providing server transmits the transaction data and the encrypted private information, which are isomorphically encrypted with the first encryption key, to the information consumer server; A fifth step of the information consumer server performing an operation on encrypted private information and transaction data; A sixth step of the information consumer server requesting the credit provider server to decrypt the operation result; And a seventh step in which the information consumer server receives the decrypted data from the credit provider server.

본 발명의 다른 형태에 의한, 서비스 제공 서버가 사용자에 대한 정보를 정보 소비자 서버에 제공하는 방법은, 서비스 제공 서버가 자체 암호화키로 트랜잭션 데이터를 동형 암호화하는 제1 단계와; 서비스 제공 서버가 제1 단계에서 암호화된 트랜잭션 데이터와 암호화된 개인 정보를 정보 소비자 서버로 전송하는 제2 단계와; 정보 소비자 서버가 암호화된 개인 정보와 트랜잭션 데이터에 대해서 연산을 수행하는 제3 단계와; 정보 소비자 서버가 신용 제공자 서버와 서비스 제공 서버에 연산 결과의 복호화를 요청하는 제4 단계와; 정보 소비자 서버가 신용 제공자 서버와 서비스 제공 서버로부터 복호화 결과를 전송받는 제5 단계를 포함한다.According to another aspect of the present invention, a method for providing a service providing server with information about a user to an information consumer server includes: a first step in which a service providing server encrypts transaction data with a self-encrypting key; A second step of the service providing server transmitting the encrypted transaction data and the encrypted personal information to the information consumer server in the first step; A third step of the information consumer server performing an operation on encrypted private information and transaction data; A fourth step of the information consumer server requesting the credit provider server and the service providing server to decode the operation result; And a fifth step in which the information consumer server receives the decoding result from the credit provider server and the service providing server.

본 발명에 의하면, 민감한 개인 정보를 서비스 제공자에게 제공하지 않고도, 필요한 경우 서비스 제공자가 보관하고 있는 개인 정보와 트랜잭션 정보를 정보 소비자에게 제공할 수 있는 효과가 제공된다.According to the present invention, it is possible to provide the information consumer with the personal information and the transaction information stored by the service provider, if necessary, without providing the sensitive personal information to the service provider.

도 1은 본 발명에 의한 신용 제공자 서버로의 가입 방법의 흐름도.
도 2는 본 발명에 의한 서비스 제공 서버로의 가입 방법의 흐름도.
도 3은 본 발명에 의해 서비스 제공 서버가 정보 소비자 서버로 정보를 제공하는 방법의 흐름도.
도 4는 서비스 제공 서버가 정보 소비자 서버로 정보를 제공하는 방법의 다른 실시예의 흐름도.
1 is a flow diagram of a method for subscribing to a credit provider server in accordance with the present invention;
2 is a flowchart of a method of joining a service providing server according to the present invention;
3 is a flowchart of a method by which a service providing server provides information to an information consumer server according to the present invention.
4 is a flow diagram of another embodiment of a method by which a service providing server provides information to an information consumer server;

이하에서는 첨부 도면을 참조하여 본 발명에 대해서 자세하게 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

본 명세서에서 수행되는 정보(데이터) 전송 과정은 필요에 따라서 암호화/복호화가 적용될 수 있으며, 본 명세서 및 특허청구범위에서 정보(데이터) 전송 과정을 설명하는 표현은 별도로 언급되지 않더라도 모두 암호화/복호화하는 경우도 포함하는 것으로 해석되어야 한다. 본 명세서에서 "A로부터 B로 전송(전달)" 또는 "A가 B로부터 수신"과 같은 형태의 표현은 중간에 다른 매개체가 포함되어 전송(전달) 또는 수신되는 것도 포함하며, A로부터 B까지 직접 전송(전달) 또는 수신되는 것만을 표현하는 것은 아니다. 본 발명의 설명에 있어서 각 단계의 순서는 선행 단계가 논리적 및 시간적으로 반드시 후행 단계에 앞서서 수행되어야 하는 경우가 아니라면 각 단계의 순서는 비제한적으로 이해되어야 한다. 즉 위와 같은 예외적인 경우를 제외하고는 후행 단계로 설명된 과정이 선행 단계로 설명된 과정보다 앞서서 수행되더라도 발명의 본질에는 영향이 없으며 권리범위 역시 단계의 순서에 관계없이 정의되어야 한다. 그리고 본 명세서에서 “A 또는 B”은 A와 B 중 어느 하나를 선택적으로 가리키는 것 뿐만 아니라 A와 B 모두를 포함하는 것도 의미하는 것으로 정의된다. 또한, 본 명세서에서 "포함"이라는 용어는 포함하는 것으로 나열된 요소 이외에 추가로 다른 구성요소를 더 포함하는 것도 포괄하는 의미를 가진다.Encryption / decryption may be applied to the information (data) transmission process performed in the present specification, and expressions describing the process of transmitting information (data) in the present specification and claims are not limited to encryption / decryption Should be construed as including. Expressions of the form "transfer from A to B" or "receive from A" in this specification include transmission (transfer) or reception of another medium in between, It does not just represent transmission (forwarding) or receiving. In the description of the present invention, the order of each step should be understood to be non-limiting, unless the preceding step must be performed logically and temporally before the next step. That is to say, except for the exceptional cases mentioned above, even if the process described in the following stage is performed before the process described in the preceding stage, it does not affect the essence of the invention and the scope of the right should be defined regardless of the order of the stages. &Quot; A " or " B " is defined herein to mean not only selectively pointing to either A or B, but also including both A and B. It is also to be understood that the term "comprising " is intended to encompass further including other elements in addition to the elements listed as being included.

본 명세서에서는 본 발명의 설명에 필요한 필수적인 구성요소만을 설명하며, 본 발명의 본질과 관계가 없는 구성요소는 언급하지 아니한다. 그리고 언급되는 구성요소만을 포함하는 배타적인 의미로 해석되어서는 아니되며 다른 구성요소도 포함할 수 있는 비배타적인 의미로 해석되어야 한다.Only essential components necessary for explanation of the present invention are described in this specification, and components not related to the essence of the present invention are not mentioned. And should not be construed in an exclusive sense that includes only the recited elements, but should be interpreted in a non-exclusive sense to include other elements as well.

본 명세서에서 명시적인 표현이 없더라도 "암호화"는 동형 암호화(homomorphic encryption)을 의미하며, 동형 암호화가 아닌 암호화는 별도로 표기한다.&Quot; Encryption "means homomorphic encryption, and encryption other than homogeneous encryption is indicated separately.

도 1에는 본 발명에 의한 신용 제공자 서버(20)로의 가입 방법의 흐름도가 도시되어 있다.1, there is shown a flow diagram of a method of subscribing to a credit provider server 20 in accordance with the present invention.

본 명세서에서 신용 제공자 서버(20)는 일종의 인증 기관이 운영하는 서버로서 사용자가 개인 정보를 제공하여 가입할 수 있다. 신용 제공자 서버(20)에 사용자가 개인 정보를 제공하여 가입한 후에 실제 서비스를 제공하는 서비스 제공 주체가 운영하는 서비스 제공 서버(40)에 가입할 때에는 추가적인 개인 정보를 제공하지 않아도 된다. 그러나 사용자가 서비스 제공 서버(40)측에 선택적으로 개인 정보를 제공하는 경우를 완전히 배제하는 것은 아니다. 예를 들어, 서비스 제공 서버(40)가 요구하는 민감하지 않은 추가적인 개인 정보는 서비스 제공 서버(40)에 제공할 수도 있다.In this specification, the credit provider server 20 is a server operated by a kind of certification authority, and a user can subscribe by providing personal information. Additional personal information may not be provided when subscribing to the service providing server 40 operated by the service providing entity providing the actual service after the user provides the personal information to the credit provider server 20 and subscribes. However, the case where the user selectively provides the personal information to the service providing server 40 side is not completely excluded. For example, non-sensitive additional personal information required by the service providing server 40 may be provided to the service providing server 40. [

사용자는 사용자 단말기(10)를 통해 제2 개인 정보와 암호화된 제1 개인 정보를 신용 제공자 서버(20)에 전송한다(단계 100). 사용자의 개인 정보는 제1 개인 정보와 제2 개인 정보로 나뉜다. 제1 개인 정보는 사용자 단말기(10)의 사용자 암호화키(Ek)로 암호화되며, 제2 개인 정보는 후술하는 바와 같이 신용 제공자 서버(20)의 제1 암호화 키로 암호화된다. 제2 개인 정보는 신용 제공자 서버(20)측에서 암호화하도록 사용자가 동의한 개인 정보 예를 들어, 특정 개인을 확정할 수 없는 학력, 연봉, 재산, 직업군 등과 같은 정보를 의미한다. 일반적으로는 민감한 개인 정보 예를 들어, 이름, 주민등록번호, 주소 정보와 같은 항목을 제1 개인 정보로 설정해서 사용자 암호화키로 암호화한다. 사용자 단말기(10)는 사용자 암호화 키(Ek)에 대응하는 사용자 복호화 키(Dk)를 이용할 수 있다.The user transmits the second personal information and the encrypted first personal information to the credit provider server 20 through the user terminal 10 (step 100). The user's personal information is divided into the first personal information and the second personal information. The first personal information is encrypted with the user encryption key Ek of the user terminal 10 and the second personal information is encrypted with the first encryption key of the credit provider server 20 as described later. The second personal information refers to information such as academic ability, salary, property, occupation group, and the like which the user of the credit provider server 20 has agreed to encrypt in order to confirm personal information, for example, a specific individual. In general, sensitive personal information, for example, an item such as a name, a resident registration number, and address information is set as first personal information, and is encrypted with a user encryption key. The user terminal 10 may use the user decryption key Dk corresponding to the user encryption key Ek.

신용 제공자 서버(20)는 제2 개인 정보를 제1 암호화 키(ek1)로 암호화하고 저장한다(단계 105). 신용 제공자 서버(20)는 제1 암호화 키(ek1)에 대응하는 제1 복호화 키(dk1)을 이용할 수 있다.The credit provider server 20 encrypts and stores the second personal information with the first encryption key ek1 (step 105). The credit provider server 20 may use the first decryption key dk1 corresponding to the first encryption key ek1.

사용자 단말기(10)는 디피 헬만 키 교환 방법(Diffie-Hellman key exchange) 등에 의해 신용 제공자 서버(20)와 공통의 랜덤값(r)을 공유한다(단계 110). 사용자 단말기(10)와 신용 제공자 서버(20)가 랜덤값(r)을 공유하는 방법은 디피 헬만 키 교환 방법 이외에도 공지되어 있는 다른 방법을 적용해도 무방하다.The user terminal 10 shares a common random value r with the credit provider server 20 by means of a Diffie-Hellman key exchange or the like (step 110). Other known methods other than the Diffie-Hellman key exchange method may be applied to the method in which the user terminal 10 and the credit provider server 20 share the random value 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)로 나뉜다.Next, in step 115, the key storage server 30 transmits the difference (Dk-r) between the user decryption key Dk and the random value r. The credit provider server 20 transmits the difference dk1-r between the first decryption key dk1 and the random value r to the key storage server 30 (step 120). The key storage server 30 performs the operation (Dk-r) - (dk1-r) and stores the result in the second decryption key dk2 (step 125). That is, the user decryption key Dk is divided into a first decryption key dk1 available to the credit provider server 20 and a second decryption key dk2 available to the key storage server 30. [

도 1의 실시예에서는 사용자 단말기(10)와 신용 제공자 서버(20)가 키 교환 방법 등을 통해서 랜덤값(r)을 공유하지만, 랜덤값(r)을 사용자 단말기(10)가 생성하여 신용 제공자 서버(20)로 전송하여 랜덤값(r)을 사용자 단말기(10)와 신용 제공자 서버(20)가 공유하게 할 수도 있다.1, the user terminal 10 and the credit provider server 20 share the random value r through the key exchange method or the like, but the random value r is generated by the user terminal 10, The random value r may be transmitted to the server 20 so that the user terminal 10 and the credit provider server 20 share the random value r.

도 1에 의한 신용 제공자 서버(20)에 사용자가 개인 정보를 제공하여 가입 신청을 한 후에, 실제로 서비스를 이용하고자 하는 서비스 제공 주체의 서비스 제공 서버(40)에 가입 신청을 한다(단계 200). 이 때 사용자는 서비스 제공 서버(40)에 개인 정보를 제공하지 않는다. 가입 신청을 받은 서비스 제공 서버(40)는 해당 사용자의 정보를 신용 제공자 서버(20)에 요청한다.After the user provides personal information to the credit provider server 20 according to FIG. 1 and subscribes for the subscription, the subscriber requests subscription to the service providing server 40 of the service providing entity to actually use the service (step 200). At this time, the user does not provide personal information to the service providing server 40. The service providing server 40 that received the subscription request requests the credit provider server 20 for information of the corresponding user.

신용 제공자 서버(20)는 암호화된 제1 개인 정보 및 제2 개인 정보를 전송한다(단계 210). 전술한 바와 같이, 제1 개인 정보는 사용자 암호화키로 암호화되어 있고 제2 개인 정보는 신용 제공자 서버(20)의 제1 암호화 키(ek1)로 암호화되어 있으므로, 복호화 키를 가지고 있지 않은 서비스 제공 서버(40)는 개인 정보를 알 수 없다. 서비스 제공 서버(40)는 암호화된 개인 정보(본 명세서에서 서비스 제공 서버에 저장되는 "암호화된 개인 정보"는 "사용자 암호화키로 암호화된 제1 개인 정보와 신용 제공자 서버(20)의 제1 암호화 키(ek1)으로 암호화된 제2 개인정보의 결합"으로 정의된다)의 사본을 저장한다(단계 215).The credit provider server 20 transmits the encrypted first personal information and the second personal information (step 210). As described above, since the first personal information is encrypted by the user encryption key and the second personal information is encrypted by the first encryption key ek1 of the credit provider server 20, the service providing server 40 can not know personal information. The service providing server 40 stores the encrypted personal information (the "personal information encrypted" stored in the service providing server in this specification is "the first personal information encrypted with the user encryption key and the first private information encrypted with the first encryption key (defined as " combination of second personal information encrypted with ek1) "(step 215).

도 1 및 도 2의 가입 방법에 의해서 가입한 후에 사용자는 서비스 제공 서버(40)의 서비스를 이용할 수 있다. 서비스 이용 과정에서 사용자가 이용한 서비스의 내역 등 즉 트랜잭션 데이터가 축적될 수 있다. 예를 들어, 금융 서비스를 제공하는 서비스 제공 서버(40)의 경우에는, 사용자의 나이별, 성별, 지역별, 학력별, 직업별 등에 따라 선호하는 금융 상품의 종류가 축적될 수 있으며, 이렇게 축절된 데이터를 제3의 주체가 이용하고 싶어할 수 있다. 그런데 종래 기술에 의하면, 개인의 동의를 전제로 하고 있기는 하지만, 개인 정보와 트랜잭션 데이터가 정보 소비자인 제3의 주체에 그대로 제공되기 때문에 비록 동의했더라도 개인 정보의 무차별적이고 악의적인 유출이 가능한 문제가 있었다. 그러나 후술하는 바와 같이 본 발명에 따르면, 그러한 정보 소비자가 원하는 데이터를 전달하더라도 개인 정보의 유출이 원천적으로 불가능한 효과가 제공된다.After joining by the joining method of FIG. 1 and FIG. 2, the user can use the service of the service providing server 40. The service history, that is, the transaction data, can be accumulated in the process of using the service. For example, in the case of the service providing server 40 providing the financial service, the types of financial products preferred according to the user's age, sex, region, education level, occupation, etc. can be accumulated. The third party may want to use the data. However, according to the prior art, personal information and transactional data are provided to a third entity, which is an information consumer, although they are subject to the consent of the individual, so that even if the user agrees, the personal information can be indiscriminately and maliciously leaked . However, as will be described later, according to the present invention, even if the information consumer delivers the desired data, the effect that the leakage of the personal information is inherently impossible is provided.

도 3에는 정보 소비자측의 정보 소비자 서버(60)가 서비스 제공 서버(40)에 데이터를 요청한 경우에 해당 데이터를 전달하는 방법의 흐름도가 도시되어 있다.FIG. 3 is a flowchart of a method of transmitting data when the information consumer server 60 of the information consumer requests data to the service providing server 40.

단계 300에서 정보 소비자 서버(60)가 서비스 제공 서버(40)에 데이터를 요청한다. 서비스 제공 서버(40)는 신용 제공자 서버(20)에 제1 암호화 키(ek1)를 요청한다(단계 305). 신용 제공자 서버(20)는 제1 암호화 키(ek1)를 서비스 제공 서버(40)로 전송한다(단계 310). 서비스 제공 서버(40)는 제1 암호화 키(ek1)로 트랜잭션 데이터를 암호화하고(단계 315), 암호화된 개인 정보와 함께 암호화된 트랜잭션 데이터를 정보 소비자 서버(60)로 전송한다(단계 320).In step 300, the information consumer server 60 requests the service providing server 40 for data. The service providing server 40 requests the credit provider server 20 for the first encryption key ek1 (step 305). The credit provider server 20 transmits the first encryption key ek1 to the service providing server 40 (step 310). The service providing server 40 encrypts the transaction data with the first encryption key ek1 (step 315), and transmits the encrypted transaction data together with the encrypted personal information to the information consumer server 60 (step 320).

전술한 바와 같이 본 발명의 암호화는 동형 암호화이기 때문에, 암호화된 데이터에 대해서 연산을 하더라도 비암호화 상태의 데이터로 연산을 하는 것과 같은 효과가 있다. 정보 소비자 서버(60)는 전송받은 동형 암호화된 데이터에 대해서 얻고자 하는 결과를 위한 연산을 수행한다(단계 325). 예를 들어, 연령별, 직업별, 성별에 따라 축적된 트랜잭션 데이터 통계 등을 얻기 위한 연산을 수행할 수 있다.As described above, since the encryption of the present invention is the same type of encryption, even when the encrypted data is operated, the same effect as the operation of the non-encrypted data is obtained. The information consumer server 60 performs an operation for a result to be obtained with respect to the transmitted same-encrypted data (step 325). For example, an operation for obtaining accumulated transaction data statistics according to age, occupation, and sex can be performed.

그리고 정보 소비자 서버(60)는 신용 제공자 서버(20)에 연산 결과에 대한 복호화를 요청하고(단계 330), 신용 제공자 서버(20)로부터 복호화된 데이터를 전송받는다(단계 335). 여기에서 민감한 사용자 정보인 제1 개인 정보는 사용자 암호화 키에 의해서 암호화되어 있기 때문에 정보 소비자 서버(60)가 그러한 제1 개인 정보를 획득할 수는 없으며, 제2 개인 정보와 트랜잭션 데이터에 대한 연산 결과를 복호화할 수 있을 뿐이기 때문에 보안성이 종래 기술에 비해 훨씬 강화되면서도 정보 소비자 서버(60)가 얻고자 하는 결과를 얻을 수 있는 효과가 있다.The information consumer server 60 requests the credit provider server 20 to decrypt the operation result (step 330), and receives the decrypted data from the credit provider server 20 (step 335). Here, since the first personal information, which is sensitive user information, is encrypted by the user encryption key, the information consumer server 60 can not obtain such first personal information, and the second personal information and the operation result It is possible to obtain the result that the information consumer server 60 desires to obtain, while enhancing the security compared to the prior art.

도 4에는 다른 실시예에 의한 정보 소비자 서버로의 정보 제공 방법의 흐름도가 도시되어 있다.4 is a flowchart of a method of providing information to an information consumer server according to another embodiment.

정보 소비자 서버(60)는 서비스 제공 서버(40)에 데이터를 요청한다(단계 400). 서비스 제공 서버(40)는 자체 암호화 키로 트랜잭션 데이터를 암호화한다(단계 405). 그리고 암호화된 데이터 즉 암호화된 개인 정보와 자체 암호화 키로 암호화된 트랜잭션 데이터를 정보 소비자 서버(60)로 전송한다(단계 410). 서비스 제공 서버(40)는 자체 복호화 키를 이용할 수 있다.The information consumer server 60 requests data from the service providing server 40 (step 400). The service providing server 40 encrypts the transaction data with its own encryption key (step 405). Then, the encrypted data, that is, the encrypted personal information and the transaction data encrypted with the self-encrypting key are transmitted to the information consumer server 60 (step 410). The service providing server 40 can use its own decryption key.

본 발명의 암호화는 동형 암호화이기 때문에, 암호화된 데이터에 대해서 연산을 하더라도 비암호화 상태의 데이터로 연산을 하는 것과 같은 효과가 있다. 정보 소비자 서버(60)는 전송받은 동형 암호화된 데이터에 대해서 얻고자 하는 결과를 위한 연산을 수행한다(단계 415).Since the encryption of the present invention is the same type of encryption, even when the encrypted data is operated, the same effect as that of the non-encrypted data is obtained. The information consumer server 60 performs an operation for a result to be obtained with respect to the transmitted identical type encrypted data (step 415).

그리고 정보 소비자 서버(60)는 신용 제공자 서버(20)와, 서비스 제공 서버(40)에 연산 결과에 대한 복호화를 요청하고(단계 420, 425), 신용 제공자 서버(20)와 서비스 제공 서버(40)로부터 복호화된 데이터를 전송받는다(단계 430, 435).The information consumer server 60 requests the credit provider server 20 and the service providing server 40 to decrypt the operation result at steps 420 and 425 and transmits the decryption result to the credit provider server 20 and the service providing server 40 (Steps 430 and 435).

이 실시예에 의하더라도, 민감한 사용자 정보인 제1 개인 정보는 사용자 암호화 키에 의해서 암호화되어 있기 때문에 정보 소비자 서버(60)가 그러한 제1 개인 정보를 획득할 수는 없으며, 제2 개인 정보와 트랜잭션 데이터에 대한 연산 결과를 복호화할 수 있을 뿐이기 때문에 보안성이 종래 기술에 비해 훨씬 강화되면서도 정보 소비자 서버(60)가 얻고자 하는 결과를 얻을 수 있는 효과가 있다.Even in this embodiment, since the first personal information, which is sensitive user information, is encrypted by the user encryption key, the information consumer server 60 can not obtain such first personal information, The result of the operation on the data can be decrypted, so that the information consumer server 60 obtains the result that the information consumer server 60 obtains while the security is much improved compared to the prior art.

도 5에는 법적 권한을 가진 기관 예를 들어 정부의 수사기관이나 세금 징수 기관 등이 서비스 제공자 측에 개인 정보 및/또는 트랜잭션 데이터를 요청하는 경우에 그러한 개인 정보를 제공하는 방법의 흐름도가 도시되어 있다. 법적 권한 기관은 법률 및/또는 사법부의 결정에 의하여 개인 정보를 수집할 수 있다.5 shows a flow diagram of a method for providing personal information and / or transaction data to a service provider when an agency having legal authority, such as a government investigation agency or a tax collection agency, requests the personal information and / or transaction data . The legal authority may collect personal information at the discretion of the law and / or judiciary.

먼저 개인 정보 수집에 대한 법적 권한을 가진 법적 권한 기관 서버(70)가 서비스 제공 서버(40)에 데이터를 요청한다(단계 500). 서비스 제공 서버(40)는 암호화된 개인 정보 및/또는 트랜잭션 데이터를 전송한다(단계 505).The legal authority server 70 having legal authority to collect personal information requests data from the service providing server 40 (step 500). The service providing server 40 transmits encrypted personal information and / or transaction data (step 505).

법적 권한 기관 서버(70)는 신용 제공자 서버(20)와 키 저장 서버(30)에 각각 데이터의 복호화를 요청한다(단계 510, 515). 신용 제공자 서버(20)는 제1 복호화 키(dk1)을 이용할 수 있고, 키 저장 서버(30)는 제2 복호화 키(dk2)를 이용할 수 있기 때문에, 두 복호화를 통해서 각각 복호화된 데이터를 병합하면 사용자 암호화 키(Ek)로 암호화된 제1 개인 정보까지 복호화한 데이터를 생성할 수 있다.The legal authority server 70 requests the credit provider server 20 and the key storage server 30 to respectively decrypt the data (steps 510 and 515). Since the credit provider server 20 can use the first decryption key dk1 and the key storage server 30 can use the second decryption key dk2, if the data decrypted through the two decryption are merged It is possible to generate decrypted data up to the first personal information encrypted with the user encryption key Ek.

신용 제공자 서버(20)와 키 저장 서버(30) 어느 곳도 완전한 복호화 키(Dk)를 가지고 있지 않기 때문에 민감한 제1 개인 정보를 어느 곳도 복호화하여 볼 수 없고, 법적 권한 기관 서버(70)의 적법한 요청에 따라서 각각 복호화한 파편적인 정보만을 볼 수 있을 뿐이다. 오로지 법적 권한 기관 서버(70)만이 각각 복호화한 정보를 수신해서 병합함으로써 온전한 개인 정보를 확인할 수 있기 때문에, 개인 정보의 보안성이 종래 기술에 비해 획기적으로 고양되는 효과가 있다.Since neither the credit provider server 20 nor the key storage server 30 has a complete decryption key Dk, it is impossible to decrypt and view the sensitive first personal information anywhere, Only legitimate requests will be able to see only fragmented information that has been decoded. Only the legal authority authority server 70 can confirm the integrity of individual information by receiving and decoding the decrypted information, respectively, so that the security of the personal information is remarkably enhanced as compared with the prior art.

이상 첨부 도면을 참고하여 본 발명에 대해서 설명하였지만 본 발명의 권리범위는 후술하는 특허청구범위에 의해 결정되며 전술한 실시예 및/또는 도면에 제한되는 것으로 해석되어서는 아니된다. 그리고 특허청구범위에 기재된 발명의, 당업자에게 자명한 개량, 변경 및 수정도 본 발명의 권리범위에 포함된다는 점이 명백하게 이해되어야 한다.While the present invention has been described with reference to the accompanying drawings, it is to be understood that the scope of the present invention is defined by the claims that follow, and should not be construed as limited to the above-described embodiments and / or drawings. It is to be expressly understood that improvements, changes and modifications that are obvious to those skilled in the art are also within the scope of the present invention as set forth in the claims.

10: 사용자 단말기
20: 신용 제공자 서버
30: 키 저장 서버
40: 서비스 제공 서버
60: 정보 소비자 서버
70: 법적 권한 기관 서버
10: User terminal
20: Credit provider server
30: Key storage server
40: Service providing server
60: Information Consumer Server
70: Legal authority authority server

Claims (6)

사용자 단말기와, 신용 제공자 서버와, 키 저장 서버를 포함하는 환경에서, 신용 제공자 서버에 가입하는 방법에 있어서,
신용 제공자 서버가 사용자 단말기로부터 사용자 암호화키로 동형 암호화된 제1 개인정보와, 암호화되지 않은 제2 개인정보를 수신하는 제1 단계와,
신용 제공자 서버가 제2 개인 정보를 제1 암호화 키로 동형 암호화하고 저장하는 제2 단계와,
신용 제공자 서버가 사용자 단말기와 공유하는 랜덤값과 제1 복호화 키의 차이인 (제1 복호화 키 - 랜덤값)을 키 저장 서버로 전송하는 제3 단계와,
키 저장 서버가, 사용자 단말기로부터 전송받은 (사용자 복호화키 - 랜덤값)과 신용 제공자 서버로부터 전송받은 (제1 복호화 키 - 랜덤값)의 차이인 [(사용자 복호화키 - 랜덤값) - (제1 복호화 키 - 랜덤값)]을 제2 복호화키로 저장하는 제4 단계를 포함하는,
신용 제공자 서버로의 가입 방법.
A method for subscribing to a credit provider server in an environment including a user terminal, a credit provider server, and a key storage server,
A first step in which a credit provider server receives first personal information and second unencrypted personal information that are isomorphically encrypted with a user encryption key from a user terminal;
A second step in which the credit provider server identifies and encrypts the second personal information with the first encryption key,
A third step of transmitting, to the key storage server, a difference between a random value shared by the credit provider server with the user terminal and a first decryption key (a first decryption key-random value)
The key storage server stores the [(User Decryption Key - random value) - (the first decryption key - the random value) which is the difference between the (user decryption key - random value) received from the user terminal and the Decryption key-random value)] as a second decryption key.
How to join a credit provider server.
청구항 1에 있어서,
랜덤값은 사용자 단말기가 생성하여 신용 제공자 서버로 전송한 값인,
신용 제공자 서버로의 가입 방법.
The method according to claim 1,
The random value is a value generated by the user terminal and transmitted to the credit provider server,
How to join a credit provider server.
청구항 1에 있어서,
랜덤값은 디피 헬만 키교환 방법에 의해서 공유되는 값인,
신용 제공자 서버로의 가입 방법.
The method according to claim 1,
The random value is a value shared by the Diffie-Hellman key exchange method,
How to join a credit provider server.
청구항 1 내지 청구항 3 중 어느 하나의 신용 제공자 서버로의 가입 방법에 의해 신용 제공자 서버에 가입한 사용자가 서비스 제공 서버에 가입하는 방법에 있어서,
서비스 제공 서버가 신용 제공자 서버에 사용자 정보를 요청하는 제1 단계와,
서비스 제공 서버가 신용 제공자 서버로부터 사용자 암호화키로 동형 암호화된 제1 개인정보 및 제1 암호화 키로 동형 암호화된 제2 개인 정보를 수신하는 제2 단계와,
서비스 제공 서버가 암호화된 개인 정보를 저장하는 제3 단계를 포함하는,
서비스 제공 서버에 가입하는 방법.
A method for joining a service providing server by a user subscribed to a credit provider server by a method of joining a credit provider server according to any one of claims 1 to 3,
A first step of the service providing server requesting the user information to the credit provider server,
A second step of the service providing server receiving from the credit provider server first personal information that is isomorphically encrypted with the user encryption key and second personal information that is isomorphically encrypted with the first encryption key;
And a third step of the service providing server storing the encrypted personal information.
How to subscribe to a service provisioning server.
청구항 4의 서비스 제공 서버에 가입하는 방법에 의해 서비스 제공 서버에 가입한 사용자에 대한 정보를 정보 소비자 서버에 제공하는 방법에 있어서,
서비스 제공 서버가 신용 제공자 서버에 제1 암호화키를 요청하는 제1 단계와,
서비스 제공 서버가 신용 제공자 서버로부터 제1 암호화키를 수신하는 제2 단계와,
서비스 제공 서버가 제1 암호화키로 트랜잭션 데이터를 동형 암호화하는 제3 단계와,
서비스 제공 서버가 제1 암호화키로 동형 암호화된 트랜잭션 데이터와 암호화된 개인 정보를 정보 소비자 서버로 전송하는 제4 단계와,
정보 소비자 서버가 암호화된 개인 정보와 트랜잭션 데이터에 대해서 연산을 수행하는 제5 단계와,
정보 소비자 서버가 신용 제공자 서버에 연산 결과에 대한 복호화를 요청하는 제6 단계와,
정보 소비자 서버가 신용 제공자 서버로부터 복호화된 데이터를 전송받는 제7 단계를 포함하는,
사용자에 대한 정보를 정보 소비자 서버에 제공하는 방법.
A method of providing information about a user subscribed to a service providing server to an information consumer server by a method of joining a service providing server according to claim 4,
A first step of the service providing server requesting a first encryption key to the credit provider server;
A second step of the service providing server receiving a first encryption key from a credit provider server;
A third step of the service providing server isochronizing the transaction data with the first encryption key,
A fourth step of the service providing server transmitting the transaction data and the encrypted private information, which are isomorphically encrypted with the first encryption key, to the information consumer server;
A fifth step of the information consumer server performing an operation on encrypted private information and transaction data;
A sixth step of the information consumer server requesting the credit provider server to decrypt the calculation result,
And a seventh step in which the information consumer server receives the decrypted data from the credit provider server.
And providing information about the user to the information consumer server.
청구항 4의 서비스 제공 서버에 가입하는 방법에 의해 서비스 제공 서버에 가입한 사용자에 대한 정보를 정보 소비자 서버에 제공하는 방법에 있어서,
서비스 제공 서버가 자체 암호화키로 트랜잭션 데이터를 동형 암호화하는 제1 단계와,
서비스 제공 서버가 제1 단계에서 암호화된 트랜잭션 데이터와 암호화된 개인 정보를 정보 소비자 서버로 전송하는 제2 단계와,
정보 소비자 서버가 암호화된 개인 정보와 트랜잭션 데이터에 대해서 연산을 수행하는 제3 단계와,
정보 소비자 서버가 신용 제공자 서버와 서비스 제공 서버에 연산 결과의 복호화를 요청하는 제4 단계와,
정보 소비자 서버가 신용 제공자 서버와 서비스 제공 서버로부터 복호화 결과를 전송받는 제5 단계를 포함하는,
사용자에 대한 정보를 정보 소비자 서버에 제공하는 방법.
A method of providing information about a user subscribed to a service providing server to an information consumer server by a method of joining a service providing server according to claim 4,
A first step of the service providing server encrypting the transaction data with a self-encrypting key;
A second step of the service providing server transmitting the encrypted transaction data and the encrypted personal information to the information consumer server in the first step;
A third step of the information consumer server performing an operation on encrypted private information and transaction data;
A fourth step of the information consumer server requesting the credit provider server and the service providing server to decode the operation result;
And a fifth step of the information consumer server receiving the decoding result from the credit provider server and the service providing server.
And providing information about the user to the information consumer server.
KR1020170074997A 2017-06-14 2017-06-14 Method for Protecting Personal Data Using Homomorphic Encryption Active KR101992402B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170074997A KR101992402B1 (en) 2017-06-14 2017-06-14 Method for Protecting Personal Data Using Homomorphic Encryption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170074997A KR101992402B1 (en) 2017-06-14 2017-06-14 Method for Protecting Personal Data Using Homomorphic Encryption

Publications (2)

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

Family

ID=65010046

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170074997A Active KR101992402B1 (en) 2017-06-14 2017-06-14 Method for Protecting Personal Data Using Homomorphic Encryption

Country Status (1)

Country Link
KR (1) KR101992402B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11381381B2 (en) 2019-05-31 2022-07-05 Intuit Inc. Privacy preserving oracle
KR102401485B1 (en) * 2021-12-30 2022-05-24 주식회사 디사일로 Method and system for processing homomorphic encrypted data

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000017964A (en) * 1999-12-31 2000-04-06 전동현 Keyboard including a function of card identification, security system on electronic commerce, and method of purchasing goods used by the system
KR20090001844A (en) * 2007-05-28 2009-01-09 주식회사 핑거 Mobile payment service method using mobile banking
KR101483187B1 (en) * 2008-12-16 2015-01-16 주식회사 케이티 Conditional access system and method exchanging randon value
KR101109928B1 (en) * 2009-06-10 2012-02-24 에스케이플래닛 주식회사 System and method for strengthening security of finance, and apparatus applied to the smae
KR101438274B1 (en) * 2012-09-20 2014-09-15 동국대학교 경주캠퍼스 산학협력단 Method for checking a health condition though smart terminal and health condition check system using the method

Also Published As

Publication number Publication date
KR20180136267A (en) 2018-12-24

Similar Documents

Publication Publication Date Title
Mowbray et al. A client-based privacy manager for cloud computing
US10346627B2 (en) Privacy preserving data querying
EP1593100B1 (en) Method for ensuring privacy in electronic transactions with session key blocks
US11824971B2 (en) Peer-to-peer transmission system with a controlled, double-tier cryptographic key structure
US20140052989A1 (en) Secure data exchange using messaging service
US10250385B2 (en) Customer call logging data privacy in cloud infrastructure
US10887085B2 (en) System and method for controlling usage of cryptographic keys
US10979410B1 (en) Systems and methods for utilizing cryptology with virtual ledgers in support of transactions and agreements
US10063655B2 (en) Information processing method, trusted server, and cloud server
EP2879323A1 (en) Method and distributed data processing system for managing access to data
US11095620B1 (en) Secure method, system, and computer program product for exchange of data
EP3891924A1 (en) Data transmission
CN117390675A (en) Data query method, electronic device and readable storage medium
KR20220163483A (en) Confidential information protection using multi-party computing and K-anonymity technology
CN109391607B (en) Data encryption and decryption method, device and system
KR101992402B1 (en) Method for Protecting Personal Data Using Homomorphic Encryption
KR20160040399A (en) Personal Information Management System and Personal Information Management Method
AU2024202015A1 (en) User verification systems and methods
CN117668899A (en) Multi-party combination-based data query method, device and storage medium
CN113315749B (en) User data on-chain, user data usage methods, anonymous system and storage media
CN104809365A (en) Digital rights management system, management method and its information transmission system and method
CN112187777A (en) Intelligent traffic sensing data encryption method and device, computer equipment and storage medium
Abur et al. Privacy protection and collusion avoidance solution for cloud computing users
CN114666119B (en) Data processing method, device, electronic equipment and medium
Sarddar et al. Safety as a Service (SFaaS) Model-The New Invention in Cloud computing to establish a Secure Logical Communication Channel between Data Owner and the Cloud Service Provider before Storing, Retrieving or Accessing any Data in the Cloud

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20170614

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20181206

Patent event code: PE09021S01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20190615

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20190618

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20190618

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20220404

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20230404

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20240618

Start annual number: 6

End annual number: 6