[go: up one dir, main page]

KR20240138828A - 블록체인 기반 신원 인증 방법 및 신원 인증 시스템 - Google Patents

블록체인 기반 신원 인증 방법 및 신원 인증 시스템 Download PDF

Info

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
Application number
KR1020230032582A
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 KR1020230032582A priority Critical patent/KR20240138828A/ko
Publication of KR20240138828A publication Critical patent/KR20240138828A/ko
Pending legal-status Critical Current

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record 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/06009Record 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, 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

블록체인 기반 신원 인증 방법 및 신원 인증 시스템{Method and system for identity verification based on block chain}
본 발명은 블록체인에 기반한 탈중앙 아이디를 이용한 신원 인증 방법 및 시스템에 관한 것이다.
종래의 신원 인증 시스템의 경우에는 개개인의 신원 인증을 위한 개인정보가 신원 인증을 위한 서버에 저장되기 때문에 서버 해킹 등에 의한 개인정보의 유출의 문제점이 있었으며, 서버의 증설 시 관리 포인트가 증가하는 문제점이 있었다.
한편, 최근 들어 블록체인(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 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 명세서에 있어서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다. 반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예들을 중심으로 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 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)

  1. 발급 단계; 및 인증 단계를 포함하는 블록체인 기반 신원 인증 방법으로서,
    상기 발급 단계는,
    사용자의 휴대단말이, 신규 발급된 사용자의 탈중앙 ID 및 상기 사용자의 공개키를 포함하는 문서 데이터를 블록체인에 등록하고, 상기 공개키에 대응되는 상기 사용자의 개인키 및 상기 사용자의 탈중앙 ID를 상기 휴대단말에 저장하는 단계;
    상기 휴대단말이, 상기 신원 인증용 서버로 신원증명 발급 요청을 제출하는 단계-여기서, 상기 신원증명 발급 요청은, 상기 사용자의 탈중앙 ID를 포함함;
    상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계;
    상기 신원 인증용 서버가, 상기 탈중앙 ID의 유효성이 검증되면, 상기 사용자의 개인정보를 획득하고, 상기 사용자의 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 발급하여 상기 휴대단말로 전송하는 단계-상기 신원증명 데이터는 상기 탈중앙 ID 및 상기 개인정보를 포함하며, 상기 신원증명 데이터의 전자서명은 상기 신원증명 데이터를 상기 신원 인증용 서버의 개인키로 서명한 데이터임; 및
    상기 휴대단말이, 상기 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 상기 사용자 단말에 저장하는 단계를 포함하고,
    상기 탈중앙 ID의 유효성을 검증하는 단계는,
    상기 신원 인증용 서버가, 상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계; 및
    상기 신원 인증용 서버가, 소정의 확인 대상 정보를 상기 휴대단말이 상기 사용자의 개인키로 암호화한 정보가 상기 문서 데이터에 포함되어 있는 공개키에 의해 올바로 복호화되는지 여부를 확인하는 단계를 포함하고,
    상기 인증 단계는,
    상기 휴대단말이, 상기 사용자의 신원표현 데이터 및 상기 신원표현 데이터의 전자서명을 생성하는 단계-여기서, 상기 신원표현 데이터는 상기 탈중앙 ID 및 상기 신원증명 데이터에 포함된 개인정보 중 적어도 일부를 포함하며, 상기 신원표현 데이터의 전자서명은 상기 신원표현 데이터를 상기 사용자의 개인키로 서명한 데이터임;
    상기 휴대단말이, 상기 신원표현 데이터, 상기 신원표현 데이터의 전자서명 및 상기 신원증명 데이터의 전자서명을 포함하는 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계;
    상기 신원 인증용 서버가, 상기 신원 인증 요청에 응답하여, 상기 신원표현 데이터의 유효성을 검증하는 단계; 및
    상기 신원표현 데이터의 유효성이 검증되면, 상기 신원 인증용 서버가, 상기 신원 인증 요청을 승인하는 단계를 포함하되,
    상기 신원표현 데이터의 유효성을 검증하는 단계는,
    상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계;
    상기 문서 데이터에 포함된 상기 사용자의 공개키로 상기 신원표현 데이터의 전자서명을 검증하는 단계; 및
    상기 신원증명 데이터의 전자서명을 상기 발급 시스템의 공개키로 검증하는 단계를 포함하는 블록체인 기반 신원 인증 방법.
  2. 제1항에 있어서,
    상기 인증 단계는,
    상기 신원 인증용 서버가, 논스(nonce)를 생성하여 상기 휴대단말로 제공하는 단계를 더 포함하고,
    상기 신원표현 데이터는 상기 논스를 더 포함하되,
    상기 신원표현 데이터의 유효성을 검증하는 단계는,
    상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 휴대단말로 전송한 논스와 동일한지 여부를 확인하는 단계를 더 포함하는 블록체인 기반 신원 인증 방법.
  3. 제1항에 있어서,
    상기 블록체인 기반 신원 인증 방법은,
    상기 신원 인증용 서버가, 상기 사용자의 식별정보를 데이터베이스에 사전 등록하는 단계를 더 포함하고,
    상기 신원증명 발급 요청은, 상기 사용자의 식별정보를 더 포함하되,
    상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계는,
    상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 포함된 식별정보에 상응하는 사용자로부터 신원증명 발급에 대한 승인을 획득하는 단계를 더 포함하는 블록체인 기반 신원 인증 방법.
  4. 제1항에 있어서,
    상기 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계는,
    상기 휴대단말이, 상기 신원 인증 요청을 QR 코드의 형태로 상기 휴대단말의 디스플레이 장치에 표시하고, QR 코드 리더기를 통해 상기 신원 인증용 서버로 제출하는 단계를 포함하고,
    상기 블록체인 기반 신원 인증 방법은,
    상기 신원 인증 요청을 승인되면, 상기 신원 인증용 서버가, 상기 QR 코드 리더기에 대응하는 소정의 출입문 잠금 장치가 열리도록 제어하는 단계를 더 포함하는 블록체인 기반 신원 인증 방법.
  5. 제1항에 있어서,
    상기 인증 단계는,
    상기 사용자의 사용자 단말이, 소정의 웹 서비스 제공 시스템에 로그인을 요청하는 단계;
    상기 웹 서비스 제공 시스템이, 상기 로그인 요청에 응답하여 상기 신원 인증용 서버로 URL 리다이렉트(redirect)하는 단계;
    상기 신원 인증용 서버가, 논스를 생성하고, 상기 논스와 콜백 URL(callback URL)을 포함하는 디지털 정보를 QR 코드의 형태로 표시하기 위한 웹 페이지를 상기 사용자 단말에 전송하여 상기 사용자 단말에 상기 QR 코드가 표시되도록 하는 단계;
    상기 휴대단말이, 상기 사용자 단말에 표시된 QR 코드를 인식하여 상기 논스 및 콜백 URL을 획득하는 단계를 더 포함하되,
    상기 신원표현 데이터는 상기 논스를 더 포함하고,
    상기 신원표현 데이터의 유효성을 검증하는 단계는,
    상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 사용자 단말로 전송한 논스와 동일한지 여부를 확인하는 단계를 더 포함하고,
    상기 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계는,
    상기 휴대단말이, 상기 콜백 URL을 통해 상기 신원 인증 요청을 전송하는 단계를 포함하고,
    상기 블록체인 기반 신원 인증 방법은,
    상기 신원 인증 요청이 승인되면, 상기 신원 인증용 서버가, 상기 사용자 단말이 요청한 로그인이 승인되도록 하기 위한 소정의 제어정보를 상기 웹 서비스 제공 시스템으로 전송하는 단계를 더 포함하는 블록체인 기반 신원 인증 방법.
  6. 데이터 처리장치에 설치되며 제1항 내지 제5항 중 어느 한 항에 기재된 방법을 수행하기 위한 매체에 기록된 컴퓨터 프로그램.
  7. 사용자의 휴대단말 및 신원 인증용 서버를 포함하며, 블록체인 기반 신원 인증 방법을 수행하는 블록체인 기반 신원 인증 시스템으로서,
    상기 블록체인 기반 신원 인증 방법은, 발급 단계; 및 인증 단계를 포함하고,
    상기 발급 단계는,
    상기 휴대단말이, 신규 발급된 사용자의 탈중앙 ID 및 상기 사용자의 공개키를 포함하는 문서 데이터를 블록체인에 등록하고, 상기 공개키에 대응되는 상기 사용자의 개인키 및 상기 사용자의 탈중앙 ID를 상기 휴대단말에 저장하는 단계;
    상기 휴대단말이, 상기 신원 인증용 서버로 신원증명 발급 요청을 제출하는 단계-여기서, 상기 신원증명 발급 요청은, 상기 사용자의 탈중앙 ID를 포함함;
    상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계;
    상기 신원 인증용 서버가, 상기 탈중앙 ID의 유효성이 검증되면, 상기 사용자의 개인정보를 획득하고, 상기 사용자의 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 발급하여 상기 휴대단말로 전송하는 단계-상기 신원증명 데이터는 상기 탈중앙 ID 및 상기 개인정보를 포함하며, 상기 신원증명 데이터의 전자서명은 상기 신원증명 데이터를 상기 신원 인증용 서버의 개인키로 서명한 데이터임; 및
    상기 휴대단말이, 상기 신원증명 데이터 및 상기 신원증명 데이터의 전자서명을 상기 사용자 단말에 저장하는 단계를 포함하고,
    상기 탈중앙 ID의 유효성을 검증하는 단계는,
    상기 신원 인증용 서버가, 상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계; 및
    상기 신원 인증용 서버가, 상기 휴대단말이 상기 사용자의 개인키로 소정의 확인 대상 정보를 암호화한 정보가 상기 문서 데이터에 포함되어 있는 공개키에 의해 올바로 복호화되는지 여부를 확인하는 단계를 포함하고,
    상기 인증 단계는,
    상기 휴대단말이, 상기 사용자의 신원표현 데이터 및 상기 신원표현 데이터의 전자서명을 생성하는 단계-여기서, 상기 신원표현 데이터는 상기 탈중앙 ID 및 상기 신원증명 데이터에 포함된 개인정보 중 적어도 일부를 포함하며, 상기 신원표현 데이터의 전자서명은 상기 신원표현 데이터를 상기 사용자의 개인키로 서명한 데이터임;
    상기 휴대단말이, 상기 신원표현 데이터, 상기 신원표현 데이터의 전자서명 및 상기 신원증명 데이터의 전자서명을 포함하는 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계;
    상기 신원 인증용 서버가, 상기 신원 인증 요청에 응답하여, 상기 신원표현 데이터의 유효성을 검증하는 단계; 및
    상기 신원표현 데이터의 유효성이 검증되면, 상기 신원 인증용 서버가, 상기 신원 인증 요청을 승인하는 단계를 포함하되,
    상기 신원표현 데이터의 유효성을 검증하는 단계는,
    상기 블록체인으로부터 상기 탈중앙 ID에 상응하는 상기 문서 데이터를 획득하는 단계;
    상기 문서 데이터에 포함된 상기 사용자의 공개키로 상기 신원표현 데이터의 전자서명을 검증하는 단계; 및
    상기 신원증명 데이터의 전자서명을 상기 발급 시스템의 공개키로 검증하는 단계를 포함하는 블록체인 기반 신원 인증 시스템.
  8. 제7항에 있어서,
    상기 인증 단계는,
    상기 신원 인증용 서버가, 논스(nonce)를 생성하여 상기 휴대단말로 제공하는 단계를 더 포함하고,
    상기 신원표현 데이터는 상기 논스를 더 포함하되,
    상기 신원표현 데이터의 유효성을 검증하는 단계는,
    상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 휴대단말로 전송한 논스와 동일한지 여부를 확인하는 단계를 더 포함하는 블록체인 기반 신원 인증 시스템.
  9. 제7항에 있어서,
    상기 블록체인 기반 신원 인증 방법은,
    상기 신원 인증용 서버가, 상기 사용자의 식별정보를 데이터베이스에 사전 등록하는 단계를 더 포함하고,
    상기 신원증명 발급 요청은, 상기 사용자의 식별정보를 더 포함하되,
    상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 응답하여, 상기 탈중앙 ID의 유효성을 검증하는 단계는,
    상기 신원 인증용 서버가, 상기 신원증명 발급 요청에 포함된 식별정보에 상응하는 사용자로부터 신원증명 발급에 대한 승인을 획득하는 단계를 더 포함하는 블록체인 기반 신원인증 시스템.
  10. 제7항에 있어서,
    상기 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계는,
    상기 휴대단말이, 상기 신원 인증 요청을 QR 코드의 형태로 상기 휴대단말의 디스플레이 장치에 표시하고, QR 코드 리더기를 통해 상기 신원 인증용 서버로 제출하는 단계를 포함하고,
    상기 블록체인 기반 신원 인증 방법은,
    상기 신원 인증 요청을 승인되면, 상기 신원 인증용 서버가, 상기 QR 코드 리더기에 대응하는 소정의 출입문 잠금 장치가 열리도록 제어하는 단계를 더 포함하는 블록체인 기반 신원인증 시스템.
  11. 제7항에 있어서,
    상기 인증 단계는,
    상기 사용자의 사용자 단말이, 소정의 웹 서비스 제공 시스템에 로그인을 요청하는 단계;
    상기 웹 서비스 제공 시스템이, 상기 로그인 요청에 응답하여 상기 신원 인증용 서버로 URL 리다이렉트(redirect)하는 단계;
    상기 신원 인증용 서버가, 논스를 생성하고, 상기 논스와 콜백 URL(callback URL)을 포함하는 디지털 정보를 QR 코드의 형태로 표시하기 위한 웹 페이지를 상기 사용자 단말에 전송하여 상기 사용자 단말에 상기 QR 코드가 표시되도록 하는 단계; 및
    상기 휴대단말이, 상기 사용자 단말에 표시된 QR 코드를 인식하여 상기 논스 및 콜백 URL을 획득하는 단계를 더 포함하되,
    상기 신원표현 데이터는 상기 논스를 더 포함하고,
    상기 신원표현 데이터의 유효성을 검증하는 단계는,
    상기 신원표현 데이터에 포함된 논스가 상기 신원 인증용 서버가 상기 사용자 단말로 전송한 논스와 동일한지 여부를 확인하는 단계를 더 포함하고,
    상기 신원 인증 요청을 상기 신원 인증용 서버로 제출하는 단계는,
    상기 휴대단말이, 상기 콜백 URL을 통해 상기 신원 인증 요청을 전송하는 단계를 포함하고,
    상기 블록체인 기반 신원 인증 방법은,
    상기 신원 인증 요청이 승인되면, 상기 신원 인증용 서버가, 상기 사용자 단말이 요청한 로그인이 승인되도록 하기 위한 소정의 제어정보를 상기 웹 서비스 제공 시스템으로 전송하는 단계를 더 포함하는 블록체인 기반 신원인증 시스템.
KR1020230032582A 2023-03-13 2023-03-13 블록체인 기반 신원 인증 방법 및 신원 인증 시스템 Pending KR20240138828A (ko)

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)

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