KR20220122224A - Integrated user authentication method based on decentralized identity in user device and server - Google Patents
Integrated user authentication method based on decentralized identity in user device and server Download PDFInfo
- Publication number
- KR20220122224A KR20220122224A KR1020210026576A KR20210026576A KR20220122224A KR 20220122224 A KR20220122224 A KR 20220122224A KR 1020210026576 A KR1020210026576 A KR 1020210026576A KR 20210026576 A KR20210026576 A KR 20210026576A KR 20220122224 A KR20220122224 A KR 20220122224A
- Authority
- KR
- South Korea
- Prior art keywords
- distributed
- user
- information
- target server
- document
- Prior art date
Links
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/41—User authentication where a single sign-on provides access to a plurality of computers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- 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/3271—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 using challenge-response
Abstract
Description
본 발명은 사용자 단말 및 대상 서버에서의 분산 ID에 기반한 사용자 통합 인증 방법에 관한 것이다.The present invention relates to a user integrated authentication method based on a distributed ID in a user terminal and a target server.
현재 온라인 환경에서 사용되는 인증 방식인 아이디/패스워드 기반 인증 방식은 여러 문제점이 존재한다. 예를 들어, 길이가 짧은 비밀번호를 사용하는 경우 무차별 대입 공격에 의해 비밀번호가 쉽게 탈취될 수 있고, 기억하기 쉬운 비밀번호를 사용하는 경우에도 사전 공격(Dictionary Attack)을 통해 비밀번호가 쉽게 탈취될 수 있다. 또한, 비밀번호의 안전성을 위해서는 9자리 이상의 영문, 숫자, 특수문자 등으로 조합된 기억하기 힘든 문자열로 생성되어야만 한다.The ID/password-based authentication method, which is an authentication method currently used in an online environment, has several problems. For example, when a short password is used, the password can be easily stolen by a brute force attack, and even when an easy-to-remember password is used, the password can be easily stolen through a dictionary attack. In addition, for the safety of the password, it must be created as a difficult-to-remember string of 9 or more letters, numbers, and special characters.
이와 더불어, 사용자가 이용하는 모든 웹사이트의 인증 패스워드를 서로 다르게 사용해야만, 특정 웹사이트의 패스워드가 탈취되더라도 해커는 탈취한 패스워드를 통해 사용자의 다른 웹사이트로 인증할 수 없다. 하지만, 현재 사용자단 수십 개의 웹사이트를 사용하는 상황에서 이상적으로 생성된 서로 다른 아이디 및 패스워드를 기억하는 것은 불가능에 가깝다.In addition, even if the password of a specific website is stolen, the hacker cannot authenticate to another website of the user through the stolen password only when the authentication passwords of all websites used by the user are used differently. However, it is almost impossible to remember the different IDs and passwords that are ideally generated in the situation where only dozens of users are currently using the website.
이러한 문제점을 개선하기 위해 현재 SSO(Single Sign On)이 사용되고 있다. SSO는 IdP(IdentityProvider) 웹사이트의 회원 정보를 RP(Relying Party) 웹사이트로 회원가입 혹은 로그인이 가능한 기술이다. 주로 IdP는 구글, 네이버, 페이스북 등 많은 이용자들을 보유한 웹사이트가 그 역할을 하고 있다. 하지만, IdP가 단일 실패지점이 되어, 사용자의 부주의한 패스워드 관리 또는 IdP 서버의 보안 취약점 등의 이유로 사용자의 패스워드가 노출된다면 해커는 IdP를 통해 인증 가능한 모든 웹사이트와 관련된 사용자 정보를 탈취할 수 있는 문제가 있다.In order to improve this problem, SSO (Single Sign On) is currently being used. SSO is a technology that enables member registration or login of member information from IdP (Identity Provider) website to RP (Relying Party) website. As for IdP, websites with many users, such as Google, Naver, and Facebook, play a role. However, if the IdP becomes a single point of failure and the user's password is exposed due to the user's careless password management or the security vulnerability of the IdP server, hackers can steal user information related to all websites that can be authenticated through the IdP. there is a problem.
본 발명이 해결하고자 하는 과제는 중앙 서버에 인증 정보를 저장하지 않고, 사용자가 직접 관리하는 분산 ID(Decentralized Identity)를 통해 사용자의 통합 인증을 수행하는, 사용자 단말 및 대상 서버에서의 분산 ID에 기반한 사용자 통합 인증 방법을 제공하는 것이다.The problem to be solved by the present invention is to perform integrated authentication of the user through a distributed ID (Decentralized Identity) directly managed by the user without storing authentication information in the central server, based on the distributed ID in the user terminal and the target server. It is to provide an integrated user authentication method.
다만, 본 발명이 해결하고자 하는 과제는 상기된 바와 같은 과제로 한정되지 않으며, 또다른 과제들이 존재할 수 있다.However, the problems to be solved by the present invention are not limited to the problems described above, and other problems may exist.
상술한 과제를 해결하기 위한 본 발명의 제1 측면에 따른 사용자 단말에서의 분산 ID에 기반한 사용자의 통합 인증 방법은 공개키와 암호키로 구성된 키 쌍과, 상기 공개키가 명시된 분산 ID(Decentralized Identity) 문서 및 상기 분산 ID 문서의 URI 정보를 포함하는 분산 ID를 생성하는 단계; 상기 분산 ID 문서를 저장소에 저장하는 단계; 소정의 이용 대상 서비스에 상응하는 서버(이하, 대상 서버)로 상기 분산 ID를 등록하는 단계; 상기 등록된 분산 ID를 대상 서버로 전송하여 사용자 인증을 요청하는 단계; 및 상기 사용자 인증 요청에 상응하는 사용자 인증 결과를 상기 대상 서버로부터 수신하는 단계를 포함한다.The integrated authentication method of the user based on the distributed ID in the user terminal according to the first aspect of the present invention for solving the above problems is a key pair consisting of a public key and an encryption key, and a distributed ID (Decentralized Identity) in which the public key is specified generating a distributed ID including a document and URI information of the distributed ID document; storing the distributed ID document in a storage; registering the distributed ID with a server (hereinafter referred to as a target server) corresponding to a predetermined service target service; requesting user authentication by transmitting the registered distributed ID to a target server; and receiving a user authentication result corresponding to the user authentication request from the target server.
본 발명의 일부 실시예에서, 상기 저장소는 상기 분산 ID에 포함된 URI 정보에 기초하여 상기 분산 ID 문서를 독출할 수 있다.In some embodiments of the present invention, the storage may read the distributed ID document based on URI information included in the distributed ID.
본 발명의 일부 실시예에서, 상기 대상 서버로 상기 분산 ID를 등록하는 단계는, 상기 대상 서버로 사용자 정보 및 분산 ID를 전송하는 단계; 상기 대상 서버로부터 생성된 챌린지(Challenge) 정보를 수신하는 단계; 상기 분산 ID 문서에 명시된 공개키와 쌍을 이루는 암호키를 이용하여 상기 챌린지 정보를 해독하는 단계; 및 상기 챌린지 정보의 해독 결과 획득되는 응답(Response) 정보를 상기 대상 서버로 전송하는 단계를 포함할 수 있다.In some embodiments of the present invention, the step of registering the distributed ID with the target server includes: transmitting user information and the distributed ID to the target server; receiving challenge information generated from the target server; decrypting the challenge information using an encryption key paired with the public key specified in the distributed ID document; and transmitting response information obtained as a result of decoding the challenge information to the target server.
본 발명의 일부 실시예에서, 상기 대상 서버는 상기 사용자 정보 및 분산 ID를 수신함에 따라, 상기 분산 ID를 이용하여 상기 저장소로부터 분산 ID에 상응하는 분산 ID 문서를 독출하고, 상기 분산 ID 문서에 기초하여 챌린지 정보를 생성하여 상기 사용자 단말로 전송할 수 있다.In some embodiments of the present invention, upon receiving the user information and the distributed ID, the target server reads a distributed ID document corresponding to the distributed ID from the storage using the distributed ID, and based on the distributed ID document Thus, the challenge information may be generated and transmitted to the user terminal.
본 발명의 일부 실시예에서, 상기 대상 서버는 상기 응답 정보를 수신함에 따라, 상기 응답 정보를 검증하여 올바른 사용자인 것으로 판단한 경우, 사용자의 분산 ID와 사용자 정보를 매칭하여 사용자 정보 테이블에 저장할 수 있다.In some embodiments of the present invention, when the target server receives the response information, verifies the response information and determines that the user is a correct user, the user information can be matched with the distributed ID of the user and stored in the user information table. .
본 발명의 일부 실시예에서, 상기 등록된 분산 ID를 대상 서버로 전송하여 사용자 인증을 요청하는 단계는, 상기 등록된 분산 ID 및 사용자 인증 요청을 상기 대상 서버로 전송하는 단계; 상기 대상 서버로부터 생성된 챌린지(Challenge) 정보를 수신하는 단계; 상기 분산 ID 문서에 명시된 공개키와 쌍을 이루는 암호키를 이용하여 상기 챌린지를 해독하는 단계; 및 상기 챌린지의 해독 결과 획득되는 응답(Response) 정보를 상기 대상 서버로 전송하는 단계를 포함할 수 있다.In some embodiments of the present invention, the step of requesting user authentication by transmitting the registered distributed ID to the target server includes: transmitting the registered distributed ID and user authentication request to the target server; receiving challenge information generated from the target server; decrypting the challenge using an encryption key paired with the public key specified in the distributed ID document; and transmitting response information obtained as a result of decoding the challenge to the target server.
본 발명의 일부 실시예에서, 상기 대상 서버는 상기 분산 ID 및 사용자 인증 요청을 수신함에 따라, 사용자 정보 테이블에 사용자의 상기 분산 ID가 존재하는 경우, 상기 분산 ID를 이용하여 상기 저장소로부터 분산 ID에 상응하는 분산 ID 문서를 독출하고, 상기 분산 ID 문서에 기초하여 챌린지 정보를 생성하여 상기 사용자 단말로 전송할 수 있다.In some embodiments of the present invention, as the target server receives the distributed ID and user authentication request, if the distributed ID of the user exists in the user information table, the distributed ID is used to access the distributed ID from the storage using the distributed ID. A corresponding distributed ID document may be read, and challenge information may be generated based on the distributed ID document and transmitted to the user terminal.
본 발명의 일부 실시예에서, 상기 대상 서버는 상기 응답 정보를 수신함에 따라, 상기 응답 정보를 검증하여 올바른 사용자인 것으로 판단한 경우 사용자의 인증을 허가할 수 있다.In some embodiments of the present invention, when the target server receives the response information, verifies the response information and determines that the user is a correct user, the target server may permit authentication of the user.
또한, 본 발명의 제2 측면에 따른 분산 ID에 기반한 사용자의 통합 인증이 가능한 사용자 단말은 소정의 이용 대상 서비스에 상응하는 서버(이하, 대상 서버) 및 분산 ID(Decentralized Identity) 문서를 저장하는 저장소와 데이터를 송수신하는 통신모듈, 분산 ID에 기반하여 사용자의 통합 인증을 위한 프로그램이 저장된 메모리 및 상기 메모리에 저장된 프로그램을 실행시킴에 따라, 공개키와 암호키로 구성된 키 쌍과, 상기 공개키가 명시된 분산 ID(Decentralized Identity) 문서 및 상기 분산 ID 문서의 URI 정보를 포함하는 분산 ID를 생성하고, 상기 통신모듈을 통해 분산 ID 문서를 저장소에 저장한 후, 상기 대상 서버로 분산 ID 등록을 요청하여 등록시키고, 상기 등록된 분산 ID를 대상 서버로 전송하여 사용자 인증을 요청하며, 상기 사용자 인증 요청에 상응하는 사용자 인증 결과를 상기 대상 서버로부터 수신하는 프로세서를 포함한다.In addition, a user terminal capable of integrated authentication of a user based on a distributed ID according to the second aspect of the present invention is a server (hereinafter, target server) corresponding to a predetermined service target service and a storage for storing a distributed ID (Decentralized Identity) document and a communication module for transmitting and receiving data, a memory in which a program for integrated authentication of a user is stored based on a distributed ID, and a key pair consisting of a public key and an encryption key as the program stored in the memory is executed, and the public key is specified After generating a distributed ID including a distributed ID (Decentralized Identity) document and URI information of the distributed ID document, storing the distributed ID document in the storage through the communication module, requesting and registering the distributed ID with the target server and a processor for requesting user authentication by transmitting the registered distributed ID to the target server, and receiving a user authentication result corresponding to the user authentication request from the target server.
또한, 본 발명의 제3 측면에 따른 대상 서버에서의 분산 ID에 기반하여 사용자의 통합 인증을 수행하는 방법은 사용자 단말로부터 사용자 정보 및 분산 ID(Decentralized Identity)를 포함하는 분산 ID 등록 요청을 수신하는 단계; 상기 분산 ID 등록 요청에 상응하여 상기 분산 ID를 이용하여 저장소로부터 분산 ID에 상응하는 분산 ID 문서를 독출하는 단계; 상기 분산 ID 문서에 기초하여 챌린지(Challenge) 정보를 생성하는 단계; 상기 사용자 단말로부터 상기 챌린지 정보에 상응하는 응답(Response) 정보를 수신하는 단계; 상기 응답 정보를 검증하여 올바른 사용자인지 여부를 판단하는 단계; 및 상기 판단 결과에 기초하여 사용자의 분산 ID와 사용자 정보를 매칭하여 사용자 정보 테이블에 저장하는 단계를 포함한다.In addition, the method for performing integrated authentication of a user based on a distributed ID in a target server according to the third aspect of the present invention is to receive a distributed ID registration request including user information and a distributed ID (Decentralized Identity) from a user terminal. step; reading a distributed ID document corresponding to the distributed ID from a storage using the distributed ID in response to the distributed ID registration request; generating challenge information based on the distributed ID document; receiving response information corresponding to the challenge information from the user terminal; determining whether the user is a valid user by verifying the response information; and matching the distributed ID of the user with the user information based on the determination result and storing the matching user information in the user information table.
본 발명의 일부 실시예는, 상기 사용자 단말로부터 분산 ID를 포함하는 사용자 인증 요청을 수신하는 단계; 상기 사용자 정보 테이블에 사용자의 상기 분산 ID가 존재하는지 여부를 확인하는 단계; 확인 결과 존재하는 경우, 상기 분산 ID를 이용하여 상기 저장소로부터 분산 ID에 상응하는 분산 ID 문서를 독출하는 단계; 상기 분산 ID 문서에 기초하여 챌린지(Challenge) 정보를 생성하는 단계; 상기 사용자 단말로부터 상기 챌린지 정보에 상응하는 응답(Response) 정보를 수신하는 단계; 상기 응답 정보를 검증하여 올바른 사용자인지 여부를 판단하는 단계; 및 상기 판단 결과에 기초하여 사용자의 인증을 허가하는 단계를 더 포함할 수 있다.In some embodiments of the present invention, receiving a user authentication request including a distributed ID from the user terminal; checking whether the distributed ID of the user exists in the user information table; reading a distributed ID document corresponding to the distributed ID from the storage using the distributed ID if it exists as a result of checking; generating challenge information based on the distributed ID document; receiving response information corresponding to the challenge information from the user terminal; determining whether the user is a valid user by verifying the response information; and permitting the user's authentication based on the determination result.
상술한 과제를 해결하기 위한 본 발명의 다른 면에 따른 컴퓨터 프로그램은, 하드웨어인 컴퓨터와 결합되어 분산 ID에 기반한 사용자의 통합 인증 방법을 실행하며, 컴퓨터 판독가능 기록매체에 저장된다.A computer program according to another aspect of the present invention for solving the above-described problems is combined with a computer, which is hardware, and executes a user's integrated authentication method based on a distributed ID, and is stored in a computer-readable recording medium.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.
전술한 본 발명의 일 실시예에 의하면, 사용자는 보안에 취약한 아이디 및 패스워드 방식 대신 충분한 안정성이 보장된 암호 알고리즘 기반으로 인증을 수행할 수 있다.According to the above-described embodiment of the present invention, the user can perform authentication based on an encryption algorithm guaranteeing sufficient stability instead of the ID and password method, which is weak in security.
또한, 사용자는 보안을 위해 어려운 패스워드를 기억할 필요 없이 단말에 저장된 분산 ID와 키 값을 이용하여 인증을 수행할 수 있다.In addition, the user can perform authentication using the distributed ID and key value stored in the terminal without having to remember a difficult password for security.
이와 더불어, 하나의 분산 ID를 통해 다수의 서비스를 이용하는 통합 로그인 시스템을 구현할 수 있다. SSO와 같은 통합 로그인 시스템은 사용자가 IdP와 같은 제3자가 사용하는 보안 시스템에 완전히 의존하여 인증하는 반면, 분산 ID를 이용하는 방법은 사용자가 직접 안전한 암호 알고리즘을 사용하여 인증을 수행할 수 있다는 장점이 있다.In addition, it is possible to implement an integrated login system using multiple services through one distributed ID. An integrated login system such as SSO allows the user to authenticate completely by relying on the security system used by a third party such as an IdP, whereas the method using a distributed identity has the advantage that the user can perform authentication using a secure password algorithm directly. have.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.
도 1은 본 발명의 일 실시예에 따른 분산 ID를 생성하는 과정을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 사용자의 분산 ID를 등록하는 과정을 설명하기 위한 도면이다.
도 3은 사용자 정보 테이블의 일 예시를 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 분산 ID를 이용하여 사용자 인증을 수행하는 과정을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 분산 ID에 기반한 사용자의 통합 인증이 가능한 사용자 단말의 블록도이다.1 is a diagram for explaining a process of generating a distributed ID according to an embodiment of the present invention.
2 is a diagram for explaining a process of registering a distributed ID of a user according to an embodiment of the present invention.
3 is a diagram illustrating an example of a user information table.
4 is a diagram for explaining a process of performing user authentication using a distributed ID according to an embodiment of the present invention.
5 is a block diagram of a user terminal capable of integrated authentication of a user based on a distributed ID according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. Advantages and features of the present invention and methods of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, and only these embodiments allow the disclosure of the present invention to be complete, and those of ordinary skill in the art to which the present invention pertains. It is provided to fully inform those skilled in the art of the scope of the present invention, and the present invention is only defined by the scope of the claims.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for the purpose of describing the embodiments and is not intended to limit the present invention. In this specification, the singular also includes the plural, unless specifically stated otherwise in the phrase. As used herein, “comprises” and/or “comprising” does not exclude the presence or addition of one or more other components in addition to the stated components. Like reference numerals refer to like elements throughout, and "and/or" includes each and every combination of one or more of the recited elements. Although "first", "second", etc. are used to describe various elements, these elements are not limited by these terms, of course. These terms are only used to distinguish one component from another. Therefore, it goes without saying that the first component mentioned below may be the second component within the spirit of the present invention.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used herein will have the meaning commonly understood by those of ordinary skill in the art to which this invention belongs. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless clearly specifically defined.
이하에서는 도 1 내지 도 4를 참조하여 사용자 단말(100) 및 대상 서버(200)에 의해 수행되는 분산 ID에 기반한 사용자의 통합 인증 방법을 설명하도록 한다.Hereinafter, an integrated authentication method of a user based on a distributed ID performed by the
도 1은 본 발명의 일 실시예에 따른 분산 ID를 생성하는 과정을 설명하기 위한 도면이다.1 is a diagram for explaining a process of generating a distributed ID according to an embodiment of the present invention.
먼저, 사용자 단말(100)은 공개키와 암호키로 구성된 키 쌍과, 공개키가 명시된 분산 ID(Decentralized Identity) 문서 및 분산 문서의 URI 정보를 포함하는 분산 ID를 생성한다(S111).First, the
분산 ID는 분산 ID를 가리킬 수 있는 통합 자원 식별자(Uniform Resource Identifier, 이하 URI)를 의미한다. 일 예로, 분산 ID는 기존의 중앙집중형 신원증명 기술과는 달리 블록체인을 기반으로 생성될 수 있다.The distributed ID means a Uniform Resource Identifier (URI) that can point to the distributed ID. As an example, the distributed ID may be generated based on a block chain unlike the existing centralized identification technology.
사용자 단말(100)은 분산 ID를 생성할 때 공개키와 암호키를 동시에 생성하며, 암호키는 안전한 저장소(300)에 저장하고, 공개키는 분산 ID 문서에 포함하여 저장할 수 있다.The
분산 ID 문서는 분산 ID의 소유권을 주장할 수 있는 공개키 값을 저장한다.A distributed ID document stores a public key value that can claim ownership of a distributed ID.
한편, 사용자 단말(100)은 키 쌍을 생성하기 위해 RSA, CDSA, EdDSA, FIDO 등의 암호화 알고리즘을 사용할 수 있으며, 암호학적 안전성을 충분히 보장받을 수 있는 다양한 알고리즘을 사용할 수 있다.Meanwhile, the
다음으로, 사용자 단말(100)은 공개키가 명시된 분산 ID 문서를 저장소(300)에 전송하고(S113), 저장소(300)는 이를 수신하여 저장한다(S115). 여기에서, 저장소(300)는 분산 ID에 포함된 URI 정보에 기초하여 분산 ID 문서를 독출하는 기능을 제공하며, 블록체인 기반의 저장소(300), 클라우드, 웹서버, 데이터베이스 등의 저장소(300)로 구현될 수 있다.Next, the
도 2는 본 발명의 일 실시예에 따른 사용자의 분산 ID를 등록하는 과정을 설명하기 위한 도면이다. 도 3은 사용자 정보 테이블의 일 예시를 도시한 도면이다.2 is a diagram for explaining a process of registering a distributed ID of a user according to an embodiment of the present invention. 3 is a diagram illustrating an example of a user information table.
사용자는 웹 서비스와 같은 소정의 이용 대상 서비스를 이용하기 위해, 패스워드를 대상 서버(200)에 저장하는 대신, 사용자가 직접 관리하는 분산 ID를 대상 서버(200)로 등록한다.In order to use a predetermined target service such as a web service, the user registers a distributed ID directly managed by the user as the
구체적으로, 사용자 단말(100)은 사용자가 원하는 서비스, 기관 등의 대상 서버(200)에 사용자 정보와 분산 ID를 전송한다(S211).Specifically, the
대상 서버(200)는 사용자 정보 및 분산 ID를 수신함에 따라, 사용자 정보와 분산 ID를 캐시 등을 통해 임시 저장하고, 분산 ID를 저장소(300)에 전송하여 저장소(300)로부터 분산 ID에 상응하는 분산 ID 문서를 독출한다(S213, S215).As the
이후, 대상 서버(200)는 분산 ID 문서를 이용하여 챌린지(Challenge) 정보를 생성하여 사용자 단말(100)로 전송한다(S217, S219). 여기에서 챌린지 정보는 추후 사용자가 분산 ID의 소유권을 주장하기 위해 사용된다. 예를 들어, 분산 ID 문서의 키 값으로 비대칭 키가 있을 경우, 대상 서버(200)는 분산 ID 문서 내에 포함된 공개키를 이용하여 난수(nonce), 수식 등을 암호화하여 챌린지 정보를 생성할 수 있다. 한편, 분산 ID 문서의 키 값으로는 RSA, 타원 곡선 등을 활용한 비대칭키, 생체인증 등 상호 간 챌린지/응답(Challenge/Response)을 통해 인증할 수 있는 모든 암호 수단이 될 수 있다.Thereafter, the
대상 서버(200)로부터 생성된 챌린지 정보를 수신한 사용자 단말(100)은 분산 ID 문서에 명시된 공개키와 쌍을 이루는 암호키를 이용하여 챌린지 정보를 해독하고, 챌린지 정보의 해독 결과 획득되는 응답(Response) 정보를 대상 서버(200)로 전송한다(S221, S223). 여기에서 응답 정보는 대상 서버(200)가 챌린지 정보를 생성하기 위해 사용한 난수 값 또는 수식에 대한 정답 등이 이에 해당할 수 있다.The
응답 정보를 수신한 대상 서버(200)는 응답 정보를 검증하고(S225), 검증 결과 올바른 사용자인 것으로 판단한 경우 사용자의 분산 ID와 사용자 정보를 매칭하여 도 3과 같은 사용자 정보 테이블에 저장한다(S227). 그리고 분산 ID 등록 결과를 사용자 단말(100)로 전송한다(S229)The
도 4는 본 발명의 일 실시예에 따른 분산 ID를 이용하여 사용자 인증을 수행하는 과정을 설명하기 위한 도면이다.4 is a diagram for explaining a process of performing user authentication using a distributed ID according to an embodiment of the present invention.
본 발명의 일 실시예는 사용자가 웹 서비스 등을 이용하기 위해 서버에 저장된 아이디에 해당하는 패스워드로 인증하는 대신, 사용자가 관리하는 분산 ID에 대한 키 값을 이용한 프로토콜을 통해 인증을 수행한다.In one embodiment of the present invention, authentication is performed through a protocol using a key value for a distributed ID managed by the user, instead of using a password corresponding to an ID stored in the server for the user to use a web service or the like.
먼저, 사용자 단말(100)은 자신이 등록한 서비스, 기관 등에 상응하는 대상 서버(200)로 등록시 사용한 분산 ID 및 사용자 인증 요청을 전송한다(S311).First, the
대상 서버(200)는 분산 ID 및 사용자 인증 요청을 수신함에 따라, 사용자 정보 테이블에서 사용자의 분산 ID를 확인하고, 확인 결과 분산 ID가 존재하는 경우 이를 이용하여 저장소(300)로부터 분산 ID에 상응하는 분산 ID 문서를 독출한다(S313, S315).As the
이후, 대상 서버(200)는 분산 ID 문서를 이용하여 챌린지(Challenge) 정보를 생성하여 사용자 단말(100)로 전송한다(S317, S319). 여기에서 챌린지 정보는 추후 사용자가 분산 ID의 소유권을 주장하기 위해 사용된다. 예를 들어, 분산 ID 문서의 키 값으로 비대칭 키가 있을 경우, 대상 서버(200)는 분산 ID 문서 내에 포함된 공개키를 이용하여 난수(nonce), 수식 등을 암호화하여 챌린지 정보를 생성할 수 있다. 한편, 분산 ID 문서의 키 값으로는 RSA, 타원 곡선 등을 활용한 비대칭키, 생체인증 등 상호 간 챌린지/응답(Challenge/Response)을 통해 인증할 수 있는 모든 암호 수단이 될 수 있다.Thereafter, the
대상 서버(200)로부터 생성된 챌린지 정보를 수신한 사용자 단말(100)은 분산 ID 문서에 명시된 공개키와 쌍을 이루는 암호키를 이용하여 챌린지 정보를 해독하고, 챌린지 정보의 해독 결과 획득되는 응답(Response) 정보를 대상 서버(200)로 전송한다(S321, S323). 여기에서 응답 정보는 대상 서버(200)가 챌린지 정보를 생성하기 위해 사용한 난수 값 또는 수식에 대한 정답 등이 이에 해당할 수 있다.The
응답 정보를 수신한 대상 서버(200)는 응답 정보를 검증하고(S325), 검증 결과 올바른 사용자인 것으로 판단한 경우 사용자가 요청한 서비스, 권한 등을 허가한다(S327).Upon receiving the response information, the
한편, 상술한 설명에서, 단계 S111 내지 S327은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. Meanwhile, in the above description, steps S111 to S327 may be further divided into additional steps or combined into fewer steps according to an embodiment of the present invention. In addition, some steps may be omitted if necessary, and the order between the steps may be changed.
도 5는 본 발명의 일 실시예에 따른 분산 ID에 기반한 사용자의 통합 인증이 가능한 사용자 단말(100)의 블록도이다.5 is a block diagram of a
본 발명의 일 실시예에 따른 사용자 단말(100)은 통신모듈(110), 메모리(120) 및 프로세서(130)를 포함하여 구성될 수 있다.The
통신모듈(110)은 소정의 이용 대상 서비스에 상응하는 서버(이하, 대상 서버(200)) 및 분산 ID(Decentralized Identity) 문서를 저장하는 저장소(300)와 데이터를 송수신한다.The
메모리(120)에는 분산 ID에 기반하여 사용자의 통합 인증을 위한 프로그램이 저장되고, 프로세서(130)는 메모리(120)에 저장된 프로그램을 실행시킨다.The
프로세서(130)는 메모리(120)에 저장된 프로그램을 실행시킴에 따라, 공개키와 암호키로 구성된 키 쌍과, 상기 공개키가 명시된 분산 ID(Decentralized Identity) 문서 및 상기 분산 ID 문서의 URI 정보를 포함하는 분산 ID를 생성하고, 상기 통신모듈을 통해 분산 ID 문서를 저장소(300)에 저장한다. As the
그 후, 프로세서(130)는 상기 대상 서버(200)로 분산 ID 등록을 요청하여 등록시키고, 상기 등록된 분산 ID를 대상 서버(200)로 전송하여 사용자 인증을 요청하며, 상기 사용자 인증 요청에 상응하는 사용자 인증 결과를 상기 대상 서버(200)로부터 수신한다.Thereafter, the
이상에서 전술한 본 발명의 일 실시예에 따른 사용자 단말(100) 및 대상 서버(200)에서의 분산 ID에 기반한 사용자의 통합 인증 방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.The user's integrated authentication method based on the distributed ID in the
상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, Ruby, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.The above-mentioned program, in order for the computer to read the program and execute the methods implemented as a program, C, C++, JAVA, Ruby, which the processor (CPU) of the computer can read through the device interface of the computer; It may include code coded in a computer language such as machine language. Such code may include functional code related to a function defining functions necessary for executing the methods, etc. can do. In addition, the code may further include additional information necessary for the processor of the computer to execute the functions or code related to memory reference for which location (address address) in the internal or external memory of the computer should be referenced. have. In addition, when the processor of the computer needs to communicate with any other computer or server located remotely in order to execute the functions, the code uses the communication module of the computer to determine how to communicate with any other computer or server remotely. It may further include a communication-related code for whether to communicate and what information or media to transmit and receive during communication.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.The storage medium is not a medium that stores data for a short moment, such as a register, a cache, a memory, etc., but a medium that stores data semi-permanently and can be read by a device. Specifically, examples of the storage medium include, but are not limited to, ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage device. That is, the program may be stored in various recording media on various servers accessible by the computer or in various recording media on the computer of the user. In addition, the medium may be distributed in a computer system connected by a network, and computer-readable codes may be stored in a distributed manner.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present invention is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and likewise components described as distributed may also be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the following claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.
100: 사용자 단말
110: 통신모듈
120: 메모리
130: 프로세서
200: 대상 서버
300: 저장소100: user terminal
110: communication module
120: memory
130: processor
200: target server
300: storage
Claims (11)
상기 분산 ID 문서를 저장소에 저장하는 단계;
소정의 이용 대상 서비스에 상응하는 서버(이하, 대상 서버)로 상기 분산 ID를 등록하는 단계;
상기 등록된 분산 ID를 대상 서버로 전송하여 사용자 인증을 요청하는 단계; 및
상기 사용자 인증 요청에 상응하는 사용자 인증 결과를 상기 대상 서버로부터 수신하는 단계를 포함하는,
사용자 단말에서의 분산 ID에 기반한 사용자의 통합 인증 방법.
generating a distributed ID including a key pair consisting of a public key and an encryption key, a distributed ID (Decentralized Identity) document in which the public key is specified, and URI information of the distributed ID document;
storing the distributed ID document in a storage;
registering the distributed ID with a server (hereinafter referred to as a target server) corresponding to a predetermined service target service;
requesting user authentication by transmitting the registered distributed ID to a target server; and
Receiving a user authentication result corresponding to the user authentication request from the target server,
A user's integrated authentication method based on the distributed ID in the user terminal.
상기 저장소는 상기 분산 ID에 포함된 URI 정보에 기초하여 상기 분산 ID 문서를 독출하는 것인,
사용자 단말에서의 분산 ID에 기반한 사용자의 통합 인증 방법.
The method of claim 1,
The storage will read the distributed ID document based on the URI information included in the distributed ID,
A user's integrated authentication method based on the distributed ID in the user terminal.
상기 대상 서버로 상기 분산 ID를 등록하는 단계는,
상기 대상 서버로 사용자 정보 및 분산 ID를 전송하는 단계;
상기 대상 서버로부터 생성된 챌린지(Challenge) 정보를 수신하는 단계;
상기 분산 ID 문서에 명시된 공개키와 쌍을 이루는 암호키를 이용하여 상기 챌린지 정보를 해독하는 단계; 및
상기 챌린지 정보의 해독 결과 획득되는 응답(Response) 정보를 상기 대상 서버로 전송하는 단계를 포함하는,
사용자 단말에서의 분산 ID에 기반한 사용자의 통합 인증 방법.
According to claim 1,
The step of registering the distributed ID with the target server comprises:
transmitting user information and distributed ID to the target server;
receiving challenge information generated from the target server;
decrypting the challenge information using an encryption key paired with the public key specified in the distributed ID document; and
Comprising the step of transmitting response (Response) information obtained as a result of decoding the challenge information to the target server,
A user's integrated authentication method based on the distributed ID in the user terminal.
상기 대상 서버는 상기 사용자 정보 및 분산 ID를 수신함에 따라, 상기 분산 ID를 이용하여 상기 저장소로부터 분산 ID에 상응하는 분산 ID 문서를 독출하고, 상기 분산 ID 문서에 기초하여 챌린지 정보를 생성하여 상기 사용자 단말로 전송하는 것인,
사용자 단말에서의 분산 ID에 기반한 사용자의 통합 인증 방법.
4. The method of claim 3,
When the target server receives the user information and the distributed ID, the target server reads a distributed ID document corresponding to the distributed ID from the storage using the distributed ID, and generates challenge information based on the distributed ID document to create the user which is transmitted to the terminal,
A user's integrated authentication method based on the distributed ID in the user terminal.
상기 대상 서버는 상기 응답 정보를 수신함에 따라, 상기 응답 정보를 검증하여 올바른 사용자인 것으로 판단한 경우, 사용자의 분산 ID와 사용자 정보를 매칭하여 사용자 정보 테이블에 저장하는 것인,
사용자 단말에서의 분산 ID에 기반한 사용자의 통합 인증 방법.
4. The method of claim 3,
When the target server receives the response information, verifies the response information and determines that the user is a correct user, the user information is matched with the distributed ID of the user and stored in the user information table,
A user's integrated authentication method based on the distributed ID in the user terminal.
상기 등록된 분산 ID를 대상 서버로 전송하여 사용자 인증을 요청하는 단계는,
상기 등록된 분산 ID 및 사용자 인증 요청을 상기 대상 서버로 전송하는 단계;
상기 대상 서버로부터 생성된 챌린지(Challenge) 정보를 수신하는 단계;
상기 분산 ID 문서에 명시된 공개키와 쌍을 이루는 암호키를 이용하여 상기 챌린지를 해독하는 단계; 및
상기 챌린지의 해독 결과 획득되는 응답(Response) 정보를 상기 대상 서버로 전송하는 단계를 포함하는,
사용자 단말에서의 분산 ID에 기반한 사용자의 통합 인증 방법.
According to claim 1,
The step of requesting user authentication by sending the registered distributed ID to the target server,
transmitting the registered distributed ID and user authentication request to the target server;
receiving challenge information generated from the target server;
decrypting the challenge using an encryption key paired with the public key specified in the distributed ID document; and
Comprising the step of transmitting response (Response) information obtained as a result of decryption of the challenge to the target server,
A user's integrated authentication method based on the distributed ID in the user terminal.
상기 대상 서버는 상기 분산 ID 및 사용자 인증 요청을 수신함에 따라, 사용자 정보 테이블에 사용자의 상기 분산 ID가 존재하는 경우, 상기 분산 ID를 이용하여 상기 저장소로부터 분산 ID에 상응하는 분산 ID 문서를 독출하고, 상기 분산 ID 문서에 기초하여 챌린지 정보를 생성하여 상기 사용자 단말로 전송하는 것인,
사용자 단말에서의 분산 ID에 기반한 사용자의 통합 인증 방법.
7. The method of claim 6,
Upon receiving the distributed ID and user authentication request, the target server reads a distributed ID document corresponding to the distributed ID from the storage using the distributed ID when the distributed ID of the user exists in the user information table, , to generate and transmit challenge information to the user terminal based on the distributed ID document,
A user's integrated authentication method based on the distributed ID in the user terminal.
상기 대상 서버는 상기 응답 정보를 수신함에 따라, 상기 응답 정보를 검증하여 올바른 사용자인 것으로 판단한 경우 사용자의 인증을 허가하는 것인,
사용자 단말에서의 분산 ID에 기반한 사용자의 통합 인증 방법.
7. The method of claim 6,
When the target server receives the response information, verifies the response information and determines that the user is a correct user, authentication of the user is permitted,
A user's integrated authentication method based on the distributed ID in the user terminal.
분산 ID에 기반하여 사용자의 통합 인증을 위한 프로그램이 저장된 메모리 및
상기 메모리에 저장된 프로그램을 실행시킴에 따라, 공개키와 암호키로 구성된 키 쌍과, 상기 공개키가 명시된 분산 ID(Decentralized Identity) 문서 및 상기 분산 ID 문서의 URI 정보를 포함하는 분산 ID를 생성하고, 상기 통신모듈을 통해 분산 ID 문서를 저장소에 저장한 후, 상기 대상 서버로 분산 ID 등록을 요청하여 등록시키고, 상기 등록된 분산 ID를 대상 서버로 전송하여 사용자 인증을 요청하며, 상기 사용자 인증 요청에 상응하는 사용자 인증 결과를 상기 대상 서버로부터 수신하는 프로세서를 포함하는,
분산 ID에 기반한 사용자의 통합 인증이 가능한 사용자 단말.
A communication module for transmitting and receiving data to and from a server (hereinafter referred to as a target server) corresponding to a predetermined target service and a storage for storing a distributed ID (Decentralized Identity) document;
Based on distributed ID, a memory and a program for single authentication of users are stored
As the program stored in the memory is executed, a key pair composed of a public key and an encryption key, a distributed ID including a distributed ID document in which the public key is specified, and URI information of the distributed ID document is generated, After storing the distributed ID document in the storage through the communication module, requesting and registering the distributed ID to the target server, sending the registered distributed ID to the target server to request user authentication, A processor for receiving a corresponding user authentication result from the target server,
A user terminal capable of integrated authentication of users based on distributed ID.
상기 분산 ID 등록 요청에 상응하여 상기 분산 ID를 이용하여 저장소로부터 분산 ID에 상응하는 분산 ID 문서를 독출하는 단계;
상기 분산 ID 문서에 기초하여 챌린지(Challenge) 정보를 생성하는 단계;
상기 사용자 단말로부터 상기 챌린지 정보에 상응하는 응답(Response) 정보를 수신하는 단계;
상기 응답 정보를 검증하여 올바른 사용자인지 여부를 판단하는 단계; 및
상기 판단 결과에 기초하여 사용자의 분산 ID와 사용자 정보를 매칭하여 사용자 정보 테이블에 저장하는 단계를 포함하는,
대상 서버에서의 분산 ID에 기반하여 사용자의 통합 인증을 수행하는 방법.
Receiving a distributed ID registration request including user information and a distributed ID (Decentralized Identity) from the user terminal;
reading a distributed ID document corresponding to the distributed ID from a storage using the distributed ID in response to the distributed ID registration request;
generating challenge information based on the distributed ID document;
receiving response information corresponding to the challenge information from the user terminal;
determining whether the user is a valid user by verifying the response information; and
Comprising the step of matching the user information with the distributed ID of the user based on the determination result and storing it in a user information table,
How to perform single sign-on of a user based on the distributed identity on the target server.
상기 사용자 단말로부터 분산 ID를 포함하는 사용자 인증 요청을 수신하는 단계;
상기 사용자 정보 테이블에 사용자의 상기 분산 ID가 존재하는지 여부를 확인하는 단계;
확인 결과 존재하는 경우, 상기 분산 ID를 이용하여 상기 저장소로부터 분산 ID에 상응하는 분산 ID 문서를 독출하는 단계;
상기 분산 ID 문서에 기초하여 챌린지(Challenge) 정보를 생성하는 단계;
상기 사용자 단말로부터 상기 챌린지 정보에 상응하는 응답(Response) 정보를 수신하는 단계;
상기 응답 정보를 검증하여 올바른 사용자인지 여부를 판단하는 단계; 및
상기 판단 결과에 기초하여 사용자의 인증을 허가하는 단계를 더 포함하는,
대상 서버에서의 분산 ID에 기반하여 사용자의 통합 인증을 수행하는 방법.11. The method of claim 10,
receiving a user authentication request including a distributed ID from the user terminal;
checking whether the distributed ID of the user exists in the user information table;
reading a distributed ID document corresponding to the distributed ID from the storage using the distributed ID if it exists as a result of checking;
generating challenge information based on the distributed ID document;
receiving response information corresponding to the challenge information from the user terminal;
determining whether the user is a valid user by verifying the response information; and
Further comprising the step of permitting the user's authentication based on the determination result,
How to perform single sign-on of a user based on the distributed identity on the target server.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210026576A KR20220122224A (en) | 2021-02-26 | 2021-02-26 | Integrated user authentication method based on decentralized identity in user device and server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210026576A KR20220122224A (en) | 2021-02-26 | 2021-02-26 | Integrated user authentication method based on decentralized identity in user device and server |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220122224A true KR20220122224A (en) | 2022-09-02 |
Family
ID=83281010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210026576A KR20220122224A (en) | 2021-02-26 | 2021-02-26 | Integrated user authentication method based on decentralized identity in user device and server |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20220122224A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024090628A1 (en) * | 2022-10-27 | 2024-05-02 | 주식회사 드림시큐리티 | Cryptographic communication method and apparatus of decentralized-id-based service |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102139645B1 (en) | 2020-04-13 | 2020-07-30 | 주식회사 한국정보보호경영연구소 | System for Certificating identity based on Blockchain and Driving method thereof |
-
2021
- 2021-02-26 KR KR1020210026576A patent/KR20220122224A/en unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102139645B1 (en) | 2020-04-13 | 2020-07-30 | 주식회사 한국정보보호경영연구소 | System for Certificating identity based on Blockchain and Driving method thereof |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024090628A1 (en) * | 2022-10-27 | 2024-05-02 | 주식회사 드림시큐리티 | Cryptographic communication method and apparatus of decentralized-id-based service |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200236147A1 (en) | Brokered authentication with risk sharing | |
US7409543B1 (en) | Method and apparatus for using a third party authentication server | |
US10567377B2 (en) | Multifactor privacy-enhanced remote identification using a rich credential | |
CN106330850B (en) | Security verification method based on biological characteristics, client and server | |
EP2954451B1 (en) | Barcode authentication for resource requests | |
US8997196B2 (en) | Flexible end-point compliance and strong authentication for distributed hybrid enterprises | |
US20120254935A1 (en) | Authentication collaboration system and authentication collaboration method | |
US10880276B1 (en) | System and method for allowing access to an application or features thereof on each of one or more user devices | |
CN107733933B (en) | Method and system for double-factor identity authentication based on biological recognition technology | |
US20170288873A1 (en) | Network Authentication Of Multiple Profile Accesses From A Single Remote Device | |
KR101367621B1 (en) | System and method for authentication based on one-time password | |
US11368314B2 (en) | Secure digital signing | |
CA2884005A1 (en) | Method and system for verifying an access request | |
US11949785B1 (en) | Biometric authenticated biometric enrollment | |
KR20210095093A (en) | Method for providing authentification service by using decentralized identity and server using the same | |
KR102012262B1 (en) | Key management method and fido authenticator software authenticator | |
US9954853B2 (en) | Network security | |
US11716312B1 (en) | Platform for optimizing secure communications | |
US20150328119A1 (en) | Method of treating hair | |
KR102372503B1 (en) | Method for providing authentification service by using decentralized identity and server using the same | |
Alrodhan et al. | Enhancing user authentication in claim-based identity management | |
US11882120B2 (en) | Identity intermediary service authorization | |
KR20220122224A (en) | Integrated user authentication method based on decentralized identity in user device and server | |
WO2021107755A1 (en) | A system and method for digital identity data change between proof of possession to proof of identity | |
US20220263818A1 (en) | Using a service worker to present a third-party cryptographic credential |