KR102372503B1 - 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버 - Google Patents
탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버 Download PDFInfo
- Publication number
- KR102372503B1 KR102372503B1 KR1020210007284A KR20210007284A KR102372503B1 KR 102372503 B1 KR102372503 B1 KR 102372503B1 KR 1020210007284 A KR1020210007284 A KR 1020210007284A KR 20210007284 A KR20210007284 A KR 20210007284A KR 102372503 B1 KR102372503 B1 KR 102372503B1
- Authority
- KR
- South Korea
- Prior art keywords
- user
- signature
- app
- mobile terminal
- service
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 102
- 238000012795 verification Methods 0.000 claims abstract description 215
- 230000004044 response Effects 0.000 claims abstract description 27
- 230000008569 process Effects 0.000 claims description 30
- 238000012790 confirmation Methods 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000010170 biological method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- 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
-
- 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/72—Signcrypting, i.e. digital signing and encrypting simultaneously
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
도 1은 본 발명의 일 실시예에 따른 탈중앙화 아이디 앱을 이용하여 서비스 제공 서버에 인증 서비스를 제공하여 주는 탈중앙화 아이디 인증 서버를 개략적으로 도시한 것이고,
도 2는 본 발명의 일 실시예에 따른 탈중앙화 아이디 앱을 이용하여 서비스 제공 서버에 인증 서비스를 제공하여 주는 방법을 개략적으로 도시한 것이고,
도 3은 본 발명의 다른 실시예에 따른 탈중앙화 아이디 앱을 이용하여 서비스 제공 서버에 인증 서비스를 제공하여 주는 방법을 개략적으로 도시한 것이고,
도 4는 본 발명의 또 다른 실시예에 따른 탈중앙화 아이디 앱을 이용하여 서비스 제공 서버에 인증 서비스를 제공하여 주는 방법을 개략적으로 도시한 것이다.
11: 사용자 모바일 단말의 서비스 웹 페이지나 서비스 앱,
20: 사용자 타 단말,
100: DID 인증 서버,
110: 메모리,
120: 프로세서,
200: 블록체인 네트워크,
300: 서비스 제공 서버,
400: 리졸버 서버
Claims (30)
- 탈중앙화 아이디(Decentralized Identity; DID) 앱을 이용하여 인증 서비스를 제공하는 방법에 있어서,
(a) 서비스 웹 페이지에 접속하거나 서비스 앱을 통해 서비스를 이용하는 사용자 타 단말 - 상기 사용자 타 단말은 사용자가 적어도 하나 이상의 노드로 구성된 블록체인 네트워크에 사용자 DID를 등록한 DID 앱이 설치된 사용자 모바일 단말과는 다른 단말임 - 로부터의 DID 서비스에 대한 DID 서비스 요청 정보에 대응하여 서비스 제공 서버에서 생성된 서명확인값이 상기 사용자 타 단말을 통해 전송되면, DID 인증 서버가, 상기 서명확인값을 상기 사용자 모바일 단말로 전송하여 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 서명확인값을 사용자 프라이빗 키로 서명한 사용자 서명을 생성하도록 하고 상기 사용자 서명과 상기 사용자 DID를 상기 DID 인증 서버로 전송하도록 하는 단계; 및
(b) 상기 DID 인증 서버가, 상기 사용자 모바일 단말의 상기 DID 앱으로부터의 상기 사용자 서명과 상기 사용자 DID가 수신되면, (i) 상기 사용자 DID를 이용하여 상기 블록체인 네트워크로부터 상기 사용자의 사용자 퍼블릭 키를 획득하거나 리졸버 서버를 통해 상기 블록체인 네트워크로부터 상기 퍼블릭 키를 획득하며, 상기 사용자 퍼블릭 키를 이용하여 상기 사용자 서명을 검증하고, 상기 사용자 서명을 검증한 서명 검증 결과 정보를 상기 서비스 제공 서버로 전송하여 상기 서비스 제공 서버로 하여금 상기 서명 검증 결과 정보를 참조하여 상기 DID 서비스 요청 정보에 대응되는 DID 서비스를 상기 사용자 타 단말로 제공하도록 하거나, (ii) 상기 사용자 서명과 상기 사용자 DID를 상기 서비스 제공 서버로 전송하여 상기 서비스 제공 서버로 하여금, 상기 사용자 DID를 이용하여 상기 블록체인 네트워크로부터 상기 사용자의 사용자 퍼블릭 키를 획득하거나 상기 리졸버 서버를 통해 상기 블록체인 네트워크로부터 상기 퍼블릭 키를 획득하도록 하며, 상기 사용자 퍼블릭 키를 이용하여 상기 사용자 서명을 검증하도록 한 다음, 상기 DID 서비스 요청 정보에 대응되는 상기 DID 서비스를 상기 사용자 타 단말로 제공하도록 하는 단계;
를 포함하는 방법. - 제1항에 있어서,
상기 (a) 단계에서,
상기 DID 인증 서버가, (i) 상기 서비스 제공 서버로부터 상기 사용자 DID가 수신되지 않을 경우에는, 상기 서명확인값에 대한 QR 코드를 생성하여 상기 사용자 타 단말로 전송하여 상기 사용자 타 단말이 상기 QR 코드를 디스플레이하도록 하고, 상기 사용자가 상기 사용자 모바일 단말을 통해 상기 사용자 타 단말에 디스플레이되는 상기 QR 코드를 통해 상기 서명확인값을 획득하도록 함으로써 상기 서명확인값이 상기 DID 앱으로 전송되도록 하며, (ii) 상기 서비스 제공 서버로부터 상기 서명확인값에 더하여 상기 사용자 DID가 수신되는 경우에는, 상기 사용자 DID를 이용하여 상기 사용자 모바일 단말의 상기 DID 앱으로 상기 서명확인값을 전송하여 주는 것을 특징으로 하는 방법. - 제2항에 있어서,
상기 DID 인증 서버가, 상기 서비스 제공 서버로부터 상기 서명확인값에 더하여 상기 사용자 DID가 수신되는 경우 상기 사용자 DID를 이용하여 상기 사용자 모바일 단말의 상기 DID 앱으로 상기 서명확인값을 전송하여 주되, 상기 DID 앱이 상기 서명확인값을 전송받지 못할 경우, 상기 서명확인값에 대한 상기 QR 코드를 생성하여 상기 사용자 타 단말로 전송하여 상기 사용자 타 단말이 상기 QR 코드를 디스플레이하도록 하고, 상기 사용자가 상기 사용자 모바일 단말을 통해 상기 사용자 타 단말에 디스플레이되는 상기 QR 코드를 통해 상기 서명확인값을 획득하도록 함으로써 상기 서명확인값이 상기 DID 앱으로 전송되도록 하는 것을 특징으로 하는 방법. - 제1항에 있어서,
상기 DID 인증 서버가, 상기 사용자가 요청한 상기 DID 서비스에 대응하여 사용자 정보가 추가로 요구되어 상기 서비스 제공 서버가 상기 서명확인값과 함께 상기 사용자 정보에 대응되는 사용자 정보 리스트를 상기 사용자 타 단말에 전송한 경우, 상기 서명확인값과 상기 사용자 정보 리스트를 상기 사용자 모바일 단말의 상기 DID 앱으로 전송하여 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID에 더하여 상기 사용자 정보 리스트에 대응되는 상기 사용자 정보 또는 암호화된 사용자 정보를 상기 DID 인증 서버로 전송하도록 하여, 상기 서명 검증 결과 정보나 상기 사용자 서명과 상기 사용자 DID를 상기 서비스 제공 서버에 전송할 때 상기 사용자 정보 또는 상기 암호화된 사용자 정보를 함께 전송하는 것을 특징으로 하는 방법. - 제1항에 있어서,
상기 (a) 단계에서,
상기 DID 인증 서버가, 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID와 함께 상기 서명확인값을 상기 DID 인증 서버로 전송하도록 하는 것을 특징으로 하는 방법. - 제1항에 있어서,
상기 (a) 단계에서,
상기 DID 인증 서버가, 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID와 함께 VC(verifiable credential) 또는 VP(verifiable presentation)을 상기 DID 인증 서버로 전송하도록 하는 것을 특징으로 하는 방법. - 제1항에 있어서,
상기 (a) 단계에서,
상기 DID 인증 서버가, 상기 서비스 제공 서버로 하여금 HTTP 리다이렉션(redirection)을 이용하여 상기 서명확인값을 상기 사용자 타 단말로 전송하도록 하며, 상기 사용자 타 단말로 하여금 상기 HTTP 리다이렉션을 이용하여 상기 서명확인값을 상기 DID 인증 서버에 대응되는 DID 인증 웹 페이지로 전송되도록 하여 상기 서명확인값을 획득하는 것을 특징으로 하는 방법. - 제1항에 있어서,
상기 (b) 단계에서,
상기 DID 인증 서버가, 상기 사용자 모바일 단말의 상기 DID 앱으로부터 상기 사용자 서명과 상기 사용자 DID가 전송되면, HTTP 폴링(Polling)을 통해 상기 사용자 서명과 상기 사용자 DID나 상기 사용자 서명과 상기 사용자 DID를 참조하여 생성한 상기 서명 검증 결과 정보를 상기 DID 인증 서버에 대응되는 DID 인증 웹 페이지로 전송되도록 하여, 상기 DID 인증 웹 페이지의 HTTP 리다이렉션을 통해 상기 사용자 서명과 상기 사용자 DID나 상기 서명 검증 결과 정보를 상기 서비스 제공 서버로 전송하는 것을 특징으로 하는 방법. - 탈중앙화 아이디(Decentralized Identity; DID) 앱을 이용하여 인증 서비스를 제공하는 방법에 있어서,
(a) 서비스 웹 페이지에 접속하거나 서비스 앱을 통해 서비스를 이용하는 사용자 모바일 단말 - 상기 사용자 모바일 단말은 사용자가 적어도 하나 이상의 노드로 구성된 블록체인 네트워크에 사용자 DID를 등록한 DID 앱이 설치된 단말임 - 로부터의 DID 서비스에 대한 DID 서비스 요청 정보에 대응하여 서비스 제공 서버에서 생성된 서명확인값이 상기 사용자 모바일 단말로 전송되어 상기 사용자 모바일 단말이 상기 모바일 단말의 상기 DID 앱으로 상기 서명확인값을 전송하면, DID 인증 서버가, 상기 DID 앱으로 하여금 상기 서명확인값을 사용자 프라이빗 키로 서명한 사용자 서명을 생성하도록 하고 상기 사용자 서명과 상기 사용자 DID를 상기 DID 인증 서버로 전송하도록 하는 단계; 및
(b) 상기 DID 인증 서버가, 상기 사용자 모바일 단말의 상기 DID 앱으로부터의 상기 사용자 서명과 상기 사용자 DID가 수신되면, (i) 상기 사용자 DID를 이용하여 상기 블록체인 네트워크로부터 상기 사용자의 사용자 퍼블릭 키를 획득하거나 리졸버 서버를 통해 상기 블록체인 네트워크로부터 상기 퍼블릭 키를 획득하며, 상기 사용자 퍼블릭 키를 이용하여 상기 사용자 서명을 검증하고, 상기 사용자 서명을 검증한 서명 검증 결과 정보를 상기 서비스 제공 서버로 전송하여 상기 서비스 제공 서버로 하여금 상기 서명 검증 결과 정보를 참조하여 상기 DID 서비스 요청 정보에 대응되는 DID 서비스를 상기 사용자 모바일 단말로 제공하도록 하거나, (ii) 상기 사용자 서명과 상기 사용자 DID를 상기 서비스 제공 서버로 전송하여 상기 서비스 제공 서버로 하여금, 상기 사용자 DID를 이용하여 상기 블록체인 네트워크로부터 상기 사용자의 사용자 퍼블릭 키를 획득하거나 상기 리졸버 서버를 통해 상기 블록체인 네트워크로부터 상기 퍼블릭 키를 획득하도록 하며, 상기 사용자 퍼블릭 키를 이용하여 상기 사용자 서명을 검증하도록 한 다음, 상기 DID 서비스 요청 정보에 대응되는 상기 DID 서비스를 상기 사용자 모바일 단말로 제공하도록 하는 단계;
를 포함하는 방법. - 제9항에 있어서,
상기 (a) 단계에서,
상기 DID 인증 서버가, 상기 사용자 모바일 단말로 하여금 URL 스킴(scheme)을 통해 상기 서명확인값을 상기 DID 앱으로 전송하도록 하는 것을 특징으로 하는 방법. - 제9항에 있어서,
상기 DID 인증 서버가, 상기 사용자가 요청한 상기 DID 서비스에 대응하여 사용자 정보가 추가로 요구되어 상기 서비스 제공 서버가 상기 서명확인값과 함께 상기 사용자 정보에 대응되는 사용자 정보 리스트를 상기 사용자 모바일 단말에 전송하여 상기 서명확인값과 상기 사용자 정보 리스트가 상기 사용자 모바일 단말의 상기 DID 앱으로 전송된 경우, 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID에 더하여 상기 사용자 정보 리스트에 대응되는 상기 사용자 정보 또는 암호화된 사용자 정보를 상기 DID 인증 서버로 전송하도록 하여, 상기 서명 검증 결과 정보나 상기 사용자 서명과 상기 사용자 DID를 상기 서비스 제공 서버에 전송할 때 상기 사용자 정보 또는 상기 암호화된 사용자 정보를 함께 전송하는 것을 특징으로 하는 방법. - 제9항에 있어서,
상기 (a) 단계에서,
상기 DID 인증 서버가, 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID와 함께 상기 서명확인값을 상기 DID 인증 서버로 전송하도록 하는 것을 특징으로 하는 방법. - 제9항에 있어서,
상기 (a) 단계에서,
상기 DID 인증 서버가, 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID와 함께 VC(verifiable credential) 또는 VP(verifiable presentation)을 상기 DID 인증 서버로 전송하도록 하는 것을 특징으로 하는 방법. - 제9항에 있어서,
상기 (b) 단계에서,
상기 DID 인증 서버가, (i) 상기 사용자 모바일 단말의 상기 DID 앱으로부터 전송된 상기 사용자 서명과 상기 사용자 DID나 상기 사용자 서명과 상기 사용자 DID를 참조하여 생성한 상기 서명 검증 결과 정보를 HTTP 폴링(Polling)을 통해 상기 DID 인증 서버에 대응되는 DID 인증 웹 페이지로 전송되도록 하여, 상기 DID 인증 웹 페이지의 HTTP 리다이렉션(redirection)을 통해 상기 사용자 서명과 상기 사용자 DID나 상기 서명 검증 결과 정보를 상기 서비스 제공 서버로 전송하거나, (ii) 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID를 URL 스킴(scheme)을 통해 상기 사용자 모바일 단말로 전송하도록 하여, 상기 사용자 모바일 단말로 하여금 상기 사용자 서명과 상기 사용자 DID를 상기 HTTP 리다이렉션을 통해 상기 서비스 제공 서버로 전송하도록 하거나, (iii) 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 서명 확인값과 상기 사용자 DID를 상기 DID 인증 서버로 전송하도록 하여, 상기 사용자 모바일 단말로 하여금 상기 HTTP 폴링을 통해 상기 DID 인증 서버로부터 상기 서명 확인값과 상기 사용자 DID나 상기 사용자 서명과 상기 사용자 DID를 참조하여 생성한 상기 서명 검증 결과 정보를 획득하여 상기 HTTP 리다이렉션을 통해 상기 서비스 제공 서버에 전송하도록 하는 것을 특징으로 하는 방법. - 제9항에 있어서,
상기 (a) 단계에서,
상기 DID 인증 서버가, 상기 서비스 제공 서버로 하여금 상기 서명확인값만을 상기 사용자 모바일 단말에 전송하여 주거나, 상기 서명확인값과 함께 상기 사용자 DID를 상기 사용자 모바일 단말에 전송하도록 하는 것을 특징으로 하는 방법. - 탈중앙화 아이디(Decentralized Identity; DID) 앱을 이용하여 인증 서비스를 제공하는 DID 인증 서버에 있어서,
DID 앱을 이용하여 인증 서비스를 제공하기 위한 인스트럭션들이 저장된 메모리; 및
상기 메모리에 저장된 상기 인스트럭션들에 따라 상기 DID 앱을 이용하여 상기 인증 서비스를 제공하기 위한 동작을 수행하는 프로세서;
를 포함하되,
상기 프로세서는, (I) 서비스 웹 페이지에 접속하거나 서비스 앱을 통해 서비스를 이용하는 사용자 타 단말 - 상기 사용자 타 단말은 사용자가 적어도 하나 이상의 노드로 구성된 블록체인 네트워크에 사용자 DID를 등록한 DID 앱이 설치된 사용자 모바일 단말과는 다른 단말임 - 로부터의 DID 서비스에 대한 DID 서비스 요청 정보에 대응하여 서비스 제공 서버에서 생성된 서명확인값이 상기 사용자 타 단말을 통해 전송되면, 상기 서명확인값을 상기 사용자 모바일 단말로 전송하여 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 서명확인값을 사용자 프라이빗 키로 서명한 사용자 서명을 생성하도록 하고 상기 사용자 서명과 상기 사용자 DID를 상기 프로세서로 전송하도록 하는 프로세스, 및 (II) 상기 사용자 모바일 단말의 상기 DID 앱으로부터의 상기 사용자 서명과 상기 사용자 DID가 수신되면, (i) 상기 사용자 DID를 이용하여 상기 블록체인 네트워크로부터 상기 사용자의 사용자 퍼블릭 키를 획득하거나 리졸버 서버를 통해 상기 블록체인 네트워크로부터 상기 퍼블릭 키를 획득하며, 상기 사용자 퍼블릭 키를 이용하여 상기 사용자 서명을 검증하고, 상기 사용자 서명을 검증한 서명 검증 결과 정보를 상기 서비스 제공 서버로 전송하여 상기 서비스 제공 서버로 하여금 상기 서명 검증 결과 정보를 참조하여 상기 DID 서비스 요청 정보에 대응되는 DID 서비스를 상기 사용자 타 단말로 제공하도록 하거나, (ii) 상기 사용자 서명과 상기 사용자 DID를 상기 서비스 제공 서버로 전송하여 상기 서비스 제공 서버로 하여금, 상기 사용자 DID를 이용하여 상기 블록체인 네트워크로부터 상기 사용자의 사용자 퍼블릭 키를 획득하거나 상기 리졸버 서버를 통해 상기 블록체인 네트워크로부터 상기 퍼블릭 키를 획득하도록 하며, 상기 사용자 퍼블릭 키를 이용하여 상기 사용자 서명을 검증하도록 한 다음, 상기 DID 서비스 요청 정보에 대응되는 상기 DID 서비스를 상기 사용자 타 단말로 제공하도록 하는 프로세스를 수행하는 DID 인증 서버. - 제16항에 있어서,
상기 (I) 프로세스에서,
상기 프로세서는, (i) 상기 서비스 제공 서버로부터 상기 사용자 DID가 수신되지 않을 경우에는, 상기 서명확인값에 대한 QR 코드를 생성하여 상기 사용자 타 단말로 전송하여 상기 사용자 타 단말이 상기 QR 코드를 디스플레이하도록 하고, 상기 사용자가 상기 사용자 모바일 단말을 통해 상기 사용자 타 단말에 디스플레이되는 상기 QR 코드를 통해 상기 서명확인값을 획득하도록 함으로써 상기 서명확인값이 상기 DID 앱으로 전송되도록 하며, (ii) 상기 서비스 제공 서버로부터 상기 서명확인값에 더하여 상기 사용자 DID가 수신되는 경우에는, 상기 사용자 DID를 이용하여 상기 사용자 모바일 단말의 상기 DID 앱으로 상기 서명확인값을 전송하여 주는 것을 특징으로 하는 DID 인증 서버. - 제17항에 있어서,
상기 프로세서는, 상기 서비스 제공 서버로부터 상기 서명확인값에 더하여 상기 사용자 DID가 수신되는 경우 상기 사용자 DID를 이용하여 상기 사용자 모바일 단말의 상기 DID 앱으로 상기 서명확인값을 전송하여 주되, 상기 DID 앱이 상기 서명확인값을 전송받지 못할 경우, 상기 서명확인값에 대한 상기 QR 코드를 생성하여 상기 사용자 타 단말로 전송하여 상기 사용자 타 단말이 상기 QR 코드를 디스플레이하도록 하고, 상기 사용자가 상기 사용자 모바일 단말을 통해 상기 사용자 타 단말에 디스플레이되는 상기 QR 코드를 통해 상기 서명확인값을 획득하도록 함으로써 상기 서명확인값이 상기 DID 앱으로 전송되도록 하는 것을 특징으로 하는 DID 인증 서버. - 제16항에 있어서,
상기 프로세서는, 상기 사용자가 요청한 상기 DID 서비스에 대응하여 사용자 정보가 추가로 요구되어 상기 서비스 제공 서버가 상기 서명확인값과 함께 상기 사용자 정보에 대응되는 사용자 정보 리스트를 상기 사용자 타 단말에 전송한 경우, 상기 서명확인값과 상기 사용자 정보 리스트를 상기 사용자 모바일 단말의 상기 DID 앱으로 전송하여 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID에 더하여 상기 사용자 정보 리스트에 대응되는 상기 사용자 정보 또는 암호화된 사용자 정보를 상기 프로세서로 전송하도록 하여, 상기 서명 검증 결과 정보나 상기 사용자 서명과 상기 사용자 DID를 상기 서비스 제공 서버에 전송할 때 상기 사용자 정보 또는 상기 암호화된 사용자 정보를 함께 전송하는 것을 특징으로 하는 DID 인증 서버. - 제16항에 있어서,
상기 (I) 프로세스에서,
상기 프로세서는, 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID와 함께 상기 서명확인값을 상기 프로세서로 전송하도록 하는 것을 특징으로 하는 DID 인증 서버. - 제16항에 있어서,
상기 (I) 프로세스에서,
상기 프로세서는, 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID와 함께 VC(verifiable credential) 또는 VP(verifiable presentation)을 상기 프로세서로 전송하도록 하는 것을 특징으로 하는 DID 인증 서버. - 제16항에 있어서,
상기 (I) 프로세스에서,
상기 프로세서는, 상기 서비스 제공 서버로 하여금 HTTP 리다이렉션(redirection)을 이용하여 상기 서명확인값을 상기 사용자 타 단말로 전송하도록 하며, 상기 사용자 타 단말로 하여금 상기 HTTP 리다이렉션을 이용하여 상기 서명확인값을 상기 프로세서에 대응되는 DID 인증 웹 페이지로 전송되도록 하여 상기 서명확인값을 획득하는 것을 특징으로 하는 DID 인증 서버. - 제16항에 있어서,
상기 (II) 프로세스에서,
상기 프로세서는, 상기 사용자 모바일 단말의 상기 DID 앱으로부터 상기 사용자 서명과 상기 사용자 DID가 전송되면, HTTP 폴링(Polling)을 통해 상기 사용자 서명과 상기 사용자 DID나 상기 사용자 서명과 상기 사용자 DID를 참조하여 생성한 상기 서명 검증 결과 정보를 상기 프로세서에 대응되는 DID 인증 웹 페이지로 전송되도록 하여, 상기 DID 인증 웹 페이지의 HTTP 리다이렉션을 통해 상기 사용자 서명과 상기 사용자 DID나 상기 서명 검증 결과 정보를 상기 서비스 제공 서버로 전송하는 것을 특징으로 하는 DID 인증 서버. - 탈중앙화 아이디(Decentralized Identity; DID) 앱을 이용하여 인증 서비스를 제공하는 DID 인증 서버에 있어서,
DID 앱을 이용하여 인증 서비스를 제공하기 위한 인스트럭션들이 저장된 메모리; 및
상기 메모리에 저장된 상기 인스트럭션들에 따라 상기 DID 앱을 이용하여 상기 인증 서비스를 제공하기 위한 동작을 수행하는 프로세서;
를 포함하되,
상기 프로세서는, (I) 서비스 웹 페이지에 접속하거나 서비스 앱을 통해 서비스를 이용하는 사용자 모바일 단말 - 상기 사용자 모바일 단말은 사용자가 적어도 하나 이상의 노드로 구성된 블록체인 네트워크에 사용자 DID를 등록한 DID 앱이 설치된 단말임 - 로부터의 DID 서비스에 대한 DID 서비스 요청 정보에 대응하여 서비스 제공 서버에서 생성된 서명확인값이 상기 사용자 모바일 단말로 전송되어 상기 사용자 모바일 단말이 상기 모바일 단말의 상기 DID 앱으로 상기 서명확인값을 전송하면, 상기 DID 앱으로 하여금 상기 서명확인값을 사용자 프라이빗 키로 서명한 사용자 서명을 생성하도록 하고 상기 사용자 서명과 상기 사용자 DID를 상기 프로세서로 전송하도록 하는 프로세스, 및 (II) 상기 사용자 모바일 단말의 상기 DID 앱으로부터의 상기 사용자 서명과 상기 사용자 DID가 수신되면, (i) 상기 사용자 DID를 이용하여 상기 블록체인 네트워크로부터 상기 사용자의 사용자 퍼블릭 키를 획득하거나 리졸버 서버를 통해 상기 블록체인 네트워크로부터 상기 퍼블릭 키를 획득하며, 상기 사용자 퍼블릭 키를 이용하여 상기 사용자 서명을 검증하고, 상기 사용자 서명을 검증한 서명 검증 결과 정보를 상기 서비스 제공 서버로 전송하여 상기 서비스 제공 서버로 하여금 상기 서명 검증 결과 정보를 참조하여 상기 DID 서비스 요청 정보에 대응되는 DID 서비스를 상기 사용자 모바일 단말로 제공하도록 하거나, (ii) 상기 사용자 서명과 상기 사용자 DID를 상기 서비스 제공 서버로 전송하여 상기 서비스 제공 서버로 하여금, 상기 사용자 DID를 이용하여 상기 블록체인 네트워크로부터 상기 사용자의 사용자 퍼블릭 키를 획득하거나 상기 리졸버 서버를 통해 상기 블록체인 네트워크로부터 상기 퍼블릭 키를 획득하도록 하며, 상기 사용자 퍼블릭 키를 이용하여 상기 사용자 서명을 검증하도록 한 다음, 상기 DID 서비스 요청 정보에 대응되는 상기 DID 서비스를 상기 사용자 모바일 단말로 제공하도록 하는 프로세스를 수행하는 DID 인증 서버. - 제24항에 있어서,
상기 (I) 프로세스에서,
상기 프로세서는, 상기 사용자 모바일 단말로 하여금 URL 스킴(scheme)을 통해 상기 서명확인값을 상기 DID 앱으로 전송하도록 하는 것을 특징으로 하는 DID 인증 서버. - 제24항에 있어서,
상기 프로세서는, 상기 사용자가 요청한 상기 DID 서비스에 대응하여 사용자 정보가 추가로 요구되어 상기 서비스 제공 서버가 상기 서명확인값과 함께 상기 사용자 정보에 대응되는 사용자 정보 리스트를 상기 사용자 모바일 단말에 전송하여 상기 서명확인값과 상기 사용자 정보 리스트가 상기 사용자 모바일 단말의 상기 DID 앱으로 전송된 경우, 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID에 더하여 상기 사용자 정보 리스트에 대응되는 상기 사용자 정보 또는 암호화된 사용자 정보를 상기 프로세서로 전송하도록 하여, 상기 서명 검증 결과 정보나 상기 사용자 서명과 상기 사용자 DID를 상기 서비스 제공 서버에 전송할 때 상기 사용자 정보 또는 상기 암호화된 사용자 정보를 함께 전송하는 것을 특징으로 하는 DID 인증 서버. - 제24항에 있어서,
상기 (I) 프로세스에서,
상기 프로세서는, 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID와 함께 상기 서명확인값을 상기 프로세서로 전송하도록 하는 것을 특징으로 하는 DID 인증 서버. - 제24항에 있어서,
상기 (I) 프로세스에서,
상기 프로세서는, 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID와 함께 VC(verifiable credential) 또는 VP(verifiable presentation)을 상기 프로세서로 전송하도록 하는 것을 특징으로 하는 DID 인증 서버. - 제24항에 있어서,
상기 (II) 프로세스에서,
상기 프로세서는, (i) 상기 사용자 모바일 단말의 상기 DID 앱으로부터 전송된 상기 사용자 서명과 상기 사용자 DID나 상기 사용자 서명과 상기 사용자 DID를 참조하여 생성한 상기 서명 검증 결과 정보를 HTTP 폴링(Polling)을 통해 상기 프로세서에 대응되는 DID 인증 웹 페이지로 전송되도록 하여, 상기 DID 인증 웹 페이지의 HTTP 리다이렉션(redirection)을 통해 상기 사용자 서명과 상기 사용자 DID나 상기 서명 검증 결과 정보를 상기 서비스 제공 서버로 전송하거나, (ii) 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 사용자 서명과 상기 사용자 DID를 URL 스킴(scheme)을 통해 상기 사용자 모바일 단말로 전송하도록 하여, 상기 사용자 모바일 단말로 하여금 상기 사용자 서명과 상기 사용자 DID를 상기 HTTP 리다이렉션을 통해 상기 서비스 제공 서버로 전송하도록 하거나, (iii) 상기 사용자 모바일 단말의 상기 DID 앱으로 하여금 상기 서명 확인값과 상기 사용자 DID를 상기 프로세서로 전송하도록 하여, 상기 사용자 모바일 단말로 하여금 상기 HTTP 폴링을 통해 상기 프로세서로부터 상기 서명 확인값과 상기 사용자 DID나 상기 사용자 서명과 상기 사용자 DID를 참조하여 생성한 상기 서명 검증 결과 정보를 획득하여 상기 HTTP 리다이렉션을 통해 상기 서비스 제공 서버에 전송하도록 하는 것을 특징으로 하는 DID 인증 서버. - 제24항에 있어서,
상기 (I) 프로세스에서,
상기 프로세서는, 상기 서비스 제공 서버로 하여금 상기 서명확인값만을 상기 사용자 모바일 단말에 전송하여 주거나, 상기 서명확인값과 함께 상기 사용자 DID를 상기 사용자 모바일 단말에 전송하도록 하는 것을 특징으로 하는 DID 인증 서버.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/153,926 US11012233B1 (en) | 2020-01-22 | 2021-01-21 | Method for providing authentication service by using decentralized identity and server using the same |
EP21743671.6A EP4094173A4 (en) | 2020-01-22 | 2021-01-21 | METHOD FOR PROVIDING AN AUTHENTICATION SERVICE USING DECENTRALIZED IDENTITY AND SERVERS THEREFOR |
PCT/KR2021/000828 WO2021150032A1 (en) | 2020-01-22 | 2021-01-21 | Method for providing authentication service by using decentralized identity and server using the same |
KR1020210084363A KR20210095093A (ko) | 2020-01-22 | 2021-06-28 | 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20200008950 | 2020-01-22 | ||
KR1020200008950 | 2020-01-22 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210084363A Division KR20210095093A (ko) | 2020-01-22 | 2021-06-28 | 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210095061A KR20210095061A (ko) | 2021-07-30 |
KR102372503B1 true KR102372503B1 (ko) | 2022-03-11 |
Family
ID=77148688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210007284A Active KR102372503B1 (ko) | 2020-01-22 | 2021-01-19 | 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102372503B1 (ko) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102569265B1 (ko) * | 2021-09-06 | 2023-08-22 | 건양대학교산학협력단 | 자율주행 환경에서 블록체인 및 관제서버 기반의 차량간 메시지 전송방법 |
KR102612463B1 (ko) * | 2021-11-24 | 2023-12-11 | (주)드림시큐리티 | 분산 id 기반 검증 크리덴셜 관리 및 디바이스 검증 방법 및 장치 |
KR20230099049A (ko) * | 2021-12-27 | 2023-07-04 | (주)이스톰 | 블록체인 기반 인증 및 거래 시스템 |
CN115987499B (zh) * | 2022-12-20 | 2024-08-02 | 蚂蚁区块链科技(上海)有限公司 | 生成用户的私钥的方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102216292B1 (ko) * | 2018-03-30 | 2021-02-18 | 주식회사 코인플러그 | 블록체인 기반의 통합 로그인 방법, 단말 및 이를 이용한 서버 |
-
2021
- 2021-01-19 KR KR1020210007284A patent/KR102372503B1/ko active Active
Also Published As
Publication number | Publication date |
---|---|
KR20210095061A (ko) | 2021-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20210095093A (ko) | 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버 | |
CN110537346B (zh) | 安全去中心化域名系统 | |
US10541991B2 (en) | Method for OAuth service through blockchain network, and terminal and server using the same | |
KR102372503B1 (ko) | 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버 | |
EP2351316B1 (en) | Method and system for token-based authentication | |
KR102177848B1 (ko) | 액세스 요청을 검증하기 위한 방법 및 시스템 | |
KR102192370B1 (ko) | 블록체인 기반의 권한 인증 방법, 단말 및 이를 이용한 서버 | |
JP2009510644A (ja) | 安全な認証のための方法及び構成 | |
WO2018021708A1 (ko) | 공개키 기반의 서비스 인증 방법 및 시스템 | |
CN104270338A (zh) | 一种电子身份注册及认证登录的方法及其系统 | |
KR102252086B1 (ko) | 블록체인 기반의 권한 인증 방법, 단말 및 이를 이용한 서버 | |
JP4960738B2 (ja) | 認証システム、認証方法および認証プログラム | |
CN111275419A (zh) | 一种区块链钱包签名确权方法、装置及系统 | |
KR102160892B1 (ko) | 공개키 기반의 서비스 인증 방법 및 시스템 | |
JP6240102B2 (ja) | 認証システム、認証鍵管理装置、認証鍵管理方法および認証鍵管理プログラム | |
KR102062851B1 (ko) | 토큰 관리 데몬을 이용한 싱글 사인 온 서비스 인증 방법 및 시스템 | |
KR102284876B1 (ko) | 생체 인식 기반의 통합 인증 시스템 및 방법 | |
KR102118556B1 (ko) | 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법 | |
JP6714551B2 (ja) | 認証鍵共有システム及び端末間鍵コピー方法 | |
CN114500074B (zh) | 单点系统安全访问方法、装置及相关设备 | |
KR20190114421A (ko) | 블록체인 기반의 통합 로그인 방법, 단말 및 이를 이용한 서버 | |
KR20190114424A (ko) | 블록체인 기반의 통합 로그인 방법, 단말 및 이를 이용한 서버 | |
CN109936522B (zh) | 设备认证方法及设备认证系统 | |
KR20200062098A (ko) | 블록체인 기반의 통합 로그인 방법, 단말 및 이를 이용한 서버 | |
KR20200112770A (ko) | 블록체인 기반의 권한 인증 방법, 단말 및 이를 이용한 서버 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20210119 |
|
PA0201 | Request for examination | ||
PA0302 | Request for accelerated examination |
Patent event date: 20210125 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination Patent event date: 20210119 Patent event code: PA03021R01I Comment text: Patent Application |
|
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20210326 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20210612 |
|
A107 | Divisional application of patent | ||
PA0107 | Divisional application |
Comment text: Divisional Application of Patent Patent event date: 20210628 Patent event code: PA01071R01D |
|
PG1501 | Laying open of application | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20220304 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20220307 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |