KR102130651B1 - 블록체인 기반 사용자 인증 방법 및 장치 - Google Patents

블록체인 기반 사용자 인증 방법 및 장치 Download PDF

Info

Publication number
KR102130651B1
KR102130651B1 KR1020180094457A KR20180094457A KR102130651B1 KR 102130651 B1 KR102130651 B1 KR 102130651B1 KR 1020180094457 A KR1020180094457 A KR 1020180094457A KR 20180094457 A KR20180094457 A KR 20180094457A KR 102130651 B1 KR102130651 B1 KR 102130651B1
Authority
KR
South Korea
Prior art keywords
token
information
authentication
user
management server
Prior art date
Application number
KR1020180094457A
Other languages
English (en)
Other versions
KR20200018967A (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 KR1020180094457A priority Critical patent/KR102130651B1/ko
Priority to US16/539,341 priority patent/US11582234B2/en
Publication of KR20200018967A publication Critical patent/KR20200018967A/ko
Application granted granted Critical
Publication of KR102130651B1 publication Critical patent/KR102130651B1/ko
Priority to US18/092,878 priority patent/US20230254310A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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/321Cryptographic 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 a third party or a trusted authority
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/385Payment protocols; Details thereof using an alias or single-use codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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
    • 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/56Financial cryptography, e.g. electronic payment or e-cash

Abstract

인증 장치로부터 사용자의 인증 정보 및 상기 인증 장치의 고유 값을 포함하는 트랜잭션을 수신하는 단계, 인증 정보를 기초로 스마트 컨트랙트에 저장된 사용자의 토큰을 결정하는 단계 및 토큰의 유효성 정보, 토큰의 소유권 정보 및 트랜잭션을 기초로 사용자를 인증하는 단계를 포함하는 인증 장치와 블록체인 네트워크를 구성하는 인증 관리 서버의 사용자 인증 방법이 개시된다.

Description

블록체인 기반 사용자 인증 방법 및 장치{METHOD AND APPARATUS FOR AUTHENTICATING USER BASED ON BLOCKCHAIN}
본 발명은 블록체인 기반 사용자 인증 방법 및 장치에 관한 것으로, 더욱 상세하게는 스마트 컨트랙트(smart contract)를 이용하여 생성한 대체 불가능한(non-fungible) 토큰을 기초로 사용자를 인증하는 방법 및 장치에 관한 것이다.
일반적으로 사용자 인증은 대부분 중앙 서버에서 사용자 신원을 확인한 후 해당 인증 정보를 사용자에게 전송하며, 사용자는 전송된 인증 정보를 스마트폰에 저장하고, 추후 저장된 인증 정보를 제출하여 검증받는 방식으로 수행되고 있다. 여기서, 인증 정보는 기본적으로 복제 및 위변조가 불가능하여야 하며, 추가적으로 다른 사용자에게 위임할 수 있는 기능도 지원할 수 있어야 한다.
이러한 방법은 중앙 서버에서 인증 정보를 스마트폰에 전달하여 저장하는 경우, 스마트폰에 저장된 인증 정보의 복제가 불가능하기 때문에 스마트폰 분실 시 또는 변경 시 인증 정보를 재발급 받아야 하며, 인증 정보의 위임이 원칙적으로 불가능한 불편함이 있다. 또한, 인증 정보의 위변조를 불가능하도록 인증 정보를 발급하는 중앙 서버의 비밀키를 이용한 서명이 요구되므로, 인증 과정의 복잡도가 높아지는 문제점도 있다.
최근 블록체인 기술이 확산됨에 따라, 블록체인을 사용자 인증에 적용하는 방법이 대두되고 있다. 통상적인 블록체인을 이용한 사용자 인증 방법은 공개키 인프라(public key infrastructure)를 이용하여 사용자에게 발급되는 공개키 및 개인키 쌍 중 공개키를 블록체인에 저장 및 유지하고, 사용자만이 알고 있는 개인키를 이용하여 서명 정보를 생성하고, 이를 블록체인에 저장된 공개키로 복호화함으로써 사용자를 인증하는 방법에 따라 수행되고 있다.
기존의 블록체인을 이용한 사용자 인증 방법은 사용자에게 발급된 공개키를 중심으로 하는 정보만을 블록체인에 저장하는 형태이므로, 다양한 속성 정보를 설정할 수 없다는 한계점을 가지며, 또한 사용자 공개키 정보가 블록체인에 저장되어 있어 인증 실행에 따른 프라이버시 노출의 문제를 가진다.
다른 통상적인 블록체인을 이용한 사용자 인증 방법(예를 들어, Civic)은 초기에 사용자의 데이터 증명 값을 블록체인에 저장하고, 추후 사용자 인증 기반의 제어 장치가 사용자로부터 전달받은 데이터 증명 값과 블록체인에 저장된 데이터 증명 값을 비교하여 사용자 인증을 처리하도록 수행되고 있다. 다만, 이러한 방법도 사용자가 소유한 데이터를 중심으로 인증 과정이 처리되기 때문에 복제가 가능하며 소유 데이터를 다른 사용자에게 위임하더라도 이전 소유주의 데이터 삭제 여부를 확인하기 어려운 문제점이 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 블록체인 기반 사용자 인증 방법을 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 블록체인 기반의 사용자 인증을 위한 토큰 발행 방법을 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 블록체인을 기반으로 사용자를 인증하는 인증 관리 서버를 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 블록체인을 기반으로 토큰을 발행하는 인증 관리 서버를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 사용자 인증 방법은, 인증 장치로부터 사용자의 인증 정보 및 인증 장치의 고유 값을 포함하는 트랜잭션을 수신하는 단계, 인증 정보를 기초로 스마트 컨트랙트에 저장된 사용자의 토큰을 결정하는 단계 및 토큰의 유효성 정보, 토큰의 소유권 정보 및 트랜잭션을 기초로 사용자를 인증하는 단계를 포함할 수 있다.
여기서, 사용자를 인증하는 단계는, 토큰의 유효성 정보를 기초로 토큰이 유효한지 결정하는 단계 및 토큰이 유효한 경우, 토큰의 소유권 정보 및 트랜잭션을 기초로 사용자를 인증하는 단계를 포함할 수 있다.
여기서, 사용자의 인증에 대한 결과를 상기 인증 장치로 송신하는 단계를 더 포함할 수 있다.
여기서, 토큰은, 스마트 컨트랙트에 대한 정보가 발행된 블록체인 네트워크에서 고유의 값을 포함할 수 있다.
여기서, 인증 정보는, 스마트 컨트랙트의 주소 정보 및 사용자 단말의 고유한 주소 정보를 포함할 수 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 토큰 발행 방법은, 사용자 단말로부터 사용자의 인증 정보, 토큰의 속성값을 설정하는 매개변수 및 토큰 생성 요청 정보를 포함하는 트랜잭션을 수신하는 단계, 스마트 컨트랙트의 정책 정보 및 인증 정보를 기초로 사용자의 토큰을 생성할지를 결정하는 단계 및 결정에 따라 정책 정보 및 트랜잭션을 기초로 유효성 정보 및 소유권 정보를 포함하는 사용자의 토큰을 생성하여 블록체인 네트워크에 발행하는 단계를 포함할 수 있다.
여기서, 토큰의 생성에 대한 결과를 사용자 단말로 송신하는 단계를 더 포함할 수 있다.
여기서, 토큰은, 스마트 컨트랙트에 대한 정보가 발행된 블록체인 네트워크에서 고유의 값을 포함할 수 있다.
여기서, 인증 정보는, 스마트 컨트랙트의 주소 정보 및 사용자 단말의 고유한 주소 정보를 포함할 수 있다.
여기서, 매개변수는, 사용자 단말이 인증하는 인증 장치에 대한 정보를 포함할 수 있다.
상기 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 인증 관리 서버는, 프로세서(processor) 및 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고, 적어도 하나의 명령은, 인증 장치로부터 사용자의 인증 정보 및 인증 장치의 고유 값을 포함하는 트랜잭션을 수신하도록 실행될 수 있고, 인증 정보를 기초로 스마트 컨트랙트에 저장된 사용자의 토큰을 결정하도록 실행될 수 있고, 토큰의 유효성 정보, 토큰의 소유권 정보 및 트랜잭션을 기초로 사용자를 인증하도록 실행될 수 있다.
여기서, 적어도 하나의 명령은, 토큰의 유효성 정보를 기초로 토큰이 유효한지 결정하도록 실행될 수 있고, 토큰이 유효한 경우, 토큰의 소유권 정보 및 트랜잭션을 기초로 사용자를 인증하도록 실행될 수 있다.
여기서, 적어도 하나의 명령은, 사용자의 인증에 대한 결과를 인증 장치로 송신하도록 실행될 수 있다.
여기서, 토큰은, 스마트 컨트랙트에 대한 정보가 발행된 블록체인 네트워크에서 고유의 값을 포함할 수 있다.
여기서, 인증 정보는, 스마트 컨트랙트의 주소 정보 및 사용자 단말의 고유한 주소 정보를 포함할 수 있다.
상기 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 인증 관리 서버는, 프로세서(processor) 및 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고, 적어도 하나의 명령은, 사용자 단말로부터 사용자의 인증 정보, 토큰의 속성값을 설정하는 매개변수 및 토큰 생성 요청 정보를 포함하는 트랜잭션을 수신하도록 실행될 수 있고, 스마트 컨트랙트의 정책 정보 및 인증 정보를 기초로 사용자의 토큰을 생성할지를 결정하도록 실행될 수 있고, 결정에 따라 정책 정보 및 트랜잭션을 기초로 유효성 정보 및 소유권 정보를 포함하는 사용자의 토큰을 생성하여 블록체인 네트워크에 발행하도록 실행될 수 있다.
여기서, 적어도 하나의 명령은, 토큰의 생성에 대한 결과를 사용자 단말로 송신하도록 실행될 수 있다.
여기서, 토큰은, 스마트 컨트랙트에 대한 정보가 발행된 블록체인 네트워크에서 고유의 값을 포함할 수 있다.
여기서, 인증 정보는, 스마트 컨트랙트의 주소 정보 및 사용자 단말의 고유한 주소 정보를 포함할 수 있다.
여기서, 매개변수는, 사용자 단말이 인증하는 인증 장치에 대한 정보를 포함할 수 있다.
본 발명에 따르면, 대체 불가능한 토큰을 이용하여 사용자 인증을 수행하여 높은 보안성을 제공할 수 있다.
본 발명에 따르면, 대체 불가능한 토큰에 대하여 소유권 이전 및 위임 등이 가능하여 높은 보안성을 유지하며, 유연한 사용자 인증을 제공할 수 있다.
본 발명에 따르면, 토큰의 위임을 통해 차량의 키 인증 및 건물 등의 출입/시동 인증에도 블록체인을 적용할 수 있다.
도 1은 본 발명의 일 실시예에 따른 토큰 발행 방법의 개념도이다.
도 2는 본 발명의 일 실시예에 따른 사용자 인증 방법의 개념도이다.
도 3은 본 발명의 일 실시예에 따른 사용자 단말의 블록 구성도이다.
도 4는 본 발명의 일 실시예에 따른 인증 관리 서버의 블록 구성도이다.
도 5는 본 발명의 다른 실시예에 따른 인증 관리 서버의 블록 구성도이다.
도 6은 본 발명의 일 실시예에 따른 토큰 발행 방법을 설명하는 순서도이다.
도 7은 본 발명의 일 실시예에 따른 사용자 인증 방법을 설명하는 순서도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는"이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. 이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명의 일 실시예에 따른 블록체인을 이용한 사용자 인증 방법은 사용자 인증에 이용되는 토큰을 발행하는 방법과 토큰을 이용하여 사용자를 인증하는 방법으로 구분될 수 있으며, 각 방법에 대한 상세한 설명은 도면과 함께 후술하겠다.
도 1은 본 발명의 일 실시예에 따른 토큰 발행 방법의 개념도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 사용자 인증을 위한 토큰을 발행하는 방법은 사용자 단말 및 블록체인 네트워크의 스마트 컨트랙트(smart contract)를 관리하는 인증 관리 서버 간의 데이터 송수신에 의해 수행될 수 있다. 여기서, 사용자 단말은 사용자 인증을 위해 사용자가 사용하는 장치를 의미할 수 있으며, 스마트 폰 또는 컴퓨터 등 컴퓨팅이 가능한 스마트 디바이스를 모두 지칭할 수 있다.
사용자 단말은 사용자 인증을 위한 인증 정보, 토큰의 속성값을 설정하는 매개변수 및 토큰 생성 요청 정보를 포함하는 토큰 생성 요청 트랜잭션(transaction)을 인증 관리 서버가 관리하는 블록체인 네트워크에 전파할 수 있으며, 후술하겠으나, 토큰 검증, 토큰 위임, 토큰의 소유권 공유, 토큰의 소유권 이전 등의 요청 트랜잭션도 블록체인 네트워크에 전파할 수 있다.
여기서, 인증 정보는 사용자 인증에 이용되는 스마트 컨트랙트의 주소 값, 사용자 단말의 고유한 주소 값 및 사용자 정보 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 또한, 인증 정보 및 매개변수는 사용자 단말에 이전부터 내장되어 있을 수 있고, 사용자 인증을 위해 추가적으로 저장될 수도 있다. 사용자 단말은 트랜잭션 생성 시 사용되는 개인키를 저장 및 관리할 수 있다.
인증 관리 서버는 사용자 단말의 트랜잭션 전파에 따라 블록체인 네트워크 상의 스마트 컨트랙트를 관리할 수 있다. 인증 관리 서버는 사용자 단말에 의해 토큰 생성 요청 트랜잭션이 블록체인 네트워크에 전파된 경우, 트랜잭션에 포함된 정보를 이용하여 스마트 컨트랙트를 특정 또는 결정할 수 있으며, 스마트 컨트랙트의 정책에 기초하여 대체 불가능한 토큰을 생성할 수 있다.
대체 불가능한 토큰은 블록체인 네트워크에서 고유한 값을 포함할 수 있으며, 적어도 하나의 속성값을 더 포함할 수 있다. 여기서, 속성값은 사용자 인증과 관련하여 매개변수에 의해 설정되는 정보 또는 값을 의미할 수 있으며, 토큰의 유효 기간, 사용 환경, 인증 범위 및 소유자 정보 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 생성된 토큰은 속성값에 따라 사용자에게 종속될 수 있으며, 블록체인 내의 상태값으로 저장될 수 있다. 인증 관리 서버는 토큰 생성하여 저장한 후, 토큰 생성의 완료 정보를 사용자 단말에 제공할 수 있다. 다시 말해, 인증 관리 서버는 생성한 토큰에 대한 정보를 포함한 블록을 블록체인 네트워크에 전파하여 토큰을 발행할 수 있다.
도 2는 본 발명의 일 실시예에 따른 사용자 인증 방법의 개념도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 토큰을 이용한 사용자 인증 방법은 사용자 단말, 인증 장치 및 스마트 컨트랙트를 관리하는 인증 관리 서버 간의 데이터 송수신에 의해 수행될 수 있다. 여기서, 인증 장치는 사용자가 사용자 인증을 통해 이용하고자 하는 장치를 의미할 수 있으며, 호텔 룸 도어 키 장치, 건물 출입 장치 또는 자동차 도어 키 장치 등의 컴퓨팅이 가능한 스마트 디바이스를 모두 지칭할 수 있다.
우선, 사용자 단말은 사용자 인증을 위해 사용자 단말의 고유한 주소 값 및 스마트 컨트랙트 주소 값을 인증 장치로 송신할 수 있다. 여기서, 사용자 단말의 고유한 주소 값은 사용자의 지갑 주소 값을 의미할 수 있으나, 이에 한정하는 것은 아니다. 여기서, 지갑 주소 값은 블록체인 네트워크에서 이용될 수 있는 가상 화폐 등을 관리하는 지갑의 주소 값을 의미할 수 있다. 사용자 단말은 QR(Quick Response) 코드, NFC(Near Field Communication) 또는 블루투스(bluetooth) 등의 무선 통신 방법 중 어느 하나를 이용하여 사용자 단말의 고유한 주소 값 및 스마트 컨트랙트 주소 값을 인증 장치로 송신할 수 있으나, 송신 방법이 이에 한정되는 것은 아니다. 여기서, 사용자 단말의 고유한 주소 값 및 스마트 컨트랙트 주소 값은 인증 정보로 지칭할 수도 있고, 도 1의 인증 정보와 포함된 정보가 상이할 수 있으나, 이에 한정되는 것은 아니다.
인증 장치는 수신한 인증 정보 및 자신의 고유 값을 포함하는 트랜잭션을 블록체인 네트워크에 전파할 수 있다. 여기서, 인증 장치는 직접 트랜잭션을 블로체인 네트워크에 전파할 수 있고, 백엔드 서버(back-end server)가 인증 장치로부터 인증 정보 및 인증 장치의 고유 값을 수신하여 트랜잭션을 블록체인 네트워크에 전파할 수도 있으나, 이에 한정되는 것은 아니다.
여기서, 인증 장치의 고유 값은 사용자 인증에 이용될 수 있는 추가 정보를 의미할 수 있으며, 인증 장치의 위치, 모델 및 ID(Identification) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.
인증 관리 서버는 인증 장치에 의해 트랜잭션이 전파된 경우, 트랜잭션에 포함된 스마트 컨트랙트의 주소 값을 기초로 스마트 컨트랙트에 대한 토큰의 유효성을 확인할 수 있고, 토큰에 대한 소유권을 검증할 수 있다. 다시 말해, 인증 관리 서버는 토큰의 속성값 및 전파된 트랜잭션을 기초로 만료 기간 또는 권한 등을 확인할 수 있으며, 토큰의 소유권을 가지는 사용자 정보와 트랜잭션에 포함된 사용자 정보를 비교 검증하여 사용자 인증을 수행할 수 있다.
인증 관리 서버는 비교 검증 결과, 토큰이 유효하고, 사용자 인증에 성공한 경우, 인증 장치가 전파한 트랜잭션을 포함하여 블록을 발행함으로써 블록체인을 연결할 수 있으며, 인증 완료에 대한 정보를 인증 장치로 송신할 수 있다. 다만, 인증 관리 서버는 토큰이 유효하지 않거나, 사용자 인증에 실패한 경우, 인증 장치가 전파한 트랜잭션을 포함한 블록을 발행하지 않을 수 있으며, 인증 실패에 대한 정보를 인증 장치로 송신할 수 있으나, 인증과 관련된 정보를 인증 장치로 송신하지 않을 수도 있다.
본 발명의 일 실시예에 따른 토큰을 이용한 사용자 인증 방법은 사용자 단말이 토큰 검증, 토큰 위임, 토큰의 소유권 공유, 토큰의 소유권 이전 등의 요청 트랜잭션을 블록체인 네트워크에 전파한 경우, 이를 반영하여 상술한 과정의 비교 검증을 수행할 수 있다.
예를 들어, 사용자 단말이 토큰의 소유권 위임 요청 트랜잭션을 블록체인 네트워크에 전파한 경우, 인증 관리 서버는 위임 요청 트랜잭션을 반영하여 토큰이 위임된 자의 정보와 인증 장치가 전파한 트랜잭션에 포함된 정보를 비교 검증할 수 있다.
도 3은 본 발명의 일 실시예에 따른 사용자 단말의 블록 구성도이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 사용자 단말(300)은 인증 관리부(310) 및 지갑 관리부(320)를 포함할 수 있다. 또한, 사용자 단말(300)은 도 3에 도시하지 않았으나, 블록체인 네트워크에 트랜잭션을 전파하고 결과를 수신하기 위한 통신부를 더 포함할 수 있다. 여기서, 통신부는 이더리움 상 web3 기반 원격 프로시저 호출(JavaScript Object Notation-Remote Procedure Call, JSON-RPC)을 담당하는 모듈 또는 하이퍼레저 패브릭(hyperledger fabric) 상 패브릭 SDK(Software Development Kit) 기반 트랜잭션 제출을 담당하는 모듈을 포함할 수 있다.
인증 관리부(310)는 매개변수 및 스마트 컨트랙트의 주소 값을 관리 또는 저장할 수 있으며, 후술하는 지갑 관리부(320)가 관리 또는 저장하고 있는 사용자 단말의 고유한 값 또는 사용자 지갑의 고유한 주소 값과 함께 이를 이용하여 토큰 발행 또는 사용자 인증을 수행할 수 있다. 또한, 인증 관리부(310)는 매개변수, 스마트 컨트랙트의 주소 값 및 지갑 관리부(320)의 사용자 단말의 고유한 값 또는 사용자 지갑의 고유한 주소 값 중 적어도 하나를 이용하여 토큰 검증, 토큰 위임, 토큰의 소유권 공유 및 토큰의 소유권 이전 등을 수행할 수도 있다.
지갑 관리부(320)는 토큰 발행, 토큰 검증, 토큰 위임, 토큰의 소유권 공유 및 토큰의 소유권 이전 등을 위한 트랜잭션 작성 또는 생성에 이용되는 개인키를 관리할 수 있으며, 사용자 단말의 고유한 값 또는 사용자 지갑의 고유한 주소 값을 관리 또는 저장하고 있을 수 있다.
도 4는 본 발명의 일 실시예에 따른 인증 관리 서버의 블록 구성도이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 인증 관리 서버(400)는 토큰 생성부(410), 정책 관리부(420) 및 토큰 관리부(430)를 포함할 수 있다. 또한, 인증 관리 서버(400)은 도 4에 도시하지 않았으나, 블록체인 네트워크에 트랜잭션 또는 블록을 전파하고, 결과를 수신하기 위한 통신부를 더 포함할 수 있다.
토큰 생성부(410)는 사용자 단말이 전파한 토큰 생성 요청 트랜잭션을 수신한 경우, 토큰 생성 요청 트랜잭션에 포함된 정보 및 토큰 정책 정보를 기초로 사용자의 토큰을 생성할 수 있다. 다시 말해, 토큰 생성부(410)는 토큰 생성 요청 트랜잭션에 포함된 매개변수, 인증 정보 및 토큰 생성 요청 정보를 기초로 후술하는 정책 관리부(420)의 토큰 정책 정보에 부합하는지 판단할 수 있으며, 토큰 정책 정보에 부합하는 경우, 토큰을 생성할 수 있다. 여기서, 인증 정보는 사용자 단말의 고유한 값 또는 사용자 지갑의 고유한 주소 값을 포함할 수 있다.
정책 관리부(420)는 토큰 생성을 위한 정책 정보를 관리 또는 저장할 수 있으며, 일정한 주기마다 또는 변경사항이 존재하는 경우마다 정책 정보를 업데이트할 수 있다. 여기서, 정책 정보는 토큰 생성이 허용되는 사용자의 소속 정보 등을 포함할 수 있으며, 인증 정보에 포함된 사용자의 소속 정보와 비교하여 토큰 생성을 결정할 수 있으나, 이에 한정되는 것은 아니다.
토큰 관리부(430)는 인증 장치가 전파한 사용자 단말의 인증 정보 및 인증 장치의 고유의 값을 포함하는 트랜잭션을 수신한 경우, 이를 기초로 토큰 검증을 통한 사용자 인증, 토큰 위임, 토큰의 소유권 공유 및 토큰의 소유권 이전 등을 수행할 수 있다. 보다 상세히 설명하면, 토큰 관리부(430)는 사용자 인증을 위한 트랜잭션을 수신한 경우, 트랜잭션에 포함된 정보를 기초로 토큰의 유효성을 검증할 수 있으며, 유효성 검증 결과에 따라 토큰이 유효한 것으로 판단한 경우, 토큰의 소유권을 확인하여 사용자를 인증할 수 있다. 또한, 토큰 관리부(430)는 토큰 위임 및 토큰의 소유권 공유 등의 트랜잭션을 수신한 경우, 해당 정보를 토큰에 반영하여 토큰의 소유권 정보를 수정할 수 있다.
통신부는 트랜잭션 또는 블록을 블록체인 네트워크에 전파할 수 있으며, 트랜잭션 또는 블록을 블록체인 네트워크로부터 수신할 수도 있다. 다시 말해, 통신부는 사용자 인증 또는 토큰의 위임 등과 관련된 정보에 대한 트랜잭션 또는 블록을 블록체인 네트워크에 전파할 수 있다. 또한, 통신부는 토큰 생성의 완료 정보를 사용자 단말로 송신할 수 있고, 사용자 인증 결과에 대한 정보를 인증 장치로 송신할 수도 있다.
도 5는 본 발명의 다른 실시예에 따른 인증 관리 서버의 블록 구성도이다.
도 5를 참조하면, 본 발명의 일 실시예에 따른 인증 관리 서버(500)는 적어도 하나의 프로세서(510), 메모리(520) 및 저장 장치(530)를 포함할 수 있다. 인증 관리 서버(500)는 사용자 단말 및 인증 장치와 블록체인 네트워크를 구성할 수 있다.
프로세서(510)는 메모리(520) 및/또는 저장 장치(530)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(510)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(520)와 저장 장치(530)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(520)는 읽기 전용 메모리(read only memory, ROM) 및/또는 랜덤 액세스 메모리(random access memory, RAM)로 구성될 수 있다.
메모리(520)는 프로세서(510)를 통해 실행되는 적어도 하나의 명령을 저장하고 있을 수 있다. 적어도 하나의 명령은 사용자 인증을 위해 인증 장치로부터 사용자의 인증 정보 및 인증 장치의 고유 값을 포함하는 트랜잭션을 수신하는 명령, 인증 정보를 기초로 스마트 컨트랙트에 저장된 사용자의 토큰을 결정하는 명령 및 토큰의 유효성 정보, 토큰의 소유권 정보 및 트랜잭션을 기초로 상기 사용자를 인증하는 명령을 포함할 수 있다.
여기서, 적어도 하나의 명령은 토큰의 유효성 정보를 기초로 토큰이 유효한지 결정하는 명령, 토큰이 유효한 경우, 토큰의 소유권 정보 및 트랜잭션을 기초로 사용자를 인증하는 명령 및 사용자의 인증에 대한 결과를 인증 장치로 송신하는 명령 중 적어도 하나를 더 포함할 수 있다.
또한, 적어도 하나의 명령은 토큰 발행을 위해 사용자 단말로부터 사용자의 인증 정보, 토큰의 속성값을 설정하는 매개변수 및 토큰 생성 요청 정보를 포함하는 트랜잭션을 수신하는 명령, 스마트 컨트랙트의 정책 정보 및 인증 정보를 기초로 사용자의 토큰을 생성할지를 결정하는 명령 및 결정에 따라 정책 정보 및 트랜잭션을 기초로 유효성 정보 및 소유권 정보를 포함하는 사용자의 토큰을 생성하여 블록체인 네트워크에 발행하는 명령을 포함할 수 있다.
여기서, 적어도 하나의 명령은 토큰의 생성에 대한 결과를 사용자 단말로 송신하는 명령을 더 포함할 수 있다.
여기서, 토큰은 스마트 컨트랙트에 대한 정보가 발행된 블록체인 네트워크에서 고유의 값을 가질 수 있으며, 인증 정보는 스마트 컨트랙트의 주소 정보 및 상기 사용자 단말의 고유한 주소 정보를 포함할 수 있고, 매개변수는 사용자 단말이 인증하는 인증 장치에 대한 정보를 포함할 수 있다.
사용자 단말 및 인증 장치도 인증 관리 서버와 마찬가지로 적어도 하나의 프로세서, 메모리 및 저장 장치를 포함할 수 있다.
도 6은 본 발명의 일 실시예에 따른 토큰 발행 방법을 설명하는 순서도이다.
도 6을 참조하면, 본 발명의 일 실시예에 따른 토큰 발행 방법은 우선 사용자 단말이 인증 정보, 토큰 생성 요청 정보 및 매개변수를 포함하는 트랜잭션을 생성할 수 있으며(S610), 생성한 트랜잭션을 블록체인 네트워크에 전파할 수 있다(S620). 여기서, 인증 정보는 스마트 컨트랙트의 주소 값 및 사용자 단말의 고유한 주소 값을 포함할 수 있으며, 사용자 단말의 고유한 주소 값은 사용자의 지갑 주소 값을 의미할 수 있으나, 이에 한정되는 것은 아니다. 또한, 매개변수는 토큰의 속성값을 설정하기 위한 정보 또는 값을 의미할 수 있다.
인증 관리 서버는 사용자 단말이 전파한 트랜잭션을 수신한 경우, 인증 정보 및 토큰 생성 정책 정보를 기초로 토큰 생성 여부를 결정할 수 있다(S630). 여기서, 토큰 생성 정책 정보는 인증 관리 서버의 정책 관리부가 관리하는 정책 정보를 의미할 수 있으며, 정책 정보는 토큰 생성이 허용되는 사용자의 소속 정보 등을 포함할 수 있다. 또한, 인증 정보는 사용자 소속 정보 등을 포함하는 사용자 정보를 포함할 수 있으며, 인증 관리 서버는 정책 정보의 토큰 생성이 허용되는 사용자의 소속 정보와 인증 정보의 사용자 소속 정보를 비교하여 토큰 생성 여부를 결정할 수 있다.
인증 관리 서버는 토큰을 생성하는 것으로 결정한 경우, 수신한 트랜잭션을 기초로 토큰을 생성할 수 있으며(S640), 생성한 토큰을 발행할 수 있다(S650). 여기서, 토큰은 스마트 컨트랙트에 상태값으로 저장될 수 있으며, 토큰 발행은 토큰에 대한 정보를 포함하는 트랜잭션 또는 블록을 블록체인 네트워크에 전파함으로써 수행될 수 있다.
이후, 인증 관리 서버는 토큰 발행 완료에 대한 정보를 사용자 단말로 송신할 수 있다(S660).
도 7은 본 발명의 일 실시예에 따른 사용자 인증 방법을 설명하는 순서도이다.
도 7을 참조하면, 본 발명의 일 실시예에 따른 사용자 인증 방법은 우선, 사용자 단말이 스마트 컨트랙트의 주소 및 사용자 단말의 고유한 주소 값을 포함하는 인증 정보를 인증 장치로 송신할 수 있다(S710). 여기서, 인증 장치는 사용자가 사용자 인증을 통해 이용하기 위한 장치를 의미할 수 있으며, 사용자 단말의 고유한 주소 값은 사용자의 지갑 주소 값을 의미할 수도 있다.
인증 장치는 사용자 단말로부터 수신한 인증 정보 및 인증 장치의 고유값을 포함하는 트랜잭션을 생성할 수 있으며(S720), 생성한 트랜잭션을 블록체인 네트워크에 전파할 수 있다(S730).
인증 관리 서버는 인증 장치가 전파한 트랜잭션에 포함된 정보를 기초로 해당 스마트 컨트랙트 및 토큰을 결정할 수 있으며(S740), 트랜잭션에 포함된 정보 및 토큰의 유효성 정보를 기초로 토큰이 유효한지 판단할 수 있다(S750). 인증 관리 서버는 토큰이 유효하다고 판단한 경우, 토큰의 소유권 정보 및 트랜잭션에 포함된 정보를 기초로 사용자 인증을 수행할 수 있으며(S760), 사용자 인증에 성공한 경우, 인증 결과에 대한 정보를 인증 장치로 송신할 수 있다(S770). 사용자는 상술한 과정에 따라 사용자 인증을 수행한 후, 인증 결과에 대한 정보를 수신한 인증 장치를 이용할 수 있다.
본 발명의 실시예에 따른 동작은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 프로그램 또는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터로 읽을 수 있는 프로그램 또는 코드가 저장되고 실행될 수 있다.
또한, 컴퓨터가 읽을 수 있는 기록매체는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다. 프로그램 명령은 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
본 발명의 일부 측면들은 장치의 문맥에서 설명되었으나, 그것은 상응하는 방법에 따른 설명 또한 나타낼 수 있고, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 상응한다. 유사하게, 방법의 문맥에서 설명된 측면들은 또한 상응하는 블록 또는 아이템 또는 상응하는 장치의 특징으로 나타낼 수 있다. 방법 단계들의 몇몇 또는 전부는 예를 들어, 마이크로프로세서, 프로그램 가능한 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이용하여) 수행될 수 있다. 몇몇의 실시예에서, 가장 중요한 방법 단계들의 하나 이상은 이와 같은 장치에 의해 수행될 수 있다.
실시예들에서, 프로그램 가능한 로직 장치(예를 들어, 필드 프로그머블 게이트 어레이)가 여기서 설명된 방법들의 기능의 일부 또는 전부를 수행하기 위해 사용될 수 있다. 실시예들에서, 필드 프로그머블 게이트 어레이는 여기서 설명된 방법들 중 하나를 수행하기 위한 마이크로프로세서와 함께 작동할 수 있다. 일반적으로, 방법들은 어떤 하드웨어 장치에 의해 수행되는 것이 바람직하다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (20)

  1. 인증 장치와 블록체인 네트워크를 구성하는 인증 관리 서버의 사용자 인증 방법으로서,
    상기 인증 장치로부터 사용자의 인증 정보 및 상기 인증 장치의 고유 값을 포함하는 트랜잭션을 수신하는 단계;
    상기 인증 정보를 기초로 스마트 컨트랙트에 저장된 상기 사용자의 토큰을 결정하는 단계;
    상기 토큰의 유효성 정보, 상기 토큰의 소유권 정보 및 상기 트랜잭션을 기초로 상기 사용자를 인증하는 단계; 및
    상기 토큰의 유효성 정보를 기초로 상기 토큰이 유효한지 결정하는 단계를 포함하는, 사용자 인증 방법.
  2. 청구항 1에 있어서,
    상기 사용자를 인증하는 단계는,
    상기 토큰이 유효한 경우, 상기 토큰의 소유권 정보 및 상기 트랜잭션을 기초로 상기 사용자를 인증하는 단계를 포함하는, 사용자 인증 방법.
  3. 청구항 1에 있어서,
    상기 사용자의 인증에 대한 결과를 상기 인증 장치로 송신하는 단계를 더 포함하는, 사용자 인증 방법.
  4. 청구항 1에 있어서,
    상기 토큰은,
    상기 스마트 컨트랙트에 대한 정보가 발행된 블록체인 네트워크에서 고유의 값을 포함하는, 사용자 인증 방법.
  5. 청구항 1에 있어서,
    상기 인증 정보는,
    상기 스마트 컨트랙트의 주소 정보 및 사용자 단말의 고유한 주소 정보를 포함하는, 사용자 인증 방법.
  6. 사용자 단말과 블록체인 네트워크를 구성하는 인증 관리 서버의 토큰 발행 방법으로서,
    상기 사용자 단말로부터 사용자의 인증 정보, 토큰의 속성값을 설정하는 매개변수 및 토큰 생성 요청 정보를 포함하는 트랜잭션을 수신하는 단계;
    스마트 컨트랙트의 정책 정보 및 상기 인증 정보를 기초로 상기 사용자의 토큰을 생성할지를 결정하는 단계; 및
    상기 결정에 따라 상기 정책 정보 및 상기 트랜잭션을 기초로 유효성 정보 및 소유권 정보를 포함하는 상기 사용자의 토큰을 생성하여 상기 블록체인 네트워크에 발행하는 단계를 포함하며,
    상기 토큰은,
    상기 스마트 컨트랙트에 대한 정보가 발행된 블록체인 네트워크에서 고유의 값을 포함하는, 토큰 발행 방법.
  7. 청구항 6에 있어서,
    상기 토큰의 생성에 대한 결과를 상기 사용자 단말로 송신하는 단계를 더 포함하는, 토큰 발행 방법.
  8. 삭제
  9. 청구항 6에 있어서,
    상기 인증 정보는,
    상기 스마트 컨트랙트의 주소 정보 및 상기 사용자 단말의 고유한 주소 정보를 포함하는, 토큰 발행 방법.
  10. 청구항 6에 있어서,
    상기 매개변수는,
    상기 사용자 단말이 인증하는 인증 장치에 대한 정보를 포함하는, 토큰 발행 방법.
  11. 인증 장치와 블록체인 네트워크를 구성하여 사용자 인증 방법을 수행하는 인증 관리 서버로서,
    프로세서(processor); 및
    상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고,
    상기 적어도 하나의 명령은,
    상기 인증 장치로부터 사용자의 인증 정보 및 상기 인증 장치의 고유 값을 포함하는 트랜잭션을 수신하도록 실행되고;
    상기 인증 정보를 기초로 스마트 컨트랙트에 저장된 상기 사용자의 토큰을 결정하도록 실행되고;
    상기 토큰의 유효성 정보, 상기 토큰의 소유권 정보 및 상기 트랜잭션을 기초로 상기 사용자를 인증하고; 그리고,
    상기 토큰의 유효성 정보를 기초로 상기 토큰이 유효한지 결정하도록 실행되는, 인증 관리 서버.
  12. 청구항 11에 있어서,
    상기 적어도 하나의 명령은,
    상기 토큰이 유효한 경우, 상기 토큰의 소유권 정보 및 상기 트랜잭션을 기초로 상기 사용자를 인증하도록 실행되는, 인증 관리 서버.
  13. 청구항 11에 있어서,
    상기 적어도 하나의 명령은,
    상기 사용자의 인증에 대한 결과를 상기 인증 장치로 송신하도록 실행되는, 인증 관리 서버.
  14. 청구항 11에 있어서,
    상기 토큰은,
    상기 스마트 컨트랙트에 대한 정보가 발행된 블록체인 네트워크에서 고유의 값을 포함하는, 인증 관리 서버.
  15. 청구항 11에 있어서,
    상기 인증 정보는,
    상기 스마트 컨트랙트의 주소 정보 및 사용자 단말의 고유한 주소 정보를 포함하는, 인증 관리 서버.
  16. 사용자 단말과 블록체인 네트워크를 구성하여 토큰 발행 방법을 수행하는 인증 관리 서버로서,
    프로세서(processor); 및
    상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고,
    상기 적어도 하나의 명령은,
    상기 사용자 단말로부터 사용자의 인증 정보, 토큰의 속성값을 설정하는 매개변수 및 토큰 생성 요청 정보를 포함하는 트랜잭션을 수신하도록 실행되고,
    스마트 컨트랙트의 정책 정보 및 상기 인증 정보를 기초로 상기 사용자의 토큰을 생성할지를 결정하도록 실행되고,
    상기 결정에 따라 상기 정책 정보 및 상기 트랜잭션을 기초로 유효성 정보 및 소유권 정보를 포함하는 상기 사용자의 토큰을 생성하여 상기 블록체인 네트워크에 발행하도록 실행되며,
    상기 토큰은
    상기 스마트 컨트랙트에 대한 정보가 발행된 블록체인 네트워크에서 고유의 값을 포함하는, 인증 관리 서버.
  17. 청구항 16에 있어서,
    상기 적어도 하나의 명령은,
    상기 토큰의 생성에 대한 결과를 상기 사용자 단말로 송신하도록 실행되는, 인증 관리 서버.
  18. 삭제
  19. 청구항 16에 있어서,
    상기 인증 정보는,
    상기 스마트 컨트랙트의 주소 정보 및 상기 사용자 단말의 고유한 주소 정보를 포함하는, 인증 관리 서버.
  20. 청구항 16에 있어서,
    상기 매개변수는,
    상기 사용자 단말이 인증하는 인증 장치에 대한 정보를 포함하는, 인증 관리 서버.
