KR20200011735A - 블록체인 환경에서 개인정보 관리 방법 및 시스템 - Google Patents

블록체인 환경에서 개인정보 관리 방법 및 시스템 Download PDF

Info

Publication number
KR20200011735A
KR20200011735A KR1020180086549A KR20180086549A KR20200011735A KR 20200011735 A KR20200011735 A KR 20200011735A KR 1020180086549 A KR1020180086549 A KR 1020180086549A KR 20180086549 A KR20180086549 A KR 20180086549A KR 20200011735 A KR20200011735 A KR 20200011735A
Authority
KR
South Korea
Prior art keywords
personal information
user
blockchain
management server
encrypted
Prior art date
Application number
KR1020180086549A
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 KR1020180086549A priority Critical patent/KR20200011735A/ko
Publication of KR20200011735A publication Critical patent/KR20200011735A/ko

Links

Images

Classifications

    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • H04L2209/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 발명은 블록체인 환경에서 개인정보를 안전하게 보호하고 관리할 수 있는 개인정보 관리 방법 및 시스템에 관한 것이다. 본 발명에 따른 블록체인과 연동하여 개인정보를 관리하는 시스템은, 암호화된 사용자의 개인정보를 저장하는 데이터베이스; 상기 암호화된 개인정보의 해시값을 포함하는 블록을 저장하는 블록체인; 및 개인정보의 제공이 요청되면, 상기 데이터베이스에 저장된 암호화된 개인정보를 추출하고, 이 암호화된 개인정보의 해시값과 상기 블록체인에 저장된 상기 개인정보의 해시값이 일치하는지 여부를 확인하여, 개인정보를 검증하는 관리 서버;를 포함한다.

Description

