KR20180129028A - 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템 - Google Patents

프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템 Download PDF

Info

Publication number
KR20180129028A
KR20180129028A KR1020170064394A KR20170064394A KR20180129028A KR 20180129028 A KR20180129028 A KR 20180129028A KR 1020170064394 A KR1020170064394 A KR 1020170064394A KR 20170064394 A KR20170064394 A KR 20170064394A KR 20180129028 A KR20180129028 A KR 20180129028A
Authority
KR
South Korea
Prior art keywords
user
management server
block chain
information
signature
Prior art date
Application number
KR1020170064394A
Other languages
English (en)
Other versions
KR101974452B1 (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 KR1020170064394A priority Critical patent/KR101974452B1/ko
Publication of KR20180129028A publication Critical patent/KR20180129028A/ko
Application granted granted Critical
Publication of KR101974452B1 publication Critical patent/KR101974452B1/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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • 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)
  • Storage Device Security (AREA)

Abstract

본 발명은 프로그래밍이 가능한 블록체인에 신원이 확인된 사용자정보를 암호화하여 보관하고, 사용자정보의 등록 및 요청시 사용자 인증 프로그램을 수행하게 하고, 관리서버를 통해 블록체인에 접근하도록 함으로써, 사용자정보를 보다 안전하게 보관할 수 있고 사용자 인증 프로그램의 무결성을 보장할 수 있고, 여러 기관서버들이 개별적으로 블록체인의 트랜잭션을 발생시키지 않고도 개인정보 확인이 가능하고, 관리서버조차도 블록체인의 사용자 인증 프로그램을 함부로 조작할 수 없도록 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템이 제공된다.
또한, 사용자 단말의 분실 또는 도난 등의 유사시에 대비하여 사용자정보를 백업으로 보관하도록 하여 사용자정보의 재입력 없이 새로운 사용자 단말로 블록체인에 재등록이 가능하도록 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템이 제공된다.

Description