KR1020180094457A 2018-08-13 2018-08-13 블록체인 기반 사용자 인증 방법 및 장치 KR102130651B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020180094457A KR102130651B1 (ko) 2018-08-13 2018-08-13 블록체인 기반 사용자 인증 방법 및 장치
US16/539,341 US11582234B2 (en) 2018-08-13 2019-08-13 Method and apparatus for user authentication based on block chain
US18/092,878 US20230254310A1 (en) 2018-08-13 2023-01-03 Method and apparatus for user authentication based on block chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180094457A KR102130651B1 (ko) 2018-08-13 2018-08-13 블록체인 기반 사용자 인증 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200018967A KR20200018967A (ko) 2020-02-21
KR102130651B1 true KR102130651B1 (ko) 2020-07-06

Family

ID=69406660

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180094457A KR102130651B1 (ko) 2018-08-13 2018-08-13 블록체인 기반 사용자 인증 방법 및 장치

Country Status (2)

Country Link
US (2) US11582234B2 (ko)
KR (1) KR102130651B1 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11039314B2 (en) * 2014-04-29 2021-06-15 Taliware, Inc. Method for passive authentication of an individual using an individual's geo-location via a communication network and blockchain associated recording of individual's authentication data
US11522690B2 (en) * 2019-06-07 2022-12-06 Bengala Technologies, Llc Supply chain management system
US11140154B2 (en) 2019-09-26 2021-10-05 Bank Of America Corporation User authentication using tokens
US11329823B2 (en) 2019-09-26 2022-05-10 Bank Of America Corporation User authentication using tokens
US10749678B1 (en) * 2019-09-26 2020-08-18 Bank Of America Corporation User authentication using tokens
US11303629B2 (en) 2019-09-26 2022-04-12 Bank Of America Corporation User authentication using tokens
CN112184149A (zh) * 2020-09-15 2021-01-05 广西捷算资产交易市场服务有限公司 一种基于区块链新型产权认证方式
KR102494873B1 (ko) * 2020-10-27 2023-02-06 주식회사 온더 일반 연산 검증용 영지식 증명 서킷 기반 가상머신을 구현하기 위한 거래 수행장치
KR102431835B1 (ko) * 2020-11-16 2022-08-11 포항공과대학교 산학협력단 토큰 모델링 장치 및 이를 포함하는 데이터 무결성 검증 시스템 및 방법
US20220200808A1 (en) * 2020-12-18 2022-06-23 VeriTX Corp. Blockchain Tokenization of Aircraft and Other Complex Machinery
CN112818323A (zh) * 2020-12-29 2021-05-18 山西特信环宇信息技术有限公司 一种锥体区块链身份认证系统
CN113242246B (zh) * 2021-05-16 2022-09-20 西北工业大学 一种基于区块链的身份认证方法
WO2023277294A1 (en) * 2021-06-30 2023-01-05 Artifriends Inc. Apparatus and method for providing service of issuing media content token based on blockchain
KR102652497B1 (ko) * 2021-11-11 2024-03-29 블록체인랩스 주식회사 스마트 카드를 이용한 did 인증 방법 및 스마트 카드 장치
US11587306B1 (en) * 2022-01-10 2023-02-21 Emoji ID, LLC Method and system for unique, procedurally generated digital objects via few-shot model
WO2023217678A1 (en) * 2022-05-11 2023-11-16 Sony Group Corporation Authentication device, method, and computer program
FR3137473A1 (fr) * 2022-07-04 2024-01-05 Psa Automobiles Sa Procédé d’ouverture d’un véhicule automobile à partir un jeton non fongible, dispositif et véhicule associés
US20240020355A1 (en) * 2022-07-15 2024-01-18 Tokenform Llc Non-fungible token authentication

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007108973A (ja) * 2005-10-13 2007-04-26 Eath:Kk 認証サーバ装置、認証システムおよび認証方法
KR101857223B1 (ko) * 2017-11-13 2018-05-11 주식회사 온더 블록체인 토큰 기반의 사용자 식별 방법 및 시스템
WO2018127923A1 (en) * 2017-01-08 2018-07-12 Eyal Hertzog Methods for exchanging and evaluating virtual currency

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10102510B2 (en) * 2012-11-28 2018-10-16 Hoverkey Ltd. Method and system of conducting a cryptocurrency payment via a mobile device using a contactless token to store and protect a user's secret key
GB2533340A (en) * 2014-12-17 2016-06-22 Ibm Network system and method for transferring cryptocurrencies between a user account and a receiving account
US10102526B1 (en) * 2017-03-31 2018-10-16 Vijay K. Madisetti Method and system for blockchain-based combined identity, ownership, integrity and custody management
WO2019095200A1 (en) * 2017-11-16 2019-05-23 Prisec Innovation Limited A system and method for authenticating a user
KR102610127B1 (ko) * 2018-04-26 2023-12-04 주식회사 넥슨코리아 전자 지갑을 이용한 암호화폐의 거래 서비스를 제공하는 장치 및 방법
US11196551B2 (en) * 2018-06-27 2021-12-07 International Business Machines Corporation Automated task management on a blockchain based on predictive and analytical analysis

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007108973A (ja) * 2005-10-13 2007-04-26 Eath:Kk 認証サーバ装置、認証システムおよび認証方法
WO2018127923A1 (en) * 2017-01-08 2018-07-12 Eyal Hertzog Methods for exchanging and evaluating virtual currency
KR101857223B1 (ko) * 2017-11-13 2018-05-11 주식회사 온더 블록체인 토큰 기반의 사용자 식별 방법 및 시스템

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
최상용, 블록체인 기반 온라인 신분증명 스킴, 한국컴퓨터정보학회 학술발표논문집 26(2), 2018.7, 157-160페이지.
최연규 외 2인, 블록체인 기반 확장 가능한 사용자 인증 시스템, 한국정보과학회 학술발표논문집, 2018.06. 1165-1167페이지