블록체인 환경에서 개인정보 관리 방법 및 시스템{Method and system for managing personal information in block chain environment}
본 발명은 블록체인 환경에서 개인정보를 안전하게 보호하고 관리할 수 있는 개인정보 관리 방법 및 시스템에 관한 것이다.
블록체인은, 동일 원장(즉, 트랜잭션)을 모든 노드가 공유하여, 거래 내역을 투명하게 운영하고 더불어 해킹과 변조를 막는 기술이다. 이러한 블록체인은 트랜잭션을 포함하는 블록들이 체인 형태로 연결되는 구조를 갖는다.
그런데 블록체인은, 모든 노드들이 동일한 블록체인을 저장하고, 더불어 트랜잭션 검증에 참여하기 때문에, 데이터가 증가되는 경우 블록체인의 용량도 증가된다. 그런데 블록체인의 용량이 증가되는 경우, 블록체인 내에 데이터 검색 속도가 저하되는 문제점이 있다.
게다가, 블록체인은 구조상 저장된 데이터를 삭제하는 것이 불가능하다. 특히, 블록체인 내에 사용자의 개인정보가 저장된 경우, 사용자는 해당 데이터를 삭제할 수가 없어, 사생활이 침해될 수 있는 문제점이 있다.
본 발명은 이러한 문제점을 해결하기 위하여 제안된 것으로, 블록체인 환경에서 사용자의 개인정보를 안전하게 보호하고 관리하며, 개인정보의 검색 속도를 향상시키는 개인정보 관리 방법 및 시스템을 제공하는데 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명의 제1측면에 따른 블록체인과 연동하여 개인정보를 관리하는 시스템은, 암호화된 사용자의 개인정보를 저장하는 데이터베이스; 상기 암호화된 개인정보의 해시값을 포함하는 블록을 저장하는 블록체인; 및 개인정보의 제공이 요청되면, 상기 데이터베이스에 저장된 암호화된 개인정보를 추출하고, 이 암호화된 개인정보의 해시값과 상기 블록체인에 저장된 상기 개인정보의 해시값이 일치하는지 여부를 확인하여, 개인정보를 검증하는 관리 서버를 포함한다.
상기 데이터베이스는, 사용자의 공개키와 상기 관리 서버의 공개키로 이중 암호화된 개인정보를 저장할 수 있다.
상기 관리 서버는, 상기 개인정보의 검증에 성공하면, 상기 이중 암호화된 개인정보를 상기 관리 서버의 개인키와 상기 사용자의 개인키를 이용하여 복호화하고, 이 복호화된 개인정보를 타 서버로 제공할 수 있다.
상기 관리 서버는, 상기 사용자의 공개키를 획득하고, 이 사용자의 공개키와 상기 관리 서버의 공개키를 이용하여 개인정보를 이중 암호화하여 상기 데이터베이스에 저장하고, 상기 이중 암호화된 개인정보의 해시값을 산출한 후, 이 해시값이 포함된 트랜잭션을 블록체인 네트워크로 전파하여, 상기 암호화된 개인정보의 해시값을 포함하는 블록을 상기 블록체인에 저장할 수 있다.
상기 목적을 달성하기 위한 본 발명의 제2측면에 따른 암호화된 사용자의 개인정보를 저장하는 데이터베이스에 저장하고, 암호화된 개인정보의 해시값을 포함하는 블록을 블록체인에 저장한 개인정보 관리 시스템에서, 개인정보를 관리하는 방법은, 개인정보의 제공이 요청되면, 상기 데이터베이스에 저장된 암호화된 개인정보를 추출하는 단계; 상기 암호화된 개인정보의 해시값과 상기 블록체인에 저장된 상기 개인정보의 해시값이 일치하는지 여부를 확인하여, 개인정보를 검증하는 단계; 및 상기 검증에 성공하면, 개인정보를 타 서버로 제공하는 단계를 포함한다.
본 발명은 사용자의 개인정보를 별도의 데이터베이스에 저장하고 블록체인에는 개인정보를 검증할 수 있는 해시값을 기록하는 이원화된 구조를 통해서, 블록체인의 검색 속도를 향상시키고, 블록체인의 용량이 커지는 것을 방지할 수 있는 장점이 있다.
또한, 본 발명은 사용자의 개인정보를 이중 암호화하여 데이터베이스에 저장함으로써, 보다 안정하게 사용자의 개인정보를 관리할 수 있는 이점이 있다.
게다가, 본 발명은 사용자의 동의에 따라, 데이터베이스에 저장된 개인정보를 타 업체로 제공하기 때문에, 사용자의 개인정보 관리에 대한 신뢰성을 향상시킬 수 있다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명을 실시하기 위한 구체적인 내용과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일 실시예에 따른, 블록체인 환경에서 개인정보를 관리하는 시스템을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른, 개인정보 관리 시스템이 블록체인 환경에서 개인정보를 등록하는 방법을 설명하는 흐름도이다.
도 3은 본 발명의 일 실시예에 따른, 개인정보 관리 시스템이 블록체인 환경에서 개인정보를 제공하는 방법을 설명하는 흐름도이다.
도 4는 본 발명의 다른 실시예에 따른, 개인정보 관리 시스템이 블록체인 환경에서 개인정보를 제공하는 방법을 설명하는 흐름도이다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른, 블록체인 환경에서 개인정보를 관리하는 시스템을 나타내는 도면이다.
도 1에 도시된 바와 같이, 본 발명의 실시예에 따른 개인정보 관리 시스템은 사용자 단말(100), 관리 서버(200), 데이터베이스(300), 개인정보 제공 서버(400), 정보 요청 서버(500) 및 블록체인 네트워크(600)를 포함하며, 이러한 구성요소들은 네트워크(700)를 통해서 서로 통신한다. 상기 네트워크(700)는 이동통신망과 유선광대역 통신망을 포함하는 것으로서, 본 발명의 주지에 관용기술에 해당하므로 자세한 설명은 생략한다.
사용자 단말(100)은 사용자가 소지한 통신 장치로서, 스마트폰, 태블릿 컴퓨터 등과 같이 이동통신이 가능한 통신 장치이다. 상기 사용자 단말(100)은 개인정보를 제공하고 관리하기 위한 애플리케이션이 탑재된다. 상기 사용자 단말(100)은 사용자의 개인키와 공개키를 저장한다. 상기 사용자 단말(100)은 정보 요청 서버(500)에서 개인정보를 요청하면, 이 개인정보에 대한 동의 또는 미동의를 수행할 수 있다. 상기 사용자 단말(100)은 개인정보를 데이터베이스(300)에 저장할 때에, 사용자의 공개키를 관리 서버(200)로 제공할 수 있다. 또한, 사용자 단말(100)은 사용자 공개키로 암호화된 개인정보를 사용자 개인키로 복호화할 수 있다.
개인정보 제공 서버(400)는 사용자의 개인정보를 보관하고 있는 서버로서, 사용자의 주민등록번호와 주소 등의 신상정보를 저장하는 관공서 서버, 사용자의 의료 데이터를 저장하는 병원 서버, 사용자의 학력을 저장하는 교육청 서버(또는 대학교 서버) 등이 이에 해당할 수 있다. 상기 개인정보 제공 서버(400)는 사용자로부터 개인정보의 저장을 요청받으면, 저장중인 사용자의 개인정보를 추출하여 관리 서버(200)로 전송한다.
정보 요청 서버(500)는 서비스 진행 또는 인증을 위해서, 사용자의 개인정보가 필요한 서버로서, 관리 서버(200)로 특정 사용자의 개인정보를 요청하여 수신한다. 상기 정보 요청 서버(500)는 특정 사용자의 개인정보가 참 또는 거짓인지 여부에 대한 응답 정보를 관리 서버(200)로부터 수신할 수 있고, 사용자의 특정 데이터(예컨대, 생년월일, 이메일 주소 또는 주민등록번호 등)를 관리 서버(200)로부터 수신할 수 있다. 정보 요청 서버(500)는 사용자의 개인정보를 제공받으면, 이에 대한 반대급부로서 마일리지, 가상화폐, 상품권 등과 같은 현금성 포인트를 사용자에게 제공할 수 있다.
블록체인 네트워크(600)은 복수의 노드들이 연결되어 있으며, 트랜잭션에 대한 검증을 수행한다. 즉, 블록체인 네트워크(600)에 속하는 각 노드들은 트랜잭션이 발생하면, 이 트랜잭션에 대한 검증을 수행한다. 이때, 블록체인 네트워크(600)에 속하는 노드들은 전자 서명의 진위에 대한 검증을 수행할 수 있다. 또한, 블록체인 네트워크(600)에 포함된 각 노드들은 트랜잭션이 기록되며 블록 간에 연결 구조를 가지는 블록체인을 서로 공유한다. 상기 트랜잭션은 개인정보가 데이터베이스(300)에 등록/변경/삭제되거나, 개인정보를 열람할 때에 발생된다.
상기 블록은 블록 헤더와 트랜잭션으로 구성된다. 블록 헤더는 이전 블록 해시값, 머클루트(Markle Root), 난스(Nonce), 타임스탬프를 포함한다. 상기 이전 블록 해시는 마스터 블록체인 구조에서 이전 블록(즉, 부모 블록)에 대한 해시 참조값을 나타낸다. 머클루트는 머클 트리 루트에 대한 해시(hash)이다. 타임 스탬프는 블록의 생성시간이 기록된다. 트랜잭션은 개인정보 저장, 변경, 삭제 또는 열람 내역 등과 같이 개인정보의 접근 내역 또는 변경 내역을 기록한다. 특히, 본 발명에 있어서, 블록의 트랜잭션에는 개인정보 자체가 저장되지 않고, 개인정보에 대한 해시값이 기록된다.
관리 서버(200)는 사용자의 개인정보를 저장하고 관리하는 기능을 수행한다. 구체적으로, 관리 서버(200)는 개인정보 제공 서버(400)로부터 사용자의 개인정보를 수신하면, 사용자의 공개키를 암호키로서 이용하여 상기 개인정보를 1차 암호화하고, 자신의 공개키(즉, 관리 서버의 공개키)를 이용하여 1차 암호화된 개인정보를 2차 암호화한다. 아울러, 관리 서버(200)는 이중 암호화된 개인정보를 데이터베이스(300)에 저장하고, 이중 암호화된 개인정보의 해시값을 산출하고, 상기 해시값, 관리 서버(200)의 전자 서명 및 개인정보의 저장을 나타내는 부호가 포함된 등록 트랜잭션을 블록체인 네트워크(600)에 발생시켜, 상기 등록 트랜잭션을 포함하는 신규 블록이 블록체인에 저장되게 한다.
또한, 관리 서버(200)는 정보 요청 서버(500)로부터 사용자의 개인정보를 요청받고, 사용자가 개인정보 제공에 동의하면, 데이터베이스(300)에 저장된 개인정보를 추출하고, 상기 개인정보의 등록 트랜잭션을 블록체인에서 추출한 후, 개인 등록 트랜잭션에 포함된 해시값과 상기 개인정보를 통해 산출한 해시값의 일치여부를 확인하여, 개인정보를 검증한다. 관리 서버(200)는 개인정보 검증에 성공하면, 개인정보의 복호화 과정을 거친 후, 복호화된 개인정보를 정보 요청 서버(500)로 전송한다.
한편, 관리 서버(200)는 사용자의 개인정보에 대한 문의를 정보 요청 서버(500)로부터 수신할 수 있다. 상기 사용자의 개인정보 문의는 참 또는 거짓으로 응답될 수 있는 형태로서, 예컨대, "사용자가 19세 이상인가?", "사용자가 남성인가?" 등과 같은 문의가 이에 해당할 수 있다. 이 경우, 관리 서버(200)는 데이터베이스(300)에 저장된 개인정보를 추출하고, 상기 개인정보의 등록 트랜잭션을 블록체인에서 추출한 후, 개인 등록 트랜잭션에 포함된 해시값과 상기 개인정보를 통해 산출한 해시값의 일치여부를 확인하여, 개인정보를 검증한다. 관리 서버(200)는 개인정보 검증에 성공하면, 상기 데이터베이스(300)에서 추출한 개인정보를 영지식 증명(Zero-Knowledge Proof)을 통하여, 문의에 대한 결과를 확인하고, 이에 대한 응답 메시지를 정보 요청 서버(500)로 전송할 수 있다.
도 2는 본 발명의 일 실시예에 따른, 개인정보 관리 시스템이 블록체인 환경에서 개인정보를 등록하는 방법을 설명하는 흐름도이다.
도 2를 참조하면, 사용자 단말(100)은 개인정보 제공 서버(400)에 저장된 개인정보를 데이터베이스(300)에 저장하기 위하여, 관리 서버(200)로의 개인정보 제공을 요청하는 메시지를 개인정보 제공 서버(400)로 전송한다(S201). 이때, 사용자 단말(100)은 사용자의 공개키를 확인하고, 이 공개키와 사용자의 식별정보를 상기 개인정보 제공 서버(400)로 전송한다. 상기 사용자의 개인키와 공개키는 사용자 단말(100)에서 사전에 생성된다.
이어서, 개인정보 제공 서버(400)는 상기 사용자의 식별정보를 토대로 사용자의 개인정보를 추출한다(S203). 다음으로, 개인정보 제공 서버(400)는 상기 개인정보와 사용자의 공개키를 관리 서버(200)로 전송한다(S205).
그러면, 관리 서버(200)는 사용자의 공개키를 암호키로서 이용하여 수신한 개인정보를 1차 암호화하고, 자신의 공개키를 이용하여 1차 암호화된 개인정보를 2차 암호화한다(S207).
다른 실시형태로서, 개인정보 제공 서버(400)는 상기 추출한 개인정보를 사용자의 공캐키로 암호화한 후에, 암호화된 개인정보를 관리 서버(200)로 전송할 수도 있다. 이 경우, 관리 서버(200)는 자신의 공개키를 이용하여 상기 암호화된 개인정보를 2차 암호화한다.
관리 서버(200)는 이중 암호화된 개인정보를 데이터베이스(300)에 저장한다(S209). 이때, 관리 서버(200)는 사용자의 식별정보(예컨대, 계정)를 임의로 생성하거나, 기존의 사용자 식별정보를 확인하고, 사용자의 식별정보와 이중 암호화된 개인정보를 매핑하여 데이터베이스(300)에 저장할 수 있다.
이어서, 관리 서버(200)는 상기 이중 암호화된 개인정보의 해시값을 산출하고, 이 산출한 개인정보의 해시값, 상기 사용자의 식별정보 및 관리 서버(200)의 전자 서명 및 개인정보의 저장을 나타내는 부호가 포함된 등록 트랜잭션을 생성한다(S211).
다음으로, 관리 서버(200)는 상기 생성한 등록 트랜잭션을 블록체인 네트워크(600)로 전파한다(S213). 그러면, 블록체인 네트워크(600)에 포함된 각 노드들은 상기 등록 트랜잭션을 검증하고, 검증에 성공하면 상기 등록 트랜잭션이 포함된 신규 블록을 생성하고, 이 신규 블록을 기존의 블록과 연결함으로써, 상기 등록 트랜잭션을 블록체인에 저장한다(S215).
관리 서버(200)는 등록 트랜잭션이 정상적으로 블록체인에 저장되면, 개인정보 제공 서버(400)로 개인정보가 정상적으로 등록되었음을 알릴 수 있다. 이 경우, 개인정보 제공 서버(400)는 사용자의 개인정보를 폐기할 수 있으며, 이에 따라 개인정보는 이중 암호화되어 데이터베이스(300)에만 저장되게 된다.
도 3은 본 발명의 일 실시예에 따른, 개인정보 관리 시스템이 블록체인 환경에서 개인정보를 제공하는 방법을 설명하는 흐름도이다.
도 3을 참조하면, 정보 요청 서버(500)는 특정 사용자의 개인정보가 참 또는 거짓인지에 대해서 문의하는 개인정보 문의 메시지를 관리 서버(200)로 전송한다(S301). 상기 개인정보 문의 메시지의 일례로서, "사용자가 19세 이상인가?", "사용자가 남성인가?", "사용자가 서울에 거주하고 있는가?" 등이 있다.
그러면, 관리 서버(200)는 사용자 단말(100)로 개인정보를 문의하는 메시지가 요청되었음을 알리고, 이 정보 제공 여부에 대해서 질의하는 개인정보 제공 문의 메시지를 사용자 단말(100)로 전송한다(S303).
다음으로, 사용자 단말(100)은 사용자의 입력에 따라, 개인정보 제공에 동의하는 응답 메시지를 관리 서버(200)로 전송할 수 있다(S305).
그러면, 관리 서버(200)는 상기 사용자의 식별정보를 확인하고, 이 사용자의 식별정보와 대응되는 이중 암호화된 개인정보를 데이터베이스(300)에서 추출한다(S307). 그리고 관리 서버(200)는 상기 사용자의 식별정보를 포함하며 등록 트랜잭션을 포함하는 블록을 블록체인에서 검색하고, 검색한 블록에서 개인정보에 대한 해시값을 추출한다(S309).
그리고 관리 서버(200)는 상기 이중 암호화된 개인정보의 해시값을 산출하고, 이 산출한 해시값이, S309 단계에서 블록체인에서 추출한 해시값과 일치하는지 여부를 확인하여, 개인정보에 대한 검증을 수행한다(S311). 관리 서버(200)는 개인정보 검증에 실패하면, 정보 요청 서버(500)로 개인정보를 제공할 수 없음을 알리고, 사용자 단말(100)에게도 개인정보 검증 실패 사실을 통보한다.
반면에, 관리 서버(200)는 개인정보 검증에 성공하면, 상기 데이터베이스(300)에서 추출한 이중 암호화된 개인정보를 영지식 증명을 수행하여, 개인정보 문의에 대한 결과(즉, 참 또는 거짓)을 확인하고, 이 결과값이 포함된 응답 메시지를 정보 요청 서버(500)로 전송한다(S313, S315).
그러면, 정보 요청 서버(500)는 상기 결과값을 토대로, 문의한 개인정보에 대한 참 또는 거짓을 확인한 후, 이후에 절차를 진행한다. 그리고 정보 요청 서버(500)는 개인정보 제공에 대한 보상(예컨대, 가상화폐, 포인트 또는 마일리지)를 관리 서버(200)로 제공한다(S317). 그러면, 관리 서버(200)는 정보 제공을 수행한 사용자에게 상기 보상 전부 또는 보상 일부를 제공한다(S319).
한편, 관리 서버(200)는 개인정보를 정보 요청 서버(500)로 제공하면, 사용자 식별정보, 관리 서버(200)의 전자 서명 및 개인정보 제공을 나타내는 부호가 포함된 정보제공 트랜잭션을 블록체인 네트워크(600)에 발생시켜, 상기 정보 제공 트랜잭션을 포함하는 신규 블록이 블록체인에 저장되게 한다.
도 4는 본 발명의 다른 실시예에 따른, 개인정보 관리 시스템이 블록체인 환경에서 개인정보를 제공하는 방법을 설명하는 흐름도이다.
도 4를 참조하면, 정보 요청 서버(500)는 특정 사용자의 개인정보를 요청하는 메시지를 관리 서버(200)로 전송한다(S401). 도 4는 도 3과는 다르게, 특정 사용자의 개인정보가 맞는지 또는 틀린지에 대해서 문의하는 것이 아니라, 정보 요청 서버(500)가 사용자의 개인정보 전부 또는 일부를 요구하는 것으로 설명된다.
그러면, 관리 서버(200)는 사용자 단말(100)로 개인정보를 문의하는 메시지가 요청되었음을 알리고, 개인정보 제공에 동의하는지 여부를 질의하는 개인정보 제공 문의 메시지를 사용자 단말(100)로 전송한다(S403). 이때, 관리 서버(200)는 정보 제공에 요구되는 세부 개인정보(즉, 개인정보의 세부항목)을 정보 요청 서버(500)로부터 수신하고, 상기 개인정보 세부항목을 사용자 단말(100)로 전송하여, 개인정보 중에서 상기 개인정보 세부항목과 해당하는 정보 제공이 요청되었음을 사용자에게 인지시킨다.
다음으로, 사용자 단말(100)은 사용자의 입력에 따라, 개인정보 제공에 동의하는 응답 메시지를 관리 서버(200)로 전송할 수 있다(S405).
그러면, 관리 서버(200)는 상기 사용자의 식별정보를 확인하고, 이 사용자의 식별정보와 대응되는 이중 암호화된 개인정보를 데이터베이스(300)에서 추출한다(S407). 그리고 관리 서버(200)는 상기 사용자의 식별정보 및 등록 트랜잭션을 포함하는 블록을 블록체인에서 검색하고, 검색한 블록에서 개인정보에 대한 해시값을 추출한다(S409).
그리고 관리 서버(200)는 상기 이중 암호화된 개인정보의 해시값을 산출하고, 이 산출한 해시값이 S409 단계에서 블록체인에서 추출한 해시값과 일치하는지 여부를 확인하여, 개인정보에 대한 검증을 수행한다(S411). 관리 서버(200)는 개인정보 검증에 실패하면, 정보 요청 서버(500)로 개인정보를 제공할 수 없음을 알리고, 사용자 단말(100)에게도 개인정보 검증 실패 사실을 통보한다.
반면에, 관리 서버(200)는 개인정보 검증에 성공하면, 상기 데이터베이스(300)에서 추출한 이중 암호화된 개인정보를 자신의 개인키(즉, 관리 서버의 개인키)로 1차 복호화한다(S413). 이어서, 관리 서버(200)는 상기 1차 복호화된 개인정보에 대한 복호화를 사용자 단말(100)로 요청한다(S415). 이때, 관리 서버(200)는 상기 1차 복호화된 개인정보를 상기 사용자 단말(100)로 전송한다.
그러면, 사용자 단말(100)은 자신의 개인키(즉, 사용자 개인키)를 복호키로서 설정하여, 상기 관리 서버(200)로부터 수신한 상기 1차 복호화된 개인정보를 2차 복호화한다(S417). 그리고 사용자 단말(100)은 2차 복호화된 개인정보를 관리 서버(200)로 전송한다(S419).
다음으로, 관리 서버(200)는 복호화된 개인정보에서 사용자가 동의한 세부항목을 확인하고, 이 세부항목에 해당하는 개인 데이터를 정보 요청 서버(500)로 전송한다(S421).
그러면, 정보 요청 서버(500)는 상기 수신한 개인 데이터를 저장한 후, 개인정보 제공에 대한 보상(예컨대, 가상화폐, 상품권, 포인트 또는 마일리지)를 관리 서버(200)로 제공한다(S423). 그러면, 관리 서버(200)는 정보 제공을 수행한 사용자에게 상기 보상 전부 또는 보상 일부를 제공한다(S425).
한편, 관리 서버(200)는 개인정보를 정보 요청 서버(500)로 제공하면, 사용자 식별정보, 관리 서버(200)의 전자 서명 및 개인정보 제공을 나타내는 부호가 포함된 정보제공 트랜잭션을 블록체인 네트워크(600)에 발생시켜, 상기 정보 제공 트랜잭션을 포함하는 신규 블록이 블록체인에 저장되게 한다.
상술한 바와 같이, 본 발명에 따른 개인정보 관리 시스템은, 사용자의 개인정보를 별도의 데이터베이스(300)에 저장하고, 블록체인에는 개인정보를 검증할 수 있는 해시값이 기록되는 블록을 저장하여 데이터 저장 구조를 이원화한다. 또한, 개인정보 관리 시스템은, 이러한 이원화된 구조를 통해서 블록체인에서의 검색 속도를 향상시키고, 블록체인의 용량이 커지는 것을 방지한다.
또한, 본 발명에 따른 개인정보 관리 시스템은 사용자의 개인정보를 이중 암호화하여 데이터베이스(300)에 저장함으로써, 보다 안정하게 사용자의 개인정보를 보관한다.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 안 된다. 또한, 본 명세서에서 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서에서 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.
도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로, 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 프로그램 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
100 : 사용자 단말
200 : 관리 서버
300 : 데이터베이스
400 : 개인정보 제공 서버
500 : 정보 요청 서버
600 : 블록체인 네트워크