프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템{METHODS AND SYSTEM FOR MANAGING PERSONAL INFORMATION BASED ON PROGRAMMABLE BLOCKCHAIN AND ONE-ID}
본 발명은 프로그래밍이 가능한 블록체인과 통합 아이디(ID) 기반의 사용자정보 관리 방법 및 시스템에 관한 것으로, 보다 상세하게는, 프로그래밍이 가능한 블록체인에 신원이 확인된 사용자정보를 암호화하여 보관 및 사용자 인증 프로그램을 수행하게 하고, 관리서버를 통해 블록체인에 접근하도록 하고, 또한, 사용자 단말의 분실 또는 도난 등의 유사시에 대비하여 사용자정보를 백업으로 보관하도록 하는 사용자정보 관리 방법 및 시스템에 관한 것이다.
다양한 서비스제공자가 제공하는 서비스를 이용하기 위해서는 사용자정보 또는 개인정보가 여러 서비스제공자의 서버에 보관되므로, 하나의 서비스 서버라도 해킹되어도 사용자정보가 유출되는 문제가 발생한다. 또한, 사용자 단말이 분실 또는 탈취되어 새로운 단말을 사용하는 경우에는 기존의 사용자정보가 보관되어 있던 서비스제공자 서버에 접근이 불가하거나, 접근이 가능하다고 하더라도 재등록을 위해 사용자정보를 일일이 재입력해야 하는 번거로움이 있다.
최근 사용자정보의 관리를 위해 보안성과 안정성이 입증된 블록체인을 많이 도입하고 있다. 대한민국 등록특허 제10-1590076호에서는 블록체인에 개인정보를 암호화하여 등록하는 기술이 공지되어 있다. 사용자와 기관(서비스 제공자) 서버가 일대일로 개인정보를 송수신하기 위해 블록체인을 매개체로 사용하는 기술로서, 사용자의 공개키로 개인정보를 암호화하여 블록체인에 저장하여 보안성을 높이고 있다. 그런데, 저장된 사용자정보의 접근시마다 매번 본인확인 또는 신원확인이 필요하며, 모든 기관이 블록체인에 접속시마다 직접 트랜잭션을 발생시켜야 하기 때문에 비용과 대기 시간이 증가하는 문제가 있다.
블록체인 기술은 보안성이 높은 단순한 저장 매개체에서 발전하여 다양한 프로그램을 올릴 수 있게 되었는데, 그 대표적인 예가 이더리움(Ethereum)이다. 이더리움은 블록체인을 하나의 데이터베이스로 보고, 모든 자산을 올릴 수 있고 각 자산이 구동하거나 거래되는 방식까지 직접 프로그래밍할 수 있는 하나의 오픈플랫폼(Open Platform)이다. 따라서, 이러한 진화된 블록체인 플랫폼을 사용하면, 안전한 사용자정보의 보관 및 사용자 인증이 가능하며, 인증 프로그램의 무결성까지 보장할 수 있으므로 개인정보 관리의 많은 보안 관련 이슈들을 해결할 수 있다.
KR 10-1590076 B.
본 발명은 프로그래밍이 가능한 블록체인에 신원이 확인된 사용자정보를 암호화하여 보관하고, 사용자정보의 등록 및 요청시 사용자 인증 프로그램을 수행하게 하고, 관리서버를 통해 블록체인에 접근하도록 함으로써, 사용자정보의 안전한 보관 및 사용자 인증 프로그램의 무결성을 보장하고, 또한, 사용자 단말의 분실 또는 도난 등의 유사시에 대비하여 사용자정보를 백업으로 보관하도록 하여 사용자정보의 재입력 없이 새로운 사용자 단말로 블록체인에 재등록이 가능하도록 하는 개인정보 관리 방법 및 시스템을 제공하는 것을 목적으로 한다.
상기 기술적 과제를 달성하기 위한, 본 발명의 일 실시예에 따르면, 관리서버와 네트워크로 연결된 블록체인이, 상기 관리서버로부터 사용자의 ID와 제1암호문 및 관리서버서명문을 수신하는 단계; 상기 관리서버서명문을 관리서버 공개키로 서명 검증한 후, 상기 제1암호문을 상기 사용자의 ID에 매핑 등록하는 사용자정보등록 단계; 및 상기 관리서버로부터 상기 제1암호문을 요청 받으면 상기 사용자의 ID에 매핑 등록되어 있는 상기 제1암호문을 상기 관리서버로 송신하는 사용자정보송신 단계를 포함하되, 상기 블록체인은 이더리움(Ethereum) 또는 프로그래밍이 가능한 블록체인이고, 상기 관리서버는 사용자 단말과 네트워크로 연결되어 상기 블록체인과의 중간에서 중계 역할을 하고, 상기 제1암호문은 상기 사용자 단말이 사용자정보를 암호화하여 상기 관리서버로 송신한 것이고, 상기 관리서버서명문은 상기 제1암호문을 상기 관리서버의 개인키로 서명한 것이고, 상기 사용자정보는 상기 사용자의 개인정보 또는 문서를 포함하는 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법이 제공된다.
상기 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법은, 상기 관리서버로부터 상기 사용자의 제2암호문을 수신하여 상기 사용자의 ID에 매핑 등록하는 단계; 및 상기 관리서버로부터 상기 제2암호문을 요청 받으면 상기 사용자의 ID에 매핑 등록되어 있는 상기 제2암호문을 상기 관리서버로 송신하는 단계를 더 포함하되, 상기 제2암호문은 상기 제1암호문과는 다른 방법으로 암호화된 것일 수 있다.
상기 제2암호문은, 상기 사용자 단말이 사용자정보를 패스워드 기반으로 암호화한 것이거나, 상기 패스워드 기반으로 암호화된 사용자정보를 상기 관리서버가 상기 관리서버의 공개키로 추가로 암호화한 것일 수 있다.
상기 사용자정보등록 단계는 상기 사용자의 단말이 공인인증기관을 통해 본인인증을 수행한 후 등록하는 것일 수 있다.
상기 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법은, 상기 사용자의 공개키를 등록하는 단계; 상기 관리서버로부터 사용자서명문과 원문을 수신하는 단계; 및 상기 사용자서명문을 상기 사용자 공개키로 서명 검증한 후 상기 원문과 비교하는 사용자인증 단계를 더 포함하되, 상기 사용자서명문은 사용자 개인키로 서명된 것이고, 상기 원문은 서비스제공자 서버가 상기 관리서버로 송신한 것이고, 상기 서비스제공자 서버는 상기 관리서버와 네트워크로 연결되어 있는 것일 수 있다.
상기 원문은 상기 서비스제공자 서버가 송신한 사용자인증요청 원문이고, 상기 사용자서명문은 상기 사용자 단말이 상기 사용자인증요청 원문을 상기 사용자 개인키로 서명한 것일 수 있다.
상기 사용자정보송신 단계는, 상기 사용자인증 단계의 수행 결과 인증이 성공하면 수행하는 것일 수 있다.
상기 서비스제공자 서버가 상기 사용자 단말로부터 상기 사용자의 특정정보를 수신하여 상기 특정정보의 인증 요청을 하는 경우, 상기 원문은 상기 서비스제공자 서버가 송신한 상기 특정정보를 포함한 원문이고, 상기 사용자서명문은 상기 사용자 단말이 상기 블록체인에 저장되어 있던 제1암호문을 수신한 후 복호화하여 획득한 사용자정보 중에서 상기 서비스제공자 서버가 요구하는 정보만을 선택하여 상기 사용자 개인키로 서명한 것일 수 있다.
상기 기술적 과제를 달성하기 위한, 본 발명의 또 다른 일 실시예에 따르면, 사용자 단말 및 블록체인과 네트워크로 연결된 관리서버가, 상기 사용자 단말로부터 사용자 ID 및 제1암호문을 수신하여 상기 블록체인에 매핑 등록하는 사용자정보등록 단계; 및 상기 사용자 단말로부터 상기 제1암호문을 요청 받으면, 상기 블록체인으로부터 상기 사용자의 ID에 매핑 등록되어 있는 상기 제1암호문을 수신하여 상기 사용자 단말로 송신하는 사용자정보송신 단계를 포함하되, 상기 블록체인은 이더리움 또는 프로그래밍이 가능한 블록체인이고, 상기 제1암호문은 상기 사용자 단말이 사용자정보를 사용자 공개키로 암호화한 것이고, 상기 사용자정보는 상기 사용자의 개인정보 또는 문서를 포함하는 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법이 제공된다.
상기 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법은, 상기 블록체인에 상기 사용자의 제2암호문을 매핑 등록하는 단계를 더 포함하되, 상기 제2암호문은 상기 제1암호문과는 다른 방법으로 암호화된 것일 수 있다.
상기 제2암호문은, 상기 사용자 단말이 상기 사용자정보를 패스워드 기반으로 암호화한 것이거나, 상기 패스워드 기반으로 암호화된 사용자정보를 상기 관리서버가 상기 관리서버의 공개키로 추가로 암호화한 것일 수 있다.
상기 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법은, 새로운 사용자 단말로부터 복구 요청을 수신하는 단계; 및 상기 복구 요청을 수신한 후 상기 블록체인에 등록되어 있는 상기 제2암호문을 수신하여 상기 새로운 사용자 단말로 송신하는 단계를 더 포함할 수 있다.
상기 사용자정보등록 단계는 상기 사용자 단말이 공인인증기관을 통해 본인인증을 수행한 후 등록하는 것일 수 있다.
상기 사용자정보등록 단계는, 상기 수신한 제1암호문을 상기 관리서버의 개인키로 서명하여 관리서버서명문을 생성하는 단계; 및 상기 관리서버서명문을 상기 사용자 ID 및 제1암호문과 함께 블록체인서버로 송신하는 단계를 포함하되, 상기 관리서버서명문이 상기 블록체인에서 서명 검증에 성공하는 경우에 상기 제1암호문이 등록되는 것일 수 있다.
상기 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법은, 서비스제공자 서버로부터 원문을 수신하는 단계; 상기 사용자 단말로부터 사용자서명문을 수신하는 단계; 상기 수신한 사용자서명문과 원문을 상기 블록체인으로 송신하는 단계; 및 상기 블록체인이 상기 사용자서명문을 상기 사용자 공개키로 서명 검증한 후 상기 원문과 비교한 인증결과를 수신하는 단계를 더 포함하되, 상기 서비스제공자 서버는 상기 관리서버와 네트워크로 연결되어 있고, 상기 사용자서명문은 사용자 개인키로 서명된 것일 수 있다.
상기 원문은 상기 서비스제공자 서버가 송신한 사용자인증요청 원문이고, 상기 사용자서명문은 상기 관리서버가 상기 수신한 사용자인증요청 원문을 상기 사용자 단말로 송신하고, 상기 사용자 단말이 상기 수신한 사용자인증요청 원문을 상기 사용자 개인키로 서명한 것일 수 있다.
상기 서비스제공자 서버가 상기 사용자 단말로부터 상기 사용자의 특정정보를 수신하여 상기 특정정보의 인증 요청을 하는 경우, 상기 원문은 상기 서비스제공자 서버가 송신한 특정정보를 포함한 원문이고, 상기 사용자서명문은 상기 사용자 단말이 상기 블록체인에 저장되어 있던 제1암호문을 수신한 후 복호화하여 획득한 사용자정보 중에서 상기 서비스제공자 서버가 요구하는 정보만을 선택하여 상기 사용자 개인키로 서명한 것일 수 있다.
또한, 다른 바람직한 일 실시예에 따르면, 전술한 각 방법에 따른 방법을 실행시키기 위한 컴퓨터로 판독가능한 기록매체에 저장된 컴퓨터 프로그램이 제공된다.
또한, 또 다른 바람직한 일 실시예에 따르면, 전술한 각 방법을 실행시키기 위한 프로그램이 기록된, 컴퓨터에서 판독 가능한 기록매체가 제공된다.
상기 기술적 과제를 달성하기 위한, 본 발명의 또 다른 바람직한 일 실시예에 따르면, 관리서버와 네트워크로 연결된 블록체인으로서, 전술한 각 방법을 실행시키기 위한 프로그램에 의해 동작하는 것을 특징으로 하는, 블록체인이 제공된다.
상기 기술적 과제를 달성하기 위한, 본 발명의 또 다른 바람직한 일 실시예에 따르면, 서비스제공자 서버, 사용자 단말 및 블록체인과 네트워크로 연결된 관리서버로서, 전술한 각 방법을 실행시키기 위한 프로그램에 의해 동작하는 것을 특징으로 하는, 관리서버가 제공된다.
이상과 같이, 본 발명에 따르면, 프로그래밍이 가능한 블록체인에 신원이 확인된 사용자정보를 암호화하여 보관하고, 사용자정보의 등록 및 요청시 사용자 인증 프로그램을 수행하게 하고, 관리서버를 통해 블록체인에 접근하도록 함으로써, 사용자정보를 보다 안전하게 보관할 수 있고 사용자 인증 프로그램의 무결성을 보장할 수 있고, 여러 기관서버들이 개별적으로 블록체인의 트랜잭션을 발생시키지 않고도 개인정보 확인이 가능하고, 관리서버조차도 블록체인의 사용자 인증 프로그램을 함부로 조작할 수 없도록 하는 효과가 있다.
또한, 사용자 단말의 분실 또는 도난 등의 유사시에 대비하여 사용자정보를 백업으로 보관하도록 하여 사용자정보의 재입력 없이 새로운 사용자 단말로 블록체인에 재등록이 가능하도록 하는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 시스템의 구성을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 사용자 및 제1암호문 등록에 대한 구체적인 일례를 나타내는 순서도이다.
도 3은 본 발명의 다른 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 사용자 및 제1암호문 등록에 대한 구체적인 일례를 나타내는 순서도이다.
도 4는 본 발명의 또 다른 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 제2암호문 등록에 대한 구체적인 일례를 나타내는 순서도이다.
도 5는 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 제2암호문 등록에 대한 구체적인 일례를 나타내는 순서도이다.
도 6은 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 사용자 및 제1,2암호문 등록에 대한 구체적인 일례를 나타내는 순서도이다.
도 7은 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 개인정보 제공에 대한 구체적인 일례를 나타내는 순서도이다.
도 8은 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 사용자정보 제공에 대한 구체적인 일례를 나타내는 순서도이다.
도 9는 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 개인정보 제공에 대한 구체적인 일례를 나타내는 순서도이다.
도 10은 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 사용자인증 및 사용자정보 제공에 대한 구체적인 일례를 나타내는 순서도이다.
도 11은 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 제2암호문 제공에 대한 구체적인 일례를 나타내는 순서도이다.
이하, 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 하기의 설명에서는 본 발명의 실시예에 따른 동작을 이해하는데 필요한 부분만이 도시되고 설명되며 그 이외 부분의 도시와 설명은 본 발명의 요지를 흐리지 않도록 생략하였다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
또한, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 본 발명을 가장 적절하게 표현할 수 있도록 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 한다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우만을 한정하는 것이 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우 또는 유/무선 네트워크를 통해 유/무선으로 통신하는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
설명의 간략함을 위해, 본 명세서에서는 예시를 들어 순서도 또는 플로우 차트의 형태로 하나 이상의 방법이 일련의 단계로서 도시되고 기술되어 있지만, 본 발명이 단계들의 순서에 의해 제한되지 않는데 그 이유는 본 발명에 따라 본 명세서에 도시되고 기술되어 있는 것과 다른 순서로 또는 다른 단계들과 동시에 행해질 수 있기 때문이라는 것을 잘 알 것이다. 또한, 예시된 모든 단계들이 본 발명에 따라 방법을 구현해야만 하는 것은 아닐 수 있다.
명세서 전체에서 '사용자'라는 용어는 개인, 단체, 기관 또는 기업 등일 수 있으며, 사용자의 ID 및 공개키가 블록체인에 등록되고, 사용자정보를 블록체인에 저장할 수 있으며, 서비스제공자로부터 사용자 인증 또는 사용자정보 인증 요구를 받을 수 있다.
또한, 명세서 전체에서 '사용자정보'라는 용어는 사용자의 다양한 개인정보는 물론이고 다양한 형식의 문서도 포함한다. '개인정보'라는 용어는 사용자의 주민번호, 사회보장번호, 주소, 단말 정보, 서버 정보, 전화번호 등의 정보를 의미한다.
또한, 명세서 전체에서 '서비스제공자'라는 용어는 개인, 단체, 기관 또는 기업 등일 수 있으며, ID 및 공개키가 블록체인에 반드시 등록될 필요는 없고, 블록체인에 등록되어 있는 사용자의 인증 또는 사용자정보의 인증을 요청할 수 있다.
도 1은 본 발명의 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 시스템의 구성을 나타내는 블록도이다.
도 1을 참조하면, 본 발명에 따른 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자 인증 시스템은 사용자 단말(10), 서비스제공자 서버(20), 관리서버(30) 및 프로그래밍이 가능한 블록체인(40)을 포함하여 구성될 수 있다.
사용자 단말(10)은 휴대폰, 스마트폰, 컴퓨터, 태블릿, PC 등의 다양한 개인 기기 또는 장치일 수 있으며, 또한, 기업, 공공기관, 은행 등의 다양한 기관에서 사용되는 다양한 서버, 컴퓨터, 기기 또는 장치일 수 있다. 본 도면에서는 스마트폰, 노트북, 서버가 도시되어 있지만, 이에 반드시 한정되지는 않는다.
바람직하게는, 사용자 단말(10)은 FIDO(Fast Identity online) 인증장치가 구비될 수 있다. 이러한 경우 FIDO 인증장치를 통해 키쌍을 생성하고, 개인키를 저장하고, 생체인증 등을 통해 캐인키를 획득할 수 있다.
서비스제공자 서버(20)는 특정 서비스를 제공하는 기업, 공공기관, 은행 등의 다양한 기관에서 사용되는 다양한 서버, 컴퓨터, 기기 또는 장치일 수 있으며, 또한, 휴대폰, 스마트폰, 컴퓨터, 태블릿, PC 등의 다양한 개인 기기 또는 장치일 수 있다. 본 도면에서는 노트북과 서버가 도시되어 있지만, 이에 반드시 한정되지는 않는다.
관리서버(또는 관리서버)(30)는 기관, 기업, 서비스제공자, 개인 등이 운영할 수 있는 통상의 서버일 수 있으며, 컴퓨터, 태블릿, PC 등의 다양한 기기 또는 장치일 수도 있다.
관리서버(30)는 사용자 단말(10) 및 서비스제공자서버(20)와 다양한 유선 또는 무선의 네트워크를 통해 서로 통신할 수 있으며, 통신을 위해 다양한 유무선의 통신수단을 구비할 수 있다. 또한, 관리서버(30)는 블록체인(40)과 다양한 유선 또는 무선의 네트워크를 통해 서로 통신할 수 있다. 통신 네트워크는 이더넷 등의 유선 네트워크일 수도 있고, 와이파이 또는 이동통신망 등의 무선 네트워크 일 수도 있으나, 이에 반드시 한정되지는 않는다.
블록체인(40)에는 사용자정보 및 사용자 인증 프로그램이 저장되고 실행된다. 블록체인(40)은 단순한 저장 매개체로만 사용되지 않고, 다양한 프로그램을 올릴 수 있도록 프로그래밍이 가능한 다양한 형태의 블록체인이며, 그 대표적인 예가 이더리움이다. 프로그래밍이 가능한 블록체인(40)은 블록체인을 하나의 데이터베이스로 보고, 모든 자산을 올릴 수 있고 각 자산이 구동하거나 거래되는 방식까지 직접 프로그래밍할 수 있는 하나의 오픈플랫폼이다. 이더리움 상에서는 다양한 프로그램을 설계할 수 있으며 이들이 서로 작동하는 방식이나 조건 등까지 세심하게 조종할 수 있고, 또한, 프로그램을 함부로 조작할 수 없기 때문에 무결성이 보장된다.
따라서, 이러한 프로그래밍이 가능한 블록체인(40)을 사용하면, 안전한 사용자 인증은 물론 사용자정보와 인증 프로그램의 무결성까지도 보장할 수 있으므로 사용자 인증에 수반되는 많은 보안 이슈들을 해결할 수 있다.
관리서버(30)는 사용자 단말(10) 및 서비스제공자서버(20)와 블록체인(40) 사이에서 중계역할을 할 수 있다.
사용자 단말(10) 및 서비스제공자서버(20)가 관리서버(30)를 통해 블록체인에 접근하도록 함으로써 여러 서비스제공자 서버들이 개별적으로 직접 블록체인의 트랜잭션을 발생시키지 않고도 사용자정보 확인이 가능한 효과가 있다. 즉, 여러 서비스제공자 서버들이 블록체인에 접근하는 로직을 직접 구비할 필요가 없다.
블록체인(40)은 대규모의 노드들과 각 노드에 분산 저장된 독립적이고 개방된 공통 장부로 구성되어 있고, 또한, 인증을 위해 50%를 초과하는 작업증명(proof-of-work) 또는 소유증명(proof-of-take)이 필요하다. 따라서, 안전성이 높다는 장점에 비해 P2P서비스라서 상대적으로 거래속도가 느리고, 업그레이드도 느리고, 제어가 복잡하다는 단점이 있다.
따라서, 관리서버(30)를 통해 블록체인에 접근하도록 하면 느린 거래속도를 개선할 수 있고, 복잡한 제어를 서비스제공자 서버(20)가 모두 감당할 필요가 없어지게 된다.
또한, 사용자 인증 프로그램을 블록체인(40)에 올리면, 관리서버(30)조차도 블록체인(40)에 올려져 있는 사용자 인증 프로그램을 함부로 조작할 수 없다. 따라서, 관리서버(30)가 해킹되더라도 블록체인(40)에 저장되어 있는 사용자정보와 프로그램은 안전하다.
또한, 관리서버(30)를 사용함으로써 한 개의 ID로 다수의 서비스제공자 서버에 로그인하거나, 사용자정보를 제공하거나, 사용자정보 인증이 가능해진다. 따라서, 사용자정보가 여러 기관서버에 분산되어 있지 않으므로 사용자정보 제공에 대한 이력관리가 수월하고, 사용자정보 변경시나 서비스제공자의 서비스 가입시마다 아이디와 비밀번호를 모두 기억하고, 일일이 사용자정보를 재입력해야 하는 불편이 없어지는 효과가 있다.
도 2는 본 발명의 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 사용자 및 제1암호문 등록에 대한 구체적인 일례를 나타내는 순서도(S50)이다.
도 2를 참조하면, 블록체인(40)이 사용자등록을 수행하고, 제1암호문(암호화된 사용자정보)을 등록(또는 저장)하는 순서도가 도시되어 있다.
S52 단계에서, 블록체인(40)은 관리서버 공개키를 등록(또는 저장)할 수 있다. 이 등록 절차는 최초 한 번만 수행할 수 있다. 블록체인은(40)은 관리서버(30)와 정보를 주고 받을 때, 관리서버 공개키로 서명 검증을 함으로써 정보를 주고 받는 객체가 관리서버(30)임을 증명하기 위해 관리서버 공개키를 등록한다.
S54 단계에서는, 사용자 등록을 위해 사용자 ID, 사용자 공개키 및 관리서버서명문을 수신할 수 있다. 사용자등록시에 제1암호문을 함께 저장할 수도 있고, 사용자등록 후에 제1암호문을 저장할 수도 있다. 순서도에는 사용자등록시에 제1암호문을 함께 저장하는 것으로 도시되어 있지만, 이에 반드시 한정되지는 않는다.
제1암호문은 사용자 단말(10)이 사용자정보를 암호화하여 관리서버(30)로 송신한 것이다. 바람직하게는 사용자 단말(10)이 사용자정보를 사용자 공개키로 암호화한 것일 수 있다.
사용자정보는 공인인증기관을 통해 신원이 확인된 사용자정보를 암호화하여 블록체인에 보관하는 것이 바람직한데, 그 이유는 사용자 인증시마다 매번 사용자의 신원 확인을 할 필요가 없어지기 때문이다.
관리서버서명문은 관리서버(30)가 제1암호문을 관리서버 개인키로 서명하여 생성된 것일 수 있다.
S56 단계에서는, 수신한 관리서버서명문을 관리서버 공개키로 서명 검증할 수 있다. 서명이 검증되면, 관리서버(30)가 보낸 서명문이라는 것이 증명된다.
S56 단계에서 서명 검증이 성공하면, 사용자 ID, 사용자 공개키를 매핑하여 등록 저장하여 사용자등록을 완료할 수 있다. 만약 사용자등록시 제1암호문이 함께 수신되었다면 사용자 ID에 매핑하여 등록 저장할 수 있다(S58).
프로그램의 일 실시예로서, S56 및 S58 단계는 다음과 같이 이더리움에서 사용하는 solidity 코드로 구현할 수 있다.
# 사용자를 등록 처리하는 블록체인 코드
# 관리서버 공개키(Server_PublicKey)로 서명(Signature) 검증을 한 후에 맞는 경우에만 사용자 공개키(PublicKey)와 제1암호문(EncData) 등록
function AddUser(byte32[] ID, byte32[] PublicKey, byte32[] EncData, byte32[] Signature)
{
if(RSA_Verify(Server_PublicKey, Signature, EncData)==Success)
{
User[ID].pub= PublicKey
User[ID].enc1=EncData
}
}
이상과 같이, 프로그래밍이 가능한 블록체인(40)에 사용자등록을 하고, 서명 검증 절차를 프로그램으로 올림으로써, 사용자 ID 및 제1암호문의 안전한 보관은 물론 서명 검증 프로그램의 무결성까지도 보장할 수 있다.
도 3은 본 발명의 다른 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 사용자 및 제1암호문 등록에 대한 구체적인 일례를 나타내는 순서도(S60)이다.
도 3을 참조하면, 도 1의 시스템이 사용자 및 제1암호문을 등록하는 구체적인 실시예가 도시되어 있다.
사용자 단말(10)은 사용자 키쌍(개인키 및 공개키)을 생성할 수 있다(S62).
생성된 키쌍 중에서 사용자 개인키는 안전 영역(trust zone 등)에 저장될 수 있다(S64). 사용자 단말(10)이 FIDO 인증장치를 구비하고 있다면, 생체인증 등의 인증을 통해 키쌍 생성 및 개인키 저장을 할 수 있다.
사용자 단말(10)은 사용자의 개인정보를 공인인증기관을 통해 본인 확인 또는 신원 확인을 받을 수 있다(S66).
사용자 단말(10)은 사용자정보를 포함한 원문을 사용자 공개키로 암호화하여 제1암호문을 생성할 수 있다(S68). 사용자정보는 사용자의 개인정보(주민번호 등) 외에도 다양한 형태의 문서 등을 더 포함할 수 있다.
제1암호문의 등록은 사용자 등록시에 하지 않고, 별도로 수행할 수도 있다. 본 실시예에서는 동시에 수행하는 것으로 설명하지만, 이에 반드시 한정되지는 않는다.
사용자 단말(10)은 관리서버(30)에 사용자정보등록 요청을 할 수 있다(S70). 이때 사용자 ID, 사용자 공개키, 제1암호문을 함께 전송할 수 있다.
사용자정보등록 요청을 수신한 관리서버(30)는 제1암호문을 관리서버 개인키로 서명하여 관리서버서명문을 생성할 수 있다(S72).
관리서버서명문을 생성한 관리서버(30)는 블록체인(40)에 사용자정보등록 요청을 할 수 있다(S74). 이때 사용자 ID, 사용자 공개키, 제1암호문, 관리서버서명문을 함께 전송할 수 있다.
사용자정보등록 요청을 수신한 블록체인(40)은 관리서버서명문을 미리 저장되어 있던 관리서버 공개키로 서명 검증을 할 수 있다(S76).
서명 검증에 성공하면, 사용자정보등록 요청이 미리 지정된 관리서버(30)로부터 수신된 것이라는 것이 증명된 것이다.
서명 검증에 성공하면, 블록체인(40)은 수신한 사용자 ID, 사용자 공개키, 제1암호문을 매핑하여 저장할 수 있다(S78).
S80 단계에서, 블록체인(40)은 사용자정보등록이 성공적으로 수행되었다는 결과를 관리서버(30)에 송신할 수 있다.
사용자정보등록 결과를 수신한 관리서버(30)는 그 결과를 사용자 단말(10)에 송신할 수 있다(S82).
이상과 같은 실시예에 의해 블록체인(40)은 관리서버(30)를 통해 복수의 사용자를 등록할 수 있다.
도 4는 본 발명의 또 다른 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 제2암호문 등록에 대한 구체적인 일례를 나타내는 순서도(S90)이다.
도 4를 참조하면, 블록체인(40)이 제2암호문을 등록하는 절차를 나타내는 순서도가 도시되어 있다. 본 실시예는 사용자 단말(10)의 분실 또는 도난 등의 유사시에 대비하여 사용자정보를 백업으로 보관하도록 하여 사용자정보의 재입력 없이 새로운 사용자 단말(50)로 블록체인(40) 및 서비스제공자 서버(20)에 재등록이 가능하도록 하는 사용자정보 관리 방법이다.
백업으로 보관되는 제2암호문은 제1암호문과 다른 방법으로 암호화되는 것이 바람직한데, 그 이유는 사용자 단말(10)이 분실되더라도 관리서버(30) 및 블록체인(40)에 접근할 수 있고, 저장되어 있던 제2암호문을 복호화할 수 있어야하기 때문이다.
S92 단계에서, 블록체인(40)은 관리서버(30)로부터 사용자 ID, 제2암호문, 사용자서명문, 관리서버서명문을 수신할 수 있다. 사용자서명문은 사용자 단말(10)이 사용자정보를 암호화한 후 사용자 개인키로 서명한 것이고, 제2암호문은 암호화된 사용자정보를 관리서버 공개키로 암호화한 것이고, 관리서버서명문은 제2암호문을 관리서버 개인키로 서명한 것일 수 있다.
S94 단계에서, 관리서버서명문을 관리서버 공개키로 서명 검증하여, 수신한 관리서버서명문이 관리서버(30)로부터 수신된 것임을 증명할 수 있다.
S96 단계에서, 사용자서명문을 사용자 공개키로 서명 검증하여, 수신한 사용자서명문이 사용자 ID로 등록되어 있는 사용자의 단말(10)로부터 수신된 것임을 증명할 수 있다.
S98 단계에서는, S94 및 S96 단계의 검증이 성공하면, 수신한 제2암호문을 사용자 ID에 매핑 등록할 수 있다.
도 5는 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 제2암호문 등록에 대한 구체적인 일례를 나타내는 순서도(S100)이다.
도 5를 참조하면, 도 1의 시스템이 제2암호문을 등록하는 절차를 나타내는 순서도가 도시되어 있다. 도 4의 S90에서 언급하였듯이, 백업으로 보관되는 제2암호문은 제1암호문과 다른 방법으로 암호화되는 것이 바람직하므로, 본 실시예에서는 패스워드 기반으로 암호화된 제2암호문을 블록체인(40)에 저장하는 것을 설명한다.
S102 단계에서, 사용자 단말(10)은 사용자정보를 포함한 원문을 패스워드 기반으로 암호화하여 백업암호문을 생성할 수 있다. 패스워드를 사용하는 이유는, 분실 또는 도난 등으로 사용자 단말(10)을 사용할 수 없게 되면, 사용자 개인키를 사용할 수 없으므로 대신 패스워드를 사용하여 복호화를 하기 위함이다.
사용자 단말(10)은 생성된 백업암호문을 사용자 개인키로 서명하여 사용자서명문을 생성할 수 있다(S104).
사용자 단말(10)은 생성된 사용자서명문을 사용자 ID, 백업암호문과 함께 관리서버(30)로 송신하면서 백업용 사용자정보 등록 요청을 할 수 있다(S106).
백업용 사용자정보 등록 요청을 수신한 관리서버(30)는 백업암호문을 관리서버 공개키로 암호화하여 제2암호문을 생성할 수 있다(S108). 백업암호문을 관리서버 공개키로 추가 암호화하는 이유는, 백업암호문이 패스워드 기반으로 암호화되어 있어서 보안에 취약할 수 있기 때문이다. 물론, 패스워드 기반으로 암호화된 백업암호문을 추가로 암호화하지 않고 제2암호문으로 사용할 수도 있다.
관리서버(30)는 생성된 제2암호문을 관리서버 개인키로 서명하여 관리서버서명문을 생성할 수 있다(S110).
관리서버서명문을 생성한 관리서버(30)는 사용자ID, 제2암호문, 관리서버서명문, 사용자서명문을 블록체인(40)으로 송신하면서 백업용 사용자정보 등록 요청을 할 수 있다(S112).
블록체인(40)은 수신한 관리서버서명문을 관리서버 공개키로 서명 검증하여, 수신한 관리서버서명문이 관리서버(30)로부터 수신된 것임을 증명할 수 있다(S114).
또한, 블록체인(40)은 사용자서명문을 사용자 공개키로 서명 검증하여, 수신한 사용자서명문이 사용자 ID로 등록되어 있는 사용자의 단말(10)로부터 수신된 것임을 증명할 수 있다(S116).
S114 및 S116 단계의 검증이 성공하면, 블록체인(40)은 수신한 제2암호문을 사용자 ID에 매핑 등록할 수 있다(S118).
이상과 같이, 두 단계의 서명 검증을 거쳐 제2암호문을 등록한 블록체인(40)은 백업용 사용자정보 등록 결과를 관리서버(30)에 송신하고(S120), 관리서버(30)는 그 결과를 사용자 단말(10)로 송신하면, 제2암호문의 등록이 완료된다.
도 6은 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 사용자 및 제1,2암호문 등록에 대한 구체적인 일례를 나타내는 순서도(S200)이다.
도 6을 참조하면, 도 1의 시스템이 사용자 등록 및 제1,2암호문 등록을 동시에 수행하는 실시예이다.
사용자 단말(10)은 사용자 키쌍을 생성하고(S202), 생성된 키쌍 중에서 사용자 개인키는 안전 영역(trust zone 등)에 저장될 수 있다(S204).
사용자 단말(10)은 사용자의 개인정보를 공인인증기관을 통해 본인 확인 또는 신원 확인을 받을 수 있다(S206).
사용자 단말(10)은 사용자정보를 포함한 원문을 사용자 공개키로 암호화하여 제1암호문을 생성할 수 있다(S208).
또한, 사용자 단말(10)은 사용자정보를 포함한 원문을 패스워드 기반으로 암호화하여 백업암호문을 생성할 수 있다(S210).
사용자 단말(10)은 관리서버(30)에 사용자정보등록 요청을 할 수 있다(S212). 이때 사용자 ID, 사용자 공개키, 제1암호문, 백업암호문을 함께 전송할 수 있다.
사용자정보등록 요청을 수신한 관리서버(30)는 수신한 백업암호문을 관리서버 공개키로 암호화하여 제2암호문을 생성할 수 있다(S214). 이때 백업암호문을 추가로 암호화하지 않고 그대로 제2암호문으로 사용할 수도 있다.
관리서버(30)는 제1암호문과 제2암호문을 관리서버 개인키로 서명하여 관리서버서명문을 생성할 수 있다(S216).
관리서버서명문을 생성한 관리서버(30)는 블록체인(40)에 사용자정보등록 요청을 할 수 있다(S218). 이때 사용자 ID, 사용자 공개키, 제1암호문, 제2암호문, 관리서버서명문을 함께 전송할 수 있다.
사용자정보등록 요청을 수신한 블록체인(40)은 관리서버서명문을 미리 저장되어 있던 관리서버 공개키로 서명 검증을 할 수 있다(S220). 서명 검증에 성공하면, 사용자정보등록 요청이 관리서버(30)로부터 수신된 것이라는 것이 증명된 것이다.
서명 검증에 성공하면, 블록체인(40)은 수신한 사용자 ID, 사용자 공개키, 제1암호문, 제2암호문을 매핑하여 저장할 수 있다(S222).
S224 단계에서, 블록체인(40)은 사용자정보등록이 성공적으로 수행되었다는 결과를 관리서버(30)에 송신할 수 있다.
사용자정보등록 결과를 수신한 관리서버(30)는 그 결과를 사용자 단말(10)에 송신할 수 있다(S226).
이상과 같이, 사용자 등록시에 제1암호문과 제2암호문을 등록 저장할 수도 있지만, 제1,2암호문을 각각 별도로 등록 저장할 수도 있다.
도 7은 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 개인정보 제공에 대한 구체적인 일례를 나타내는 순서도(S300)이다.
도 7을 참조하면, 도 1에 도시된 시스템에서 개인정보를 제공하는 방법이 도시되어 있다.
사용자 단말(10)이 서비스제공자 서버(20)로부터 개인정보 요청을 수신하면(S302), 저장된 개인정보를 관리서버(30)에 요청할 수 있다(S304).
개인정보 요청을 받은 관리서버(30)는 블록체인(40)에 사용자의 제1암호문을 요청할 수 있다(S306). 이 때 사용자 ID를 함께 송신할 수 있다.
제1암호문을 요청 받은 블록체인(40)은 수신한 사용자 ID에 매핑되어 저장되어 있던 제1암호문을 관리서버(30)로 송신할 수 있다(S308).
관리서버(30)는 수신한 제1암호문을 사용자 단말(10)로 송신할 수 있다(S310).
사용자 단말(10)은 수신한 제1암호문을 사용자 개인키로 복호화하여 사용자정보를 획득할 수 있다(S312). 사용자 단말(10)이 FIDO 인증장치를 구비하고 있다면, FIDO 인증을 거쳐 사용자 개인키를 획득하여 사용할 수 있다.
사용자 단말(10)은 획득한 사용자정보를 서비스제공자 서버(20)에 송신할 수 있다(S314). 만약, 서비스제공자 서버(20)가 요구한 개인정보가 사용자정보에 포함되어 있는 일부 정보라면, 획득한 사용자정보 중에서 서비스제공자 서버(20)가 요구하는 정보만을 선택하여 서비스제공자 서버(20)로 송신할 수도 있다.
이상과 같이, 한 개의 아이디로 다수의 기관서버에 사용자정보를 제공할 수 있고, 사용자정보가 여러 기관서버에 분산되어 있지 않으므로 사용자정보 제공에 대한 이력관리가 수월하고, 주소, 단말 정보, 서버 정보, 전화번호 등의 개인정보 변경시나 서비스제공자의 서비스 가입시마다 아이디와 비밀번호를 모두 기억하고, 일일이 사용자정보를 재입력해야 하는 불편이 없어지는 효과가 있다.
도 8은 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 사용자정보 제공에 대한 구체적인 일례를 나타내는 순서도이다.
도 8을 참조하면, 블록체인(40)이 제1암호문 요청을 받은 경우, 암호문 송신을 실행하기 전에 사용자 인증을 수행하는 실시예이다. 제1암호문은 사용자 공개키로 암호화되어 있어서 사용자 개인키를 가지고 있지 않으면 복호화할 수가 없으므로 제3자에게 유출이 되어도 복호화가 어렵지만, 이 제1암호문이 제3자에게 전송되는 것 조차도 방지하기 위해, 사용자 개인키를 가지고 있는 사용자 단말(10)이 실제로 요청했는지를 검증한 후 전송하는 실시예이다.
S352 단계에서, 블록체인(40)은 제1암호문을 요청 받을 수 있다. 이때, 원문, 사용자서명문 및 사용자 ID를 함께 수신할 수 있다.
수신한 원문은 서비스제공자 서버(20)가 송신한 사용자인증요청 원문이고, 수신한 사용자서명문은 사용자 단말(10)이 사용자인증요청 원문을 사용자 개인키로 서명한 것일 수 있다.
S354 단계에서는, 수신한 사용자서명문을 사용자 공개키로 서명 검증하여 원문을 추출할 수 있다. 서명 검증이 성공하면, 사용자 단말(10)이 보낸 서명문이라는 것이 증명된다.
S356 단계에서는, 추출한 원문과 수신한 원문이 동일한지 비교할 수 있다.
S356 단계의 비교 결과 동일하면 사용자 인증에 성공한 것이다. 즉, 서비스제공자 서버(20)가 송신한 사용자인증요청 원문을 사용자 단말(10)이 사용자 개인키로 서명하였다는 것이 증명된 것이다.
서명 검증에 성공하면, 사용자 ID에 매핑 등록되어 있던 제1암호문을 송신할 수 있다(S358).
이상과 같이, 블록체인(40)에서 사용자 인증 절차를 거쳐 제1암호문을 송신함으로써 제1암호문이 사용자 단말(10)이 아닌 제3자에게 송신되는 것을 방지할 수 있다.
도 9는 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 개인정보 제공에 대한 구체적인 일례를 나타내는 순서도(S400)이다.
도 9를 참조하면, 도 7과 비교하여, 개인정보 제공을 위해 블록체인(40)에 저장되어 있던 사용자정보를 요청할 때, 실제로 사용자 단말(10)이 요청한 것인지를 인증하는 사용자 인증 절차(도 8의 S350)가 추가된 실시예이다. 즉, 도 7의 사용자정보 제공 방법(S300) 보다 더 보안성을 강화한 실시예이다.
사용자 단말(10)이 서비스제공자 서버(20)로부터 개인정보 요청을 수신하면(S402), 저장된 개인정보를 관리서버(30)에 요청할 수 있다(S408). 이 때 사용자 ID를 함께 송신할 수 있다.
또한, 서비스제공자 서버(20)는 사용자인증요청 원문(또는 로그인 원문)을 생성하여(S404), 관리서버(30)에 사용자인증 요청을 할 수 있다(S406). 이때 사용자인증요청 원문과 사용자 ID를 함께 송신할 수 있다.
사용자인증 요청 및 사용자정보 요청을 받은 관리서버(30)는 수신한 사용자인증요청 원문을 사용자 단말(10)로 송신할 수 있다(S410).
사용자 단말(10)은 수신한 사용자인증요청 원문을 사용자 개인키로 서명하여 사용자서명문을 생성할 수 있다(S412). 이때 사용자 단말(10)이 FIDO 인증장치를 구비하고 있다면, 생체인증으로 사용자 개인키를 획득하여 사용할 수 있다.
사용자 단말(10)은 생성한 사용자서명문을 관리서버(S30)로 송신할 수 있다(S414).
사용자서명문을 수신한 관리서버(30)는, S406 단계에서 수신한 사용자인증요청 원문을 사용자서명문과 함께 블록체인(40)으로 송신하면서 사용자인증 요청과 제1암호문 요청을 동시에 송신할 수 있다(S416). 이때 사용자 ID도 함께 송신할 수 있다.
사용자인증 요청과 제1암호문 요청을 수신한 블록체인(40)은 수신한 사용자서명문을 등록되어 있던 사용자 공개키로 서명 검증하여 원문을 추출할 수 있다(S418).
이때, 서명 검증에 성공하면, 수신한 사용자서명문이 실제로 사용자가 서명한 것이라는 것이 증명된 것이다.
블록체인(40)은 추출한 원문을 수신한 원문과 동일한지 비교 검증할 수 있다(S420).
이때 검증 결과가 동일하다면, 서비스제공자 서버(20)가 요청한 사용자인증요청이 성공한 것이다.
사용자 인증이 성공하였으므로, 블록체인(40)은 사용자 ID에 매핑되어 저장되어 있던 제1암호문을 관리서버(30)로 송신할 수 있다(S422).
관리서버(30)는 수신한 제1암호문을 사용자 단말(10)로 송신할 수 있다(S424).
사용자 단말(10)은 수신한 제1암호문을 사용자 개인키로 복호화하여 사용자정보를 획득할 수 있다(S426). 사용자 단말(10)이 FIDO 인증장치를 구비하고 있다면, FIDO 인증을 거쳐 사용자 개인키를 획득하여 사용할 수 있다.
사용자 단말(10)은 획득한 사용자정보를 서비스제공자 서버(20)에 송신할 수 있다(S428). 만약, 서비스제공자 서버(20)가 요구한 개인정보가 사용자정보에 포함되어 있는 일부 정보라면, 획득한 사용자정보 중에서 서비스제공자 서버(20)가 요구하는 정보만을 선택하여 서비스제공자 서버(20)로 송신할 수도 있다.
이상과 같이, 사용자 인증 과정을 거쳐 제1암호문을 송수신함으로써 보다 더 보안이 강화된 사용자정보 관리를 할 수 있다.
도 10은 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 사용자인증 및 사용자정보 제공에 대한 구체적인 일례를 나타내는 순서도이다.
도 10을 참조하면, 서비스제공자 서버(20)가 사용자 단말(10)로부터 사용자인증 요청을 받으면서 함께 수신한 사용자의 특정정보(개인정보의 일부)가 과연 실제 사용자의 정보가 맞는지 본인확인를 할 필요가 있을 때의 실시예이다.
사용자 단말(10)이 서비스제공자 서버(20)의 요구에 의해 사용자의 특정정보 입력을 요청받았을 경우, 사용자로부터 사용자의 특정정보를 수신한다(S502). 이때 사용자의 특정정보는 사용자가 블록체인(40)에 저장해 놓은 사용자정보(개인정보, 문서 등)에 포함되는 일부 정보일 수 있다.
사용자로부터 특정정보를 재수신한 사용자 단말(10)은 서비스제공자 서버(20)에 특정정보를 송신할 수 있다(S504).
서비스제공자 서버(20)는 사용자인증요청 원문을 생성하여(S506), 관리서버(30)에 사용자인증 요청과 특정정보의 인증을 동시에 요청할 수 있다(S508). 이때 사용자인증요청 원문, 특정정보 및 사용자 ID를 함께 송신할 수 있다.
사용자인증 요청 및 사용자정보 요청을 받은 관리서버(30)는 수신한 사용자인증요청 원문을 사용자 단말(10)로 송신할 수 있다(S510).
사용자 단말(10)은 수신한 사용자인증요청 원문을 사용자 개인키로 서명하여 사용자서명문을 생성할 수 있다(S512). 이때 사용자 단말(10)이 FIDO 인증장치를 구비하고 있다면, 생체인증으로 사용자 개인키를 획득하여 사용할 수 있다.
사용자 단말(10)은 생성한 사용자서명문을 관리서버(S30)로 송신할 수 있다(S514).
사용자서명문을 수신한 관리서버(30)는 S508 단계에서 수신한 사용자인증요청 원문과 사용자 ID를 함께 블록체인(40)으로 송신하면서 사용자인증 요청과 제1암호문 요청을 동시에 송신할 수 있다(S516).
사용자인증 요청과 제1암호문 요청을 수신한 블록체인(40)은 수신한 사용자서명문을 등록되어 있던 사용자 공개키로 서명 검증하여 원문을 추출할 수 있다(S518).
이때, 서명 검증에 성공하면, 수신한 사용자서명문이 실제로 사용자가 서명한 것이라는 것이 증명된 것이다.
블록체인(40)은 추출한 원문을 수신한 원문과 동일한지 비교 검증할 수 있다(S520).
이때 검증 결과가 동일하다면, 서비스제공자 서버(20)가 요청한 사용자인증요청이 성공한 것이다.
사용자인증이 성공하였으므로, 블록체인(40)은 사용자 ID에 매핑 등록되어 있던 제1암호문을 관리서버(30)로 송신할 수 있다(S522).
관리서버(30)는 수신한 제1암호문을 사용자 단말(10)로 송신할 수 있다(S524).
사용자 단말(10)은 수신한 제1암호문을 사용자 개인키로 복호화하여 사용자정보를 획득할 수 있다(S526). 사용자 단말(10)이 FIDO 인증장치를 구비하고 있다면, FIDO 인증을 거쳐 사용자 개인키를 획득하여 사용할 수 있다.
사용자 단말(10)은 획득한 사용자정보 중에서 서비스제공자 서버(20)가 요구하는 정보, 즉 특정정보만을 선택하여 사용자 개인키로 서명하여 사용자서명문을 생성할 수 있다(S528).
사용자 단말(10)은 생성한 사용자서명문을 관리서버(S30)로 송신할 수 있다(S530).
사용자서명문을 수신한 관리서버(30)는, S508 단계에서 수신한 특정정보를 해시하여 사용자서명문과 함께 블록체인(40)으로 송신하면서 특정정보의 인증을 요청할 수 있다(S532). 이때 사용자 ID도 함께 송신할 수 있다.
즉, S508 단계에서 서비스제공자 서버(20)로부터 수신한 특정정보와, 사용자 단말(10)이 기 저장되어 있던 제1암호문을 복호화하여 획득한 사용자정보 중에서 서비스제공자 서버(20)가 요구하는 정보만을 선택하여 사용자 개인키로 서명한 것이 과연 동일한지를 판단하는 인증을 블록체인(40)에 요청하는 것이다.
특정정보 인증 요청을 수신한 블록체인(40)은 수신한 사용자서명문을 등록되어 있던 사용자 공개키로 서명 검증하여 원문을 추출할 수 있다(S534).
이때, 서명 검증에 성공하면, 수신한 사용자서명문이 실제로 사용자가 서명한 것이라는 것이 증명된 것이다.
블록체인(40)은 추출한 원문을 수신한 원문(해시된 특정정보)과 동일한지 비교 검증할 수 있다(S536).
이때 검증 결과가 동일하다면, 서비스제공자 서버(20)가 요청한 특정정보가 실제로 사용자의 정보인 것이 증명된 것이다.
블록체인(40)은 사용자 인증 결과를 관리서버(30)로 전송하고(S538), 관리서버(30)는 그 결과를 서비스제공자 서버(20)에 송신하고(S540), 서비스제공자 서버(20)는 사용자인증이 성공하였음을 사용자 단말(10)에 송신함으로써(S542) 안전한 사용자 인증 및 특정정보 확인이 완료된다.
도 11은 본 발명의 또 다른 바람직한 일 실시예에 따른, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법의 제2암호문 제공에 대한 구체적인 일례를 나타내는 순서도(S600)이다.
도 11을 참조하면, 사용자 단말(10)이 분실 또는 도난 등으로 사용이 불가할 때, 복구 요청을 위해 기존에 사용하던 사용자 개인키를 사용할 수 없으므로, 블록체인에 등록되어 있는 제2암호문을 사용하는 실시예이다. 상술한바와 같이, 제2암호문은 제1암호문과는 다른 방법으로 암호화되는 것이 바람직하며, 상술한 실시예에서는 패스워드 기반으로 암호화를 하였으나, 이에 반드시 한정되지는 않는다.
새로운 사용자 단말(50)이 관리서버에 복구 요청을 하면(S602), 관리서버(30)는 복구 URL을 새로운 사용자 단말(50)에 전달할 수 있다.
그러며, 새로운 사용자 단말(50)은 관리서버(30)에 사용자정보의 복호화를 요청할 수 있다(S606).
사용자정보의 복호화 요청을 수신한 관리서버(30)는 블록체인(40)에 사용자 ID를 송신하면서 제2암호문을 요청할 수 있다(S608).
제2암호문 요청을 수신한 블록체인(40)은 수신한 사용자 ID에 매핑 등록되어 있던 제2암호문을 관리서버(30)에 송신할 수 있다.
제2암호문을 수신한 관리서버(30)는 관리서버 개인키로 제2암호문을 복호화하여 백업암호문을 추출할 수 있다(S612). 도 5의 S108 또는 도 6의 S214 참조하면, 제2암호문은 백업암호문을 관리서버 공개키로 암호화하였다.
관리서버(S30)는 추출한 백업암호문을 새로운 사용자 단말(50)로 송신할 수 있다(S614).
새로운 사용자 단말(50)은 백업암호문을 패스워드 기반으로 복호화하여 사용자정보를 획득할 수 있다(S616).
새로운 사용자 단말(50)은 복호화된 사용자정보를 통해 사용자의 사용자정보 재입력 없이 새로운 사용자 단말(50)로 블록체인(40) 또는 서비스제공자 서버(20)에 재등록을 수행할 수 있다(S618).
이상과 같이, 본 실시예들에 의하면, 프로그래밍이 가능한 블록체인에 신원이 확인된 사용자정보를 암호화하여 보관하고, 사용자정보의 등록 및 요청시 사용자 인증 프로그램을 수행하게 하고, 관리서버를 통해 블록체인에 접근하도록 함으로써, 사용자정보를 보다 안전하게 보관할 수 있고 사용자 인증 프로그램의 무결성을 보장할 수 있고, 여러 기관서버들이 개별적으로 블록체인의 트랜잭션을 발생시키지 않고도 개인정보 확인이 가능하고, 관리서버조차도 블록체인의 사용자 인증 프로그램을 함부로 조작할 수 없도록 할 수 있다.
또한, 사용자 단말의 분실 또는 도난 등의 유사시에 대비하여 사용자정보를 백업으로 보관하도록 하여 사용자정보의 재입력 없이 새로운 사용자 단말로 블록체인에 재등록이 가능하도록 할 수 있다.
또한, 이상에서 설명된 인증체인 기반 FIDO 및 인증서 등록을 수행하는 방법의 실시예는 다양한 컴퓨터 구성요소들을 통하여 수행될 수 있는 컴퓨터 프로그램 명령어의 형태로 구현될 수 있다. 또한, 상기 구현된 컴퓨터 프로그램은 컴퓨터 판독 가능한 기록 매체에 기록될 수도 있다. 언급된 기록 매체는 ROM, 자기 디스크 혹은 콤팩트 디스크, 광 디스크 등 일 수 있으나, 이에 반드시 한정되지는 않는다.
이상에서와 같이, 본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.
10: 사용자 단말
20: 서비스제공자 서버
30: 관리서버
40: 프로그래밍이 가능한 블록체인
50: 새로운 사용자 단말