Also Published As

Publication number Publication date
KR20200018967A (ko) 2020-02-21
US20230254310A1 (en) 2023-08-10
US11582234B2 (en) 2023-02-14
US20200053081A1 (en) 2020-02-13

Similar Documents

Publication Publication Date Title
KR102130651B1 (ko) 블록체인 기반 사용자 인증 방법 및 장치
US11902254B2 (en) Blockchain joining for a limited processing capability device and device access security
CN102930199B (zh) 多承租人订阅环境中的安全机器登记
KR101829729B1 (ko) 블록체인 및 이와 연동하는 머클 트리 구조를 통해 모바일 아이디를 이용하여 사용자를 인증하는 방법, 단말 및 이를 이용한 서버
AU2019204723B2 (en) Cryptographic key management based on identity information
JP4360422B2 (ja) 認証情報管理システム、認証情報管理サーバ、認証情報管理方法及びプログラム
JP2019219780A (ja) 個人情報管理システム、サービス提供システム、方法およびプログラム
US10515320B2 (en) Biometric verification of ticket users
CN110933125A (zh) 区块链实体、链下实体、认证设备及用于执行协作的方法
KR101829730B1 (ko) 블록체인 데이터베이스를 통해 모바일 아이디를 이용하여 사용자를 인증하는 방법, 단말 및 이를 이용한 서버
KR101858653B1 (ko) 블록체인 데이터베이스 및 이와 연동하는 머클 트리 구조를 통해 모바일 아이디를 이용하여 사용자를 인증하는 방법, 단말 및 이를 이용한 서버
WO2020213516A1 (ja) 入退管理システム、入退管理システムの認証装置、入退管理システムの管理装置、入退管理システムの携帯端末、入退管理システムの移動体、入退管理データのデータ構造、入退管理プログラム、および入退管理システムの構築方法
CN111868726A (zh) 电子设备和电子设备的数字钥匙供应方法
CN103944730A (zh) 数据安全交互系统
CN110086799B (zh) 身份验证方法和装置
US20200382276A1 (en) Information management system, information management method, and information management program product
WO2018195644A1 (en) Retail blockchain method and apparatus
KR102553145B1 (ko) 디지털 키를 처리 및 인증하는 보안 요소 및 그 동작 방법
JP2019219782A (ja) サービス提供システムおよびサービス提供方法
CN110431803B (zh) 基于身份信息管理加密密钥
KR20230020262A (ko) 디지털 컨텐츠에 대한 대체불가능 토큰을 관리하는 방법 및 장치
CN115935318B (zh) 一种信息处理方法、装置、服务器、客户端及存储介质
US8910260B2 (en) System and method for real time secure image based key generation using partial polygons assembled into a master composite image
CN115460017B (zh) 一种基于区块链的数字身份权限验证系统
CN103944907A (zh) 数据更新方法和系统

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