Claims (5)

  1. 블록체인과 연동하여 개인정보를 관리하는 시스템에 있어서,
    암호화된 사용자의 개인정보를 저장하는 데이터베이스;
    상기 암호화된 개인정보의 해시값을 포함하는 블록을 저장하는 블록체인; 및
    개인정보의 제공이 요청되면, 상기 데이터베이스에 저장된 암호화된 개인정보를 추출하고, 이 암호화된 개인정보의 해시값과 상기 블록체인에 저장된 상기 개인정보의 해시값이 일치하는지 여부를 확인하여, 개인정보를 검증하는 관리 서버;를 포함하는 개인정보 관리 시스템.
  2. 제1항에 있어서,
    상기 데이터베이스는,
    사용자의 공개키와 상기 관리 서버의 공개키로 이중 암호화된 개인정보를 저장하는 것을 특징으로 하는 개인정보 관리 시스템.
  3. 제2항에 있어서,
    상기 관리 서버는,
    상기 개인정보의 검증에 성공하면, 상기 이중 암호화된 개인정보를 상기 관리 서버의 개인키와 상기 사용자의 개인키를 이용하여 복호화하고, 이 복호화된 개인정보를 타 서버로 제공하는 것을 특징으로 하는 개인정보 관리 시스템.
  4. 제1항에 있어서,
    상기 관리 서버는,
    상기 사용자의 공개키를 획득하고, 이 사용자의 공개키와 상기 관리 서버의 공개키를 이용하여 개인정보를 이중 암호화하여 상기 데이터베이스에 저장하고, 상기 이중 암호화된 개인정보의 해시값을 산출한 후, 이 해시값이 포함된 트랜잭션을 블록체인 네트워크로 전파하여, 상기 암호화된 개인정보의 해시값을 포함하는 블록을 상기 블록체인에 저장하는 것을 특징으로 하는 개인정보 관리 시스템.
  5. 암호화된 사용자의 개인정보를 저장하는 데이터베이스에 저장하고, 암호화된 개인정보의 해시값을 포함하는 블록을 블록체인에 저장한 개인정보 관리 시스템에서, 개인정보를 관리하는 방법으로서,
    개인정보의 제공이 요청되면, 상기 데이터베이스에 저장된 암호화된 개인정보를 추출하는 단계;
    상기 암호화된 개인정보의 해시값과 상기 블록체인에 저장된 상기 개인정보의 해시값이 일치하는지 여부를 확인하여, 개인정보를 검증하는 단계; 및
    상기 검증에 성공하면, 개인정보를 타 서버로 제공하는 단계;를 포함하는 개인정보 관리 방법.