Claims (21)

  1. 관리서버와 네트워크로 연결된 블록체인이,
    상기 관리서버로부터 사용자의 ID와 제1암호문 및 관리서버서명문을 수신하는 단계;
    상기 관리서버서명문을 관리서버 공개키로 서명 검증한 후, 상기 제1암호문을 상기 사용자의 ID에 매핑 등록하는 사용자정보등록 단계; 및
    상기 관리서버로부터 상기 제1암호문을 요청 받으면 상기 사용자의 ID에 매핑 등록되어 있는 상기 제1암호문을 상기 관리서버로 송신하는 사용자정보송신 단계;
    를 포함하되,
    상기 블록체인은 이더리움(Ethereum) 또는 프로그래밍이 가능한 블록체인이고,
    상기 관리서버는 사용자 단말과 네트워크로 연결되어 상기 블록체인과의 중간에서 중계 역할을 하고,
    상기 제1암호문은 상기 사용자 단말이 사용자정보를 암호화하여 상기 관리서버로 송신한 것이고,
    상기 관리서버서명문은 상기 제1암호문을 상기 관리서버의 개인키로 서명한 것이고,
    상기 사용자정보는 상기 사용자의 개인정보 또는 문서를 포함하는 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  2. 제 1항에 있어서,
    상기 관리서버로부터 상기 사용자의 제2암호문을 수신하여 상기 사용자의 ID에 매핑 등록하는 단계; 및
    상기 관리서버로부터 상기 제2암호문을 요청 받으면 상기 사용자의 ID에 매핑 등록되어 있는 상기 제2암호문을 상기 관리서버로 송신하는 단계;
    를 더 포함하되,
    상기 제2암호문은 상기 제1암호문과는 다른 방법으로 암호화된 것인 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  3. 제 2항에 있어서,
    상기 제2암호문은,
    상기 사용자 단말이 사용자정보를 패스워드 기반으로 암호화한 것이거나, 상기 패스워드 기반으로 암호화된 사용자정보를 상기 관리서버가 상기 관리서버의 공개키로 추가로 암호화한 것인 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  4. 제 1항에 있어서,
    상기 사용자정보등록 단계는 상기 사용자의 단말이 공인인증기관을 통해 본인인증을 수행한 후 등록하는 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  5. 제 1항에 있어서,
    상기 사용자의 공개키를 등록하는 단계;
    상기 관리서버로부터 사용자서명문과 원문을 수신하는 단계; 및
    상기 사용자서명문을 상기 사용자 공개키로 서명 검증한 후 상기 원문과 비교하는 사용자인증 단계;
    를 더 포함하되,
    상기 사용자서명문은 사용자 개인키로 서명된 것이고,
    상기 원문은 서비스제공자 서버가 상기 관리서버로 송신한 것이고,
    상기 서비스제공자 서버는 상기 관리서버와 네트워크로 연결되어 있는 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  6. 제 5항에 있어서,
    상기 원문은 상기 서비스제공자 서버가 송신한 사용자인증요청 원문이고,
    상기 사용자서명문은 상기 사용자 단말이 상기 사용자인증요청 원문을 상기 사용자 개인키로 서명한 것인 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  7. 제 5항에 있어서,
    상기 사용자정보송신 단계는, 상기 사용자인증 단계의 수행 결과 인증이 성공하면 수행하는 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  8. 제 5항에 있어서,
    상기 서비스제공자 서버가 상기 사용자 단말로부터 상기 사용자의 특정정보를 수신하여 상기 특정정보의 인증 요청을 하는 경우,
    상기 원문은 상기 서비스제공자 서버가 송신한 상기 특정정보를 포함한 원문이고,
    상기 사용자서명문은 상기 사용자 단말이 상기 블록체인에 저장되어 있던 제1암호문을 수신한 후 복호화하여 획득한 사용자정보 중에서 상기 서비스제공자 서버가 요구하는 정보만을 선택하여 상기 사용자 개인키로 서명한 것인 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  9. 사용자 단말 및 블록체인과 네트워크로 연결된 관리서버가,
    상기 사용자 단말로부터 사용자 ID 및 제1암호문을 수신하여 상기 블록체인에 매핑 등록하는 사용자정보등록 단계; 및
    상기 사용자 단말로부터 상기 제1암호문을 요청 받으면, 상기 블록체인으로부터 상기 사용자의 ID에 매핑 등록되어 있는 상기 제1암호문을 수신하여 상기 사용자 단말로 송신하는 사용자정보송신 단계;
    를 포함하되,
    상기 블록체인은 이더리움 또는 프로그래밍이 가능한 블록체인이고,
    상기 제1암호문은 상기 사용자 단말이 사용자정보를 사용자 공개키로 암호화한 것이고,
    상기 사용자정보는 상기 사용자의 개인정보 또는 문서를 포함하는 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  10. 제 9항에 있어서,
    상기 블록체인에 상기 사용자의 제2암호문을 매핑 등록하는 단계;
    를 더 포함하되,
    상기 제2암호문은 상기 제1암호문과는 다른 방법으로 암호화된 것인 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  11. 제 10항에 있어서,
    상기 제2암호문은,
    상기 사용자 단말이 상기 사용자정보를 패스워드 기반으로 암호화한 것이거나, 상기 패스워드 기반으로 암호화된 사용자정보를 상기 관리서버가 상기 관리서버의 공개키로 추가로 암호화한 것인 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  12. 제 10항에 있어서,
    새로운 사용자 단말로부터 복구 요청을 수신하는 단계; 및
    상기 복구 요청을 수신한 후 상기 블록체인에 등록되어 있는 상기 제2암호문을 수신하여 상기 새로운 사용자 단말로 송신하는 단계;
    를 더 포함하는 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  13. 제 9항에 있어서,
    상기 사용자정보등록 단계는 상기 사용자 단말이 공인인증기관을 통해 본인인증을 수행한 후 등록하는 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  14. 제 9항에 있어서,
    상기 사용자정보등록 단계는,
    상기 수신한 제1암호문을 상기 관리서버의 개인키로 서명하여 관리서버서명문을 생성하는 단계; 및
    상기 관리서버서명문을 상기 사용자 ID 및 제1암호문과 함께 블록체인서버로 송신하는 단계;
    를 포함하되,
    상기 관리서버서명문이 상기 블록체인에서 서명 검증에 성공하는 경우에 상기 제1암호문이 등록되는 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  15. 제 9항에 있어서,
    서비스제공자 서버로부터 원문을 수신하는 단계;
    상기 사용자 단말로부터 사용자서명문을 수신하는 단계;
    상기 수신한 사용자서명문과 원문을 상기 블록체인으로 송신하는 단계; 및
    상기 블록체인이 상기 사용자서명문을 상기 사용자 공개키로 서명 검증한 후 상기 원문과 비교한 인증결과를 수신하는 단계;
    를 더 포함하되,
    상기 서비스제공자 서버는 상기 관리서버와 네트워크로 연결되어 있고,
    상기 사용자서명문은 사용자 개인키로 서명된 것인 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  16. 제 15항에 있어서,
    상기 원문은 상기 서비스제공자 서버가 송신한 사용자인증요청 원문이고,
    상기 사용자서명문은 상기 관리서버가 상기 수신한 사용자인증요청 원문을 상기 사용자 단말로 송신하고, 상기 사용자 단말이 상기 수신한 사용자인증요청 원문을 상기 사용자 개인키로 서명한 것인 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  17. 제 15항에 있어서,
    상기 서비스제공자 서버가 상기 사용자 단말로부터 상기 사용자의 특정정보를 수신하여 상기 특정정보의 인증 요청을 하는 경우,
    상기 원문은 상기 서비스제공자 서버가 송신한 특정정보를 포함한 원문이고,
    상기 사용자서명문은 상기 사용자 단말이 상기 블록체인에 저장되어 있던 제1암호문을 수신한 후 복호화하여 획득한 사용자정보 중에서 상기 서비스제공자 서버가 요구하는 정보만을 선택하여 상기 사용자 개인키로 서명한 것인 것을 특징으로 하는, 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법.
  18. 청구항 제 1항 내지 청구항 제 17항 중의 어느 한 항에 따른 방법을 실행시키기 위한 컴퓨터로 판독가능한 기록매체에 저장된 컴퓨터 프로그램.
  19. 청구항 제 1항 내지 청구항 제 17항 중의 어느 한 항에 따른 방법을 실행시키기 위한 프로그램이 기록된, 컴퓨터에서 판독 가능한 기록매체.
  20. 관리서버와 네트워크로 연결된 블록체인으로서,
    청구항 제 1항 내지 청구항 제 8항 중의 어느 한 항에 따른 방법을 실행시키기 위한 프로그램에 의해 동작하는 것을 특징으로 하는, 블록체인.
  21. 서비스제공자 서버, 사용자 단말 및 블록체인과 네트워크로 연결된 관리서버로서,
    청구항 제 9항 내지 청구항 제 17항 중의 어느 한 항에 따른 방법을 실행시키기 위한 프로그램에 의해 동작하는 것을 특징으로 하는, 관리서버.
