KR20240138828A - 블록체인 기반 신원 인증 방법 및 신원 인증 시스템 - Google Patents
블록체인 기반 신원 인증 방법 및 신원 인증 시스템 Download PDFInfo
- Publication number
- KR20240138828A KR20240138828A KR1020230032582A KR20230032582A KR20240138828A KR 20240138828 A KR20240138828 A KR 20240138828A KR 1020230032582 A KR1020230032582 A KR 1020230032582A KR 20230032582 A KR20230032582 A KR 20230032582A KR 20240138828 A KR20240138828 A KR 20240138828A
- Authority
- KR
- South Korea
- Prior art keywords
- identity
- identity authentication
- user
- data
- mobile terminal
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012795 verification Methods 0.000 title claims abstract description 51
- 230000004044 response Effects 0.000 claims abstract description 16
- 238000012545 processing Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000010365 information processing Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Telephonic Communication Services (AREA)
Abstract
본 발명은 신원 인증 방법 및 시스템이 개시된다. 본 발명의 일 측면에 따르면, 발급 단계; 및 인증 단계를 포함하는 블록체인 기반 신원 인증 방법으로서, 상기 발급 단계는, 사용자의 휴대단말이, 신규 발급된 사용자의 탈중앙 ID 및 상기 사용자의 공개키를 포함하는 문서 데이터를 블록체인에 등록하고, 상기 공개키에 대응되는 상기 사용자의 개인키 및 상기 사용자의 탈중앙 ID를 상기 휴대단말에 저장하는 단계; 상기 휴대단말이, 상기 신원 인증용 서버로 신원증명 발급 요청을 제출하는 단계-여기서, 상기 신원증명 발급 요청은, 상기 사용자의 탈중앙 ID를 포함함; 상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계; 상기 신원 인증용 서버가, 상기 탈중앙 ID의 유효성이 검증되면, 상기 사용자의 개인정보를 획득하고, 상기 사용자의 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 발급하여 상기 휴대단말로 전송하는 단계-상기 신원증명 데이터는 상기 탈중앙 ID 및 상기 개인정보를 포함하며, 상기 신원증명 데이터의 전자서명은 상기 신원증명 데이터를 상기 신원 인증용 서버의 개인키로 서명한 데이터임; 및 상기 휴대단말이, 상기 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 상기 사용자 단말에 저장하는 단계를 포함하고, 상기 탈중앙 ID의 유효성을 검증하는 단계는, 상기 신원 인증용 서버가, 상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계; 및 상기 신원 인증용 서버가, 소정의 확인 대상 정보를 상기 휴대단말이 상기 사용자의 개인키로 암호화한 정보가 상기 문서 데이터에 포함되어 있는 공개키에 의해 올바로 복호화되는지 여부를 확인하는 단계를 포함하고, 상기 인증 단계는, 상기 휴대단말이, 상기 사용자의 신원표현 데이터 및 상기 신원표현 데이터의 전자서명을 생성하는 단계-여기서, 상기 신원표현 데이터는 상기 탈중앙 ID 및 상기 신원증명 데이터에 포함된 개인정보 중 적어도 일부를 포함하며, 상기 신원표현 데이터의 전자서명은 상기 신원표현 데이터를 상기 사용자의 개인키로 서명한 데이터임; 상기 휴대단말이, 상기 신원표현 데이터, 상기 신원표현 데이터의 전자서명 및 상기 신원증명 데이터의 전자서명을 포함하는 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계; 상기 신원 인증용 서버가, 상기 신원 인증 요청에 응답하여, 상기 신원표현 데이터의 유효성을 검증하는 단계; 및 상기 신원표현 데이터의 유효성이 검증되면, 상기 신원 인증용 서버가, 상기 신원 인증 요청을 승인하는 단계를 포함하되, 상기 신원표현 데이터의 유효성을 검증하는 단계는, 상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계; 상기 문서 데이터에 포함된 상기 사용자의 공개키로 상기 신원표현 데이터의 전자서명을 검증하는 단계; 및 상기 신원증명 데이터의 전자서명을 상기 발급 시스템의 공개키로 검증하는 단계를 포함하는 블록체인 기반 신원 인증 방법이 제공된다.
Description
본 발명은 블록체인에 기반한 탈중앙 아이디를 이용한 신원 인증 방법 및 시스템에 관한 것이다.
종래의 신원 인증 시스템의 경우에는 개개인의 신원 인증을 위한 개인정보가 신원 인증을 위한 서버에 저장되기 때문에 서버 해킹 등에 의한 개인정보의 유출의 문제점이 있었으며, 서버의 증설 시 관리 포인트가 증가하는 문제점이 있었다.
한편, 최근 들어 블록체인(Blockchain)이라 불리는 분산 컴퓨팅 기술 기반의 데이터 위변조 방지 기술이 등장하였다. 블록체인 기술은 비즈니스 네트워크 내에서 정보를 투명하게 공유할 수 있도록 하는 데이터베이스 메커니즘으로서, 블록체인 데이터베이스는 연쇄적으로 연결된 블록에 데이터를 저장하고 네트워크의 합의 없이 체인을 삭제하거나 수정할 수 없다는 특징이 있다. 이러한 블록체인 기술은 중앙화된 시스템이 배제되어 있으며, 분산 원장 혹은 탈중앙화 시스템이 증명 과정을 대신하기 때문에, 이를 신원 인증에 적용하게 되면 기존 신원확인 방식과 달리 중앙 시스템에 의해 통제되지 않으며 개개인이 자신의 정보에 완전한 통제권을 갖도록 할 수 있다는 장점이 있다.
본 발명이 이루고자 하는 기술적인 과제는 블록체인에 기반한 탈중앙 아이디를 이용함으로써 개인정보를 중앙화된 서버에 별도로 저장하지 않고 개인의 단말에 저장할 수 있도록 함으로써 개인정보의 유출 문제에서 자유로우며, 개인의 신원 인증 시에도 인증을 필요로 하는 기관이나 시스템에 최소한의 개인정보만을 제공하고 개인정보가 서버에 저장되지 않는 특징을 통해 데이터 주권 및 개인정보 자기 결정권을 보장할 수 있도록 하는 신원 인증 방법 및 시스템을 제공하는 것이다. 나아가 이러한 신원 인증 방법을 적용하여 특정한 공간에 접근할 수 있는 권한을 확인함으로써 출입을 통제하거나 특정한 사이트에 특정한 권한(예를 들어, 로그인할 권한)이 있는지 여부를 확인할 수 있는 방법 및 시스템을 제공하는 것이다.
본 발명의 일 측면에 따르면, 발급 단계; 및 인증 단계를 포함하는 블록체인 기반 신원 인증 방법으로서, 상기 발급 단계는, 사용자의 휴대단말이, 신규 발급된 사용자의 탈중앙 ID 및 상기 사용자의 공개키를 포함하는 문서 데이터를 블록체인에 등록하고, 상기 공개키에 대응되는 상기 사용자의 개인키 및 상기 사용자의 탈중앙 ID를 상기 휴대단말에 저장하는 단계; 상기 휴대단말이, 상기 신원 인증용 서버로 신원증명 발급 요청을 제출하는 단계-여기서, 상기 신원증명 발급 요청은, 상기 사용자의 탈중앙 ID를 포함함; 상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계; 상기 신원 인증용 서버가, 상기 탈중앙 ID의 유효성이 검증되면, 상기 사용자의 개인정보를 획득하고, 상기 사용자의 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 발급하여 상기 휴대단말로 전송하는 단계-상기 신원증명 데이터는 상기 탈중앙 ID 및 상기 개인정보를 포함하며, 상기 신원증명 데이터의 전자서명은 상기 신원증명 데이터를 상기 신원 인증용 서버의 개인키로 서명한 데이터임; 및 상기 휴대단말이, 상기 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 상기 사용자 단말에 저장하는 단계를 포함하고, 상기 탈중앙 ID의 유효성을 검증하는 단계는, 상기 신원 인증용 서버가, 상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계; 및 상기 신원 인증용 서버가, 소정의 확인 대상 정보를 상기 휴대단말이 상기 사용자의 개인키로 암호화한 정보가 상기 문서 데이터에 포함되어 있는 공개키에 의해 올바로 복호화되는지 여부를 확인하는 단계를 포함하고, 상기 인증 단계는, 상기 휴대단말이, 상기 사용자의 신원표현 데이터 및 상기 신원표현 데이터의 전자서명을 생성하는 단계-여기서, 상기 신원표현 데이터는 상기 탈중앙 ID 및 상기 신원증명 데이터에 포함된 개인정보 중 적어도 일부를 포함하며, 상기 신원표현 데이터의 전자서명은 상기 신원표현 데이터를 상기 사용자의 개인키로 서명한 데이터임; 상기 휴대단말이, 상기 신원표현 데이터, 상기 신원표현 데이터의 전자서명 및 상기 신원증명 데이터의 전자서명을 포함하는 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계; 상기 신원 인증용 서버가, 상기 신원 인증 요청에 응답하여, 상기 신원표현 데이터의 유효성을 검증하는 단계; 및 상기 신원표현 데이터의 유효성이 검증되면, 상기 신원 인증용 서버가, 상기 신원 인증 요청을 승인하는 단계를 포함하되, 상기 신원표현 데이터의 유효성을 검증하는 단계는, 상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계; 상기 문서 데이터에 포함된 상기 사용자의 공개키로 상기 신원표현 데이터의 전자서명을 검증하는 단계; 및 상기 신원증명 데이터의 전자서명을 상기 발급 시스템의 공개키로 검증하는 단계를 포함하는 블록체인 기반 신원 인증 방법이 제공된다.
일 실시예에서, 상기 인증 단계는, 상기 신원 인증용 서버가, 논스(nonce)를 생성하여 상기 휴대단말로 제공하는 단계를 더 포함하고, 상기 신원표현 데이터는 상기 논스를 더 포함하되, 상기 신원표현 데이터의 유효성을 검증하는 단계는, 상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 휴대단말로 전송한 논스와 동일한지 여부를 확인하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 블록체인 기반 신원 인증 방법은, 상기 신원 인증용 서버가, 상기 사용자의 식별정보를 데이터베이스에 사전 등록하는 단계를 더 포함하고, 상기 신원증명 발급 요청은, 상기 사용자의 식별정보를 더 포함하되, 상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계는, 상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 포함된 식별정보에 상응하는 사용자로부터 신원증명 발급에 대한 승인을 획득하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계는, 상기 휴대단말이, 상기 신원 인증 요청을 QR 코드의 형태로 상기 휴대단말의 디스플레이 장치에 표시하고, QR 코드 리더기를 통해 상기 신원 인증용 서버로 제출하는 단계를 포함하고, 상기 블록체인 기반 신원 인증 방법은, 상기 신원 인증 요청을 승인되면, 상기 신원 인증용 서버가, 상기 QR 코드 리더기에 대응하는 소정의 출입문 잠금 장치가 열리도록 제어하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 인증 단계는, 상기 사용자의 사용자 단말이, 소정의 웹 서비스 제공 시스템에 로그인을 요청하는 단계; 상기 웹 서비스 제공 시스템이, 상기 로그인 요청에 응답하여 상기 신원 인증용 서버로 URL 리다이렉트(redirect)하는 단계; 상기 신원 인증용 서버가, 논스를 생성하고, 상기 논스와 콜백 URL(callback URL)을 포함하는 디지털 정보를 QR 코드의 형태로 표시하기 위한 웹 페이지를 상기 사용자 단말에 전송하여 상기 사용자 단말에 상기 QR 코드가 표시되도록 하는 단계; 상기 휴대단말이, 상기 사용자 단말에 표시된 QR 코드를 인식하여 상기 논스 및 콜백 URL을 획득하는 단계를 더 포함하되, 상기 신원표현 데이터는 상기 논스를 더 포함하고, 상기 신원표현 데이터의 유효성을 검증하는 단계는, 상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 사용자 단말로 전송한 논스와 동일한지 여부를 확인하는 단계를 더 포함하고, 상기 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계는, 상기 휴대단말이, 상기 콜백 URL을 통해 상기 신원 인증 요청을 전송하는 단계를 포함하고, 상기 블록체인 기반 신원 인증 방법은, 상기 신원 인증 요청이 승인되면, 상기 신원 인증용 서버가, 상기 사용자 단말이 요청한 로그인이 승인되도록 하기 위한 소정의 제어정보를 상기 웹 서비스 제공 시스템으로 전송하는 단계를 더 포함할 수 있다.
본 발명의 다른 일 측면에 따르면, 데이터 처리장치에 설치되며 상술한 방법을 수행하기 위한 매체에 기록된 컴퓨터 프로그램이 제공된다.
본 발명의 다른 일 측면에 따르면, 사용자의 휴대단말; 및 신원 인증용 서버를 포함하며, 상술한 블록체인 기반 신원 인증 방법을 수행하는 블록체인 기반 신원 확인 시스템이 제공된다.
본 발명의 일 실시예에 의하면, 블록체인에 기반한 탈중앙 아이디를 이용함으로써 개인정보를 중앙화된 서버에 별도로 저장하지 않고 개인의 단말에 저장할 수 있도록 함으로써 개인정보의 유출 문제에서 자유로우며, 개인의 신원 인증 시에도 인증을 필요로 하는 기관이나 시스템에 최소한의 개인정보만을 제공하고 개인정보가 서버에 저장되지 않는 특징을 통해 데이터 주권 및 개인정보 자기 결정권을 보장할 수 있도록 하는 신원 인증 방법 및 시스템을 제공할 수 있다.
또한 이러한 신원 인증 방법을 적용하여 특정한 공간에 접근할 수 있는 권한을 확인함으로써 출입을 통제하거나 특정한 사이트에 특정한 권한(예를 들어, 로그인할 권한)이 있는지 여부를 확인할 수 있는 방법 및 시스템을 제공할 수 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시예에 따른 블록체인 기반의 신원 인증 방법의 구동 환경을 나타내는 도면이다.
도 2은 본 발명의 일 실시예에 따른 신원 확인용 서버의 구성을 개략적으로 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 신원 인증 방법 중 발급 단계를 도시하고 있는 도면이다.
도 4a 및 도 4b는 탈중앙 ID의 유효성 검증 과정의 예를 보다 구체적으로 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 신원 인증 방법 중 인증 단계를 도시하고 있는 도면이다.
도 6은 본 발명의 일 실시예에 따른 신원표현 데이터의 유효성을 검증하는 과정의 일 예를 도시한 도면이다.
도 7 및 도 8은 본 발명의 기술적 사상에 따른 신원 인증 방법이 구체적으로 적용된 예를 도시하고 있다.
도 1은 본 발명의 일 실시예에 따른 블록체인 기반의 신원 인증 방법의 구동 환경을 나타내는 도면이다.
도 2은 본 발명의 일 실시예에 따른 신원 확인용 서버의 구성을 개략적으로 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 신원 인증 방법 중 발급 단계를 도시하고 있는 도면이다.
도 4a 및 도 4b는 탈중앙 ID의 유효성 검증 과정의 예를 보다 구체적으로 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 신원 인증 방법 중 인증 단계를 도시하고 있는 도면이다.
도 6은 본 발명의 일 실시예에 따른 신원표현 데이터의 유효성을 검증하는 과정의 일 예를 도시한 도면이다.
도 7 및 도 8은 본 발명의 기술적 사상에 따른 신원 인증 방법이 구체적으로 적용된 예를 도시하고 있다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 명세서에 있어서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다. 반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예들을 중심으로 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 블록체인 기반의 신원 인증 방법(이하, '신원 인증 방법'이라고 함)의 구동 환경을 나타내는 도면이다. 도 1을 참조하면, 본 발명의 일 실시예에 따른 신원 인증 방법의 구동 환경은 블록체인 기반의 신원 확인 시스템(10; 이하, '신원 확인 시스템'이라고 함) 및 디지털 데이터를 분산 저장할 수 있는 블록체인 네트워크(20)를 포함할 수 있으며, 상기 신원 확인 시스템(10)은 신원 인증용 서버(100) 및 휴대단말(200)을 포함할 수 있다.
상기 신원 인증용 서버(100)는 상기 휴대단말(200)의 요청에 의하여 휴대단말(200)의 사용자(소지자)의 신원을 확인하기 위한 신원증명 데이터를 저장할 수 있으며, 상기 신원증명 데이터를 휴대단말(200)로 발급할 수 있으며, 상기 휴대단말(200)은 발급된 신원증명 데이터를 저장하고 그 중 적어도 일부를 상기 신원 인증용 서버(100)에 제출함으로써 사용자의 신원을 증명할 수 있다. 상기 휴대단말(200)은 소정의 접근 제어 시스템(40)에 대한 접근 권한을 얻기 위하여 상기 신원 인증용 서버(100)에 신원 인증을 요청할 수 있다.
상기 접근 제어 시스템(40)은 사용자가 물리적 공간에 출입하는 것을 통제하기 위한 장치(예를 들어, 출입문 잠금 장치)일 수도 있으며, 웹 사이트나 인터넷 커뮤니티, 내부 통신망과 같은 사이버 공간에 접근하는 것을 통제하기 위한 로그인 시스템 등일 수도 있다.
한편, 상기 신원 인증 방법의 구동 환경은 본 발명의 기술적 사상을 구현하는데 필요한 각종 결정을 내리거나 본 발명의 기술적 사상을 구현하기 위하여 사전에 등록되어야 하는 각종 정보를 등록하는 권한을 가지는 승인자의 단말(30)을 더 포함할 수 있다. 예를 들어, 상기 승인자 단말(30)은 휴대단말(200)의 사용자에게 상기 접근 제어 시스템(40)에 접근할 권한을 미리 설정할 수 있으며, 휴대단말(200)의 신원증명 데이터 발급 요청을 최종적으로 승인할 수 있다.
상기 신원 인증용 서버(100)는 네트워크 통신 기능을 구비한 정보처리장치일 수 있다. 상기 신원 인증용 서버(100)은 상기 휴대단말(200)과 같은 클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터 시스템일 수 있다. 상기 신원 확인 시스템(100)은 상기 휴대단말(200)과 함께 본 발명의 기술적 사상에 따른 신원 인증 방법을 수행할 수 있으며, 신원 인증 방법의 구체적인 내용에 관해서는 후술하기로 한다.
한편, 본 명세서에서 단말(예를 들어, 휴대단말(200) 및/또는 승인자 단말(30)은 네트워크 통신 기능을 구비한 정보처리장치일 수 있다. 예를 들어, 상기 단말(예를 들어, 휴대단말(200) 및/또는 승인자 단말(30))은 데스크탑 컴퓨터나 랩탑 컴퓨터, 또는 휴대전화, 위성전화, 무선전화, SIP(Session Initiation Protocol), WLL(Wireless Local Loop) 스테이션, 스마트폰, 타블렛 PC, PDA(Personal Digital Assistant) 등의 핸드헬드 장치를 포함하는 프로세싱 장치일 수도 있다.
도 2은 본 발명의 일 실시예에 따른 신원 확인용 서버(100)의 구성을 개략적으로 나타낸 블록도이다.
도 2를 참조하면, 상기 신원 확인용 서버(100)는 발급모듈(110), 인증모듈(120)을 포함할 수 있다. 실시예에 따라서, 상기 신원 확인용 서버(100)는 이보다 많은 구성을 포함할 수도 있다. 예를 들면, 상기 신원 확인용 서버(100)는 네트워크를 통해 외부의 시스템(예를 들면, 30 및/또는 40)와 통신할 수 있는 적어도 하나의 통신모듈이나 상기 신원 확인용 서버(100)에 포함된 다른 구성요소의 기능 및/또는 리소스를 제어하고 할 수 있는 제어모듈, 각종 정보를 저장할 수 있는 저장모듈, 사용자와 인터페이싱할 수 있는 입출력모듈 등을 더 포함할 수 있다.
상기 신원 확인용 서버(100)는 본 발명의 기술적 사상을 구현하기 위해 필요한 하드웨어 리소스(resource) 및/또는 소프트웨어를 구비할 수 있으며, 반드시 하나의 물리적인 구성요소를 의미하거나 하나의 장치를 의미하는 것은 아니다. 즉, 상기 신원 확인용 서버(100)는 본 발명의 기술적 사상을 구현하기 위해 구비되는 하드웨어 및/또는 소프트웨어의 논리적인 결합을 의미할 수 있으며, 필요한 경우에는 서로 이격된 장치에 설치되어 각각의 기능을 수행함으로써 본 발명의 기술적 사상을 구현하기 위한 논리적인 구성들의 집합으로 구현될 수도 있다. 또한, 상기 신원 확인용 서버(100)는 본 발명의 기술적 사상을 구현하기 위한 각각의 기능 또는 역할별로 별도로 구현되는 구성들의 집합을 의미할 수도 있다. 또한, 본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예를 들면, 상기 모듈은 특정된 코드와 상기 특정된 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.
상기 신원 확인용 서버(100)는 다수의 모듈의 형태로 구현될 수 있다. 상기 신원 확인 시스템(100)에 포함된 각종 모듈은 서로 다른 물리적 장치에 위치할 수도 있고, 동일한 물리적 장치에 위치할 수도 있다. 경우에 따라서는 상기 신원 확인용 서버(100)는 본 발명의 기술적 사상을 구현하기 위해 필요한 각종 데이터를 저장하는 DB(예를 들면, 300)을 더 포함할 수도 있다.
본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.
본 발명의 일 실시예에 따른 신원 인증 방법은 크게 신원증명 데이터를 휴대단말(200)에 발급하기 위한 발급 단계와 휴대단말(200)이 사용자의 신원을 인증받기 위한 인증 단계로 구분된다. 도 3은 본 발명의 일 실시예에 따른 신원 인증 방법 중 상기 발급 단계를 도시하고 있는 도면이며, 도 5는 본 발명의 일 실시예에 따른 신원 인증 방법 중 상기 인증 단계를 도시하고 있는 도면이다.
먼저 도 3을 참조하여 발급 단계의 일 예를 설명한다.
사용자의 휴대단말(200)은 신규 발급된 사용자의 탈중앙 ID에 대응되는 문서 데이터(D)를 블록체인 네트워크(20; 이하, '블록체인'이라고 함)에 등록할 수 있다. 상기 문서 데이터(D)는 사용자의 탈중앙 ID 및 상기 사용자의 공개키(RU)를 포함할 수 있다(S110). 또한 상기 휴대단말(200)은 상기 탈중앙 ID 및 상기 사용자의 개인키(PU)를 상기 휴대단말(200) 내의 저장공간(예를 들어, SSD나 블록체인 지갑 등)에 저장할 수 있다(S120). 탈중앙 ID는 무엇인가를 식별하기 위한 고유의 정보로서 그 역할은 일반적인 ID와 유사하지만 일반적인 ID와 달리 블록체인에 그에 대한 정보가 저장된다는 특징을 가진다. 따라서, 본 명세서에서는 그에 대응되는 문서 데이터가 블록체인에 저장되는 ID를 일반적인 ID와 구분하기 위하여 탈중앙 ID라고 지칭하기로 한다.
일 실시예에서, 신규 탈중앙 ID, 및/또는 신규 개인키/공개키 쌍은 상기 휴대단말(200)이 직접 생성할 수도 있으나, 실시예에 따라서는 상기 휴대단말(200)이 소정의 외부 시스템(미도시)에 신규 탈중앙 ID, 및/또는 신규 개인키/공개키 쌍의 생성을 요청할 수도 있으며 상기 외부 시스템은 신규 탈중앙 ID, 및/또는 신규 개인키/공개키 쌍을 생성하여 상기 휴대단말(200)에 전송할 수 있다.
일 실시예에서, 상기 휴대단말(200)은 블록체인 네트워크(20)에 접근 가능한 소정의 등록모듈(25)에 상기 문서 데이터(D)를 블록체인 네트워크(20)에 등록해달라고 요청할 수 있다. 실시예에 따라서는 상기 휴대단말(200)이 직접 상기 문서 데이터(D)를 블록체인 네트워크(20)에 등록할 수도 있음은 물론이다.
한편, 상기 휴대단말(200)은 상기 신원 인증용 서버(100)로 신원증명 발급 요청을 제출할 수 있다(S130). 일 실시예에서, 상기 휴대단말(200)은 유무선 통신 네트워크를 통해 신원증명 발급 요청을 전송할 수 있으나, 본 발명의 기술적 사상이 이에 한정되는 것은 아니다. 상기 휴대단말(200)은 네트워크를 이용하지 않는 방법, 예를 들어, 신원증명 발급 요청을 QR 코드의 형식으로 출력하여 상기 신원 인증용 서버(100)에 연결된 QR 리더기에 인식시키는 방법 등으로 신원증명 발급 요청을 제출할 수 있다.
상기 신원증명 발급 요청은 상기 사용자의 탈중앙 ID를 포함할 수 있다. 또한 경우에 따라서는 상기 신원증명 발급 요청은 상기 사용자의 탈중앙 ID 외에도 상기 사용자를 식별하기 위한 별도의 식별정보를 더 포함할 수 있다. 예를 들어, 상기 식별정보는 사원번호, 주민번호, 휴대전화번호, 전자메일주소와 같이 사용자를 특정할 수 있는 정보일 수 있다.
상기 휴대단말(200)이 상기 신원 인증용 서버(100)로 신원증명 발급 요청을 제출하면, 상기 신원 인증용 서버(100)는 상기 블록체인(20)으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터(D)를 획득할 수 있으며(S140), 이를 이용하여 탈중앙ID의 유효성을 검증할 수 있다(S150). 보다 구체적으로는 상기 신원 인증용 서버(100)는 소정의 확인 대상 정보를 상기 휴대단말(200)이 상기 사용자의 개인키로 암호화한 정보가 상기 문서 데이터에 포함되어 있는 공개키에 의해 올바로 복호화되는지 여부를 확인함으로써, 상기 신원증명 발급 요청에 포함된 탈중앙 ID의 유효성을 검증할 수 있다.
도 4a 및 도 4b는 탈중앙 ID의 유효성 확인 과정의 예를 보다 구체적으로 도시한 도면이다. 도 4a는 확인 대상 정보를 상기 신원 인증용 서버(100)가 생성한 케이스이며, 도 4b는 확인 대상 정보를 휴대단말(200)에서 생성한 케이스를 나타낸다.
도 4a를 참조하면, 신원 인증용 서버(100)는 소정의 확인대상정보(Z)를 사용자의 공개키(RU)로 암호화한 암호화 정보 E(Z, RU)를 생성하고(S151), 이를 휴대단말(200)로 전송할 수 있다(S152). 그러면 상기 휴대단말(200)은 암호화 정보 E(Z, RU)를 사용자의 개인키(PU)로 복호화하여 복호화 정보 D(E(Z, RU), PU)를 생성하고(S153) 이를 상기 신원 인증용 서버(100)는 복호화 정보 D(E(Z, RU), PU)가 확인대상정보(Z)와 동일한지 여부를 확인함으로써 상기 신원증명 발급 요청에 포함된 탈중앙 ID의 유효성을 검증할 수 있다(S155).
도 4b를 참조하면, 휴대단말(200)은 소정의 확인대상정보(Z)를 사용자의 개인키(PU)로 암호화하여 암호화 정보 E(Z, PU)를 생성하고(S156), 확인대상정보(Z) 및 암호화 정보 E(Z, PU)를 신원 인증용 서버(100)로 전송할 수 있다(S157). 그러면 상기 신원 인증용 서버(100)는 상기 암호화 정보 E(Z, PU)를 사용자의 공개키(RU)로 복호화한 복호화 정보 D(E(Z, PU), RU) 생성하고(S158), 상기 복호화 정보 D(E(Z, PU), RU)가 상기 확인대상정보(Z)와 동일한지 여부를 확인함으로써 상기 신원증명 발급 요청에 포함된 탈중앙 ID의 유효성을 검증할 수 있다(S159).
다시 도 3을 참조하면, 상기 신원 인증용 서버(100)는 상기 탈중앙 ID의 유효성이 검증되면, 상기 사용자의 개인정보를 획득하고(S170), 상기 사용자의 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 발급하여 상기 휴대단말로 전송할 수 있다(S180). 상기 신원증명 데이터는 상기 탈중앙 ID 및 상기 개인정보를 포함하며, 상기 신원증명 데이터의 전자서명은 상기 신원증명 데이터를 상기 신원 인증용 서버의 개인키로 서명한 데이터이다.
그런데 경우에 따라서는 상기 신원 인증용 서버(100)는 상기 사용자의 신원증명 데이터를 발급하기 전에 소정의 승인자 단말(30)로 발급 여부에 대한 추가적인 승인을 구할 수 있다. 이 경우 상기 신원 인증용 서버(100)는 소정의 승인자 단말(30)로 상기 사용자에 대한 신원증명 데이터의 발급에 대한 승인을 요청할 수 있으며(S161), 승인자는 상기 사용자에 대한 식별정보 및/또는 개인정보를 검토하고 발급 여부를 결정할 수 있다(S162).
일 실시예에서, 상기 승인자는 발급 요청을 승인할 권한을 가진 관리자일 수 있다. 이 경우 관리자는 상기 승인자 단말(30)을 통해 상기 신원 인증용 서버(100)에 접속하여 상기 사용자에 대한 식별정보 및/또는 개인정보를 검토(예를 들어, 상기 사용자가 사내 구성원인지 여부를 확인)하고 승인 여부를 결정할 수 있다.
다른 일 실시예에서, 상기 승인자는 상기 사용자 자신일 수 있다. 즉, 사용자는 상기 신원 인증용 서버(100)가 승인을 요청한 발급 요청을 자신이 한 것인지 확인하고 자신이 요청한 발급 요청이 아니라면 이를 거부할 수 있다. 보다 구체적으로 보면, 상기 신원 인증용 서버(100)는 상기 신원증명 발급 요청에 포함된 식별정보에 상응하는 사용자에게 신원증명 발급에 대한 승인을 요청할 수 있으며, 상기 신원 인증용 서버(100)는 상기 식별정보에 상응하는 사용자로부터 신원증명 발급에 대한 승인을 획득할 수 있다.
도 5는 본 발명의 일 실시예에 따른 신원 인증 방법 중 상기 인증 단계를 도시하고 있는 도면이다. 도 5를 참조하여 인증 단계의 일 예를 설명한다.
상기 휴대단말(200)은 상기 사용자의 신원표현 데이터 및 상기 신원표현 데이터의 전자서명을 생성할 수 있다(S210). 여기서, 상기 신원표현 데이터는 상기 탈중앙 ID 및 상기 신원증명 데이터에 포함된 개인정보 중 적어도 일부를 포함하며, 상기 신원표현 데이터의 전자서명은 상기 신원표현 데이터를 상기 사용자의 개인키로 서명한 데이터이다.
또한 상기 휴대단말(200)은 상기 신원표현 데이터, 상기 신원표현 데이터의 전자서명 및 상기 신원증명 데이터의 전자서명을 포함하는 신원 인증 요청을 상기 신원 인증용 서버로 제출할 수 있다(S220). 상기 휴대단말(200)은 네트워크 통신 또는 QR 코드 등의 네트워크 통신 이외의 방법으로 신원 인증 요청을 상기 신원 인증용 서버로 제출할 수 있다.
상기 신원 인증용 서버(100)는 상기 신원 인증 요청에 응답하여, 상기 신원표현 데이터의 유효성을 검증할 수 있으며(S240), 상기 신원표현 데이터의 유효성이 검증되면, 상기 신원 인증용 서버(100)는 상기 신원 인증 요청을 승인할 수 있다.
도 6은 본 발명의 일 실시예에 따른 신원표현 데이터의 유효성을 검증하는 과정의 일 예를 도시한 도면이다.
도 6을 참조하면, 상기 신원 인증용 서버(100)는 상기 신원 인증용 서버의 공개키 및 사용자의 공개키 획득할 수 있다(S241). 특히, 상기 신원 인증용 서버(100)는 상기 블록체인 네트워크(20)로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하고, 그에 포함된 사용자의 공개키 획득할 수 있다.
이후 상기 신원 인증용 서버(100)는 신원증명 데이터의 전자서명이 신원 확인용 서버의 공개키로 복호화되는지 여부를 검증할 수 있으며(S242), 신원표현 데이터의 전자서명이 사용자의 공개키로 복호화되는지 여부를 검증할 수 있다(S243).
다시 도 5를 참조하면, 상기 신원 인증용 서버(100)는 상기 신원 인증 요청을 승인한 이후에 상기 사용자가 상기 접근 제어 시스템(40)에 접근할 수 있는 권한을 가지고 있는지 여부를 확인할 수 있으며(S260), 접근 권한이 있다고 판단한 경우 상기 사용자가 상기 접근 제어 시스템(40)이 상기 사용자로 하여금 접근 가능하도록 하기 위한 소정의 제어정보를 상기 접근 제어 시스템(40)으로 전송할 수 있다(S270). 한편 사용자의 접근 권한은 DB(300)에 미리 등록되어 있을 수 있으며, 상기 신원 인증용 서버(100)는 사용자가 요청한 접근 권한이 DB(300)에 사전 등록되어 있는 접근 권한에 속하는지 여부를 판단할 수 있다.
도 7 및 도 8은 본 발명의 기술적 사상에 따른 신원 인증 방법이 구체적으로 적용된 예를 도시하고 있다. 도 7은 상기 접근 제어 시스템(40)이 출입문 잠금 장치인 경우를 나타내며, 도 8은 상기 접근 제어 시스템(40)이 웹 서비스 제공 시스템의 로그인 시스템인 경우를 도시하고 있다.
먼저 도 7을 참조하면, 상기 휴대단말(200)은 출입증(즉, 상기 신원 인증 요청)을 QR 코드의 형태로 상기 휴대단말(200)의 디스플레이 장치에 표시하고(S310), QR 코드 리더기(41)를 통해 상기 신원 인증용 서버(100)로 제출할 수 있다.
그러면 상기 신원 인증용 서버(100)는 앞서 설명한 방식에 따라 탈중앙ID에 상응하는 문서 데이터(D) 획득하고 출입증의 유효성을 검증할 수 있으며(S330), 사용자의 출입 권한을 확인할 수 있다(S340).
만약 출입증이 유효하며, 사용자가 출입 권한을 가지고 있는 경우, 상기 신원 인증용 서버(100)는 상기 QR 코드 리더기(41)에 대응하는 소정의 출입문 잠금 장치(42)가 열리도록 제어할 수 있다(S350).
도 8을 참조하면, 사용자는 휴대단말(200)이 아닌 별도의 사용자 단말(50)로 소정의 웹 서비스 제공 시스템(43)에 접속하여 로그인을 요청할 수 있다(S410). 그러면, 상기 웹 서비스 제공 시스템(43)은 상기 로그인 요청에 응답하여 상기 신원 인증용 서버(100)로 URL 리다이렉트(redirect)할 수 있다(S420).
한편, 상기 신원 인증용 서버(100)는 논스(nonce)를 생성하고, 상기 논스와 콜백 URL(callback URL)을 포함하는 디지털 정보를 QR 코드의 형태로 표시하기 위한 웹 페이지를 상기 사용자 단말(50)에 전송하여 상기 사용자 단말(50)에 상기 QR 코드가 표시되도록 할 수 있다(S430, S440).
그러면, QR 코드 인식 기능을 구비한 상기 휴대단말(200)은 상기 사용자 단말(50)에 표시된 QR 코드를 인식하여 상기 논스 및 콜백 URL을 획득할 수 있다(S445).
상기 휴대단말(200)은 앞서 설명한 바와 같이, 신원표현 데이터, 신원표현 데이터의 전자서명 및 신원증명 데이터의 전자서명을 포함하는 신원 인증 요청을 전송할 수 있는데, 도 7의 케이스에서 상기 신원표현 데이터는 상기 논스를 더 포함할 수 있다. 상기 휴대단말(200)은 상기 콜백 URL을 상기 신원 인증 요청을 전송할 수 있다(S450).
그러면 상기 신원 인증용 서버(100)는 신원증명 데이터의 전자서명, 신원표현 데이터의 전자서명을 검증하고, 추가적으로 상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 사용자 단말로 전송한 논스와 동일한지 여부를 더 확인함으로써, 상기 신원표현 데이터의 유효성을 검증할 수 있다(S470).
한편, 상기 신원 인증 요청이 승인되면, 상기 신원 인증용 서버(100)는 상기 사용자 단말(50)이 요청한 로그인이 승인되도록 하기 위한 소정의 제어정보를 상기 웹 서비스 제공 시스템(43)으로 전송할 수 있으며, 상기 웹 서비스 제공 시스템(43)은 상기 사용자 단말(50)의 로그인을 승인할 수 있다(S490, S495).
한편, 구현 예에 따라서, 상기 신원 인증용 서버(100)은 프로세서 및 상기 프로세서에 의해 실행되는 프로그램을 저장하는 메모리를 포함할 수 있다. 상기 프로세서는 싱글 코어 CPU혹은 멀티 코어 CPU를 포함할 수 있다. 메모리는 고속 랜덤 액세스 메모리를 포함할 수 있고 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치, 또는 기타 비휘발성 고체상태 메모리 장치와 같은 비휘발성 메모리를 포함할 수도 있다. 프로세서 및 기타 구성 요소에 의한 메모리로의 액세스는 메모리 컨트롤러에 의해 제어될 수 있다.
한편, 본 발명의 실시예에 따른 방법은 컴퓨터가 읽을 수 있는 프로그램 명령 형태로 구현되어 컴퓨터로 읽을 수 있는 기록 매체에 저장될 수 있으며, 본 발명의 실시예에 따른 제어 프로그램 및 대상 프로그램도 컴퓨터로 판독 가능한 기록 매체에 저장될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
기록 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터로 읽을 수 있는 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
Claims (11)
- 발급 단계; 및 인증 단계를 포함하는 블록체인 기반 신원 인증 방법으로서,
상기 발급 단계는,
사용자의 휴대단말이, 신규 발급된 사용자의 탈중앙 ID 및 상기 사용자의 공개키를 포함하는 문서 데이터를 블록체인에 등록하고, 상기 공개키에 대응되는 상기 사용자의 개인키 및 상기 사용자의 탈중앙 ID를 상기 휴대단말에 저장하는 단계;
상기 휴대단말이, 상기 신원 인증용 서버로 신원증명 발급 요청을 제출하는 단계-여기서, 상기 신원증명 발급 요청은, 상기 사용자의 탈중앙 ID를 포함함;
상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계;
상기 신원 인증용 서버가, 상기 탈중앙 ID의 유효성이 검증되면, 상기 사용자의 개인정보를 획득하고, 상기 사용자의 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 발급하여 상기 휴대단말로 전송하는 단계-상기 신원증명 데이터는 상기 탈중앙 ID 및 상기 개인정보를 포함하며, 상기 신원증명 데이터의 전자서명은 상기 신원증명 데이터를 상기 신원 인증용 서버의 개인키로 서명한 데이터임; 및
상기 휴대단말이, 상기 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 상기 사용자 단말에 저장하는 단계를 포함하고,
상기 탈중앙 ID의 유효성을 검증하는 단계는,
상기 신원 인증용 서버가, 상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계; 및
상기 신원 인증용 서버가, 소정의 확인 대상 정보를 상기 휴대단말이 상기 사용자의 개인키로 암호화한 정보가 상기 문서 데이터에 포함되어 있는 공개키에 의해 올바로 복호화되는지 여부를 확인하는 단계를 포함하고,
상기 인증 단계는,
상기 휴대단말이, 상기 사용자의 신원표현 데이터 및 상기 신원표현 데이터의 전자서명을 생성하는 단계-여기서, 상기 신원표현 데이터는 상기 탈중앙 ID 및 상기 신원증명 데이터에 포함된 개인정보 중 적어도 일부를 포함하며, 상기 신원표현 데이터의 전자서명은 상기 신원표현 데이터를 상기 사용자의 개인키로 서명한 데이터임;
상기 휴대단말이, 상기 신원표현 데이터, 상기 신원표현 데이터의 전자서명 및 상기 신원증명 데이터의 전자서명을 포함하는 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계;
상기 신원 인증용 서버가, 상기 신원 인증 요청에 응답하여, 상기 신원표현 데이터의 유효성을 검증하는 단계; 및
상기 신원표현 데이터의 유효성이 검증되면, 상기 신원 인증용 서버가, 상기 신원 인증 요청을 승인하는 단계를 포함하되,
상기 신원표현 데이터의 유효성을 검증하는 단계는,
상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계;
상기 문서 데이터에 포함된 상기 사용자의 공개키로 상기 신원표현 데이터의 전자서명을 검증하는 단계; 및
상기 신원증명 데이터의 전자서명을 상기 발급 시스템의 공개키로 검증하는 단계를 포함하는 블록체인 기반 신원 인증 방법.
- 제1항에 있어서,
상기 인증 단계는,
상기 신원 인증용 서버가, 논스(nonce)를 생성하여 상기 휴대단말로 제공하는 단계를 더 포함하고,
상기 신원표현 데이터는 상기 논스를 더 포함하되,
상기 신원표현 데이터의 유효성을 검증하는 단계는,
상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 휴대단말로 전송한 논스와 동일한지 여부를 확인하는 단계를 더 포함하는 블록체인 기반 신원 인증 방법.
- 제1항에 있어서,
상기 블록체인 기반 신원 인증 방법은,
상기 신원 인증용 서버가, 상기 사용자의 식별정보를 데이터베이스에 사전 등록하는 단계를 더 포함하고,
상기 신원증명 발급 요청은, 상기 사용자의 식별정보를 더 포함하되,
상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계는,
상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 포함된 식별정보에 상응하는 사용자로부터 신원증명 발급에 대한 승인을 획득하는 단계를 더 포함하는 블록체인 기반 신원 인증 방법.
- 제1항에 있어서,
상기 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계는,
상기 휴대단말이, 상기 신원 인증 요청을 QR 코드의 형태로 상기 휴대단말의 디스플레이 장치에 표시하고, QR 코드 리더기를 통해 상기 신원 인증용 서버로 제출하는 단계를 포함하고,
상기 블록체인 기반 신원 인증 방법은,
상기 신원 인증 요청을 승인되면, 상기 신원 인증용 서버가, 상기 QR 코드 리더기에 대응하는 소정의 출입문 잠금 장치가 열리도록 제어하는 단계를 더 포함하는 블록체인 기반 신원 인증 방법.
- 제1항에 있어서,
상기 인증 단계는,
상기 사용자의 사용자 단말이, 소정의 웹 서비스 제공 시스템에 로그인을 요청하는 단계;
상기 웹 서비스 제공 시스템이, 상기 로그인 요청에 응답하여 상기 신원 인증용 서버로 URL 리다이렉트(redirect)하는 단계;
상기 신원 인증용 서버가, 논스를 생성하고, 상기 논스와 콜백 URL(callback URL)을 포함하는 디지털 정보를 QR 코드의 형태로 표시하기 위한 웹 페이지를 상기 사용자 단말에 전송하여 상기 사용자 단말에 상기 QR 코드가 표시되도록 하는 단계;
상기 휴대단말이, 상기 사용자 단말에 표시된 QR 코드를 인식하여 상기 논스 및 콜백 URL을 획득하는 단계를 더 포함하되,
상기 신원표현 데이터는 상기 논스를 더 포함하고,
상기 신원표현 데이터의 유효성을 검증하는 단계는,
상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 사용자 단말로 전송한 논스와 동일한지 여부를 확인하는 단계를 더 포함하고,
상기 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계는,
상기 휴대단말이, 상기 콜백 URL을 통해 상기 신원 인증 요청을 전송하는 단계를 포함하고,
상기 블록체인 기반 신원 인증 방법은,
상기 신원 인증 요청이 승인되면, 상기 신원 인증용 서버가, 상기 사용자 단말이 요청한 로그인이 승인되도록 하기 위한 소정의 제어정보를 상기 웹 서비스 제공 시스템으로 전송하는 단계를 더 포함하는 블록체인 기반 신원 인증 방법.
- 데이터 처리장치에 설치되며 제1항 내지 제5항 중 어느 한 항에 기재된 방법을 수행하기 위한 매체에 기록된 컴퓨터 프로그램.
- 사용자의 휴대단말 및 신원 인증용 서버를 포함하며, 블록체인 기반 신원 인증 방법을 수행하는 블록체인 기반 신원 인증 시스템으로서,
상기 블록체인 기반 신원 인증 방법은, 발급 단계; 및 인증 단계를 포함하고,
상기 발급 단계는,
상기 휴대단말이, 신규 발급된 사용자의 탈중앙 ID 및 상기 사용자의 공개키를 포함하는 문서 데이터를 블록체인에 등록하고, 상기 공개키에 대응되는 상기 사용자의 개인키 및 상기 사용자의 탈중앙 ID를 상기 휴대단말에 저장하는 단계;
상기 휴대단말이, 상기 신원 인증용 서버로 신원증명 발급 요청을 제출하는 단계-여기서, 상기 신원증명 발급 요청은, 상기 사용자의 탈중앙 ID를 포함함;
상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계;
상기 신원 인증용 서버가, 상기 탈중앙 ID의 유효성이 검증되면, 상기 사용자의 개인정보를 획득하고, 상기 사용자의 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 발급하여 상기 휴대단말로 전송하는 단계-상기 신원증명 데이터는 상기 탈중앙 ID 및 상기 개인정보를 포함하며, 상기 신원증명 데이터의 전자서명은 상기 신원증명 데이터를 상기 신원 인증용 서버의 개인키로 서명한 데이터임; 및
상기 휴대단말이, 상기 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 상기 사용자 단말에 저장하는 단계를 포함하고,
상기 탈중앙 ID의 유효성을 검증하는 단계는,
상기 신원 인증용 서버가, 상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계; 및
상기 신원 인증용 서버가, 상기 휴대단말이 상기 사용자의 개인키로 소정의 확인 대상 정보를 암호화한 정보가 상기 문서 데이터에 포함되어 있는 공개키에 의해 올바로 복호화되는지 여부를 확인하는 단계를 포함하고,
상기 인증 단계는,
상기 휴대단말이, 상기 사용자의 신원표현 데이터 및 상기 신원표현 데이터의 전자서명을 생성하는 단계-여기서, 상기 신원표현 데이터는 상기 탈중앙 ID 및 상기 신원증명 데이터에 포함된 개인정보 중 적어도 일부를 포함하며, 상기 신원표현 데이터의 전자서명은 상기 신원표현 데이터를 상기 사용자의 개인키로 서명한 데이터임;
상기 휴대단말이, 상기 신원표현 데이터, 상기 신원표현 데이터의 전자서명 및 상기 신원증명 데이터의 전자서명을 포함하는 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계;
상기 신원 인증용 서버가, 상기 신원 인증 요청에 응답하여, 상기 신원표현 데이터의 유효성을 검증하는 단계; 및
상기 신원표현 데이터의 유효성이 검증되면, 상기 신원 인증용 서버가, 상기 신원 인증 요청을 승인하는 단계를 포함하되,
상기 신원표현 데이터의 유효성을 검증하는 단계는,
상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계;
상기 문서 데이터에 포함된 상기 사용자의 공개키로 상기 신원표현 데이터의 전자서명을 검증하는 단계; 및
상기 신원증명 데이터의 전자서명을 상기 발급 시스템의 공개키로 검증하는 단계를 포함하는 블록체인 기반 신원 인증 시스템.
- 제7항에 있어서,
상기 인증 단계는,
상기 신원 인증용 서버가, 논스(nonce)를 생성하여 상기 휴대단말로 제공하는 단계를 더 포함하고,
상기 신원표현 데이터는 상기 논스를 더 포함하되,
상기 신원표현 데이터의 유효성을 검증하는 단계는,
상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 휴대단말로 전송한 논스와 동일한지 여부를 확인하는 단계를 더 포함하는 블록체인 기반 신원 인증 시스템.
- 제7항에 있어서,
상기 블록체인 기반 신원 인증 방법은,
상기 신원 인증용 서버가, 상기 사용자의 식별정보를 데이터베이스에 사전 등록하는 단계를 더 포함하고,
상기 신원증명 발급 요청은, 상기 사용자의 식별정보를 더 포함하되,
상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계는,
상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 포함된 식별정보에 상응하는 사용자로부터 신원증명 발급에 대한 승인을 획득하는 단계를 더 포함하는 블록체인 기반 신원인증 시스템.
- 제7항에 있어서,
상기 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계는,
상기 휴대단말이, 상기 신원 인증 요청을 QR 코드의 형태로 상기 휴대단말의 디스플레이 장치에 표시하고, QR 코드 리더기를 통해 상기 신원 인증용 서버로 제출하는 단계를 포함하고,
상기 블록체인 기반 신원 인증 방법은,
상기 신원 인증 요청을 승인되면, 상기 신원 인증용 서버가, 상기 QR 코드 리더기에 대응하는 소정의 출입문 잠금 장치가 열리도록 제어하는 단계를 더 포함하는 블록체인 기반 신원인증 시스템.
- 제7항에 있어서,
상기 인증 단계는,
상기 사용자의 사용자 단말이, 소정의 웹 서비스 제공 시스템에 로그인을 요청하는 단계;
상기 웹 서비스 제공 시스템이, 상기 로그인 요청에 응답하여 상기 신원 인증용 서버로 URL 리다이렉트(redirect)하는 단계;
상기 신원 인증용 서버가, 논스를 생성하고, 상기 논스와 콜백 URL(callback URL)을 포함하는 디지털 정보를 QR 코드의 형태로 표시하기 위한 웹 페이지를 상기 사용자 단말에 전송하여 상기 사용자 단말에 상기 QR 코드가 표시되도록 하는 단계; 및
상기 휴대단말이, 상기 사용자 단말에 표시된 QR 코드를 인식하여 상기 논스 및 콜백 URL을 획득하는 단계를 더 포함하되,
상기 신원표현 데이터는 상기 논스를 더 포함하고,
상기 신원표현 데이터의 유효성을 검증하는 단계는,
상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 사용자 단말로 전송한 논스와 동일한지 여부를 확인하는 단계를 더 포함하고,
상기 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계는,
상기 휴대단말이, 상기 콜백 URL을 통해 상기 신원 인증 요청을 전송하는 단계를 포함하고,
상기 블록체인 기반 신원 인증 방법은,
상기 신원 인증 요청이 승인되면, 상기 신원 인증용 서버가, 상기 사용자 단말이 요청한 로그인이 승인되도록 하기 위한 소정의 제어정보를 상기 웹 서비스 제공 시스템으로 전송하는 단계를 더 포함하는 블록체인 기반 신원인증 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230032582A KR20240138828A (ko) | 2023-03-13 | 2023-03-13 | 블록체인 기반 신원 인증 방법 및 신원 인증 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230032582A KR20240138828A (ko) | 2023-03-13 | 2023-03-13 | 블록체인 기반 신원 인증 방법 및 신원 인증 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240138828A true KR20240138828A (ko) | 2024-09-20 |
Family
ID=92927333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230032582A Pending KR20240138828A (ko) | 2023-03-13 | 2023-03-13 | 블록체인 기반 신원 인증 방법 및 신원 인증 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20240138828A (ko) |
-
2023
- 2023-03-13 KR KR1020230032582A patent/KR20240138828A/ko active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12323529B2 (en) | Compact recordation protocol | |
US12160515B2 (en) | Non-fungible token authentication | |
CN110874464B (zh) | 用户身份认证数据的管理方法和设备 | |
CA2975843C (en) | Apparatus, system, and methods for a blockchain identity translator | |
JP7083892B2 (ja) | デジタル証明書のモバイル認証相互運用性 | |
CN113056741B (zh) | 基于分布式账本的简档验证 | |
RU2710889C1 (ru) | Способы и системы для создания удостоверений личности, их проверки и управления ими | |
US11855978B2 (en) | Sharing credentials | |
US9843578B2 (en) | Mobile security fob | |
CN108551437B (zh) | 用于认证信息的方法和装置 | |
US20190190723A1 (en) | Authentication system and method, and user equipment, authentication server, and service server for performing same method | |
US20170316497A1 (en) | Method for creating, registering, revoking authentication information and server using the same | |
US11539526B2 (en) | Method and apparatus for managing user authentication in a blockchain network | |
CN110692214A (zh) | 用于使用区块链的所有权验证的方法和系统 | |
CN110535807B (zh) | 一种业务鉴权方法、装置和介质 | |
CA3122376A1 (en) | Systems and methods for securing login access | |
US20190098009A1 (en) | Systems and methods for authentication using authentication management server and device application | |
CN113015991A (zh) | 安全的数字钱包处理系统 | |
US20200036525A1 (en) | Method for determining approval for access to gate through network, and server and computer-readable recording media using the same | |
JP2025512383A (ja) | 暗号化署名委任 | |
US20230237172A1 (en) | Data broker | |
JP5707204B2 (ja) | 身元確認システムおよび身元確認方法 | |
US11605082B1 (en) | Identity services systems and methods | |
van den Broek et al. | Securely derived identity credentials on smart phones via self-enrolment | |
WO2024021785A1 (zh) | 一种数字实体的处理方法、装置、设备、介质及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20230313 |
|
PA0201 | Request for examination |
Patent event code: PA02011R01I Patent event date: 20230313 Comment text: Patent Application |
|
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20241218 Patent event code: PE09021S01D |