KR1020180086549A 2018-07-25 2018-07-25 블록체인 환경에서 개인정보 관리 방법 및 시스템 KR20200011735A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180086549A KR20200011735A (ko) 2018-07-25 2018-07-25 블록체인 환경에서 개인정보 관리 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180086549A KR20200011735A (ko) 2018-07-25 2018-07-25 블록체인 환경에서 개인정보 관리 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR20200011735A true KR20200011735A (ko) 2020-02-04

Family

ID=69571221

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180086549A KR20200011735A (ko) 2018-07-25 2018-07-25 블록체인 환경에서 개인정보 관리 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR20200011735A (ko)

Similar Documents

Publication Publication Date Title
CN108563788B (zh) 基于区块链的数据查询方法、装置、服务器及存储介质
US8447983B1 (en) Token exchange
CN108650252B (zh) 一种安全、公平保护隐私的数据共享系统及方法
JP6377679B2 (ja) 制御方法、情報処理システム、コンピュータ及び制御プログラム
CN110209691B (zh) 一种数据处理方法及装置
WO2020000777A1 (zh) 基于区块链获取个人征信方法、装置及计算机设备
US20190260715A1 (en) Computer system, connection apparatus, and processing method using transaction
CN116777476A (zh) 基于公钥可搜索加密的药品可信溯源方法
CN111160997A (zh) 基于区块链的广告监管方法、装置及广告投放系统
CN114491637A (zh) 数据查询方法、装置、计算机设备和存储介质
WO2019213752A1 (en) A method and system for managing digital assets in a blockchain
CN113688430A (zh) 基于区块链的数据访问授权方法、装置、设备及存储介质
CN111914024B (zh) 证书存储和查询区块链构建方法、装置、系统、查询方法
KR102289414B1 (ko) 블록체인 환경에서 개인정보 보호 방법 및 이를 위한 장치
KR20210107456A (ko) 전력 계량 장치, 전력 계량 서버 및 블록 체인 기반의 전력 계량 방법
CN115471860B (zh) 一种快递实名查验方法、系统及计算机可读存储介质
KR20210014278A (ko) 블록체인 환경에서의 데이터 공유 방법 및 시스템
KR20200011735A (ko) 블록체인 환경에서 개인정보 관리 방법 및 시스템
CN115442115A (zh) 一种风险数据推送方法、系统、服务器和可信单元
KR20200000978A (ko) 데이터 보안 방법과 시스템
CN115495774A (zh) 一种风险数据查询方法、系统、可信单元和服务器
KR20010038208A (ko) 공개키 인증기관의 운용정보 관리 방법
KR102475434B1 (ko) 암호화폐 보안 방법 및 시스템
KR20200105312A (ko) 데이터 공유 방법 및 시스템
JP6901373B2 (ja) ユーザ管理装置、ユーザ管理システム