KR1020170064394A 2017-05-24 2017-05-24 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템 KR101974452B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170064394A KR101974452B1 (ko) 2017-05-24 2017-05-24 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170064394A KR101974452B1 (ko) 2017-05-24 2017-05-24 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20180129028A true KR20180129028A (ko) 2018-12-05
KR101974452B1 KR101974452B1 (ko) 2019-05-03

Family

ID=64744000

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170064394A KR101974452B1 (ko) 2017-05-24 2017-05-24 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101974452B1 (ko)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547218A (zh) * 2019-01-18 2019-03-29 北京工业大学 一种改进bip协议的联盟链节点秘钥分配及备份***
CN109784917A (zh) * 2018-12-13 2019-05-21 如般量子科技有限公司 基于对称密钥池的抗量子计算区块链保密交易***和方法
KR102012757B1 (ko) * 2019-04-05 2019-08-21 (주)이지팜 웹 세션 기반의 블록체인 연동 서비스 제공 시스템 및 그 방법
KR101985179B1 (ko) * 2017-12-26 2019-09-03 상명대학교 천안산학협력단 블록체인 기반의 ID as a Service
CN110263088A (zh) * 2019-05-20 2019-09-20 阿里巴巴集团控股有限公司 结合代码标注与事件类型的有条件的收据存储方法和节点
KR102053253B1 (ko) * 2019-04-23 2019-12-06 한화시스템(주) 전술환경에서 블록체인에 기반한 정보 관리 방법
CN110545190A (zh) * 2019-09-06 2019-12-06 腾讯科技(深圳)有限公司 一种签名处理的方法、相关装置以及设备
WO2020118262A1 (en) * 2018-12-06 2020-06-11 Pasig And Hudson, Pvt Limited Computer method and graphical user interface for identity management using blockchain
CN111460407A (zh) * 2020-03-31 2020-07-28 福建省建瓯市朝阳竹编帽业有限公司 一种基于区块链的安全帽管理平台
KR20200092190A (ko) * 2019-01-24 2020-08-03 주식회사 메디블록 블록체인 네트워크에서 정보를 검증하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체
CN111935315A (zh) * 2020-09-25 2020-11-13 支付宝(杭州)信息技术有限公司 区块同步方法及装置
WO2021066271A1 (ko) * 2019-10-02 2021-04-08 주식회사 디젠트아이디 본인 인증을 수행하는 이동 통신 단말기, 본인 인증 시스템, 및 이동 통신 단말기를 이용한 본인 인증 방법
KR20210039190A (ko) * 2019-10-01 2021-04-09 숭실대학교산학협력단 블록체인을 이용한 개인정보 관리 방법 및 그 방법이 적용된 블록체인 네트워크 관리자
KR20210051077A (ko) * 2019-10-29 2021-05-10 성균관대학교산학협력단 블록체인 기반 아이디 관리 방법 및 시스템
KR20210056111A (ko) * 2019-11-08 2021-05-18 두나무 주식회사 사용자 정보의 관리 방법 및 단말
CN113569209A (zh) * 2021-07-09 2021-10-29 远光软件股份有限公司 基于区块链的用户注册方法及装置
KR20210139052A (ko) * 2020-05-13 2021-11-22 한국전자통신연구원 블록체인 기반 id 관리 장치 및 방법
US11218402B2 (en) 2020-09-25 2022-01-04 Alipay (Hangzhou) Information Technology Co., Ltd. Blockchain systems, and message transmission methods and apparatuses
US11233849B2 (en) 2020-09-25 2022-01-25 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
US11336558B2 (en) 2020-09-25 2022-05-17 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
US11388229B2 (en) 2020-09-25 2022-07-12 Alipay (Hangzhou) Information Technology Co., Ltd. Methods and apparatuses for transmitting messages
KR20220108654A (ko) * 2021-01-27 2022-08-03 주식회사 다인리더스 블록체인 기반 외국인 유학생 디지털 이력관리 통합 서비스 제공 시스템
US11445016B2 (en) 2020-09-25 2022-09-13 Alipay (Hangzhou) Information Technology Co., Ltd. Methods and apparatuses for transmitting messages
US11463278B2 (en) 2020-09-25 2022-10-04 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
CN115150071A (zh) * 2022-06-20 2022-10-04 中国联合网络通信集团有限公司 身份认证方法、装置、设备及存储介质
US11722318B2 (en) 2020-09-25 2023-08-08 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
CN118075036A (zh) * 2024-04-25 2024-05-24 江西省外经贸融资担保有限公司 一种电子函证的认证方法、***及计算机可读存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102302351B1 (ko) 2020-09-01 2021-09-15 주식회사 소버린월렛 각각이 신원 원장과 디지털 통화 원장을 포함하는 뱅크 노드들을 포함하는 블록체인 시스템과 이의 작동 방법

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011188029A (ja) * 2010-03-04 2011-09-22 Fujitsu Ltd 電子署名装置、電子署名方法及びコンピュータプログラム
KR20120094218A (ko) * 2011-02-16 2012-08-24 루멘소프트 (주) 고유정보를 가진 휴대단말 내에서의 개인정보 저장 및 이용 방법
KR101329003B1 (ko) * 2010-09-09 2013-11-12 주식회사 케이티 전자처방전의 환자용, 약국용 전달 방법, 이를 수행하는 환자 클라이언트 장치 및 중계 장치
KR101590076B1 (ko) 2015-11-18 2016-02-01 주식회사 웨이브스트링 개인정보 관리 방법
KR101637863B1 (ko) * 2016-01-05 2016-07-08 주식회사 코인플러그 본인인증용 정보 보안 전송시스템 및 방법
KR20160085143A (ko) * 2015-01-07 2016-07-15 주식회사 케이티 익명 서비스 제공 방법 및 사용자 정보 관리 방법 및 이를 위한 시스템
US20160335533A1 (en) * 2015-05-15 2016-11-17 Joshua P. Davis System and Method for an Autonomous Entity

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011188029A (ja) * 2010-03-04 2011-09-22 Fujitsu Ltd 電子署名装置、電子署名方法及びコンピュータプログラム
KR101329003B1 (ko) * 2010-09-09 2013-11-12 주식회사 케이티 전자처방전의 환자용, 약국용 전달 방법, 이를 수행하는 환자 클라이언트 장치 및 중계 장치
KR20120094218A (ko) * 2011-02-16 2012-08-24 루멘소프트 (주) 고유정보를 가진 휴대단말 내에서의 개인정보 저장 및 이용 방법
KR20160085143A (ko) * 2015-01-07 2016-07-15 주식회사 케이티 익명 서비스 제공 방법 및 사용자 정보 관리 방법 및 이를 위한 시스템
US20160335533A1 (en) * 2015-05-15 2016-11-17 Joshua P. Davis System and Method for an Autonomous Entity
KR101590076B1 (ko) 2015-11-18 2016-02-01 주식회사 웨이브스트링 개인정보 관리 방법
KR101637863B1 (ko) * 2016-01-05 2016-07-08 주식회사 코인플러그 본인인증용 정보 보안 전송시스템 및 방법

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101985179B1 (ko) * 2017-12-26 2019-09-03 상명대학교 천안산학협력단 블록체인 기반의 ID as a Service
US11468176B2 (en) 2018-12-06 2022-10-11 Pasig And Hudson, Pvt Limited Computer method and graphical user interface for identity management using blockchain
WO2020118262A1 (en) * 2018-12-06 2020-06-11 Pasig And Hudson, Pvt Limited Computer method and graphical user interface for identity management using blockchain
CN109784917A (zh) * 2018-12-13 2019-05-21 如般量子科技有限公司 基于对称密钥池的抗量子计算区块链保密交易***和方法
CN109547218B (zh) * 2019-01-18 2021-10-15 北京工业大学 一种改进bip协议的联盟链节点秘钥分配及备份***
CN109547218A (zh) * 2019-01-18 2019-03-29 北京工业大学 一种改进bip协议的联盟链节点秘钥分配及备份***
KR20200092190A (ko) * 2019-01-24 2020-08-03 주식회사 메디블록 블록체인 네트워크에서 정보를 검증하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체
KR102012757B1 (ko) * 2019-04-05 2019-08-21 (주)이지팜 웹 세션 기반의 블록체인 연동 서비스 제공 시스템 및 그 방법
KR102053253B1 (ko) * 2019-04-23 2019-12-06 한화시스템(주) 전술환경에서 블록체인에 기반한 정보 관리 방법
CN110263088A (zh) * 2019-05-20 2019-09-20 阿里巴巴集团控股有限公司 结合代码标注与事件类型的有条件的收据存储方法和节点
CN110263088B (zh) * 2019-05-20 2021-04-02 创新先进技术有限公司 结合代码标注与事件类型的有条件的收据存储方法和节点
CN110545190A (zh) * 2019-09-06 2019-12-06 腾讯科技(深圳)有限公司 一种签名处理的方法、相关装置以及设备
KR20210039190A (ko) * 2019-10-01 2021-04-09 숭실대학교산학협력단 블록체인을 이용한 개인정보 관리 방법 및 그 방법이 적용된 블록체인 네트워크 관리자
WO2021066271A1 (ko) * 2019-10-02 2021-04-08 주식회사 디젠트아이디 본인 인증을 수행하는 이동 통신 단말기, 본인 인증 시스템, 및 이동 통신 단말기를 이용한 본인 인증 방법
KR20210051077A (ko) * 2019-10-29 2021-05-10 성균관대학교산학협력단 블록체인 기반 아이디 관리 방법 및 시스템
KR20210056111A (ko) * 2019-11-08 2021-05-18 두나무 주식회사 사용자 정보의 관리 방법 및 단말
CN111460407A (zh) * 2020-03-31 2020-07-28 福建省建瓯市朝阳竹编帽业有限公司 一种基于区块链的安全帽管理平台
KR20210139052A (ko) * 2020-05-13 2021-11-22 한국전자통신연구원 블록체인 기반 id 관리 장치 및 방법
US11445016B2 (en) 2020-09-25 2022-09-13 Alipay (Hangzhou) Information Technology Co., Ltd. Methods and apparatuses for transmitting messages
US11463278B2 (en) 2020-09-25 2022-10-04 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
US11233849B2 (en) 2020-09-25 2022-01-25 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
US11316921B2 (en) 2020-09-25 2022-04-26 Alipay (Hangzhou) Information Technology Co., Ltd. Block synchronization methods and apparatuses
US11336558B2 (en) 2020-09-25 2022-05-17 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
US11388229B2 (en) 2020-09-25 2022-07-12 Alipay (Hangzhou) Information Technology Co., Ltd. Methods and apparatuses for transmitting messages
US11218402B2 (en) 2020-09-25 2022-01-04 Alipay (Hangzhou) Information Technology Co., Ltd. Blockchain systems, and message transmission methods and apparatuses
US11924276B2 (en) 2020-09-25 2024-03-05 Alipay (Hangzhou) Information Technology Co., Ltd. Methods and apparatuses for transmitting messages
US11722318B2 (en) 2020-09-25 2023-08-08 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
CN111935315A (zh) * 2020-09-25 2020-11-13 支付宝(杭州)信息技术有限公司 区块同步方法及装置
KR20220108654A (ko) * 2021-01-27 2022-08-03 주식회사 다인리더스 블록체인 기반 외국인 유학생 디지털 이력관리 통합 서비스 제공 시스템
CN113569209A (zh) * 2021-07-09 2021-10-29 远光软件股份有限公司 基于区块链的用户注册方法及装置
CN113569209B (zh) * 2021-07-09 2024-06-11 远光软件股份有限公司 基于区块链的用户注册方法及装置
CN115150071A (zh) * 2022-06-20 2022-10-04 中国联合网络通信集团有限公司 身份认证方法、装置、设备及存储介质
CN118075036A (zh) * 2024-04-25 2024-05-24 江西省外经贸融资担保有限公司 一种电子函证的认证方法、***及计算机可读存储介质

Also Published As

Publication number Publication date
KR101974452B1 (ko) 2019-05-03

Similar Documents

Publication Publication Date Title
KR101974452B1 (ko) 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자정보 관리 방법 및 시스템
KR102016730B1 (ko) 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자 인증 방법 및 시스템
CN109862041B (zh) 一种数字身份认证方法、设备、装置、***及存储介质
CN109951489B (zh) 一种数字身份认证方法、设备、装置、***及存储介质
JP4866863B2 (ja) セキュリティコード生成方法及びユーザ装置
US10567370B2 (en) Certificate authority
KR102177848B1 (ko) 액세스 요청을 검증하기 위한 방법 및 시스템
JP4803145B2 (ja) 鍵共有方法、鍵配信システム
US8397281B2 (en) Service assisted secret provisioning
CN105103488A (zh) 借助相关联的数据的策略施行
CN103873487A (zh) 一种基于智能家居设备安全挂件的家居信任组网的实现方法
JP6667371B2 (ja) 通信システム、通信装置、通信方法、及びプログラム
ES2665887T3 (es) Sistema de datos seguro
US20140013116A1 (en) Apparatus and method for performing over-the-air identity provisioning
CN112311538A (zh) 一种身份验证的方法、装置、存储介质及设备
KR20190026558A (ko) 단말 장치, 서버 장치 및 블록체인을 이용한 fido 범용 인증 방법
JP2007206961A (ja) 認証システムおよび同システムにおける認証情報委譲方法ならびにセキュリティデバイス
KR20040050456A (ko) 이동통신 단말기간의 인증도구 중계 서비스 시스템 및 방법
JP6501701B2 (ja) システム、端末装置、制御方法、およびプログラム
KR101745482B1 (ko) 스마트홈 시스템에서의 통신 방법 및 그 장치
JP2004013560A (ja) 認証システム、通信端末及びサーバ
KR102053993B1 (ko) 인증서를 이용한 사용자 인증 방법
CN111541708B (zh) 一种基于电力配电的身份认证方法
WO2021019782A1 (ja) 所有者同一性確認システムおよび所有者同一性確認方法
JP5553914B1 (ja) 認証システム、認証装置、及び認証方法

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