KR102367052B1 - Method for providing relational decentralized identifier service and blockchain node using them - Google Patents

Method for providing relational decentralized identifier service and blockchain node using them Download PDF

Info

Publication number
KR102367052B1
KR102367052B1 KR1020200076079A KR20200076079A KR102367052B1 KR 102367052 B1 KR102367052 B1 KR 102367052B1 KR 1020200076079 A KR1020200076079 A KR 1020200076079A KR 20200076079 A KR20200076079 A KR 20200076079A KR 102367052 B1 KR102367052 B1 KR 102367052B1
Authority
KR
South Korea
Prior art keywords
entity
information
specific entity
specific
relationship
Prior art date
Application number
KR1020200076079A
Other languages
Korean (ko)
Other versions
KR20210007844A (en
Inventor
어준선
송주한
Original Assignee
주식회사 코인플러그
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 코인플러그 filed Critical 주식회사 코인플러그
Priority to PCT/KR2020/008923 priority Critical patent/WO2021006616A1/en
Priority to US16/925,528 priority patent/US11366803B2/en
Publication of KR20210007844A publication Critical patent/KR20210007844A/en
Priority to KR1020210084361A priority patent/KR20210084380A/en
Application granted granted Critical
Publication of KR102367052B1 publication Critical patent/KR102367052B1/en

Links

Images

Classifications

    • H04L61/15
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/30Managing network names, e.g. use of aliases or nicknames
    • H04L61/3015Name registration, generation or assignment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Abstract

본 발명은 블록체인 네트워크를 이용하여 엔티티들의 DID를 발급하여 주며, 특정 엔티티 DID와 타 엔티티 DID 사이의 관계정보를 블록체인 네트워크의 분산원장 또는 다른 데이터베이스에 저장하는 관계성 DID 서비스를 제공하는 방법에 관한 것이다.The present invention issues DIDs of entities using a blockchain network, and provides a relational DID service that stores relational information between a specific entity DID and other entity DIDs in a distributed ledger or other database of a blockchain network. it's about

Figure R1020200076079
Figure R1020200076079

Description

관계성 탈중앙화 아이디 서비스를 제공하는 방법 및 이를 이용한 블록체인 노드{METHOD FOR PROVIDING RELATIONAL DECENTRALIZED IDENTIFIER SERVICE AND BLOCKCHAIN NODE USING THEM}A method for providing a relational decentralized ID service and a blockchain node using the same

본 발명은 관계성 탈중앙화 아이디 서비스를 제공하는 방법 및 이를 이용한 블록체인 노드에 관한 것으로, 보다 상세하게는, 다른 엔티티와의 상호 관계를 이용하여 관계성 탈중앙화 아이디 서비스를 제공하는 방법 및 이를 이용한 블록체인 노드에 관한 것이다.The present invention relates to a method for providing a relational decentralized ID service and a blockchain node using the same, and more particularly, to a method for providing a relational decentralized ID service using a mutual relationship with other entities and a method using the same It is about blockchain nodes.

일반적으로 아이디는 개인의 고유 정보와 맵핑되는 형태를 가지고 있다.In general, an ID has a form that is mapped with an individual's unique information.

예를 들어, aaa@gmail.com 이라는 이메일은 구글 아이디이며, 해당 아이디는 사용자의 성명과 전화 번호 등의 개인 정보와 상호 맵핑되어 구글 사용자 데이터베이스에 저장되어 있다.For example, the email aaa@gmail.com is a Google ID, and the ID is mapped to personal information such as a user's name and phone number and stored in the Google user database.

그러나, 종래의 아이디는 중앙화된 관리체계로 인하여 서버 해킹 등 개인 정보가 유출되는 사례가 지속적으로 발생하고 있으며, 개인 정보를 기업들이 수집 및 이용하지만 이에 대해 사용자에게 보상이 이루어지지 않고 있다.However, due to the centralized management system of the conventional ID, cases in which personal information is leaked, such as server hacking, are continuously occurring, and although companies collect and use personal information, users are not compensated for this.

이러한 종래의 중앙화된 관리체계의 문제점을 해결하기 위한 방안으로, 자기주권 신원정보관리 기술로서 탈중앙화 아이디(decentralized identifier, DID)가 개발되고 있다.As a method to solve the problems of the conventional centralized management system, a decentralized identifier (DID) is being developed as a self-sovereign identity information management technology.

DID의 예를 들면, did:meta:xxx 라는 DID는 개인의 personal information(PI)과 맵핑되어 사용자 단말에 저장되며, 사용자의 PI는 공인인증기관 등과 같은 제3자에 의해 검증된 후에 verifiable credential(VC)의 형태로 DID와 맵핑되어 사용자의 단말 또는 VC repository, 일 예로, identity hub 라는 공용 저장소에 저장된다.For example, the DID of did:meta:xxx is mapped with personal information (PI) and stored in the user terminal, and the user's PI is verified by a third party such as an authorized certification authority and then verifiable credential ( It is mapped with the DID in the form of VC) and stored in the user's terminal or VC repository, for example, in a public repository called identity hub.

하지만, 이러한 DID를 이용할 경우에도 DID를 사용하는 각각의 엔티티(entity)들은 DID와 VC를 이용하여 자신을 증명할 수 있으나, 다른 엔티티와의 관계를 증명할 수는 없다.However, even when such a DID is used, each entity using the DID can prove itself using the DID and VC, but cannot prove the relationship with other entities.

본 발명은 상술한 문제점들을 모두 해결하는 것을 그 목적으로 한다.An object of the present invention is to solve all of the above problems.

또한, 본 발명은 다른 엔티티와의 상호 관계를 증명할 수 있도록 하는 것을 다른 목적으로 한다.Another object of the present invention is to be able to prove a mutual relationship with other entities.

또한, 본 발명은 다른 엔티티와의 상호 관계를 이용하여 다양한 서비스를 제공할 수 있도록 하는 것을 또 다른 목적으로 한다.In addition, it is another object of the present invention to provide various services by using a mutual relationship with other entities.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따르면, 관계성 탈중앙화 아이디(decentralized identifier, DID) 서비스를 제공하는 방법에 있어서, (a) 특정 엔티티 단말로부터 특정 엔티티에 대응되는 특정 엔티티 DID와 타 엔티티에 대응되는 타 엔티티 DID 사이의 관계를 설정한 관계정보 - 상기 관계정보는 타 엔티티에 의해 설정되었으며, 상기 특정 엔티티에 의해 확인된 것임 - 에 대한 등록을 요청하는 관계정보 등록 요청 정보가 블록체인 네트워크로 브로드캐스팅되면, 상기 블록체인 네트워크를 구성하는 적어도 하나의 블록체인 노드가, 상기 관계정보 등록 요청 정보를 검증하거나, 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크에 등록된 아이덴티티 컨트랙트로 전송하여 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 등록 요청 정보를 검증하도록 하는 단계; 및 (b) 상기 블록체인 노드가, 상기 관계정보 등록 요청 정보가 유효한 것으로 검증되면, 상기 관계정보를 상기 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 상기 블록체인 네트워크에 등록하여 주거나, 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 등록 요청 정보가 유효한 것으로 검증되면 상기 관계정보를 상기 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 상기 블록체인 네트워크에 등록하도록 하는 단계; 를 포함하는 방법이 제공될 수 있다.According to an embodiment of the present invention for achieving the above object, in a method of providing a relational decentralized identifier (DID) service, (a) a specific entity DID corresponding to a specific entity from a specific entity terminal; Relation information registration request information for requesting registration of relationship information that establishes a relationship between DIDs of other entities corresponding to other entities - the relationship information is established by another entity and confirmed by the specific entity - is a block When broadcast to a chain network, at least one block chain node constituting the block chain network verifies the relationship information registration request information or transmits the relationship information registration request information to the identity contract registered in the block chain network to allow the identity contract to verify the relationship information registration request information; and (b) when the blockchain node verifies that the relationship information registration request information is valid, the relationship information is matched with the DID of the specific entity and the DID of the other entity to be registered in the blockchain network, or causing an identity contract to register the relationship information in the blockchain network by matching the relationship information with the DID of the specific entity and the DID of the other entity if the relationship information registration request information is valid; A method comprising a may be provided.

또한 본 발명의 일 실시예에 따르면, (c) 상기 특정 엔티티 단말로부터의 상기 특정 엔티티 DID를 이용한 상기 타 엔티티 DID에 대한 서비스 요청 정보에 대응하여 서비스 제공 서버로부터 상기 관계정보 요청 정보가 획득되거나, 리졸버 서버로부터 상기 서비스 제공 서버로부터의 DID 문서 요청 정보 - 상기 DID 문서 요청 정보는 특정 엔티티 DID 문서 요청 정보와 타 엔티티 DID 문서 요청 정보 중 적어도 하나를 포함함 - 에 대응한 DID 공개정보 - 상기 DID 공개정보는 특정 엔티티 공개 정보와 타 엔티티 공개 정보 중 적어도 하나를 포함하며, 상기 특정 엔티티 공개 정보는 상기 특정 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 포함하고, 상기 타 엔티티 공개 정보는 상기 타 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함함 - 에 대한 DID 공개정보 요청 정보가 획득되면, 상기 블록체인 노드가, (i) 상기 서비스 제공 서버로부터의 상기 관계정보 요청 정보에 대응하여 상기 특정 엔티티 DID 또는 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 관계정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID 또는 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 관계정보를 획득하도록 하여 상기 관계정보를 상기 서비스 제공 서버로 전송하여 주거나, (ii) 상기 리졸버 서버로부터의 상기 DID 공개정보 요청 정보에 대응하여 상기 특정 엔티티 DID와 상기 타 엔티티 DID 중 적어도 하나를 이용하여 상기 블록체인 네트워크로부터 상기 DID 공개 정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID 중 적어도 하나를 이용하여 상기 블록체인 네트워크로부터 상기 DID 공개정보를 획득하도록 하여 상기 DID 공개정보가 상기 리졸버 서버를 통해 상기 DID 문서로 가공되어 상기 서비스 제공 서버로 전송되도록 함으로써, 상기 서비스 제공 서버로 하여금 상기 블록체인 노드로부터 획득되는 상기 관계정보와 상기 DID 문서로부터 획득되는 상기 관계정보 중 어느 하나를 참조하여 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 확인하도록 하며, 상기 관계 정보를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계가 확인되면 상기 타 엔티티 DID에 대응되는 서비스를 상기 특정 엔티티 단말로 제공하여 주도록 하는 단계; 를 더 포함할 수 있다.Also, according to an embodiment of the present invention, (c) the relation information request information is obtained from the service providing server in response to the service request information for the other entity DID using the specific entity DID from the specific entity terminal, DID document request information from the resolver server to the service providing server - The DID document request information includes at least one of specific entity DID document request information and other entity DID document request information - DID disclosure information corresponding to - The DID disclosure The information includes at least one of specific entity public information and other entity public information, and the specific entity public information is information registered in the blockchain network in relation to the specific entity DID, at least the relationship information and the specific entity It includes a specific entity public key corresponding to the DID, and the other entity public information is information registered in the blockchain network in relation to the other entity DID, and at least the relation information and the other entity corresponding to the other entity DID. When the DID public information request information for - including a public key is obtained, the blockchain node (i) obtains the specific entity DID or the other entity DID in response to the relation information request information from the service providing server to obtain the relationship information from the block chain network using, or to obtain the relationship information from the block chain network using the specific entity DID or the other entity DID through the identity contract to provide the relationship information as the service or (ii) obtain the DID public information from the blockchain network using at least one of the specific entity DID and the other entity DID in response to the DID public information request information from the resolver server, or , using at least one of the specific entity DID and the other entity DID through the identity contract to obtain the DID public information from the blockchain network so that the DID public information is processed into the DID document through the resolver server and transmitted to the service providing server, thereby causing the service providing server to The relation between the specific entity DID and the other entity DID is confirmed by referring to any one of the obtained relation information and the relation information obtained from the DID document, and the specific entity DID and the other entity DID through the relation information providing a service corresponding to the other entity DID to the specific entity terminal when a relationship between entity DIDs is confirmed; may further include.

상기에서, 상기 특정 엔티티 단말로부터의 상기 서비스 요청 정보에는 상기 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키를 이용하여 상기 서비스 요청 정보를 암호화한 특정 엔티티 서명값이 포함되며, 상기 블록체인 노드는, 상기 서비스 제공 서버로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 요청하기 위한 특정 엔티티 퍼블릭 키 요청 정보가 획득되거나, 상기 리졸버 서버로부터 상기 서비스 제공 서버로부터의 상기 특정 엔티티 DID 문서 요청 정보에 대응한 상기 특정 엔티티 공개정보에 대한 특정 엔티티 공개정보 요청 정보가 획득되면, (i) 상기 서비스 제공 서버로부터의 상기 특정 엔티티 퍼블릭 키 요청 정보에 대응하여 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 상기 특정 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키를 획득하도록 하여 상기 특정 엔티티 퍼블릭 키를 상기 서비스 제공 서버로 전송하거나, (ii) 상기 리졸버 서버로부터의 상기 특정 엔티티 공개정보 요청 정보에 대응하여 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 공개정보를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 공개정보를 획득하도록 하여 상기 특정 엔티티 공개정보가 상기 리졸버 서버를 통해 상기 특정 엔티티 DID 문서로 가공되어 상기 서비스 제공 서버로 전송되도록 함으로써, 상기 서비스 제공 서버로 하여금 상기 블록체인 노드로부터 획득한 상기 특정 엔티티 퍼블릭 키 또는 상기 특정 엔티티 DID 문서로부터 획득한 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 특정 엔티티 서명값을 복호화하여 상기 특정 엔티티 서명값을 검증하도록 하며, 상기 특정 엔티티 서명값이 검증되면 상기 관계정보 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 할 수 있다.In the above, the service request information from the specific entity terminal includes a specific entity signature value obtained by encrypting the service request information using a specific entity private key corresponding to the specific entity DID. Specific entity public key request information for requesting a specific entity public key corresponding to the specific entity DID is obtained from the service providing server, or the specific entity public key request information corresponding to the specific entity DID document request information from the service providing server from the resolver server When specific entity public information request information for specific entity public information is obtained, (i) the specific entity from the blockchain network using the specific entity DID in response to the specific entity public key request information from the service providing server Obtain the specific entity public key corresponding to the DID or obtain the specific entity public key from the blockchain network using the specific entity DID through the identity contract to transmit the specific entity public key to the service providing server or (ii) obtain the specific entity public information from the blockchain network using the specific entity DID in response to the specific entity disclosure information request information from the resolver server, or obtain the specific entity DID through the identity contract The specific entity public information is processed into the specific entity DID document through the resolver server to be transmitted to the service providing server by using the Decrypt the specific entity signature value using the specific entity public key obtained from the block chain node or the specific entity public key obtained from the specific entity DID document to verify the specific entity signature value, When the signature value is verified, the relation information is requested information can be broadcast to the blockchain network.

상기에서, 상기 관계정보 등록 요청 정보는 상기 타 엔티티 DID에 대응되는 타 엔티티 단말에서 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 설정한 관계정보 설정 정보와, 상기 특정 엔티티 단말에서 상기 관계정보 설정 정보를 확인한 관계정보 확인 정보를 포함할 수 있다.In the above, the relationship information registration request information includes relationship information setting information for setting a relationship between the specific entity DID and the other entity DID in another entity terminal corresponding to the other entity DID, and the relationship information in the specific entity terminal It may include relationship information confirmation information for confirming setting information.

상기에서, 상기 관계정보 설정 정보는 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 상기 관계정보를 상기 타 엔티티 DID에 대응되는 타 엔티티 프라이빗 키로 암호화한 타 엔티티 서명값을 포함하고, 상기 관계정보 확인 정보는 상기 관계정보와, 상기 관계정보를 상기 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키로 암호화한 특정 엔티티 서명값을 포함하며, 상기 블록체인 노드는, 상기 특정 엔티티 DID와 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키와 상기 타 엔티티 퍼블릭 키를 획득하도록 하며, 상기 타 엔티티 퍼블릭 키를 이용하여 상기 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하고, 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 특정 엔티티 서명값을 복호화하여 상기 관계정보 확인 정보를 검증함으로써 상기 관계정보 등록 요청 정보를 검증하도록 할 수 있다.In the above, the relationship information setting information includes relationship information for establishing a relationship between the specific entity DID and the other entity DID, and another entity signature value obtained by encrypting the relationship information with another entity private key corresponding to the other entity DID. The relationship information confirmation information includes the relationship information and a specific entity signature value obtained by encrypting the relationship information with a specific entity private key corresponding to the specific entity DID, wherein the block chain node includes the specific entity DID and Obtain a specific entity public key corresponding to the specific entity DID and another entity public key corresponding to the other entity DID from the blockchain network using the other entity DID, or obtain the specific entity DID and the other entity public key through the identity contract Obtain the specific entity public key and the other entity public key from the blockchain network using entity DID, and decrypt the other entity signature value using the other entity public key to verify the relationship information setting information, , by using the specific entity public key to decrypt the specific entity signature value to verify the relation information confirmation information, thereby verifying the relation information registration request information.

상기에서, 상기 블록체인 노드는, 상기 타 엔티티 단말로부터 전송되는 상기 관계정보 설정 정보에 대응한 상기 특정 엔티티 단말로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키에 대한 타 엔티티 퍼블릭 키 요청 정보가 획득되거나, 리졸버 서버로부터 상기 특정 엔티티 단말로부터의 타 엔티티 DID 문서 요청 정보에 대응한 타 엔티티 공개정보 - 상기 타 엔티티 공개정보는 상기 타 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함함 - 에 대한 타 엔티티 공개정보 요청 정보가 획득되면, (i) 상기 특정 엔티티 단말로부터의 상기 타 엔티티 퍼블릭 키 요청 정보에 대응하여 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 상기 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 퍼블릭 키를 획득하도록 하여 상기 타 엔티티 퍼블릭 키를 상기 특정 엔티티 단말로 전송하여 주거나, (ii) 상기 리졸버 서버로부터의 상기 타 엔티티 공개정보 요청 정보에 대응하여 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 공개정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 공개정보를 획득하도록 하여 상기 타 엔티티 공개정보가 상기 리졸버 서버를 통해 상기 타 엔티티 DID 문서로 가공되어 상기 특정 엔티티 단말로 전송되도록 함으로써, 상기 특정 엔티티 단말로 하여금 상기 블록체인 노드로부터 전송된 상기 타 엔티티 퍼블릭 키 또는 상기 타 엔티티 DID 문서로부터 획득한 상기 타 엔티티 퍼블릭 키를 이용하여 상기 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하도록 하고, 상기 관계정보 설정 정보가 검증되면 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 하여 상기 관계정보 등록 요청 정보를 획득할 수 있다.In the above, in the block chain node, other entity public key request information for another entity public key corresponding to the other entity DID is obtained from the specific entity terminal corresponding to the relationship information setting information transmitted from the other entity terminal. or other entity public information corresponding to the other entity DID document request information from the resolver server from the specific entity terminal - The other entity public information is information registered in the blockchain network in relation to the other entity DID, at least When other entity public information request information for - including the relationship information and another entity public key corresponding to the other entity DID is obtained, (i) in response to the other entity public key request information from the specific entity terminal Obtain the other entity public key corresponding to the other entity DID from the blockchain network using the other entity DID, or obtain the other entity public key from the blockchain network using the other entity DID through the identity contract and transmits the other entity public key to the specific entity terminal, or (ii) uses the other entity DID in response to the other entity public information request information from the resolver server to obtain the other entity public key from the blockchain network. Obtain the other entity public information corresponding to the entity DID, or obtain the other entity public information from the block chain network using the other entity DID through the identity contract, so that the other entity public information is transmitted through the resolver server By processing the other entity DID document and sending it to the specific entity terminal, the specific entity terminal can use the other entity public key transmitted from the block chain node or the other entity public key obtained from the other entity DID document. Decrypt the other entity signature value using to verify the relationship information setting information, and When the relationship information setting information is verified, the relationship information registration request information can be obtained by broadcasting the relationship information registration request information to the block chain network.

상기에서, 상기 블록체인 노드는, 상기 타 엔티티 단말로부터 상기 관계정보 설정 정보가 상기 블록체인 네트워크로 브로드캐스팅되어 상기 관계정보 설정 정보가 획득되면, 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하거나 상기 아이덴티티 컨트랙트를 통해 상기 관계정보 설정 정보가 상기 특정 엔티티 단말로 전송되도록 함으로써, 상기 특정 엔티티 단말로 하여금 상기 관계정보 설정 정보의 검증 결과에 대응한 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 함으로써 상기 관계정보 등록 요청 정보를 획득할 수 있다.In the above, when the relation information setting information is obtained by broadcasting the relation information setting information from the other entity terminal to the block chain network, the block chain node transmits the relation information setting information to the specific entity terminal or By sending the relation information setting information to the specific entity terminal through the identity contract, the specific entity terminal broadcasts the relation information registration request information corresponding to the verification result of the relation information setting information to the block chain network By casting, the relation information registration request information can be obtained.

상기에서, 상기 블록체인 노드는, 상기 타 엔티티 단말로부터 상기 관계정보 설정 정보가 상기 블록체인 네트워크로 브로드캐스팅되면, (i) 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 퍼블릭 키를 획득하도록 하며, 상기 타 엔티티 퍼블릭 키를 이용하여 상기 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하고, 상기 관계정보 설정 정보가 검증되면 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하거나 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 설정 정보에 대한 검증 결과를 상기 타 엔티티 단말로 전송하여 상기 타 엔티티 단말이 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하게 하도록 하며, 상기 특정 엔티티 단말로부터 상기 관계정보 확인 정보가 상기 블록체인 네트워크로 브로드캐스팅되면, (i) 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키를 획득하도록 하며, 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 관계정보 확인 정보를 복호화하여 상기 특정 엔티티 서명값을 검증할 수 있다.In the above, when the relationship information setting information is broadcast from the other entity terminal to the blockchain network, the blockchain node (i) corresponds to the other entity DID from the blockchain network using the other entity DID Acquire another entity public key to be used or obtain the other entity public key from the blockchain network using the other entity DID through the identity contract, and decrypt the other entity signature value using the other entity public key to verify the relation information setting information, and when the relation information setting information is verified, the relation information setting information is transmitted to the specific entity terminal or the identity contract allows the identity contract to transmit the verification result for the relation information setting information to the other entity terminal to cause the other entity terminal to transmit the relationship information setting information to the specific entity terminal, and when the relationship information confirmation information from the specific entity terminal is broadcast to the block chain network, (i) the specific entity Obtain the specific entity public key corresponding to the specific entity DID from the blockchain network using DID or obtain the specific entity public key from the blockchain network using the specific entity DID through the identity contract, The specific entity signature value may be verified by decrypting the relation information confirmation information using the specific entity public key.

또한, 본 발명의 다른 실시예에 따르면, 관계성 탈중앙화 아이디(decentralized identifier, DID) 서비스를 제공하는 블록체인 노드에 있어서, 관계성 DID 서비스를 제공하기 위한 인스트럭션들이 저장된 메모리; 및 상기 메모리에 저장된 인스트럭션들에 따라 상기 관계성 DID 서비스를 제공하기 위한 동작을 수행하는 프로세서; 를 포함하되, 상기 프로세서는, (I) 특정 엔티티 단말로부터 특정 엔티티에 대응되는 특정 엔티티 DID와 타 엔티티에 대응되는 타 엔티티 DID 사이의 관계를 설정한 관계정보 - 상기 관계정보는 타 엔티티에 의해 설정되었으며, 상기 특정 엔티티에 의해 확인된 것임 - 에 대한 등록을 요청하는 관계정보 등록 요청 정보가 블록체인 네트워크로 브로드캐스팅되면, 상기 관계정보 등록 요청 정보를 검증하거나, 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크에 등록된 아이덴티티 컨트랙트로 전송하여 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 등록 요청 정보를 검증하도록 하는 프로세스, 및 (II) 상기 관계정보 등록 요청 정보가 유효한 것으로 검증되면, 상기 관계정보를 상기 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 상기 블록체인 네트워크에 등록하여 주거나, 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 등록 요청 정보가 유효한 것으로 검증되면 상기 관계정보를 상기 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 상기 블록체인 네트워크에 등록하도록 하는 프로세스를 수행하는 블록체인 노드가 제공될 수 있다.In addition, according to another embodiment of the present invention, there is provided a blockchain node providing a relational decentralized identifier (DID) service, comprising: a memory in which instructions for providing the relational DID service are stored; and a processor that performs an operation for providing the relational DID service according to the instructions stored in the memory. , wherein the processor includes: (I) relationship information for establishing a relationship between a specific entity DID corresponding to a specific entity and another entity DID corresponding to another entity from a specific entity terminal - The relationship information is set by another entity When the relationship information registration request information requesting registration for - has been broadcast to the blockchain network, the relationship information registration request information is verified, or the relationship information registration request information is transmitted to the block A process for sending the identity contract registered in the chain network to cause the identity contract to verify the relationship information registration request information, and (II) if the relationship information registration request information is verified as valid, the relationship information is transferred to the specific entity Match the DID of the other entity to the DID of the other entity and register it in the blockchain network, or if the identity contract verifies that the relationship information registration request information is valid, the relationship information is converted to the DID of the specific entity and that of the other entity. A blockchain node that matches the DID and performs a process of registering it in the blockchain network may be provided.

상기에서, 상기 프로세서는, (III) 상기 특정 엔티티 단말로부터의 상기 특정 엔티티 DID를 이용한 상기 타 엔티티 DID에 대한 서비스 요청 정보에 대응하여 서비스 제공 서버로부터 상기 관계정보 요청 정보가 획득되거나, 리졸버 서버로부터 상기 서비스 제공 서버로부터의 DID 문서 요청 정보 - 상기 DID 문서 요청 정보는 특정 엔티티 DID 문서 요청 정보와 타 엔티티 DID 문서 요청 정보 중 적어도 하나를 포함함 - 에 대응한 DID 공개정보 - 상기 DID 공개정보는 특정 엔티티 공개 정보와 타 엔티티 공개 정보 중 적어도 하나를 포함하며, 상기 특정 엔티티 공개 정보는 상기 특정 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 포함하고, 상기 타 엔티티 공개 정보는 상기 타 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함함 - 에 대한 DID 공개정보 요청 정보가 획득되면, 상기 블록체인 노드가, (i) 상기 서비스 제공 서버로부터의 상기 관계정보 요청 정보에 대응하여 상기 특정 엔티티 DID 또는 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 관계정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID 또는 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 관계정보를 획득하도록 하여 상기 관계정보를 상기 서비스 제공 서버로 전송하여 주거나, (ii) 상기 리졸버 서버로부터의 상기 DID 공개정보 요청 정보에 대응하여 상기 특정 엔티티 DID와 상기 타 엔티티 DID 중 적어도 하나를 이용하여 상기 블록체인 네트워크로부터 상기 DID 공개 정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID 중 적어도 하나를 이용하여 상기 블록체인 네트워크로부터 상기 DID 공개정보를 획득하도록 하여 상기 DID 공개정보가 상기 리졸버 서버를 통해 상기 DID 문서로 가공되어 상기 서비스 제공 서버로 전송되도록 함으로써, 상기 서비스 제공 서버로 하여금 상기 블록체인 노드로부터 획득되는 상기 관계정보와 상기 DID 문서로부터 획득되는 상기 관계정보 중 어느 하나를 참조하여 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 확인하도록 하며, 상기 관계 정보를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계가 확인되면 상기 타 엔티티 DID에 대응되는 서비스를 상기 특정 엔티티 단말로 제공하여 주도록 하는 프로세스를 더 수행할 수 있다.In the above, the processor is configured to: (III) obtain the relation information request information from a service providing server in response to service request information for the other entity DID using the specific entity DID from the specific entity terminal, or from a resolver server DID document request information from the service providing server - The DID document request information includes at least one of specific entity DID document request information and other entity DID document request information - DID disclosure information corresponding to - The DID disclosure information is specific It includes at least one of entity public information and other entity public information, wherein the specific entity public information is information registered in the blockchain network in relation to the specific entity DID, and corresponds to at least the relationship information and the specific entity DID. and a specific entity public key, wherein the other entity public information is information registered in the blockchain network in relation to the other entity DID, at least the relation information and the other entity public key corresponding to the other entity DID. includes - when the DID public information request information for Obtain the relationship information from the block chain network, or obtain the relationship information from the block chain network using the specific entity DID or the other entity DID through the identity contract, and transmit the relationship information to the service providing server or (ii) obtaining the DID public information from the blockchain network using at least one of the specific entity DID and the other entity DID in response to the DID public information request information from the resolver server, or the identity Using at least one of the specific entity DID and the other entity DID through a contract Obtain the DID public information from the blockchain network so that the DID public information is processed into the DID document through the resolver server and transmitted to the service providing server, thereby causing the service providing server to obtain from the blockchain node The relation between the specific entity DID and the other entity DID is checked by referring to any one of the relation information obtained from the relation information and the relation information obtained from the DID document, and the specific entity DID and the other entity through the relation information When the relationship between the DIDs is confirmed, a process of providing a service corresponding to the other entity DID to the specific entity terminal may be further performed.

상기에서, 상기 특정 엔티티 단말로부터의 상기 서비스 요청 정보에는 상기 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키를 이용하여 상기 서비스 요청 정보를 암호화한 특정 엔티티 서명값이 포함되며, 상기 서비스 제공 서버로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 요청하기 위한 특정 엔티티 퍼블릭 키 요청 정보가 획득되거나, 상기 리졸버 서버로부터 상기 서비스 제공 서버로부터의 상기 특정 엔티티 DID 문서 요청 정보에 대응한 상기 특정 엔티티 공개정보에 대한 특정 엔티티 공개정보 요청 정보가 획득되면, (i) 상기 서비스 제공 서버로부터의 상기 특정 엔티티 퍼블릭 키 요청 정보에 대응하여 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 상기 특정 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키를 획득하도록 하여 상기 특정 엔티티 퍼블릭 키를 상기 서비스 제공 서버로 전송하거나, (ii) 상기 리졸버 서버로부터의 상기 특정 엔티티 공개정보 요청 정보에 대응하여 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 공개정보를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 공개정보를 획득하도록 하여 상기 특정 엔티티 공개정보가 상기 리졸버 서버를 통해 상기 특정 엔티티 DID 문서로 가공되어 상기 서비스 제공 서버로 전송되도록 함으로써, 상기 서비스 제공 서버로 하여금 상기 블록체인 노드로부터 획득한 상기 특정 엔티티 퍼블릭 키 또는 상기 특정 엔티티 DID 문서로부터 획득한 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 특정 엔티티 서명값을 복호화하여 상기 특정 엔티티 서명값을 검증하도록 하며, 상기 특정 엔티티 서명값이 검증되면 상기 관계정보 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 할 수 있다.In the above, the service request information from the specific entity terminal includes a specific entity signature value obtained by encrypting the service request information using a specific entity private key corresponding to the specific entity DID, and the service request information from the service providing server Specific entity public key request information for requesting a specific entity public key corresponding to the entity DID is obtained, or the specific entity public information corresponding to the specific entity DID document request information from the service providing server from the resolver server When specific entity public information request information is obtained, (i) using the specific entity DID in response to the specific entity public key request information from the service providing server, the specific entity DID corresponding to the specific entity DID from the blockchain network Obtain the entity public key or obtain the specific entity public key from the blockchain network using the specific entity DID through the identity contract to send the specific entity public key to the service providing server, or (ii) the In response to the specific entity public information request information from a resolver server, the specific entity public information is obtained from the blockchain network using the specific entity DID, or the specific entity DID is used through the identity contract to obtain the specific entity DID. By obtaining the specific entity public information from Decrypt the specific entity signature value using the specific entity public key or the specific entity public key obtained from the specific entity DID document to verify the specific entity signature value, and if the specific entity signature value is verified, the Relation information request information to the block chain It can be broadcast over the network.

상기에서, 상기 관계정보 등록 요청 정보는 상기 타 엔티티 DID에 대응되는 타 엔티티 단말에서 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 설정한 관계정보 설정 정보와, 상기 특정 엔티티 단말에서 상기 관계정보 설정 정보를 확인한 관계정보 확인 정보를 포함할 수 있다.In the above, the relationship information registration request information includes relationship information setting information for setting a relationship between the specific entity DID and the other entity DID in another entity terminal corresponding to the other entity DID, and the relationship information in the specific entity terminal It may include relationship information confirmation information for confirming setting information.

상기에서, 상기 관계정보 설정 정보는 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 상기 관계정보를 상기 타 엔티티 DID에 대응되는 타 엔티티 프라이빗 키로 암호화한 타 엔티티 서명값을 포함하고, 상기 관계정보 확인 정보는 상기 관계정보와, 상기 관계정보를 상기 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키로 암호화한 특정 엔티티 서명값을 포함하며, 상기 프로세서는, 상기 특정 엔티티 DID와 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키와 상기 타 엔티티 퍼블릭 키를 획득하도록 하며, 상기 타 엔티티 퍼블릭 키를 이용하여 상기 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하고, 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 특정 엔티티 서명값을 복호화하여 상기 관계정보 확인 정보를 검증함으로써 상기 관계정보 등록 요청 정보를 검증하도록 할 수 있다.In the above, the relationship information setting information includes relationship information for establishing a relationship between the specific entity DID and the other entity DID, and another entity signature value obtained by encrypting the relationship information with another entity private key corresponding to the other entity DID. wherein the relationship information confirmation information includes the relationship information and a specific entity signature value obtained by encrypting the relationship information with a specific entity private key corresponding to the specific entity DID, wherein the processor includes the specific entity DID and the other A specific entity public key corresponding to the specific entity DID and another entity public key corresponding to the other entity DID are obtained from the block chain network using the entity DID, or the specific entity DID and the other entity DID are obtained through the identity contract. to obtain the specific entity public key and the other entity public key from the blockchain network using The relation information registration request information may be verified by decrypting the specific entity signature value using the specific entity public key to verify the relation information confirmation information.

상기에서, 상기 프로세서는, 상기 타 엔티티 단말로부터 전송되는 상기 관계정보 설정 정보에 대응한 상기 특정 엔티티 단말로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키에 대한 타 엔티티 퍼블릭 키 요청 정보가 획득되거나, 리졸버 서버로부터 상기 특정 엔티티 단말로부터의 타 엔티티 DID 문서 요청 정보에 대응한 타 엔티티 공개정보 - 상기 타 엔티티 공개정보는 상기 타 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함함 - 에 대한 타 엔티티 공개정보 요청 정보가 획득되면, (i) 상기 특정 엔티티 단말로부터의 상기 타 엔티티 퍼블릭 키 요청 정보에 대응하여 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 상기 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 퍼블릭 키를 획득하도록 하여 상기 타 엔티티 퍼블릭 키를 상기 특정 엔티티 단말로 전송하여 주거나, (ii) 상기 리졸버 서버로부터의 상기 타 엔티티 공개정보 요청 정보에 대응하여 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 공개정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 공개정보를 획득하도록 하여 상기 타 엔티티 공개정보가 상기 리졸버 서버를 통해 상기 타 엔티티 DID 문서로 가공되어 상기 특정 엔티티 단말로 전송되도록 함으로써, 상기 특정 엔티티 단말로 하여금 상기 블록체인 노드로부터 전송된 상기 타 엔티티 퍼블릭 키 또는 상기 타 엔티티 DID 문서로부터 획득한 상기 타 엔티티 퍼블릭 키를 이용하여 상기 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하도록 하고, 상기 관계정보 설정 정보가 검증되면 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 하여 상기 관계정보 등록 요청 정보를 획득할 수 있다.In the above, the processor is configured to obtain, from the specific entity terminal corresponding to the relationship information setting information transmitted from the other entity terminal, other entity public key request information for the other entity public key corresponding to the other entity DID, Other entity public information corresponding to the other entity DID document request information from the resolver server from the specific entity terminal - The other entity public information is information registered in the blockchain network in relation to the other entity DID, at least the relation Including information and another entity public key corresponding to the other entity DID - When the other entity public information request information is obtained, (i) the other entity public key request information from the specific entity terminal corresponds to the other entity public key request information To obtain the other entity public key corresponding to the other entity DID from the blockchain network using the entity DID or to obtain the other entity public key from the blockchain network using the other entity DID through the identity contract to transmit the other entity public key to the specific entity terminal, or (ii) the other entity DID from the blockchain network using the other entity DID in response to the other entity public information request information from the resolver server Obtain other entity public information corresponding to , or obtain the other entity public information from the block chain network using the other entity DID through the identity contract, so that the other entity public information is transmitted to the other entity through the resolver server. By processing the entity DID document and sending it to the specific entity terminal, the specific entity terminal uses the other entity public key transmitted from the blockchain node or the other entity public key obtained from the other entity DID document. Decrypt the other entity signature value to verify the relationship information setting information, and the relationship When the information setting information is verified, the relation information registration request information may be obtained by broadcasting the relation information registration request information to the block chain network.

상기에서, 상기 프로세서는, 상기 타 엔티티 단말로부터 상기 관계정보 설정 정보가 상기 블록체인 네트워크로 브로드캐스팅되어 상기 관계정보 설정 정보가 획득되면, 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하거나 상기 아이덴티티 컨트랙트를 통해 상기 관계정보 설정 정보가 상기 특정 엔티티 단말로 전송되도록 함으로써, 상기 특정 엔티티 단말로 하여금 상기 관계정보 설정 정보의 검증 결과에 대응한 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 함으로써 상기 관계정보 등록 요청 정보를 획득할 수 있다.In the above, when the relation information setting information is broadcast from the other entity terminal to the block chain network and the relation information setting information is obtained, the processor transmits the relation information setting information to the specific entity terminal or the identity By sending the relation information setting information to the specific entity terminal through a contract, the specific entity terminal broadcasts the relation information registration request information corresponding to the verification result of the relation information setting information to the block chain network By doing so, it is possible to obtain the relation information registration request information.

상기에서, 상기 프로세서는, 상기 타 엔티티 단말로부터 상기 관계정보 설정 정보가 상기 블록체인 네트워크로 브로드캐스팅되면, (i) 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 퍼블릭 키를 획득하도록 하며, 상기 타 엔티티 퍼블릭 키를 이용하여 상기 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하고, 상기 관계정보 설정 정보가 검증되면 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하거나 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 설정 정보에 대한 검증 결과를 상기 타 엔티티 단말로 전송하여 상기 타 엔티티 단말이 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하게 하도록 하며, 상기 특정 엔티티 단말로부터 상기 관계정보 확인 정보가 상기 블록체인 네트워크로 브로드캐스팅되면, (i) 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키를 획득하도록 하며, 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 관계정보 확인 정보를 복호화하여 상기 특정 엔티티 서명값을 검증할 수 있다.In the above, when the relationship information setting information is broadcast from the other entity terminal to the block chain network, (i) the other entity DID from the block chain network using the other entity DID Obtain the entity public key or obtain the other entity public key from the blockchain network using the other entity DID through the identity contract, and decrypt the other entity signature value using the other entity public key Verifies the relationship information setting information, and when the relationship information setting information is verified, the relationship information setting information is transmitted to the specific entity terminal or the identity contract transmits the verification result for the relation information setting information to the other entity terminal to cause the other entity terminal to transmit the relationship information setting information to the specific entity terminal, and when the relationship information confirmation information from the specific entity terminal is broadcast to the block chain network, (i) the specific entity DID to obtain the specific entity public key corresponding to the specific entity DID from the blockchain network using The specific entity signature value may be verified by decrypting the relation information confirmation information using the entity public key.

이 외에도, 본 발명의 방법을 실행하기 위한 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체가 더 제공된다.In addition to this, a computer-readable recording medium for recording a computer program for executing the method of the present invention is further provided.

본 발명에 의하면, 다음과 같은 효과가 있다.According to the present invention, the following effects are obtained.

본 발명은 DID와 관련하여 다른 엔티티와의 상호 관계를 등록함으로써 다른 엔티티와의 상호 관계를 증명할 수 있게 된다.The present invention makes it possible to prove the mutual relationship with other entities by registering the mutual relationship with other entities in relation to the DID.

본 발명은 DID와 관련하여 다른 엔티티와의 상호 관계를 등록할 수 있도록 함으로써 다른 엔티티와의 상호 관계를 이용하여 다양한 서비스를 제공할 수 있게 된다.According to the present invention, it is possible to provide various services by using the mutual relationship with other entities by registering the correlation with other entities in relation to the DID.

도 1은 본 발명의 일 실시예에 따른 관계성 탈중앙화 아이디 서비스를 제공하기 위한 시스템을 개략적으로 도시한 것이고,
도 2는 본 발명의 일 실시예에 따른 관계성 탈중앙화 아이디 서비스를 제공하는 방법을 개략적으로 도시한 것이고,
도 3은 본 발명의 다른 실시예에 따른 관계성 탈중앙화 아이디 서비스를 제공하는 방법을 개략적으로 도시한 것이고,
도 4는 본 발명의 또 다른 실시예에 따른 관계성 탈중앙화 아이디 서비스를 제공하는 방법을 개략적으로 도시한 것이고,
도 5는 본 발명의 또 다른 실시예에 따른 관계성 탈중앙화 아이디 서비스를 제공하는 방법을 개략적으로 도시한 것이다.
1 schematically shows a system for providing a relational decentralized ID service according to an embodiment of the present invention;
2 schematically illustrates a method for providing a relational decentralized ID service according to an embodiment of the present invention;
3 schematically illustrates a method for providing a relational decentralized ID service according to another embodiment of the present invention;
4 schematically illustrates a method for providing a relational decentralized ID service according to another embodiment of the present invention;
5 schematically illustrates a method for providing a relational decentralized ID service according to another embodiment of the present invention.

후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [0012] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [0010] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [0010] Reference is made to the accompanying drawings, which show by way of illustration specific embodiments in which the present invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the present invention. It should be understood that the various embodiments of the present invention are different but need not be mutually exclusive. For example, certain shapes, structures, and characteristics described herein with respect to one embodiment may be implemented in other embodiments without departing from the spirit and scope of the invention. In addition, it should be understood that the location or arrangement of individual components within each disclosed embodiment may be changed without departing from the spirit and scope of the present invention. Accordingly, the detailed description set forth below is not intended to be taken in a limiting sense, and the scope of the present invention, if properly described, is limited only by the appended claims, along with all scope equivalents as those claimed. Like reference numerals in the drawings refer to the same or similar functions throughout the various aspects.

이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings in order to enable those of ordinary skill in the art to easily practice the present invention.

도 1은 본 발명의 일 실시예에 따른 관계성 탈중앙화 아이디 서비스(decentralized identifier, DID)를 제공하는 시스템을 개략적으로 도시한 것이고, 시스템은 엔티티 단말들(100), 블록체인 네트워크(200), 서비스 제공 서버(300), 및 리졸버 서버(400)를 포함할 수 있다.1 schematically shows a system for providing a relational decentralized identifier (DID) service according to an embodiment of the present invention, and the system includes entity terminals 100, a blockchain network 200, It may include a service providing server 300 , and a resolver server 400 .

먼저, 엔티티 단말들(100)은 관계성 DID 서비스를 이용하고자 하는 각각의 엔티티들에 대응되는 단말들로, 엔티티 단말들(100)은 각각 발급받은 DID와 DID에 매칭되는 personal identity(PI) 또는 PI를 인증 기관에서 인증한 VC(verifiable credential)을 저장할 수 있다. 이때, 엔티티들은 사용자, IoT 등을 포함할 수 있으나, 이에 한정되지 않으며, DID를 식별 정보로 이용할 수 있는 모든 개체를 포함할 수 있다.First, the entity terminals 100 are terminals corresponding to respective entities that want to use the relational DID service, and the entity terminals 100 each receive a DID and personal identity (PI) matching the DID or VC (verifiable credential) certified by the PI certification authority can be stored. In this case, the entities may include, but are not limited to, users and IoT, and may include all entities that can use the DID as identification information.

다음으로, 블록체인 네트워크(200)는 다수의 블록체인 노드들에 의해 분산 원장을 공유하며, 분산 합의에 의해 블록을 생성하고 생성된 블록들을 체인 형태로 분산 원장에 저장하는 것으로, 사용자 및 컴퓨팅 장치의 요청에 따른 DID를 생성하여 주며 DID에 대응되는 데이터들을 분산 원장에 저장할 수 있다. 그리고, 블록체인 네트워크(200)는 등록된 아이덴티티 컨트랙트를 통해 DID와 관련한 데이터를 처리하도록 할 수 있다.Next, the blockchain network 200 shares the distributed ledger by multiple blockchain nodes, generates blocks by distributed consensus, and stores the generated blocks in the distributed ledger in the form of a chain, and users and computing devices It creates a DID according to the request of , and data corresponding to the DID can be stored in the distributed ledger. In addition, the blockchain network 200 may process data related to DID through a registered identity contract.

또한, 블록체인 네트워크(200)는 엔티티 단말들(100) 사이의 관계정보 등록 요청에 대응하여 엔티티들 사이의 관계정보를 등록하여 관계성 DID 서비스를 제공하여 줄 수 있다.In addition, the block chain network 200 may provide a relation DID service by registering relation information between entities in response to a relation information registration request between entity terminals 100 .

이때, 블록체인 네트워크(200)는 다수의 블록체인 노드로 구성되며, 각각의 블록체인 노드(210)는 관계성 DID 서비스를 제공하기 위한 인스트럭션들이 저장된 메모리와 메모리에 저장된 인스트럭션들에 따라 관계성 DID 서비스를 제공하기 위한 동작을 수행하는 프로세서를 포함할 수 있다. 그리고, 블록체인 노드(210)는 PC(Personal Computer), 모바일 컴퓨터, PDA/EDA, 휴대 전화, 스마트폰, 태블릿, 서버 등을 포함할 수 있으나, 이에 한정되지 않으며, 유무선 통신 기능을 가진 휴대용 게임기, 디지털 카메라, 개인 내비게이션 등과 같이 컴퓨팅 연산을 수행하는 모든 컴퓨팅 장치를 포함할 수 있다.At this time, the block chain network 200 is composed of a plurality of block chain nodes, and each block chain node 210 has a memory in which instructions for providing a relation DID service are stored and a relation DID according to the instructions stored in the memory. It may include a processor that performs an operation for providing a service. In addition, the block chain node 210 may include, but is not limited to, a personal computer (PC), a mobile computer, a PDA/EDA, a mobile phone, a smart phone, a tablet, a server, and the like, and a portable game machine having a wired/wireless communication function , digital cameras, personal navigation, and the like, may include any computing device that performs computing operations.

구체적으로, 블록체인 노드(210)는 전형적으로 컴퓨팅 장치(예컨대, 컴퓨터 프로세서, 메모리, 스토리지, 입력 장치 및 출력 장치, 기타 기존의 컴퓨팅 장치의 구성요소들을 포함할 수 있는 장치; 라우터, 스위치 등과 같은 전자 통신 장치; 네트워크 부착 스토리지(NAS) 및 스토리지 영역 네트워크(SAN)와 같은 전자 정보 스토리지 시스템)와 컴퓨터 소프트웨어(즉, 컴퓨팅 장치로 하여금 특정의 방식으로 기능하게 하는 인스트럭션들)의 조합을 이용하여 원하는 시스템 성능을 달성하는 것일 수 있다.Specifically, the blockchain node 210 is typically a computing device (eg, a device that may include a computer processor, memory, storage, input and output devices, and other components of an existing computing device; routers, switches, etc.) electronic communication devices; electronic information storage systems such as network attached storage (NAS) and storage area networks (SANs)) and computer software (ie, instructions that cause the computing device to function in a particular way). It may be to achieve system performance.

이와 같은 컴퓨팅 장치의 통신부는 연동되는 타 컴퓨팅 장치와 요청과 응답을 송수신할 수 있는 바, 일 예시로서 그러한 요청과 응답은 동일한 TCP 세션에 의하여 이루어질 수 있지만, 이에 한정되지는 않는바, 예컨대 UDP 데이터그램으로서 송수신될 수도 있을 것이다.The communication unit of such a computing device may transmit/receive a request and a response to/from another computing device that is interlocked. As an example, such a request and a response may be made by the same TCP session, but is not limited thereto, for example, UDP data It may be transmitted and received as a gram.

또한, 컴퓨팅 장치의 프로세서는 MPU(Micro Processing Unit) 또는 CPU(Central Processing Unit), 캐쉬 메모리(Cache Memory), 데이터 버스(Data Bus) 등의 하드웨어 구성을 포함할 수 있다. 또한, 운영체제, 특정 목적을 수행하는 애플리케이션의 소프트웨어 구성을 더 포함할 수도 있다.In addition, the processor of the computing device may include a hardware configuration such as a micro processing unit (MPU) or a central processing unit (CPU), a cache memory, and a data bus. In addition, the operating system may further include a software configuration of an application for performing a specific purpose.

다음으로, 서비스 제공 서버(300)는 엔티티 단말들(100)과의 인터랙션을 통해 엔티티 단말들(100)에서 요청된 서비스를 제공하여 줄 수 있다.Next, the service providing server 300 may provide the service requested by the entity terminals 100 through interaction with the entity terminals 100 .

다음으로, 리졸버 서버(400)는 리졸버 서버(400)는 DID에 대응하여 블록체인 네트워크에 등록된 데이터들, 즉 공개정보들을 획득하여 주는 것으로, 블록체인 네트워크에 접속할 수 있는 컴퓨팅 장치이거나 블록체인 네트워크를 구성하는 블록체인 노드일 수 있다.Next, the resolver server 400 obtains data registered in the block chain network, that is, public information, in response to the DID, and the resolver server 400 is a computing device that can connect to the block chain network or a block chain network. It may be a blockchain node that constitutes

이와 같이 구성된 시스템을 통해 본 발명의 일 실시예에 따른 관계성 DID 서비스를 제공하는 방법을 도 2를 참조하여 설명하면 다음과 같다.A method of providing a relational DID service according to an embodiment of the present invention through the system configured as described above will be described with reference to FIG. 2 .

먼저, 특정 엔티티와 타 엔티티는 각각 특정 엔티티 단말(110)과 타 엔티티 단말(120)을 통해 블록체인 네트워크(200)에 각각 특정 엔티티 DID와 타 엔티티 DID를 등록할 수 있으며, 블록체인 네트워크(200)에는 특정 엔티티 DID에 대응되는 특정 엔티티 공개정보들인 특정 엔티티 퍼블릭 키, 특정 엔티티 가상 자산 어드레스 등이 등록되고, 타 엔티티 DID에 대응되는 타 엔티티 공개정보들인 타 엔티티 퍼블릭 키, 타 엔티티 가상 자산 어드레스 등이 등록될 수 있다. 이때, 블록체인 네트워크(200)는 등록되어 있는 아이덴티티 컨트랙트로 하여금 DID와 관련한 동작을 수행하도록 할 수 있다. 그리고, 아이덴티티 컨트랙트는 DID와 관련한 동작을 수행하는 스마트 컨트랙트로, DID와 관련한 동작을 수행하기 위한 오퍼레이션 코드들로 구성되어 블록체인 네트워크 상에서 동작되도록 한 것일 수 있다. 또한, 아이덴티티 컨트랙트는 DID와 연동하는 타 스마트 컨트랙트와의 인터랙션을 위한 상호관계제어 오퍼레이션 코드들을 포함할 수 있으며, 이를 통해 엔티티가 DID와 연동하는 타 서비스를 요청하는 경우, 타 스마트 컨트랙트와의 인터랙션을 통해 엔티티가 타 서비스를 이용할 수 있도록 할 수 있다.First, a specific entity and another entity may register a specific entity DID and another entity DID in the blockchain network 200 through the specific entity terminal 110 and the other entity terminal 120, respectively, and the blockchain network 200 ), specific entity public key, specific entity virtual asset address, etc., which are specific entity public information corresponding to a specific entity DID, are registered, and other entity public key, other entity virtual asset address, etc., which are other entity public information corresponding to other entity DID. This can be registered. At this time, the blockchain network 200 may cause the registered identity contract to perform an operation related to the DID. In addition, the identity contract is a smart contract that performs DID-related operations, and may be configured with operation codes for performing DID-related operations to be operated on a blockchain network. In addition, the identity contract may include correlation control operation codes for interaction with other smart contracts that are linked with DID. Through this, an entity can use other services.

이와 같은 상태에서, 타 엔티티가 특정 엔티티와의 관계를 설정하기 위하여 타 엔티티 단말(120)을 통해 특정 엔티티와 타 엔티티 사이의 관계를 설정하기 위한 관계정보 설정 정보를 특정 엔티티 단말(110)로 전송(S1)하여 줄 수 있다.In this state, the other entity transmits relationship information setting information for establishing a relationship between a specific entity and another entity to the specific entity terminal 110 through the other entity terminal 120 in order to establish a relationship with the specific entity. (S1) can be given.

이때, 관계정보 설정 정보는 특정 엔티티에 대응되는 특정 엔티티 DID와 타 엔티티에 대응되는 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 관계정보를 타 엔티티 DID에 대응되는 타 엔티티 프라이빗 키로 암호화한 타 엔티티 서명값을 포함할 수 있다. 그리고, 관계 정보는 특정 엔티티와 타 엔티티 사이의 관계에 관한 정보로, IoT 장비와 소유자, 부모와 자식, 직원과 대표, 학생과 교수 등 다양한 엔티티들 사이의 관계에 관한 정보일 수 있다. 일 예로, 관계정보는 "특정 엔티티 DID는 타 엔티티 DID의 소유자이다"와 같이 설정될 수 있다.In this case, the relationship information setting information includes relationship information that establishes a relationship between a specific entity DID corresponding to a specific entity and another entity DID corresponding to another entity, and the other entity obtained by encrypting the relationship information with the other entity private key corresponding to the other entity DID. It may include an entity signature value. In addition, the relationship information is information about a relationship between a specific entity and other entities, and may be information about a relationship between various entities such as IoT devices and owners, parents and children, employees and representatives, and students and professors. As an example, the relationship information may be set as "a specific entity DID is the owner of another entity DID".

그러면, 특정 엔티티 단말(110)은 타 엔티티 단말(120)로부터 전송된 관계정보 설정 정보를 검증(S4)할 수 있다.Then, the specific entity terminal 110 may verify the relationship information setting information transmitted from the other entity terminal 120 ( S4 ).

일 예로, 특정 엔티티 단말(110)은 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하기 위하여 블록체인 네트워크(200)로 타 엔티티 퍼블릭 키 요청 정보를 브로드캐스팅(S2)할 수 있다. 그러면, 블록체인 네트워크(200)를 구성하는 적어도 하나의 블록체인 노드(210)는 타 엔티티 퍼블릭 키 요청 정보에 대응하여 블록체인 네트워크(200)로부터 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하고, 블록체인 네트워크(200)로부터 획득된 타 엔티티 퍼블릭 키를 특정 엔티티 단말(110)로 전송(S3)하여 줄 수 있다. 또한, 블록체인 노드(210)는 블록체인 네트워크(200)에 등록된 아이덴티티 컨트랙트를 통해 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 타 엔티티 퍼블릭 키를 획득하도록 하여 타 엔티티 퍼블릭 키를 특정 엔티티 단말(110)로 전송(S3)하여 줄 수 있다. 그리고, 특정 엔티티 단말(110)은 블록체인 노드(210)로부터 전송된 타 엔티티 퍼블릭 키를 이용하여 타 엔티티 서명값을 복호화하여 관계정보 설정 정보를 검증(S4)할 수 있다. 이때, 관계정보 설정 정보의 검증은, 타 엔티티 서명값을 복호화하여 획득한 관계정보와, 관계정보 설정 정보에 포함된 관계정보가 일치하는지 여부를 확인함으로써 수행될 수 있다.As an example, the specific entity terminal 110 may broadcast (S2) other entity public key request information to the blockchain network 200 to obtain another entity public key corresponding to the other entity DID. Then, at least one block chain node 210 constituting the block chain network 200 obtains the other entity public key corresponding to the other entity DID from the block chain network 200 in response to the other entity public key request information, , the other entity public key obtained from the block chain network 200 may be transmitted (S3) to the specific entity terminal 110 . In addition, the blockchain node 210 obtains the public key of another entity from the blockchain network 200 using the other entity DID through the identity contract registered in the blockchain network 200, so that the public key of the other entity is a specific entity. It can be transmitted to the terminal 110 (S3). In addition, the specific entity terminal 110 may decrypt the other entity signature value using the other entity public key transmitted from the block chain node 210 to verify the relationship information setting information (S4). In this case, the verification of the relation information setting information may be performed by checking whether the relation information obtained by decoding the signature value of another entity matches the relation information included in the relation information setting information.

이후, 관계정보 설정 정보가 검증되면, 특정 엔티티 단말(110)은 관계정보 등록 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅(S5)할 수 있다.Thereafter, when the relationship information setting information is verified, the specific entity terminal 110 may broadcast the relationship information registration request information to the block chain network 200 ( S5 ).

이때, 관계정보 등록 요청 정보는 타 엔티티 단말(120)에서 전송된 관계정보 설정 정보와, 특정 엔티티 단말(110)이 관계정보 설정 정보를 확인한 결과에 대응되어 생성한 관계정보 확인 정보를 포함할 수 있다. 그리고, 관계정보 확인 정보는 관계정보와, 관계정보를 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키로 암호화한 특정 엔티티 서명값을 포함할 수 있다.In this case, the relationship information registration request information may include the relationship information setting information transmitted from the other entity terminal 120 and the relationship information confirmation information generated in response to the result of the specific entity terminal 110 checking the relationship information setting information. there is. In addition, the relationship information confirmation information may include relationship information and a specific entity signature value obtained by encrypting the relationship information with a specific entity private key corresponding to a specific entity DID.

그리고, 블록체인 노드(210)는 특정 엔티티 단말(110)로부터 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 등록 요청 정보를 수신하며, 관계정보 등록 요청 정보를 검증(S6)할 수 있다.Then, the block chain node 210 may receive the relationship information registration request information broadcast from the specific entity terminal 110 to the block chain network 200, and verify the relationship information registration request information (S6).

일 예로, 블록체인 노드(210)는 특정 엔티티 DID와 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키와 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득할 수 있다. 또한, 블록체인 노드(210)는 아이덴티티 컨트랙트를 통해 특정 엔티티 DID와 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 퍼블릭 키와 타 엔티티 퍼블릭 키를 획득하도록 할 수 있다. 그리고, 블록체인 노드(210)는 타 엔티티 퍼블릭 키를 이용하여 관계정보 설정 정보에 포함된 타 엔티티 서명값을 복호화하여 관계정보 설정 정보를 검증하고, 특정 엔티티 퍼블릭 키를 이용하여 관계정보 확인 정보에 포함된 특정 엔티티 서명값을 복호화하여 관계정보 확인 정보를 검증함으로써 관계정보 등록 요청 정보를 검증할 수 있다. 이때, 관계정보 설정 정보의 검증은, 타 엔티티 서명값을 복호화하여 획득한 관계정보와, 관계정보 설정 정보에 포함된 관계정보가 일치하는지 여부를 확인함으로써 수행될 수 있으며, 관계정보 확인 정보의 검증은, 특정 엔티티 서명값을 복호화하여 획득한 관계정보와, 관계정보 확인 정보에 포함된 관계정보가 일치하는지 여부를 확인함으로써 수행될 수 있다.As an example, the blockchain node 210 obtains a specific entity public key corresponding to a specific entity DID and another entity public key corresponding to another entity DID from the blockchain network 200 using a specific entity DID and another entity DID can do. In addition, the blockchain node 210 may obtain a specific entity public key and other entity public key from the blockchain network 200 using a specific entity DID and other entity DIDs through an identity contract. Then, the block chain node 210 decrypts the other entity signature value included in the relationship information setting information using the other entity public key to verify the relation information setting information, and uses a specific entity public key to obtain the relation information confirmation information. By decoding the included specific entity signature value and verifying the relation information confirmation information, the relation information registration request information can be verified. In this case, the verification of the relation information setting information may be performed by checking whether the relation information obtained by decoding the signature value of another entity matches the relation information included in the relation information setting information, and the verification of the relation information confirmation information may be performed by checking whether the relationship information obtained by decoding a specific entity signature value matches the relationship information included in the relationship information confirmation information.

한편, 블록체인 노드(210)는 자신이 관계정보 등록 요청 정보를 검증하는 것과는 달리, 관계정보 등록 요청 정보를 아이덴티티 컨트랙트로 전송하여 아이덴티티 컨트랙트가 관계정보 등록 요청 정보를 검증하도록 할 수 있다.On the other hand, the blockchain node 210 transmits the relationship information registration request information to the identity contract, unlike its own verification of the relationship information registration request information, so that the identity contract verifies the relationship information registration request information.

이후, 블록체인 노드(210)는 관계정보 등록 요청 정보가 유효한 것으로 검증되면, 관계정보를 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 블록체인 네트워크(200)에 등록(S7)하여 주거나, 아이덴티티 컨트랙트로 하여금 관계정보 등록 요청 정보가 유효한 것으로 검증되면 관계정보를 특정 엔티티의 DID 및 타 엔티티의 DID에 매칭하여 블록체인 네트워크(200)에 등록(S7)하도록 할 수 있다.After that, when the relationship information registration request information is verified as valid, the block chain node 210 matches the relationship information with the DID of a specific entity and the DID of the other entity to register (S7) in the block chain network 200, or When the relationship information registration request information is verified as valid by the identity contract, the relationship information can be registered (S7) in the blockchain network 200 by matching the DID of a specific entity and the DID of another entity.

한편, 상기에서는 타 엔티티 단말(120)이 관계정보 설정 정보를 특정 엔티티 단말(110)로 전송하였으나, 이와는 달리, 관계정보 설정 정보가 블록체인 네트워크(200)를 통해 특정 엔티티 단말(110)로 전송되도록 할 수 있다.On the other hand, in the above, the other entity terminal 120 transmits the relationship information setting information to the specific entity terminal 110 , but, unlike this, the relationship information setting information is transmitted to the specific entity terminal 110 through the block chain network 200 . can make it happen

즉, 타 엔티티 단말(120)이 관계정보 설정 정보를 블록체인 네트워크(200)로 브로드캐스팅하면, 블록체인 노드(210)가 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 설정 정보를 수신하며, 관계정보 설정 정보를 특정 엔티티 단말(110)로 전송하거나 아이덴티티 컨트랙트를 통해 관계정보 설정 정보가 특정 엔티티 단말(110)로 전송되도록 할 수 있다. 그리고, 특정 엔티티 단말(110)이 관계정보 설정 정보와 관계정보 확인 정보를 포함하는 관계정보 등록 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅하면, 블록체인 노드(210)가 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 등록 요청 정보를 획득할 수 있다.That is, when the other entity terminal 120 broadcasts the relationship information setting information to the block chain network 200, the block chain node 210 receives the relationship information setting information broadcast to the block chain network 200, The relationship information setting information may be transmitted to the specific entity terminal 110 or the relationship information setting information may be transmitted to the specific entity terminal 110 through an identity contract. Then, when the specific entity terminal 110 broadcasts the relationship information registration request information including the relationship information setting information and the relationship information confirmation information to the block chain network 200, the block chain node 210 is the block chain network 200 ) to obtain the broadcast relationship information registration request information.

상기에서와 같은 방법에 의해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 설정한 관계정보가 블록체인 네트워크(200)에 등록된 상태에서 특정 엔티티가 타 엔티티 DID를 이용하여 서비스를 이용하기 위하여, 특정 엔티티 단말(110)을 이용하여 타 엔티티 DID에 대한 서비스 요청 정보를 서비스 제공 서버(300)로 전송(S8)할 수 있다. 이때, 서비스 요청 정보에는 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키를 이용하여 서비스 요청 정보를 암호화한 특정 엔티티 서명값이 포함될 수 있다.In order for a specific entity to use a service using another entity DID while the relationship information that establishes the relationship between the specific entity DID and the other entity DID by the method as described above is registered in the blockchain network 200, Service request information for another entity DID may be transmitted to the service providing server 300 by using the entity terminal 110 (S8). In this case, the service request information may include a specific entity signature value obtained by encrypting the service request information using a specific entity private key corresponding to the specific entity DID.

그러면, 서비스 제공 서버(300)는 특정 엔티티 단말(110)로부터 전송된 타 엔티티 DID에 대한 서비스 요청 정보를 검증(S11)할 수 있다.Then, the service providing server 300 may verify ( S11 ) service request information for another entity DID transmitted from the specific entity terminal 110 .

일 예로, 서비스 제공 서버(300)는 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 요청하기 위한 특정 엔티티 퍼블릭 키 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅(S9)할 수 있다. 그러면, 블록체인 노드(210)는 블록체인 네트워크(200)로 브로드캐스팅된 특정 엔티티 퍼블릭 키 요청 정보를 획득하며, 특정 엔티티 퍼블릭 키 요청 정보에 대응하여 블록체인 네트워크(200)로부터 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 획득하고, 블록체인 네트워크(200)로부터 획득된 특정 엔티티 퍼블릭 키를 서비스 제공 서버(300)로 전송(S10)하여 줄 수 있다. 또한, 블록체인 노드(210)는 블록체인 네트워크(200)에 등록된 아이덴티티 컨트랙트를 통해 특정 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 퍼블릭 키를 획득하도록 하여 특정 엔티티 퍼블릭 키를 서비스 제공 서버(300)로 전송(S10)하여 줄 수 있다. 그리고, 서비스 제공 서버(300)는 블록체인 노드(210)로부터 전송된 특정 엔티티 퍼블릭 키를 이용하여 서비스 요청 정보에 포함된 특정 엔티티 서명값을 복호화하여 서비스 요청 정보를 검증(S11)할 수 있다. 이때, 서비스 요청 정보의 검증은, 특정 엔티티 서명값을 복호화하여 획득한 서비스 요청 정보가 특정 엔티티 단말로부터 전송된 서비스 요청 정보와 일치하는지 여부를 확인함으로써 수행될 수 있다.As an example, the service providing server 300 may broadcast (S9) specific entity public key request information for requesting a specific entity public key corresponding to a specific entity DID to the blockchain network 200 . Then, the blockchain node 210 obtains the specific entity public key request information broadcast to the blockchain network 200, and corresponds to the specific entity DID from the blockchain network 200 in response to the specific entity public key request information A specific entity public key may be obtained, and the specific entity public key obtained from the block chain network 200 may be transmitted to the service providing server 300 (S10). In addition, the blockchain node 210 provides a specific entity public key service by obtaining a specific entity public key from the blockchain network 200 using a specific entity DID through an identity contract registered in the blockchain network 200 It can be transmitted to the server 300 (S10). In addition, the service providing server 300 may use the specific entity public key transmitted from the block chain node 210 to decrypt the specific entity signature value included in the service request information to verify the service request information (S11). In this case, the verification of the service request information may be performed by checking whether the service request information obtained by decoding the specific entity signature value matches the service request information transmitted from the specific entity terminal.

이후, 서비스 요청 정보가 검증되면, 서비스 제공 서버(300)는 관계정보 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅(S12)할 수 있다.Thereafter, when the service request information is verified, the service providing server 300 may broadcast the relation information request information to the block chain network 200 ( S12 ).

이때, 관계정보 요청 정보는 특정 엔티티 DID 또는 타 엔티티 DID를 포함할 수 있다.In this case, the relationship information request information may include a specific entity DID or another entity DID.

그리고, 블록체인 노드(210)는 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 요청 정보를 수신하며, 관계정보 요청 정보에 대응하여 특정 엔티티 DID 또는 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 DID와 타 엔티티 DID 사이의 관계가 설정되어 있는 관계정보를 획득하거나, 아이덴티티 컨트랙트를 통해 특정 엔티티 DID 또는 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 관계정보를 획득하도록 하고, 관계정보를 서비스 제공 서버(300)로 전송(S13)하여 줄 수 있다.Then, the block chain node 210 receives the relationship information request information broadcast to the block chain network 200, and uses a specific entity DID or other entity DID in response to the relationship information request information to the block chain network 200. To obtain relationship information in which the relationship between a specific entity DID and another entity DID is established from the The information may be transmitted to the service providing server 300 (S13).

그리고, 서비스 제공 서버(300)는 블록체인 노드(210)로부터 획득되는 관계정보를 통해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 확인(S14)할 수 있다.And, the service providing server 300 may check the relationship between the specific entity DID and the other entity DID through the relationship information obtained from the block chain node 210 (S14).

이후, 관계 정보를 통해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계가 확인되면 타 엔티티 DID에 대응되는 서비스를 특정 엔티티 단말(110)로 제공(S15)하여 줄 수 있다. 일 예로, 관계정보가 “특정 엔티티 DID는 타 엔티티 DID의 소유자이다"이며, 서비스 요청에 타 엔티티 DID를 통한 로그온 요청일 경우, 서비스 서버(300)는 관계정보를 통해 특정 엔티티 DID가 타 엔티티 DID의 소유자임을 확인하고, 특정 엔티티 단말(110)에서 타 엔티티 DID로 로그온할 수 있도록 한다.Thereafter, when a relationship between a specific entity DID and another entity DID is confirmed through the relationship information, a service corresponding to the other entity DID may be provided to the specific entity terminal 110 ( S15 ). For example, if the relationship information is “a specific entity DID is the owner of another entity DID” and the service request is a logon request through another entity DID, the service server 300 determines that the specific entity DID is the other entity DID through the relationship information. confirms that the user is the owner of , and allows a specific entity terminal 110 to log on with the DID of another entity.

도 3은 본 발명의 다른 실시예에 따른 관계성 DID 서비스를 제공하는 방법을 개략적으로 도시한 것으로, 도 3을 참조하여 본 발명의 다른 실시예에 따른 관계성 DID 서비스를 제공하는 방법을 설명하면 다음과 같다.FIG. 3 schematically shows a method of providing a relational DID service according to another embodiment of the present invention. Referring to FIG. 3, a method of providing a relational DID service according to another embodiment of the present invention will be described. As follows.

타 엔티티가 특정 엔티티와의 관계를 설정하기 위하여 타 엔티티 단말(120)을 통해 특정 엔티티와 타 엔티티 사이의 관계를 설정하기 위한 관계정보 설정 정보를 특정 엔티티 단말(110)로 전송(S21)하여 줄 수 있다.The other entity transmits (S21) relationship information setting information for establishing a relationship between a specific entity and another entity to the specific entity terminal 110 through the other entity terminal 120 in order to establish a relationship with the specific entity. can

이때, 관계정보 설정 정보는 특정 엔티티에 대응되는 특정 엔티티 DID와 타 엔티티에 대응되는 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 관계정보를 타 엔티티 DID에 대응되는 타 엔티티 프라이빗 키로 암호화한 타 엔티티 서명값을 포함할 수 있다. 그리고, 관계 정보는 특정 엔티티와 타 엔티티 사이의 관계에 관한 정보로, IoT 장비와 소유자, 부모와 자식, 직원과 대표, 학생과 교수 등 다양한 엔티티들 사이의 관계에 관한 정보일 수 있다. 일 예로, 관계정보는 "특정 엔티티 DID는 타 엔티티 DID의 소유자이다"와 같이 설정될 수 있다.In this case, the relationship information setting information includes relationship information that establishes a relationship between a specific entity DID corresponding to a specific entity and another entity DID corresponding to another entity, and the other entity obtained by encrypting the relationship information with the other entity private key corresponding to the other entity DID. It may include an entity signature value. In addition, the relationship information is information about a relationship between a specific entity and other entities, and may be information about a relationship between various entities such as IoT devices and owners, parents and children, employees and representatives, and students and professors. As an example, the relationship information may be set as "a specific entity DID is the owner of another entity DID".

그러면, 특정 엔티티 단말(110)은 타 엔티티 단말(120)로부터 전송된 관계정보 설정 정보를 검증(S26)할 수 있다.Then, the specific entity terminal 110 may verify the relationship information setting information transmitted from the other entity terminal 120 ( S26 ).

일 예로, 특정 엔티티 단말(110)은 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하기 위하여 리졸버 서버(400)로 타 엔티티 DID에 대응되는 타 엔티티 DID 문서 요청 정보를 전송(S22)할 수 있다. 그리고, 리졸버 서버(400)는 특정 엔티티 단말(110)로부터의 타 엔티티 DID 문서 요청 정보에 대응하여 블록체인 네트워크(200)로 타 엔티티 공개정보에 대한 타 엔티티 공개정보 요청 정보를 브로드캐스팅(S23)할 수 있다. 이때, 타 엔티티 공개정보는 타 엔티티 DID와 관련하여 블록체인 네트워크(200)에 등록되어 있는 정보로서, 적어도 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함할 수 있다. 그러면, 블록체인 네트워크(200)를 구성하는 적어도 하나의 블록체인 노드(210)는 타 엔티티 공개정보 요청 정보에 대응하여 블록체인 네트워크(200)로부터 타 엔티티 DID에 대응되는 타 엔티티 공개정보를 획득하고, 블록체인 네트워크(200)로부터 획득된 타 엔티티 공개정보를 리졸버 서버(400)로 전송(S24)하여 줄 수 있다. 또한, 블록체인 노드(210)는 블록체인 네트워크(200)에 등록된 아이덴티티 컨트랙트를 통해 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 타 엔티티 공개정보를 획득하도록 하여 타 엔티티 공개정보를 리졸버 서버(400)로 전송하여 줄 수 있다. 그리고, 리졸버 서버(400)는 블록체인 노드(210)로부터 전송되는 타 엔티티 공개정보를 타 엔티티 DID 문서로 가공하고, 타 엔티티 DID 문서를 특정 엔티티 단말(110)로 전송(S25)하여 줄 수 있다. 그러면, 특정 엔티티 단말(110)은 리졸버 서버(400)로부터 전송된 타 엔티티 DID 문서로부터 타 엔티티 퍼블릭 키를 획득하며, 타 엔티티 퍼블릭 키를 이용하여 타 엔티티 서명값을 복호화하여 관계정보 설정 정보를 검증(S26)할 수 있다. 이때, 관계정보 설정 정보의 검증은, 타 엔티티 서명값을 복호화하여 획득한 관계정보와, 관계정보 설정 정보에 포함된 관계정보가 일치하는지 여부를 확인함으로써 수행될 수 있다.For example, the specific entity terminal 110 may transmit other entity DID document request information corresponding to the other entity DID to the resolver server 400 to obtain the other entity public key corresponding to the other entity DID (S22). . Then, the resolver server 400 broadcasts other entity public information request information for the other entity public information to the block chain network 200 in response to the other entity DID document request information from the specific entity terminal 110 (S23) can do. In this case, the other entity public information is information registered in the blockchain network 200 in relation to the other entity DID, at least the relation information setting the relationship between the specific entity DID and the other entity DID, and the other entity DID. Other entity public keys may be included. Then, at least one blockchain node 210 constituting the blockchain network 200 acquires other entity public information corresponding to the other entity DID from the blockchain network 200 in response to the other entity public information request information, and , other entity public information obtained from the block chain network 200 may be transmitted to the resolver server 400 (S24). In addition, the blockchain node 210 obtains other entity public information from the blockchain network 200 by using the other entity DID through the identity contract registered in the blockchain network 200 to resolve other entity public information to the resolver server It can be transmitted to (400). In addition, the resolver server 400 may process other entity public information transmitted from the block chain node 210 into another entity DID document, and transmit the other entity DID document to the specific entity terminal 110 (S25). . Then, the specific entity terminal 110 obtains the other entity public key from the other entity DID document transmitted from the resolver server 400, and decrypts the signature value of the other entity using the other entity public key to verify the relationship information setting information (S26) can be done. In this case, the verification of the relation information setting information may be performed by checking whether the relation information obtained by decoding the signature value of another entity matches the relation information included in the relation information setting information.

이후, 관계정보 설정 정보가 검증되면, 특정 엔티티 단말(110)은 관계정보 등록 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅(S27)할 수 있다.Thereafter, when the relationship information setting information is verified, the specific entity terminal 110 may broadcast the relationship information registration request information to the block chain network 200 ( S27 ).

이때, 관계정보 등록 요청 정보는 타 엔티티 단말(120)에서 전송된 관계정보 설정 정보와, 특정 엔티티 단말(110)이 관계정보 설정 정보를 확인한 결과에 대응되어 생성한 관계정보 확인 정보를 포함할 수 있다. 그리고, 관계정보 확인 정보는 관계정보와, 관계정보를 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키로 암호화한 특정 엔티티 서명값을 포함할 수 있다.In this case, the relationship information registration request information may include the relationship information setting information transmitted from the other entity terminal 120 and the relationship information confirmation information generated in response to the result of the specific entity terminal 110 checking the relationship information setting information. there is. In addition, the relationship information confirmation information may include relationship information and a specific entity signature value obtained by encrypting the relationship information with a specific entity private key corresponding to a specific entity DID.

그리고, 블록체인 노드(210)는 특정 엔티티 단말(110)로부터 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 등록 요청 정보를 수신하며, 관계정보 등록 요청 정보를 검증(S28)할 수 있다.Then, the block chain node 210 may receive the relationship information registration request information broadcast from the specific entity terminal 110 to the block chain network 200, and verify the relationship information registration request information (S28).

일 예로, 블록체인 노드(210)는 특정 엔티티 DID와 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키와 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득할 수 있다. 또한, 블록체인 노드(210)는 아이덴티티 컨트랙트를 통해 특정 엔티티 DID와 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 퍼블릭 키와 타 엔티티 퍼블릭 키를 획득하도록 할 수 있다. 그리고, 블록체인 노드(210)는 타 엔티티 퍼블릭 키를 이용하여 관계정보 설정 정보에 포함된 타 엔티티 서명값을 복호화하여 관계정보 설정 정보를 검증하고, 특정 엔티티 퍼블릭 키를 이용하여 관계정보 확인 정보에 포함된 특정 엔티티 서명값을 복호화하여 관계정보 확인 정보를 검증함으로써 관계정보 등록 요청 정보를 검증할 수 있다. 이때, 관계정보 설정 정보의 검증은, 타 엔티티 서명값을 복호화하여 획득한 관계정보와, 관계정보 설정 정보에 포함된 관계정보가 일치하는지 여부를 확인함으로써 수행될 수 있으며, 관계정보 확인 정보의 검증은, 특정 엔티티 서명값을 복호화하여 획득한 관계정보와, 관계정보 확인 정보에 포함된 관계정보가 일치하는지 여부를 확인함으로써 수행될 수 있다.As an example, the blockchain node 210 obtains a specific entity public key corresponding to a specific entity DID and another entity public key corresponding to another entity DID from the blockchain network 200 using a specific entity DID and another entity DID can do. In addition, the blockchain node 210 may obtain a specific entity public key and other entity public key from the blockchain network 200 using a specific entity DID and other entity DIDs through an identity contract. Then, the block chain node 210 decrypts the other entity signature value included in the relationship information setting information using the other entity public key to verify the relation information setting information, and uses a specific entity public key to obtain the relation information confirmation information. By decoding the included specific entity signature value and verifying the relation information confirmation information, the relation information registration request information can be verified. In this case, the verification of the relation information setting information may be performed by checking whether the relation information obtained by decoding the signature value of another entity matches the relation information included in the relation information setting information, and the verification of the relation information confirmation information may be performed by checking whether the relationship information obtained by decoding a specific entity signature value matches the relationship information included in the relationship information confirmation information.

한편, 블록체인 노드(210)는 자신이 관계정보 등록 요청 정보를 검증하는 것과는 달리, 관계정보 등록 요청 정보를 아이덴티티 컨트랙트로 전송하여 아이덴티티 컨트랙트가 관계정보 등록 요청 정보를 검증하도록 할 수 있다.On the other hand, the blockchain node 210 transmits the relationship information registration request information to the identity contract, unlike its own verification of the relationship information registration request information, so that the identity contract verifies the relationship information registration request information.

이후, 블록체인 노드(210)는 관계정보 등록 요청 정보가 유효한 것으로 검증되면, 관계정보를 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 블록체인 네트워크(200)에 등록(S29)하여 주거나, 아이덴티티 컨트랙트로 하여금 관계정보 등록 요청 정보가 유효한 것으로 검증되면 관계정보를 특정 엔티티의 DID 및 타 엔티티의 DID에 매칭하여 블록체인 네트워크(200)에 등록(S29)하도록 할 수 있다.After that, when the relationship information registration request information is verified as valid, the blockchain node 210 matches the relationship information with the DID of a specific entity and the DID of the other entity to register (S29) in the blockchain network 200, or When the relationship information registration request information is verified as valid by the identity contract, the relationship information can be registered (S29) in the blockchain network 200 by matching the DID of a specific entity and the DID of another entity.

한편, 상기에서는 타 엔티티 단말(120)이 관계정보 설정 정보를 특정 엔티티 단말(110)로 전송하였으나, 이와는 달리, 관계정보 설정 정보가 블록체인 네트워크(200)를 통해 특정 엔티티 단말(110)로 전송되도록 할 수 있다.On the other hand, in the above, the other entity terminal 120 transmits the relationship information setting information to the specific entity terminal 110 , but, unlike this, the relationship information setting information is transmitted to the specific entity terminal 110 through the block chain network 200 . can make it happen

즉, 타 엔티티 단말(120)이 관계정보 설정 정보를 블록체인 네트워크(200)로 브로드캐스팅하면, 블록체인 노드(210)가 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 설정 정보를 수신하며, 관계정보 설정 정보를 특정 엔티티 단말(110)로 전송하거나 아이덴티티 컨트랙트를 통해 관계정보 설정 정보가 특정 엔티티 단말(110)로 전송되도록 할 수 있다.That is, when the other entity terminal 120 broadcasts the relationship information setting information to the block chain network 200, the block chain node 210 receives the relationship information setting information broadcast to the block chain network 200, The relationship information setting information may be transmitted to the specific entity terminal 110 or the relationship information setting information may be transmitted to the specific entity terminal 110 through an identity contract.

상기에서와 같은 방법에 의해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 설정한 관계정보가 블록체인 네트워크(200)에 등록된 상태에서 특정 엔티티가 타 엔티티 DID를 이용하여 서비스를 이용하기 위하여, 특정 엔티티 단말(110)을 이용하여 타 엔티티 DID에 대한 서비스 요청 정보를 서비스 제공 서버(300)로 전송(S30)할 수 있다. 이때, 서비스 요청 정보에는 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키를 이용하여 서비스 요청 정보를 암호화한 특정 엔티티 서명값이 포함될 수 있다.In order for a specific entity to use a service using another entity DID while the relationship information that establishes the relationship between the specific entity DID and the other entity DID by the method as described above is registered in the blockchain network 200, Service request information for another entity DID may be transmitted to the service providing server 300 using the entity terminal 110 ( S30 ). In this case, the service request information may include a specific entity signature value obtained by encrypting the service request information using a specific entity private key corresponding to the specific entity DID.

그러면, 서비스 제공 서버(300)는 특정 엔티티 단말(110)로부터 전송된 타 엔티티 DID에 대한 서비스 요청 정보를 검증(S35)할 수 있다.Then, the service providing server 300 may verify the service request information for the other entity DID transmitted from the specific entity terminal 110 (S35).

일 예로, 서비스 제공 서버(300)는 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 획득하기 위하여 리졸버 서버(400)로 특정 엔티티 DID에 대응되는 특정 엔티티 DID 문서 요청 정보를 전송(S31)할 수 있다. 그리고, 리졸버 서버(400)는 서비스 제공 서버(300)로부터의 특정 엔티티 DID 문서 요청 정보에 대응하여 블록체인 네트워크(200)로 특정 엔티티 공개정보에 대한 특정 엔티티 공개정보 요청 정보를 브로드캐스팅(S32)할 수 있다. 이때, 특정 엔티티 공개정보는 특정 엔티티 DID와 관련하여 블록체인 네트워크(200)에 등록되어 있는 정보로서, 적어도 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 포함할 수 있다. 그러면, 블록체인 네트워크(200)를 구성하는 적어도 하나의 블록체인 노드(210)는 특정 엔티티 공개정보 요청 정보에 대응하여 블록체인 네트워크(200)로부터 특정 엔티티 DID에 대응되는 특정 엔티티 공개정보를 획득하고, 블록체인 네트워크(200)로부터 획득된 특정 엔티티 공개정보를 리졸버 서버(400)로 전송(S33)하여 줄 수 있다. 또한, 블록체인 노드(210)는 블록체인 네트워크(200)에 등록된 아이덴티티 컨트랙트를 통해 특정 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 공개정보를 획득하도록 하여 특정 엔티티 공개정보를 리졸버 서버(400)로 전송하여 줄 수 있다. 그리고, 리졸버 서버(400)는 블록체인 노드(210)로부터 전송되는 특정 엔티티 공개정보를 특정 엔티티 DID 문서로 가공하고, 특정 엔티티 DID 문서를 서비스 제공 서버(300)로 전송(S34)하여 줄 수 있다. 그러면, 서비스 제공 서버(300)는 리졸버 서버(400)로부터 전송된 특정 엔티티 DID 문서로부터 특정 엔티티 퍼블릭 키를 획득하며, 특정 엔티티 퍼블릭 키를 이용하여 서비스 요청 정보에 포함된 특정 엔티티 서명값을 복호화하여 서비스 요청 정보를 검증(S35)할 수 있다. 이때, 서비스 요청 정보의 검증은, 특정 엔티티 서명값을 복호화하여 획득한 서비스 요청 정보와, 특정 엔티티 단말(110)로부터 전송된 서비스 요청 정보가 일치하는지 여부를 확인함으로써 수행될 수 있다.For example, the service providing server 300 may transmit specific entity DID document request information corresponding to the specific entity DID to the resolver server 400 to obtain a specific entity public key corresponding to the specific entity DID (S31). . Then, the resolver server 400 broadcasts specific entity public information request information for specific entity public information to the block chain network 200 in response to specific entity DID document request information from the service providing server 300 (S32) can do. In this case, the specific entity public information is information registered in the block chain network 200 in relation to the specific entity DID, at least the relation information that sets the relationship between the specific entity DID and other entity DIDs, and the specific entity DID. May contain specific entity public keys. Then, at least one blockchain node 210 constituting the blockchain network 200 obtains specific entity public information corresponding to a specific entity DID from the blockchain network 200 in response to specific entity public information request information, and , the specific entity public information obtained from the block chain network 200 may be transmitted to the resolver server 400 (S33). In addition, the blockchain node 210 obtains specific entity public information from the blockchain network 200 by using a specific entity DID through an identity contract registered in the blockchain network 200, and provides specific entity public information to the resolver server It can be transmitted to (400). In addition, the resolver server 400 may process the specific entity public information transmitted from the block chain node 210 into a specific entity DID document, and transmit the specific entity DID document to the service providing server 300 (S34). . Then, the service providing server 300 obtains a specific entity public key from the specific entity DID document transmitted from the resolver server 400, and decrypts the specific entity signature value included in the service request information using the specific entity public key. The service request information may be verified (S35). In this case, the verification of the service request information may be performed by checking whether the service request information obtained by decoding the specific entity signature value matches the service request information transmitted from the specific entity terminal 110 .

이후, 서비스 요청 정보가 검증되면, 서비스 제공 서버(300)는 DID 문서 요청 정보를 리졸버 서버(400)로 전송(S36)하여 줄 수 있다.Thereafter, when the service request information is verified, the service providing server 300 may transmit the DID document request information to the resolver server 400 ( S36 ).

이때, DID 문서 요청 정보는 특정 엔티티 DID 문서 요청 정보와 타 엔티티 DID 문서 요청 정보 중 적어도 하나를 포함할 수 있다.In this case, the DID document request information may include at least one of specific entity DID document request information and other entity DID document request information.

그러면, 리졸버 서버(400)는 서비스 제공 서버(200)로부터의 DID 문서 요청 정보에 대응한 DID 공개정보에 대한 DID 공개정보 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅(S37)할 수 있다.Then, the resolver server 400 may broadcast the DID public information request information for the DID public information corresponding to the DID document request information from the service providing server 200 to the block chain network 200 (S37).

이때, DID 공개정보는 특정 엔티티 공개 정보와 타 엔티티 공개 정보 중 적어도 하나를 포함할 수 있다. 그리고, 특정 엔티티 공개 정보는 특정 엔티티 DID와 관련하여 블록체인 네트워크(200)에 등록되어 있는 정보로서, 적어도 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 포함할 수 있으며, 타 엔티티 공개 정보는 타 엔티티 DID와 관련하여 블록체인 네트워크(200)에 등록되어 있는 정보로서, 적어도 특정 엔티티 DID와 타 엔티티 DID 사이의 간계를 설정한 관계정보와, 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함할 수 있다.In this case, the DID public information may include at least one of specific entity public information and other entity public information. In addition, specific entity public information is information registered in the blockchain network 200 in relation to a specific entity DID. It may include a specific entity public key, and the other entity public information is information registered in the blockchain network 200 in relation to the other entity DID, and at least the relationship information that establishes a link between the specific entity DID and the other entity DID. and another entity public key corresponding to the other entity DID.

그리고, 블록체인 노드(210)는 블록체인 네트워크(200)로 브로드캐스팅된 DID 공개정보 요청 정보를 수신하며, DID 공개정보 요청 정보에 대응하여 특정 엔티티 DID와 타 엔티티 DID 중 적어도 하나를 이용하여 블록체인 네트워크(200)로부터 DID 공개정보를 획득하거나, 아이덴티티 컨트랙트를 통해 특정 엔티티 DID와 타 엔티티 DID 중 적어도 하나를 이용하여 블록체인 네트워크(200)로부터 DID 공개정보를 획득하도록 하고, DID 공개정보를 리졸버 서버(400)로 전송(S38)하여 줄 수 있다.Then, the block chain node 210 receives the DID public information request information broadcast to the block chain network 200, and uses at least one of a specific entity DID and another entity DID in response to the DID public information request information to block Obtain DID public information from the chain network 200 or obtain DID public information from the blockchain network 200 using at least one of a specific entity DID and another entity DID through an identity contract, and resolve the DID public information It can be transmitted to the server 400 (S38).

그러면, 리졸버 서버(400)는 DID 공개정보를 DID 문서로 가공하며, DID 문서를 서비스 제공 서버(300)로 전송(S39)하여 줄 수 있다.Then, the resolver server 400 may process the DID public information into a DID document, and transmit the DID document to the service providing server 300 (S39).

그리고, 서비스 제공 서버(300)는 DID 문서로부터 획득되는 관계정보를 통해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 확인(S40)할 수 있다.In addition, the service providing server 300 may check the relationship between a specific entity DID and another entity DID through relationship information obtained from the DID document ( S40 ).

이후, 관계 정보를 통해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계가 확인되면 타 엔티티 DID에 대응되는 서비스를 특정 엔티티 단말(110)로 제공(S41)하여 줄 수 있다. 일 예로, 관계정보가 “특정 엔티티 DID는 타 엔티티 DID의 소유자이다"이며, 서비스 요청에 타 엔티티 DID를 통한 로그온 요청일 경우, 서비스 서버(300)는 관계정보를 통해 특정 엔티티 DID가 타 엔티티 DID의 소유자임을 확인하고, 특정 엔티티 단말(110)에서 타 엔티티 DID로 로그온할 수 있도록 한다.Thereafter, when a relationship between a specific entity DID and another entity DID is confirmed through the relationship information, a service corresponding to the other entity DID may be provided to the specific entity terminal 110 ( S41 ). For example, if the relationship information is “a specific entity DID is the owner of another entity DID” and the service request is a logon request through another entity DID, the service server 300 determines that the specific entity DID is the other entity DID through the relationship information. confirms that the user is the owner of , and allows a specific entity terminal 110 to log on with the DID of another entity.

도 4는 본 발명의 또 다른 실시예에 따른 관계성 DID 서비스를 제공하는 방법을 개략적으로 도시한 것으로, 도 4를 참조하여 본 발명의 또 다른 실시예에 따른 관계성 DID 서비스를 제공하는 방법을 설명하면 다음과 같다. 이하의 설명에서는 도 2와 도3을 참조한 설명으로부터 용이하게 이해 가능한 부분에 대해서는 상세한 설명을 생략하기로 한다.4 schematically illustrates a method of providing a relational DID service according to another embodiment of the present invention. Referring to FIG. 4, a method of providing a relational DID service according to another embodiment of the present invention The explanation is as follows. In the following description, detailed descriptions of parts that can be easily understood from the description with reference to FIGS. 2 and 3 will be omitted.

티 엔티티가 특정 엔티티와의 관계를 설정하기 위하여 타 엔티티 단말(120)을 통해 특정 엔티티와 타 엔티티 사이의 관계를 설정하기 위한 관계정보 설정 정보를 블록체인 네트워크(200)로 브로드캐스팅(S51)할 수 있다.In order for the tee entity to establish a relationship with a specific entity, relationship information setting information for establishing a relationship between a specific entity and another entity through the other entity terminal 120 is broadcast (S51) to the block chain network 200 can

이때, 관계정보 설정 정보는 특정 엔티티에 대응되는 특정 엔티티 DID와 타 엔티티에 대응되는 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 관계정보를 타 엔티티 DID에 대응되는 타 엔티티 프라이빗 키로 암호화한 타 엔티티 서명값을 포함할 수 있다. 그리고, 관계 정보는 특정 엔티티와 타 엔티티 사이의 관계에 관한 정보로, IoT 장비와 소유자, 부모와 자식, 직원과 대표, 학생과 교수 등 다양한 엔티티들 사이의 관계에 관한 정보일 수 있다. 일 예로, 관계정보는 "특정 엔티티 DID는 타 엔티티 DID의 소유자이다"와 같이 설정될 수 있다.In this case, the relationship information setting information includes relationship information that establishes a relationship between a specific entity DID corresponding to a specific entity and another entity DID corresponding to another entity, and the other entity obtained by encrypting the relationship information with the other entity private key corresponding to the other entity DID. It may include an entity signature value. In addition, the relationship information is information about a relationship between a specific entity and other entities, and may be information about a relationship between various entities such as IoT devices and owners, parents and children, employees and representatives, and students and professors. As an example, the relationship information may be set as "a specific entity DID is the owner of another entity DID".

그러면, 블록체인 네트워크(200)를 구성하는 블록체인 노드들 중 적어도 하나의 블록체인 노드(210)가 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 설정 정보를 수신하고, 수신된 관계정보 설정 정보를 검증(S52)할 수 있다.Then, at least one block chain node 210 of the block chain nodes constituting the block chain network 200 receives the relationship information setting information broadcast to the block chain network 200, and the received relationship information setting information can be verified (S52).

일 예로, 블록체인 노드(210)는 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득할 수 있다. 또한, 블록체인 노드(210)는 아이덴티티 컨트랙트를 통해 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 타 엔티티 퍼블릭 키를 획득하도록 할 수 있다. 그리고, 블록체인 노드(210)는 타 엔티티 퍼블릭 키를 이용하여 관계정보 설정 정보에 포함된 타 엔티티 서명값을 복호화하여 관계정보 설정 정보를 검증할 수 있다. 이때, 관계정보 설정 정보의 검증은, 타 엔티티 서명값을 복호화하여 획득한 관계정보와, 관계정보 설정 정보에 포함된 관계정보가 일치하는지 여부를 확인함으로써 수행될 수 있다. 한편, 블록체인 노드(210)는 자신이 관계정보 설정 정보를 검증하는 것과는 달리, 관계정보 설정 정보를 아이덴티티 컨트랙트로 전송하여 아이덴티티 컨트랙트가 관계정보 설정 정보를 검증하도록 할 수 있다.As an example, the blockchain node 210 may obtain another entity public key corresponding to the other entity DID from the blockchain network 200 by using the other entity DID. In addition, the blockchain node 210 may use another entity DID through an identity contract to obtain another entity public key from the blockchain network 200 . And, the block chain node 210 may verify the relationship information setting information by decrypting the other entity signature value included in the relation information setting information using the other entity public key. In this case, the verification of the relation information setting information may be performed by checking whether the relation information obtained by decoding the signature value of another entity matches the relation information included in the relation information setting information. On the other hand, the block chain node 210 may transmit the relationship information setting information to the identity contract, allowing the identity contract to verify the relationship information setting information, unlike its own verifying the relationship information setting information.

이후, 관계정보 설정 정보가 검증되면, 블록체인 노드(210)는 타 엔티티 단말(120)로부터의 관계정보 설정 정보를 특정 엔티티 단말(110)로 전송(S53)하여 줄 수 있다. 또한, 블록체인 노드(210)는 아이덴티티 컨트랙트로 하여금 관계정보 설정 정보에 대한 검증 결과를 타 엔티티 단말(120)로 전송하여 타 엔티티 단말(120)이 관계정보 설정 정보를 특정 엔티티 단말(110)로 전송하도록 할 수 있다.Thereafter, when the relationship information setting information is verified, the block chain node 210 may transmit the relationship information setting information from the other entity terminal 120 to the specific entity terminal 110 ( S53 ). In addition, the block chain node 210 causes the identity contract to transmit the verification result for the relationship information setting information to the other entity terminal 120 so that the other entity terminal 120 transmits the relationship information setting information to the specific entity terminal 110 . can be sent

그리고, 특정 엔티티 단말(110)은 관계정보 설정 정보를 디스플레이하여 특정 엔티티가 확인할 수 있도록 하며, 특정 엔티티가 특정 엔티티 DID와 타 엔티티 DID 사이의 관계정보를 확인한 후 승인하면, 특정 엔티티 단말(110)은 관계정보 등록 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅(S54)하여 줄 수 있다.And, the specific entity terminal 110 displays the relationship information setting information so that a specific entity can check it, and if the specific entity confirms and approves the relationship information between the specific entity DID and the other entity DID, the specific entity terminal 110 may broadcast (S54) relationship information registration request information to the block chain network 200 .

이때, 관계정보 등록 요청 정보는 타 엔티티 단말(120)에서 전송된 관계정보 설정 정보와, 특정 엔티티 단말(110)이 관계정보 설정 정보를 확인한 결과에 대응되어 생성한 관계정보 확인 정보를 포함할 수 있다. 그리고, 관계정보 확인 정보는 관계정보와, 관계정보를 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키로 암호화한 특정 엔티티 서명값을 포함할 수 있다. 이와는 달리, 블록체인 노드(210)가 타 엔티티 단말(120)로부터 전송된 관계정보 설정 정보를 저장하고 있을 경우에는, 관계정보 확인 정보를 관계정보 등록 요청 정보로서 블록체인 네트워크(200)로 브로드캐스팅할 수 있다.In this case, the relationship information registration request information may include the relationship information setting information transmitted from the other entity terminal 120 and the relationship information confirmation information generated in response to the result of the specific entity terminal 110 checking the relationship information setting information. there is. In addition, the relationship information confirmation information may include relationship information and a specific entity signature value obtained by encrypting the relationship information with a specific entity private key corresponding to a specific entity DID. Contrary to this, when the block chain node 210 stores the relationship information setting information transmitted from the other entity terminal 120, the relationship information confirmation information is broadcast to the block chain network 200 as relationship information registration request information. can do.

그러면, 블록체인 노드(210)는 특정 엔티티 단말(110)로부터 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 등록 요청 정보를 수신하며, 관계정보 등록 요청 정보를 검증(S55)할 수 있다.Then, the block chain node 210 may receive the relationship information registration request information broadcast from the specific entity terminal 110 to the block chain network 200 , and verify the relationship information registration request information ( S55 ).

일 예로, 블록체인 노드(210)는 특정 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 획득할 수 있다. 또한, 블록체인 노드(210)는 아이덴티티 컨트랙트를 통해 특정 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 퍼블릭 키를 획득하도록 할 수 있다. 그리고, 블록체인 노드(210)는 특정 엔티티 퍼블릭 키를 이용하여 관계정보 확인 정보에 포함된 특정 엔티티 서명값을 복호화하여 관계정보 확인 정보를 검증함으로써 관계정보 등록 요청 정보를 검증할 수 있다. 이때, 관계정보 확인 정보의 검증은, 특정 엔티티 서명값을 복호화하여 획득한 관계정보와, 관계정보 확인 정보에 포함된 관계정보가 일치하는지 여부를 확인함으로써 수행될 수 있다.As an example, the blockchain node 210 may obtain a specific entity public key corresponding to the specific entity DID from the blockchain network 200 by using the specific entity DID. In addition, the blockchain node 210 may use a specific entity DID through an identity contract to obtain a specific entity public key from the blockchain network 200 . And, the block chain node 210 may verify the relationship information registration request information by verifying the relationship information confirmation information by decrypting the specific entity signature value included in the relationship information confirmation information using the specific entity public key. In this case, the verification of the relation information confirmation information may be performed by confirming whether the relation information obtained by decoding a specific entity signature value matches the relation information included in the relation information confirmation information.

한편, 블록체인 노드(210)는 자신이 관계정보 등록 요청 정보를 검증하는 것과는 달리, 관계정보 등록 요청 정보를 아이덴티티 컨트랙트로 전송하여 아이덴티티 컨트랙트가 관계정보 등록 요청 정보를 검증하도록 할 수 있다.On the other hand, the blockchain node 210 transmits the relationship information registration request information to the identity contract, unlike its own verification of the relationship information registration request information, so that the identity contract verifies the relationship information registration request information.

이후, 블록체인 노드(210)는 관계정보 등록 요청 정보가 유효한 것으로 검증되면, 관계정보를 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 블록체인 네트워크(200)에 등록(S56)하여 주거나, 아이덴티티 컨트랙트로 하여금 관계정보 등록 요청 정보가 유효한 것으로 검증되면 관계정보를 특정 엔티티의 DID 및 타 엔티티의 DID에 매칭하여 블록체인 네트워크(200)에 등록(S56)하도록 할 수 있다.After that, when the relationship information registration request information is verified as valid, the block chain node 210 matches the relationship information with the DID of a specific entity and the DID of the other entity to register (S56) in the block chain network 200, or When the relationship information registration request information is verified as valid by the identity contract, the relationship information can be matched to the DID of a specific entity and the DID of another entity to be registered in the blockchain network 200 (S56).

상기에서와 같은 방법에 의해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 설정한 관계정보가 블록체인 네트워크(200)에 등록된 상태에서 특정 엔티티가 타 엔티티 DID를 이용하여 서비스를 이용하기 위하여, 특정 엔티티 단말(110)을 이용하여 타 엔티티 DID에 대한 서비스 요청 정보를 서비스 제공 서버(300)로 전송(S57)할 수 있다. 이때, 서비스 요청 정보에는 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키를 이용하여 서비스 요청 정보를 암호화한 특정 엔티티 서명값이 포함될 수 있다.In order for a specific entity to use a service using another entity DID while the relationship information that establishes the relationship between the specific entity DID and the other entity DID by the method as described above is registered in the blockchain network 200, Service request information for another entity DID may be transmitted to the service providing server 300 by using the entity terminal 110 (S57). In this case, the service request information may include a specific entity signature value obtained by encrypting the service request information using a specific entity private key corresponding to the specific entity DID.

그러면, 서비스 제공 서버(300)는 특정 엔티티 단말(110)로부터 전송된 타 엔티티 DID에 대한 서비스 요청 정보를 검증(S60)할 수 있다.Then, the service providing server 300 may verify service request information for another entity DID transmitted from the specific entity terminal 110 ( S60 ).

일 예로, 서비스 제공 서버(300)는 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 요청하기 위한 특정 엔티티 퍼블릭 키 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅(S58)할 수 있다. 그러면, 블록체인 노드(210)는 블록체인 네트워크(200)로 브로드캐스팅된 특정 엔티티 퍼블릭 키 요청 정보를 획득하며, 특정 엔티티 퍼블릭 키 요청 정보에 대응하여 블록체인 네트워크(200)로부터 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 획득하고, 블록체인 네트워크(200)로부터 획득된 특정 엔티티 퍼블릭 키를 서비스 제공 서버(300)로 전송(S59)하여 줄 수 있다. 또한, 블록체인 노드(210)는 블록체인 네트워크(200)에 등록된 아이덴티티 컨트랙트를 통해 특정 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 퍼블릭 키를 획득하도록 하여 특정 엔티티 퍼블릭 키를 서비스 제공 서버(300)로 전송(S59)하여 줄 수 있다. 그리고, 서비스 제공 서버(300)는 블록체인 노드(210)로부터 전송된 특정 엔티티 퍼블릭 키를 이용하여 서비스 요청 정보에 포함된 특정 엔티티 서명값을 복호화하여 서비스 요청 정보를 검증(S60)할 수 있다. 이때, 서비스 요청 정보의 검증은, 특정 엔티티 서명값을 복호화하여 획득한 서비스 요청 정보가 특정 엔티티 단말로부터 전송된 서비스 요청 정보와 일치하는지 여부를 확인함으로써 수행될 수 있다.As an example, the service providing server 300 may broadcast (S58) specific entity public key request information for requesting a specific entity public key corresponding to a specific entity DID to the blockchain network 200 . Then, the blockchain node 210 obtains the specific entity public key request information broadcast to the blockchain network 200, and corresponds to the specific entity DID from the blockchain network 200 in response to the specific entity public key request information A specific entity public key may be obtained, and the specific entity public key obtained from the block chain network 200 may be transmitted to the service providing server 300 (S59). In addition, the blockchain node 210 provides a specific entity public key service by obtaining a specific entity public key from the blockchain network 200 using a specific entity DID through an identity contract registered in the blockchain network 200 It can be transmitted to the server 300 (S59). In addition, the service providing server 300 may use the specific entity public key transmitted from the block chain node 210 to decrypt the specific entity signature value included in the service request information to verify the service request information ( S60 ). In this case, the verification of the service request information may be performed by checking whether the service request information obtained by decoding the specific entity signature value matches the service request information transmitted from the specific entity terminal.

이후, 서비스 요청 정보가 검증되면, 서비스 제공 서버(300)는 관계정보 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅(S61)할 수 있다.Thereafter, when the service request information is verified, the service providing server 300 may broadcast the relation information request information to the block chain network 200 ( S61 ).

이때, 관계정보 요청 정보는 특정 엔티티 DID 또는 타 엔티티 DID를 포함할 수 있다.In this case, the relationship information request information may include a specific entity DID or another entity DID.

그리고, 블록체인 노드(210)는 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 요청 정보를 수신하며, 관계정보 요청 정보에 대응하여 특정 엔티티 DID 또는 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 DID와 타 엔티티 DID 사이의 관계가 설정되어 있는 관계정보를 획득하거나, 아이덴티티 컨트랙트를 통해 특정 엔티티 DID 또는 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 관계정보를 획득하도록 하고, 관계정보를 서비스 제공 서버(300)로 전송(S62)하여 줄 수 있다.Then, the block chain node 210 receives the relationship information request information broadcast to the block chain network 200, and uses a specific entity DID or other entity DID in response to the relationship information request information to the block chain network 200. To obtain relationship information in which the relationship between a specific entity DID and another entity DID is established from the The information may be transmitted to the service providing server 300 (S62).

그리고, 서비스 제공 서버(300)는 블록체인 노드(210)로부터 획득되는 관계정보를 통해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 확인(S63)할 수 있다.In addition, the service providing server 300 may check the relationship between the specific entity DID and the other entity DID through the relationship information obtained from the block chain node 210 ( S63 ).

이후, 관계 정보를 통해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계가 확인되면 타 엔티티 DID에 대응되는 서비스를 특정 엔티티 단말(110)로 제공(S64)하여 줄 수 있다. 일 예로, 관계정보가 “특정 엔티티 DID는 타 엔티티 DID의 소유자이다"이며, 서비스 요청에 타 엔티티 DID를 통한 로그온 요청일 경우, 서비스 서버(300)는 관계정보를 통해 특정 엔티티 DID가 타 엔티티 DID의 소유자임을 확인하고, 특정 엔티티 단말(110)에서 타 엔티티 DID로 로그온할 수 있도록 한다.Thereafter, when a relationship between a specific entity DID and another entity DID is confirmed through the relationship information, a service corresponding to the other entity DID may be provided to the specific entity terminal 110 ( S64 ). For example, if the relationship information is “a specific entity DID is the owner of another entity DID” and the service request is a logon request through another entity DID, the service server 300 determines that the specific entity DID is the other entity DID through the relationship information. confirms that the user is the owner of , and allows a specific entity terminal 110 to log on with the DID of another entity.

도 5는 본 발명의 또 다른 실시예에 따른 관계성 DID 서비스를 제공하는 방법을 개략적으로 도시한 것으로, 도 5를 참조하여 본 발명의 또 다른 실시예에 따른 관계성 DID 서비스를 제공하는 방법을 설명하면 다음과 같다. 이하의 설명에서는 도 2와 도3을 참조한 설명으로부터 용이하게 이해 가능한 부분에 대해서는 상세한 설명을 생략하기로 한다.5 schematically illustrates a method of providing a relational DID service according to another embodiment of the present invention. Referring to FIG. 5, a method of providing a relational DID service according to another embodiment of the present invention The explanation is as follows. In the following description, detailed descriptions of parts that can be easily understood from the description with reference to FIGS. 2 and 3 will be omitted.

티 엔티티가 특정 엔티티와의 관계를 설정하기 위하여 타 엔티티 단말(120)을 통해 특정 엔티티와 타 엔티티 사이의 관계를 설정하기 위한 관계정보 설정 정보를 블록체인 네트워크(200)로 브로드캐스팅(S71)할 수 있다.In order for the tee entity to establish a relationship with a specific entity, relationship information setting information for establishing a relationship between a specific entity and another entity through the other entity terminal 120 is broadcast (S71) to the block chain network 200 can

이때, 관계정보 설정 정보는 특정 엔티티에 대응되는 특정 엔티티 DID와 타 엔티티에 대응되는 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 관계정보를 타 엔티티 DID에 대응되는 타 엔티티 프라이빗 키로 암호화한 타 엔티티 서명값을 포함할 수 있다. 그리고, 관계 정보는 특정 엔티티와 타 엔티티 사이의 관계에 관한 정보로, IoT 장비와 소유자, 부모와 자식, 직원과 대표, 학생과 교수 등 다양한 엔티티들 사이의 관계에 관한 정보일 수 있다. 일 예로, 관계정보는 "특정 엔티티 DID는 타 엔티티 DID의 소유자이다"와 같이 설정될 수 있다.In this case, the relationship information setting information includes relationship information that establishes a relationship between a specific entity DID corresponding to a specific entity and another entity DID corresponding to another entity, and the other entity obtained by encrypting the relationship information with the other entity private key corresponding to the other entity DID. It may include an entity signature value. In addition, the relationship information is information about a relationship between a specific entity and other entities, and may be information about a relationship between various entities such as IoT devices and owners, parents and children, employees and representatives, and students and professors. As an example, the relationship information may be set as "a specific entity DID is the owner of another entity DID".

그러면, 블록체인 네트워크(200)를 구성하는 블록체인 노드들 중 적어도 하나의 블록체인 노드(210)가 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 설정 정보를 수신하고, 수신된 관계정보 설정 정보를 검증(S72)할 수 있다.Then, at least one block chain node 210 of the block chain nodes constituting the block chain network 200 receives the relationship information setting information broadcast to the block chain network 200, and the received relationship information setting information can be verified (S72).

일 예로, 블록체인 노드(210)는 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득할 수 있다. 또한, 블록체인 노드(210)는 아이덴티티 컨트랙트를 통해 타 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 타 엔티티 퍼블릭 키를 획득하도록 할 수 있다. 그리고, 블록체인 노드(210)는 타 엔티티 퍼블릭 키를 이용하여 관계정보 설정 정보에 포함된 타 엔티티 서명값을 복호화하여 관계정보 설정 정보를 검증할 수 있다. 이때, 관계정보 설정 정보의 검증은, 타 엔티티 서명값을 복호화하여 획득한 관계정보와, 관계정보 설정 정보에 포함된 관계정보가 일치하는지 여부를 확인함으로써 수행될 수 있다. 한편, 블록체인 노드(210)는 자신이 관계정보 설정 정보를 검증하는 것과는 달리, 관계정보 설정 정보를 아이덴티티 컨트랙트로 전송하여 아이덴티티 컨트랙트가 관계정보 설정 정보를 검증하도록 할 수 있다.As an example, the blockchain node 210 may obtain another entity public key corresponding to the other entity DID from the blockchain network 200 by using the other entity DID. In addition, the blockchain node 210 may use another entity DID through an identity contract to obtain another entity public key from the blockchain network 200 . And, the block chain node 210 may verify the relationship information setting information by decrypting the other entity signature value included in the relation information setting information using the other entity public key. In this case, the verification of the relation information setting information may be performed by checking whether the relation information obtained by decoding the signature value of another entity matches the relation information included in the relation information setting information. On the other hand, the block chain node 210 may transmit the relationship information setting information to the identity contract, allowing the identity contract to verify the relationship information setting information, unlike its own verifying the relationship information setting information.

이후, 관계정보 설정 정보가 검증되면, 블록체인 노드(210)는 타 엔티티 단말(120)로부터의 관계정보 설정 정보를 특정 엔티티 단말(110)로 전송(S73)하여 줄 수 있다. 또한, 블록체인 노드(210)는 아이덴티티 컨트랙트로 하여금 관계정보 설정 정보에 대한 검증 결과를 타 엔티티 단말(120)로 전송하여 타 엔티티 단말(120)이 관계정보 설정 정보를 특정 엔티티 단말(110)로 전송하도록 할 수 있다.Thereafter, when the relationship information setting information is verified, the block chain node 210 may transmit the relation information setting information from the other entity terminal 120 to the specific entity terminal 110 ( S73 ). In addition, the block chain node 210 causes the identity contract to transmit the verification result for the relationship information setting information to the other entity terminal 120 so that the other entity terminal 120 transmits the relationship information setting information to the specific entity terminal 110 . can be sent

그리고, 특정 엔티티 단말(110)은 관계정보 설정 정보를 디스플레이하여 특정 엔티티가 확인할 수 있도록 하며, 특정 엔티티가 특정 엔티티 DID와 타 엔티티 DID 사이의 관계정보를 확인한 후 승인하면, 특정 엔티티 단말(110)은 관계정보 등록 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅(S74)하여 줄 수 있다.And, the specific entity terminal 110 displays the relationship information setting information so that a specific entity can check it, and if the specific entity confirms and approves the relationship information between the specific entity DID and the other entity DID, the specific entity terminal 110 may broadcast (S74) relationship information registration request information to the block chain network 200 .

이때, 관계정보 등록 요청 정보는 타 엔티티 단말(120)에서 전송된 관계정보 설정 정보와, 특정 엔티티 단말(110)이 관계정보 설정 정보를 확인한 결과에 대응되어 생성한 관계정보 확인 정보를 포함할 수 있다. 그리고, 관계정보 확인 정보는 관계정보와, 관계정보를 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키로 암호화한 특정 엔티티 서명값을 포함할 수 있다. 이와는 달리, 블록체인 노드(210)가 타 엔티티 단말(120)로부터 전송된 관계정보 설정 정보를 저장하고 있을 경우에는, 관계정보 확인 정보를 관계정보 등록 요청 정보로서 블록체인 네트워크(200)로 브로드캐스팅할 수 있다.In this case, the relationship information registration request information may include the relationship information setting information transmitted from the other entity terminal 120 and the relationship information confirmation information generated in response to the result of the specific entity terminal 110 checking the relationship information setting information. there is. In addition, the relationship information confirmation information may include relationship information and a specific entity signature value obtained by encrypting the relationship information with a specific entity private key corresponding to a specific entity DID. Contrary to this, when the block chain node 210 stores the relationship information setting information transmitted from the other entity terminal 120, the relationship information confirmation information is broadcast to the block chain network 200 as relationship information registration request information. can do.

그러면, 블록체인 노드(210)는 특정 엔티티 단말(110)로부터 블록체인 네트워크(200)로 브로드캐스팅된 관계정보 등록 요청 정보를 수신하며, 관계정보 등록 요청 정보를 검증(S75)할 수 있다.Then, the block chain node 210 may receive the relationship information registration request information broadcast from the specific entity terminal 110 to the block chain network 200, and verify the relationship information registration request information (S75).

일 예로, 블록체인 노드(210)는 특정 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 획득할 수 있다. 또한, 블록체인 노드(210)는 아이덴티티 컨트랙트를 통해 특정 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 퍼블릭 키를 획득하도록 할 수 있다. 그리고, 블록체인 노드(210)는 특정 엔티티 퍼블릭 키를 이용하여 관계정보 확인 정보에 포함된 특정 엔티티 서명값을 복호화하여 관계정보 확인 정보를 검증함으로써 관계정보 등록 요청 정보를 검증할 수 있다. 이때, 관계정보 확인 정보의 검증은, 특정 엔티티 서명값을 복호화하여 획득한 관계정보와, 관계정보 확인 정보에 포함된 관계정보가 일치하는지 여부를 확인함으로써 수행될 수 있다.As an example, the blockchain node 210 may obtain a specific entity public key corresponding to the specific entity DID from the blockchain network 200 by using the specific entity DID. In addition, the blockchain node 210 may use a specific entity DID through an identity contract to obtain a specific entity public key from the blockchain network 200 . And, the block chain node 210 may verify the relationship information registration request information by verifying the relationship information confirmation information by decrypting the specific entity signature value included in the relationship information confirmation information using the specific entity public key. In this case, the verification of the relation information confirmation information may be performed by confirming whether the relation information obtained by decoding a specific entity signature value matches the relation information included in the relation information confirmation information.

한편, 블록체인 노드(210)는 자신이 관계정보 등록 요청 정보를 검증하는 것과는 달리, 관계정보 등록 요청 정보를 아이덴티티 컨트랙트로 전송하여 아이덴티티 컨트랙트가 관계정보 등록 요청 정보를 검증하도록 할 수 있다.On the other hand, the blockchain node 210 transmits the relationship information registration request information to the identity contract, unlike its own verification of the relationship information registration request information, so that the identity contract verifies the relationship information registration request information.

이후, 블록체인 노드(210)는 관계정보 등록 요청 정보가 유효한 것으로 검증되면, 관계정보를 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 블록체인 네트워크(200)에 등록(S76)하여 주거나, 아이덴티티 컨트랙트로 하여금 관계정보 등록 요청 정보가 유효한 것으로 검증되면 관계정보를 특정 엔티티의 DID 및 타 엔티티의 DID에 매칭하여 블록체인 네트워크(200)에 등록(S76)하도록 할 수 있다.Thereafter, when the relationship information registration request information is verified as valid, the block chain node 210 matches the relationship information with the DID of a specific entity and the DID of the other entity to register (S76) in the block chain network 200, or When the relationship information registration request information is verified as valid by the identity contract, the relationship information can be matched to the DID of a specific entity and the DID of another entity to be registered in the blockchain network 200 (S76).

상기에서와 같은 방법에 의해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 설정한 관계정보가 블록체인 네트워크(200)에 등록된 상태에서 특정 엔티티가 타 엔티티 DID를 이용하여 서비스를 이용하기 위하여, 특정 엔티티 단말(110)을 이용하여 타 엔티티 DID에 대한 서비스 요청 정보를 서비스 제공 서버(300)로 전송(S77)할 수 있다. 이때, 서비스 요청 정보에는 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키를 이용하여 서비스 요청 정보를 암호화한 특정 엔티티 서명값이 포함될 수 있다.In order for a specific entity to use a service using another entity DID while the relationship information that establishes the relationship between the specific entity DID and the other entity DID by the method as described above is registered in the blockchain network 200, Service request information for another entity DID may be transmitted to the service providing server 300 using the entity terminal 110 (S77). In this case, the service request information may include a specific entity signature value obtained by encrypting the service request information using a specific entity private key corresponding to the specific entity DID.

그러면, 서비스 제공 서버(300)는 특정 엔티티 단말(110)로부터 전송된 타 엔티티 DID에 대한 서비스 요청 정보를 검증(S82)할 수 있다.Then, the service providing server 300 may verify the service request information for the other entity DID transmitted from the specific entity terminal 110 (S82).

일 예로, 서비스 제공 서버(300)는 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 획득하기 위하여 리졸버 서버(400)로 특정 엔티티 DID에 대응되는 특정 엔티티 DID 문서 요청 정보를 전송(S78)할 수 있다. 그리고, 리졸버 서버(400)는 서비스 제공 서버(300)로부터의 특정 엔티티 DID 문서 요청 정보에 대응하여 블록체인 네트워크(200)로 특정 엔티티 공개정보에 대한 특정 엔티티 공개정보 요청 정보를 브로드캐스팅(S79)할 수 있다. 이때, 특정 엔티티 공개정보는 특정 엔티티 DID와 관련하여 블록체인 네트워크(200)에 등록되어 있는 정보로서, 적어도 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 포함할 수 있다. 그러면, 블록체인 네트워크(200)를 구성하는 적어도 하나의 블록체인 노드(210)는 특정 엔티티 공개정보 요청 정보에 대응하여 블록체인 네트워크(200)로부터 특정 엔티티 DID에 대응되는 특정 엔티티 공개정보를 획득하고, 블록체인 네트워크(200)로부터 획득된 특정 엔티티 공개정보를 리졸버 서버(400)로 전송(S80)하여 줄 수 있다. 또한, 블록체인 노드(210)는 블록체인 네트워크(200)에 등록된 아이덴티티 컨트랙트를 통해 특정 엔티티 DID를 이용하여 블록체인 네트워크(200)로부터 특정 엔티티 공개정보를 획득하도록 하여 특정 엔티티 공개정보를 리졸버 서버(400)로 전송하여 줄 수 있다. 그리고, 리졸버 서버(400)는 블록체인 노드(210)로부터 전송되는 특정 엔티티 공개정보를 특정 엔티티 DID 문서로 가공하고, 특정 엔티티 DID 문서를 서비스 제공 서버(300)로 전송(S81)하여 줄 수 있다. 그러면, 서비스 제공 서버(300)는 리졸버 서버(400)로부터 전송된 특정 엔티티 DID 문서로부터 특정 엔티티 퍼블릭 키를 획득하며, 특정 엔티티 퍼블릭 키를 이용하여 서비스 요청 정보에 포함된 특정 엔티티 서명값을 복호화하여 서비스 요청 정보를 검증(S82)할 수 있다. 이때, 서비스 요청 정보의 검증은, 특정 엔티티 서명값을 복호화하여 획득한 서비스 요청 정보와, 특정 엔티티 단말(110)로부터 전송된 서비스 요청 정보가 일치하는지 여부를 확인함으로써 수행될 수 있다.For example, the service providing server 300 may transmit specific entity DID document request information corresponding to the specific entity DID to the resolver server 400 to obtain a specific entity public key corresponding to the specific entity DID (S78). . Then, the resolver server 400 broadcasts the specific entity public information request information for the specific entity public information to the block chain network 200 in response to the specific entity DID document request information from the service providing server 300 (S79) can do. In this case, the specific entity public information is information registered in the block chain network 200 in relation to the specific entity DID, at least the relation information that sets the relationship between the specific entity DID and other entity DIDs, and the specific entity DID. May contain specific entity public keys. Then, at least one blockchain node 210 constituting the blockchain network 200 obtains specific entity public information corresponding to a specific entity DID from the blockchain network 200 in response to specific entity public information request information, and , the specific entity public information obtained from the block chain network 200 may be transmitted to the resolver server 400 (S80). In addition, the blockchain node 210 obtains specific entity public information from the blockchain network 200 by using a specific entity DID through an identity contract registered in the blockchain network 200 to resolve specific entity public information. It can be transmitted to (400). In addition, the resolver server 400 processes the specific entity public information transmitted from the block chain node 210 into a specific entity DID document, and transmits the specific entity DID document to the service providing server 300 (S81). . Then, the service providing server 300 obtains a specific entity public key from the specific entity DID document transmitted from the resolver server 400, and decrypts the specific entity signature value included in the service request information using the specific entity public key. The service request information may be verified (S82). In this case, the verification of the service request information may be performed by checking whether the service request information obtained by decoding the specific entity signature value matches the service request information transmitted from the specific entity terminal 110 .

이후, 서비스 요청 정보가 검증되면, 서비스 제공 서버(300)는 DID 문서 요청 정보를 리졸버 서버(400)로 전송(S83)하여 줄 수 있다.Thereafter, when the service request information is verified, the service providing server 300 may transmit the DID document request information to the resolver server 400 ( S83 ).

이때, DID 문서 요청 정보는 특정 엔티티 DID 문서 요청 정보와 타 엔티티 DID 문서 요청 정보 중 적어도 하나를 포함할 수 있다.In this case, the DID document request information may include at least one of specific entity DID document request information and other entity DID document request information.

그러면, 리졸버 서버(400)는 서비스 제공 서버(200)로부터의 DID 문서 요청 정보에 대응한 DID 공개정보에 대한 DID 공개정보 요청 정보를 블록체인 네트워크(200)로 브로드캐스팅(S84)할 수 있다.Then, the resolver server 400 may broadcast the DID public information request information for the DID public information corresponding to the DID document request information from the service providing server 200 to the block chain network 200 (S84).

이때, DID 공개정보는 특정 엔티티 공개 정보와 타 엔티티 공개 정보 중 적어도 하나를 포함할 수 있다. 그리고, 특정 엔티티 공개 정보는 특정 엔티티 DID와 관련하여 블록체인 네트워크(200)에 등록되어 있는 정보로서, 적어도 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 포함할 수 있으며, 타 엔티티 공개 정보는 타 엔티티 DID와 관련하여 블록체인 네트워크(200)에 등록되어 있는 정보로서, 적어도 특정 엔티티 DID와 타 엔티티 DID 사이의 간계를 설정한 관계정보와, 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함할 수 있다.In this case, the DID public information may include at least one of specific entity public information and other entity public information. In addition, specific entity public information is information registered in the blockchain network 200 in relation to a specific entity DID. It may include a specific entity public key, and the other entity public information is information registered in the blockchain network 200 in relation to the other entity DID, at least the relationship information that establishes a link between the specific entity DID and the other entity DID. and another entity public key corresponding to the other entity DID.

그리고, 블록체인 노드(210)는 블록체인 네트워크(200)로 브로드캐스팅된 DID 공개정보 요청 정보를 수신하며, DID 공개정보 요청 정보에 대응하여 특정 엔티티 DID와 타 엔티티 DID 중 적어도 하나를 이용하여 블록체인 네트워크(200)로부터 DID 공개정보를 획득하거나, 아이덴티티 컨트랙트를 통해 특정 엔티티 DID와 타 엔티티 DID 중 적어도 하나를 이용하여 블록체인 네트워크(200)로부터 DID 공개정보를 획득하도록 하고, DID 공개정보를 리졸버 서버(400)로 전송(S85)하여 줄 수 있다.Then, the block chain node 210 receives the DID public information request information broadcast to the block chain network 200, and uses at least one of a specific entity DID and another entity DID in response to the DID public information request information to block Obtain DID public information from the chain network 200 or obtain DID public information from the blockchain network 200 using at least one of a specific entity DID and another entity DID through an identity contract, and resolve the DID public information It can be transmitted to the server 400 (S85).

그러면, 리졸버 서버(400)는 DID 공개정보를 DID 문서로 가공하며, DID 문서를 서비스 제공 서버(300)로 전송(S86)하여 줄 수 있다.Then, the resolver server 400 may process the DID public information into a DID document, and transmit the DID document to the service providing server 300 (S86).

그리고, 서비스 제공 서버(300)는 DID 문서로부터 획득되는 관계정보를 통해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계를 확인(S87)할 수 있다.In addition, the service providing server 300 may check the relationship between the specific entity DID and the other entity DID through the relationship information obtained from the DID document (S87).

이후, 관계 정보를 통해 특정 엔티티 DID와 타 엔티티 DID 사이의 관계가 확인되면 타 엔티티 DID에 대응되는 서비스를 특정 엔티티 단말(110)로 제공(S88)하여 줄 수 있다. 일 예로, 관계정보가 “특정 엔티티 DID는 타 엔티티 DID의 소유자이다"이며, 서비스 요청에 타 엔티티 DID를 통한 로그온 요청일 경우, 서비스 서버(300)는 관계정보를 통해 특정 엔티티 DID가 타 엔티티 DID의 소유자임을 확인하고, 특정 엔티티 단말(110)에서 타 엔티티 DID로 로그온할 수 있도록 한다.Thereafter, when a relationship between a specific entity DID and another entity DID is confirmed through the relationship information, a service corresponding to the other entity DID may be provided to the specific entity terminal 110 ( S88 ). For example, if the relationship information is “a specific entity DID is the owner of another entity DID” and the service request is a logon request through another entity DID, the service server 300 determines that the specific entity DID is the other entity DID through the relationship information. confirms that the user is the owner of , and allows the specific entity terminal 110 to log on with the DID of another entity.

또한, 이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.In addition, the embodiments according to the present invention described above may be implemented in the form of program instructions that can be executed through various computer components and recorded in a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the computer-readable recording medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the computer software field. Examples of the computer-readable recording medium include a hard disk, a magnetic medium such as a floppy disk and a magnetic tape, an optical recording medium such as a CD-ROM and DVD, and a magneto-optical medium such as a floppy disk. media), and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules for carrying out the processing according to the present invention, and vice versa.

이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.In the above, the present invention has been described with specific matters such as specific components and limited embodiments and drawings, but these are provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , various modifications and variations can be devised from these descriptions by those of ordinary skill in the art to which the present invention pertains.

따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the above-described embodiments, and not only the claims described below but also all modifications equivalently or equivalently to the claims described below belong to the scope of the spirit of the present invention. will do it

100: 엔티티 단말들,
200: 블록체인 네트워크,
210: 블록체인 노드,
300: 서비스 제공 서버,
400: 리졸보 서버
100: entity terminals;
200: blockchain network,
210: blockchain node;
300: service providing server;
400: Resolvo Server

Claims (16)

관계성 탈중앙화 아이디(decentralized identifier, DID) 서비스를 제공하는 방법에 있어서,
(a) 특정 엔티티 단말로부터 특정 엔티티에 대응되는 특정 엔티티 DID와, 상기 특정 엔티티에 대응되는 상기 특정 엔티티 DID와는 다른 타 엔티티에 대응되는 타 엔티티 DID 사이의 관계를 설정한 관계정보 - 상기 관계정보는 타 엔티티에 의해 설정되었으며, 상기 특정 엔티티에 의해 확인된 것임 - 에 대한 등록을 요청하는 관계정보 등록 요청 정보가 블록체인 네트워크로 브로드캐스팅되면, 상기 블록체인 네트워크를 구성하는 적어도 하나의 블록체인 노드가, 상기 관계정보 등록 요청 정보를 검증하거나, 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크에 등록된 아이덴티티 컨트랙트로 전송하여 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 등록 요청 정보를 검증하도록 하는 단계; 및
(b) 상기 블록체인 노드가, 상기 관계정보 등록 요청 정보가 유효한 것으로 검증되면, 상기 관계정보를 상기 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 상기 블록체인 네트워크에 등록하여 주거나, 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 등록 요청 정보가 유효한 것으로 검증되면 상기 관계정보를 상기 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 상기 블록체인 네트워크에 등록하도록 하는 단계;
를 포함하는 방법.
In a method for providing a relational decentralized identifier (DID) service,
(a) Relationship information in which a relationship is established between a specific entity DID corresponding to a specific entity from a specific entity terminal and another entity DID corresponding to another entity different from the specific entity DID corresponding to the specific entity - The relationship information is When the relation information registration request information requesting registration for - that is set by another entity and confirmed by the specific entity is broadcast to the blockchain network, at least one blockchain node constituting the blockchain network , verifying the relationship information registration request information or transmitting the relationship information registration request information to an identity contract registered in the blockchain network to cause the identity contract to verify the relationship information registration request information; and
(b) When the blockchain node verifies that the relationship information registration request information is valid, the relationship information is matched with the DID of the specific entity and the DID of the other entity to be registered in the blockchain network, or the identity causing a contract to register the relationship information in the blockchain network by matching the relationship information with the DID of the specific entity and the DID of the other entity when the relationship information registration request information is validated;
How to include.
제1항에 있어서,
(c) 상기 특정 엔티티 단말로부터의 상기 특정 엔티티 DID를 이용한 상기 타 엔티티 DID에 대한 서비스 요청 정보에 대응하여 서비스 제공 서버로부터 상기 관계정보 요청 정보가 획득되거나, 리졸버 서버로부터 상기 서비스 제공 서버로부터의 DID 문서 요청 정보 - 상기 DID 문서 요청 정보는 특정 엔티티 DID 문서 요청 정보와 타 엔티티 DID 문서 요청 정보 중 적어도 하나를 포함함 - 에 대응한 DID 공개정보 - 상기 DID 공개정보는 특정 엔티티 공개 정보와 타 엔티티 공개 정보 중 적어도 하나를 포함하며, 상기 특정 엔티티 공개 정보는 상기 특정 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 포함하고, 상기 타 엔티티 공개 정보는 상기 타 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함함 - 에 대한 DID 공개정보 요청 정보가 획득되면, 상기 블록체인 노드가, (i) 상기 서비스 제공 서버로부터의 상기 관계정보 요청 정보에 대응하여 상기 특정 엔티티 DID 또는 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 관계정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID 또는 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 관계정보를 획득하도록 하여 상기 관계정보를 상기 서비스 제공 서버로 전송하여 주거나, (ii) 상기 리졸버 서버로부터의 상기 DID 공개정보 요청 정보에 대응하여 상기 특정 엔티티 DID와 상기 타 엔티티 DID 중 적어도 하나를 이용하여 상기 블록체인 네트워크로부터 상기 DID 공개 정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID 중 적어도 하나를 이용하여 상기 블록체인 네트워크로부터 상기 DID 공개정보를 획득하도록 하여 상기 DID 공개정보가 상기 리졸버 서버를 통해 상기 DID 문서로 가공되어 상기 서비스 제공 서버로 전송되도록 함으로써, 상기 서비스 제공 서버로 하여금 상기 블록체인 노드로부터 획득되는 상기 관계정보와 상기 DID 문서로부터 획득되는 상기 관계정보 중 어느 하나를 참조하여 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 확인하도록 하며, 상기 관계 정보를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계가 확인되면 상기 타 엔티티 DID에 대응되는 서비스를 상기 특정 엔티티 단말로 제공하여 주도록 하는 단계;
를 더 포함하는 방법.
The method of claim 1,
(c) the relation information request information is obtained from the service providing server in response to the service request information for the other entity DID using the specific entity DID from the specific entity terminal, or the DID from the service providing server from the resolver server DID disclosure information corresponding to document request information - the DID document request information includes at least one of specific entity DID document request information and other entity DID document request information - The DID disclosure information includes specific entity disclosure information and other entity disclosure information It includes at least one of information, and the specific entity public information is information registered in the blockchain network in relation to the specific entity DID, and includes at least the relationship information and a specific entity public key corresponding to the specific entity DID. and, the other entity public information is information registered in the blockchain network in relation to the other entity DID, and includes at least the relation information and another entity public key corresponding to the other entity DID. When the information request information is obtained, the blockchain node (i) uses the specific entity DID or the other entity DID in response to the relation information request information from the service providing server to obtain the relation information from the blockchain network. or obtain the relationship information from the blockchain network using the specific entity DID or the other entity DID through the identity contract to transmit the relationship information to the service providing server, or (ii) the In response to the DID public information request information from the resolver server, the DID public information is acquired from the blockchain network using at least one of the specific entity DID and the other entity DID, or the specific entity DID through the identity contract and the other entity DID from the blockchain network using at least one To obtain DID public information, the DID public information is processed into the DID document through the resolver server and transmitted to the service providing server, thereby causing the service providing server to obtain the relation information obtained from the block chain node and the The relationship between the specific entity DID and the other entity DID is checked by referring to any one of the relationship information obtained from the DID document, and the relationship between the specific entity DID and the other entity DID is confirmed through the relationship information providing a service corresponding to the other entity DID to the specific entity terminal when it is determined;
How to include more.
제2항에 있어서,
상기 특정 엔티티 단말로부터의 상기 서비스 요청 정보에는 상기 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키를 이용하여 상기 서비스 요청 정보를 암호화한 특정 엔티티 서명값이 포함되며,
상기 블록체인 노드는, 상기 서비스 제공 서버로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 요청하기 위한 특정 엔티티 퍼블릭 키 요청 정보가 획득되거나, 상기 리졸버 서버로부터 상기 서비스 제공 서버로부터의 상기 특정 엔티티 DID 문서 요청 정보에 대응한 상기 특정 엔티티 공개정보에 대한 특정 엔티티 공개정보 요청 정보가 획득되면, (i) 상기 서비스 제공 서버로부터의 상기 특정 엔티티 퍼블릭 키 요청 정보에 대응하여 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 상기 특정 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키를 획득하도록 하여 상기 특정 엔티티 퍼블릭 키를 상기 서비스 제공 서버로 전송하거나, (ii) 상기 리졸버 서버로부터의 상기 특정 엔티티 공개정보 요청 정보에 대응하여 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 공개정보를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 공개정보를 획득하도록 하여 상기 특정 엔티티 공개정보가 상기 리졸버 서버를 통해 상기 특정 엔티티 DID 문서로 가공되어 상기 서비스 제공 서버로 전송되도록 함으로써, 상기 서비스 제공 서버로 하여금 상기 블록체인 노드로부터 획득한 상기 특정 엔티티 퍼블릭 키 또는 상기 특정 엔티티 DID 문서로부터 획득한 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 특정 엔티티 서명값을 복호화하여 상기 특정 엔티티 서명값을 검증하도록 하며, 상기 특정 엔티티 서명값이 검증되면 상기 관계정보 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 하는 방법.
3. The method of claim 2,
The service request information from the specific entity terminal includes a specific entity signature value obtained by encrypting the service request information using a specific entity private key corresponding to the specific entity DID,
The blockchain node obtains specific entity public key request information for requesting a specific entity public key corresponding to the specific entity DID from the service providing server, or the specific entity DID from the service providing server from the resolver server When specific entity disclosure information request information for the specific entity disclosure information corresponding to the document request information is obtained, (i) using the specific entity DID in response to the specific entity public key request information from the service providing server Obtain the specific entity public key corresponding to the specific entity DID from the blockchain network or obtain the specific entity public key from the blockchain network using the specific entity DID through the identity contract to obtain the specific entity public key transmits to the service providing server, or (ii) obtains the specific entity public information from the blockchain network using the specific entity DID in response to the specific entity public information request information from the resolver server, or the identity contract to obtain the specific entity public information from the blockchain network using the specific entity DID through , by causing the service providing server to decrypt the specific entity signature value using the specific entity public key obtained from the block chain node or the specific entity public key obtained from the specific entity DID document to obtain the specific entity signature value and to broadcast the relation information request information to the blockchain network when the specific entity signature value is verified.
제1항에 있어서,
상기 (a) 단계에서,
상기 관계정보 등록 요청 정보는 상기 타 엔티티 DID에 대응되는 타 엔티티 단말에서 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 설정한 관계정보 설정 정보와, 상기 특정 엔티티 단말에서 상기 관계정보 설정 정보를 확인한 관계정보 확인 정보를 포함하는 방법.
According to claim 1,
In step (a),
The relationship information registration request information includes relationship information setting information for setting a relationship between the specific entity DID and the other entity DID in another entity terminal corresponding to the other entity DID, and the relationship information setting information in the specific entity terminal Confirmed relationship information How to include confirmation information.
제4항에 있어서,
상기 관계정보 설정 정보는 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 상기 관계정보를 상기 타 엔티티 DID에 대응되는 타 엔티티 프라이빗 키로 암호화한 타 엔티티 서명값을 포함하고, 상기 관계정보 확인 정보는 상기 관계정보와, 상기 관계정보를 상기 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키로 암호화한 특정 엔티티 서명값을 포함하며,
상기 블록체인 노드는, 상기 특정 엔티티 DID와 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키와 상기 타 엔티티 퍼블릭 키를 획득하도록 하며, 상기 타 엔티티 퍼블릭 키를 이용하여 상기 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하고, 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 특정 엔티티 서명값을 복호화하여 상기 관계정보 확인 정보를 검증함으로써 상기 관계정보 등록 요청 정보를 검증하도록 하는 방법.
5. The method of claim 4,
The relationship information setting information includes relationship information for establishing a relationship between the specific entity DID and the other entity DID, and another entity signature value obtained by encrypting the relationship information with another entity private key corresponding to the other entity DID, The relationship information confirmation information includes the relationship information and a specific entity signature value obtained by encrypting the relationship information with a specific entity private key corresponding to the specific entity DID,
The blockchain node uses the specific entity DID and the other entity DID to obtain a specific entity public key corresponding to the specific entity DID and another entity public key corresponding to the other entity DID from the blockchain network, or Obtain the specific entity public key and the other entity public key from the blockchain network using the specific entity DID and the other entity DID through an identity contract, and the other entity signature value using the other entity public key Decrypting to verify the relationship information setting information, and decrypting the specific entity signature value using the specific entity public key to verify the relationship information confirmation information to verify the relationship information registration request information.
제5항에 있어서,
상기 블록체인 노드는, 상기 타 엔티티 단말로부터 전송되는 상기 관계정보 설정 정보에 대응한 상기 특정 엔티티 단말로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키에 대한 타 엔티티 퍼블릭 키 요청 정보가 획득되거나, 리졸버 서버로부터 상기 특정 엔티티 단말로부터의 타 엔티티 DID 문서 요청 정보에 대응한 타 엔티티 공개정보 - 상기 타 엔티티 공개정보는 상기 타 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함함 - 에 대한 타 엔티티 공개정보 요청 정보가 획득되면, (i) 상기 특정 엔티티 단말로부터의 상기 타 엔티티 퍼블릭 키 요청 정보에 대응하여 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 상기 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 퍼블릭 키를 획득하도록 하여 상기 타 엔티티 퍼블릭 키를 상기 특정 엔티티 단말로 전송하여 주거나, (ii) 상기 리졸버 서버로부터의 상기 타 엔티티 공개정보 요청 정보에 대응하여 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 공개정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 공개정보를 획득하도록 하여 상기 타 엔티티 공개정보가 상기 리졸버 서버를 통해 상기 타 엔티티 DID 문서로 가공되어 상기 특정 엔티티 단말로 전송되도록 함으로써, 상기 특정 엔티티 단말로 하여금 상기 블록체인 노드로부터 전송된 상기 타 엔티티 퍼블릭 키 또는 상기 타 엔티티 DID 문서로부터 획득한 상기 타 엔티티 퍼블릭 키를 이용하여 상기 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하도록 하고, 상기 관계정보 설정 정보가 검증되면 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 하여 상기 관계정보 등록 요청 정보를 획득하는 방법.
6. The method of claim 5,
The block chain node obtains other entity public key request information for another entity public key corresponding to the other entity DID from the specific entity terminal corresponding to the relationship information setting information transmitted from the other entity terminal, or a resolver Other entity public information corresponding to the other entity DID document request information from the server from the specific entity terminal - The other entity public information is information registered in the block chain network in relation to the other entity DID, at least the relation information and another entity public key corresponding to the other entity DID - When the other entity public information request information for is obtained, (i) the other entity corresponds to the other entity public key request information from the specific entity terminal Obtain the other entity public key corresponding to the other entity DID from the blockchain network using DID or obtain the other entity public key from the blockchain network using the other entity DID through the identity contract The other entity public key is transmitted to the specific entity terminal, or (ii) from the blockchain network to the other entity DID by using the other entity DID in response to the other entity public information request information from the resolver server. Obtain the corresponding other entity public information, or obtain the other entity public information from the block chain network using the other entity DID through the identity contract, so that the other entity public information is transmitted to the other entity through the resolver server By processing the DID document and sending it to the specific entity terminal, the specific entity terminal uses the other entity public key transmitted from the block chain node or the other entity public key obtained from the other entity DID document. Decrypt other entity signature values to verify the relationship information setting information, and the relationship information When the setting information is verified, the relation information registration request information is broadcast to the block chain network to obtain the relation information registration request information.
제5항에 있어서,
상기 블록체인 노드는,
상기 타 엔티티 단말로부터 상기 관계정보 설정 정보가 상기 블록체인 네트워크로 브로드캐스팅되어 상기 관계정보 설정 정보가 획득되면, 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하거나 상기 아이덴티티 컨트랙트를 통해 상기 관계정보 설정 정보가 상기 특정 엔티티 단말로 전송되도록 함으로써, 상기 특정 엔티티 단말로 하여금 상기 관계정보 설정 정보의 검증 결과에 대응한 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 함으로써 상기 관계정보 등록 요청 정보를 획득하는 방법.
6. The method of claim 5,
The blockchain node is
When the relation information setting information is obtained by broadcasting the relation information setting information from the other entity terminal to the block chain network, the relation information setting information is transmitted to the specific entity terminal or the relation information setting through the identity contract The relationship information registration request information by causing the specific entity terminal to broadcast the relationship information registration request information corresponding to the verification result of the relationship information setting information to the block chain network by sending the information to the specific entity terminal How to obtain.
제4항에 있어서,
상기 블록체인 노드는,
상기 타 엔티티 단말로부터 상기 관계정보 설정 정보가 상기 블록체인 네트워크로 브로드캐스팅되면, (i) 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 퍼블릭 키를 획득하도록 하며, 상기 타 엔티티 퍼블릭 키를 이용하여 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하고, 상기 관계정보 설정 정보가 검증되면 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하거나 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 설정 정보에 대한 검증 결과를 상기 타 엔티티 단말로 전송하여 상기 타 엔티티 단말이 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하게 하도록 하며,
상기 특정 엔티티 단말로부터 상기 관계정보 확인 정보가 상기 블록체인 네트워크로 브로드캐스팅되면, (i) 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키를 획득하도록 하며, 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 관계정보 확인 정보를 복호화하여 특정 엔티티 서명값을 검증하는 방법.
5. The method of claim 4,
The blockchain node is
When the relationship information setting information from the other entity terminal is broadcast to the blockchain network, (i) using the other entity DID to obtain another entity public key corresponding to the other entity DID from the blockchain network, or Obtain the other entity public key from the block chain network using the other entity DID through the identity contract, decrypt the other entity signature value using the other entity public key, and verify the relationship information setting information, When the relation information setting information is verified, the relation information setting information is transmitted to the specific entity terminal or the identity contract transmits the verification result for the relation information setting information to the other entity terminal, so that the other entity terminal is connected to the relationship to transmit information setting information to the specific entity terminal,
When the relationship information confirmation information from the specific entity terminal is broadcast to the block chain network, (i) obtain a specific entity public key corresponding to the specific entity DID from the block chain network using the specific entity DID, or A method of obtaining the specific entity public key from the blockchain network using the specific entity DID through an identity contract, and verifying a specific entity signature value by decrypting the relationship information confirmation information using the specific entity public key .
관계성 탈중앙화 아이디(decentralized identifier, DID) 서비스를 제공하는 블록체인 노드에 있어서,
관계성 DID 서비스를 제공하기 위한 인스트럭션들이 저장된 메모리; 및
상기 메모리에 저장된 인스트럭션들에 따라 상기 관계성 DID 서비스를 제공하기 위한 동작을 수행하는 프로세서;
를 포함하되,
상기 프로세서는, (I) 특정 엔티티 단말로부터 특정 엔티티에 대응되는 특정 엔티티 DID와, 상기 특정 엔티티에 대응되는 상기 특정 엔티티 DID와는 다른 타 엔티티에 대응되는 타 엔티티 DID 사이의 관계를 설정한 관계정보 - 상기 관계정보는 타 엔티티에 의해 설정되었으며, 상기 특정 엔티티에 의해 확인된 것임 - 에 대한 등록을 요청하는 관계정보 등록 요청 정보가 블록체인 네트워크로 브로드캐스팅되면, 상기 관계정보 등록 요청 정보를 검증하거나, 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크에 등록된 아이덴티티 컨트랙트로 전송하여 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 등록 요청 정보를 검증하도록 하는 프로세스, 및 (II) 상기 관계정보 등록 요청 정보가 유효한 것으로 검증되면, 상기 관계정보를 상기 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 상기 블록체인 네트워크에 등록하여 주거나, 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 등록 요청 정보가 유효한 것으로 검증되면 상기 관계정보를 상기 특정 엔티티의 DID 및 상기 타 엔티티의 DID에 매칭하여 상기 블록체인 네트워크에 등록하도록 하는 프로세스를 수행하는 블록체인 노드.
In a blockchain node that provides a relational decentralized identifier (DID) service,
a memory storing instructions for providing a relational DID service; and
a processor that performs an operation for providing the relational DID service according to the instructions stored in the memory;
including,
The processor is configured to: (I) relationship information establishing a relationship between a specific entity DID corresponding to a specific entity from a specific entity terminal and another entity DID corresponding to another entity different from the specific entity DID corresponding to the specific entity - When the relationship information registration request information requesting registration is broadcast to the blockchain network, the relationship information registration request information is verified, A process of sending the relationship information registration request information to the identity contract registered in the blockchain network to cause the identity contract to verify the relationship information registration request information, and (II) verifying that the relationship information registration request information is valid If the relationship information is matched with the DID of the specific entity and the DID of the other entity to be registered in the blockchain network, or if the identity contract is verified that the relationship information registration request information is valid, the relationship information A blockchain node that performs a process of registering in the blockchain network by matching the DID of a specific entity and the DID of the other entity.
제9항에 있어서,
상기 프로세서는, (III) 상기 특정 엔티티 단말로부터의 상기 특정 엔티티 DID를 이용한 상기 타 엔티티 DID에 대한 서비스 요청 정보에 대응하여 서비스 제공 서버로부터 상기 관계정보 요청 정보가 획득되거나, 리졸버 서버로부터 상기 서비스 제공 서버로부터의 DID 문서 요청 정보 - 상기 DID 문서 요청 정보는 특정 엔티티 DID 문서 요청 정보와 타 엔티티 DID 문서 요청 정보 중 적어도 하나를 포함함 - 에 대응한 DID 공개정보 - 상기 DID 공개정보는 특정 엔티티 공개 정보와 타 엔티티 공개 정보 중 적어도 하나를 포함하며, 상기 특정 엔티티 공개 정보는 상기 특정 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 포함하고, 상기 타 엔티티 공개 정보는 상기 타 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함함 - 에 대한 DID 공개정보 요청 정보가 획득되면, 상기 블록체인 노드가, (i) 상기 서비스 제공 서버로부터의 상기 관계정보 요청 정보에 대응하여 상기 특정 엔티티 DID 또는 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 관계정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID 또는 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 관계정보를 획득하도록 하여 상기 관계정보를 상기 서비스 제공 서버로 전송하여 주거나, (ii) 상기 리졸버 서버로부터의 상기 DID 공개정보 요청 정보에 대응하여 상기 특정 엔티티 DID와 상기 타 엔티티 DID 중 적어도 하나를 이용하여 상기 블록체인 네트워크로부터 상기 DID 공개 정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID 중 적어도 하나를 이용하여 상기 블록체인 네트워크로부터 상기 DID 공개정보를 획득하도록 하여 상기 DID 공개정보가 상기 리졸버 서버를 통해 상기 DID 문서로 가공되어 상기 서비스 제공 서버로 전송되도록 함으로써, 상기 서비스 제공 서버로 하여금 상기 블록체인 노드로부터 획득되는 상기 관계정보와 상기 DID 문서로부터 획득되는 상기 관계정보 중 어느 하나를 참조하여 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 확인하도록 하며, 상기 관계 정보를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계가 확인되면 상기 타 엔티티 DID에 대응되는 서비스를 상기 특정 엔티티 단말로 제공하여 주도록 하는 프로세스를 더 수행하는 블록체인 노드.
10. The method of claim 9,
The processor is configured to: (III) obtain the relation information request information from a service providing server in response to service request information for the other entity DID using the specific entity DID from the specific entity terminal, or provide the service from a resolver server DID document request information from the server - The DID document request information includes at least one of specific entity DID document request information and other entity DID document request information - DID disclosure information corresponding to - The DID disclosure information is specific entity disclosure information and other entity public information, wherein the specific entity public information is information registered in the blockchain network in relation to the specific entity DID, and at least the specific entity corresponding to the relationship information and the specific entity DID. a public key, and the other entity public information is information registered in the blockchain network in relation to the other entity DID, and includes at least the relation information and another entity public key corresponding to the other entity DID - When the DID public information request information is obtained, the blockchain node (i) uses the specific entity DID or the other entity DID in response to the relation information request information from the service providing server to the blockchain network to obtain the relationship information from, or to obtain the relationship information from the block chain network using the specific entity DID or the other entity DID through the identity contract, and transmit the relationship information to the service providing server, (ii) obtaining the DID public information from the blockchain network using at least one of the specific entity DID and the other entity DID in response to the DID public information request information from the resolver server, or through the identity contract The blockchain using at least one of the specific entity DID and the other entity DID By obtaining the DID public information from the network so that the DID public information is processed into the DID document through the resolver server and transmitted to the service providing server, the relationship obtained from the block chain node by the service providing server check the relationship between the specific entity DID and the other entity DID by referring to any one of the information and the relationship information obtained from the DID document, and between the specific entity DID and the other entity DID through the relationship information When the relationship is confirmed, the block chain node further performs a process of providing the service corresponding to the other entity DID to the specific entity terminal.
제10항에 있어서,
상기 특정 엔티티 단말로부터의 상기 서비스 요청 정보에는 상기 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키를 이용하여 상기 서비스 요청 정보를 암호화한 특정 엔티티 서명값이 포함되며,
상기 프로세서는, 상기 서비스 제공 서버로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 요청하기 위한 특정 엔티티 퍼블릭 키 요청 정보가 획득되거나, 상기 리졸버 서버로부터 상기 서비스 제공 서버로부터의 상기 특정 엔티티 DID 문서 요청 정보에 대응한 상기 특정 엔티티 공개정보에 대한 특정 엔티티 공개정보 요청 정보가 획득되면, (i) 상기 서비스 제공 서버로부터의 상기 특정 엔티티 퍼블릭 키 요청 정보에 대응하여 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 상기 특정 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키를 획득하도록 하여 상기 특정 엔티티 퍼블릭 키를 상기 서비스 제공 서버로 전송하거나, (ii) 상기 리졸버 서버로부터의 상기 특정 엔티티 공개정보 요청 정보에 대응하여 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 공개정보를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 공개정보를 획득하도록 하여 상기 특정 엔티티 공개정보가 상기 리졸버 서버를 통해 상기 특정 엔티티 DID 문서로 가공되어 상기 서비스 제공 서버로 전송되도록 함으로써, 상기 서비스 제공 서버로 하여금 상기 블록체인 노드로부터 획득한 상기 특정 엔티티 퍼블릭 키 또는 상기 특정 엔티티 DID 문서로부터 획득한 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 특정 엔티티 서명값을 복호화하여 상기 특정 엔티티 서명값을 검증하도록 하며, 상기 특정 엔티티 서명값이 검증되면 상기 관계정보 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 하는 블록체인 노드.
11. The method of claim 10,
The service request information from the specific entity terminal includes a specific entity signature value obtained by encrypting the service request information using a specific entity private key corresponding to the specific entity DID,
The processor is configured to obtain specific entity public key request information for requesting a specific entity public key corresponding to the specific entity DID from the service providing server, or request the specific entity DID document from the service providing server from the resolver server When specific entity public information request information for the specific entity public information corresponding to the information is obtained, (i) the block chain using the specific entity DID in response to the specific entity public key request information from the service providing server Obtain the specific entity public key corresponding to the specific entity DID from a network or obtain the specific entity public key from the blockchain network using the specific entity DID through the identity contract to obtain the specific entity public key transmit to a service providing server, or (ii) obtain the specific entity public information from the blockchain network using the specific entity DID in response to the specific entity public information request information from the resolver server, or through the identity contract By using the specific entity DID to obtain the specific entity public information from the blockchain network, the specific entity public information is processed into the specific entity DID document through the resolver server and transmitted to the service providing server, Let the service providing server verify the specific entity signature value by decrypting the specific entity signature value using the specific entity public key obtained from the block chain node or the specific entity public key obtained from the specific entity DID document and, when the specific entity signature value is verified, a block chain node configured to broadcast the relationship information request information to the block chain network.
제9항에 있어서,
상기 관계정보 등록 요청 정보는 상기 타 엔티티 DID에 대응되는 타 엔티티 단말에서 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 설정한 관계정보 설정 정보와, 상기 특정 엔티티 단말에서 상기 관계정보 설정 정보를 확인한 관계정보 확인 정보를 포함하는 블록체인 노드.
10. The method of claim 9,
The relationship information registration request information includes relationship information setting information for setting a relationship between the specific entity DID and the other entity DID in another entity terminal corresponding to the other entity DID, and the relationship information setting information in the specific entity terminal A blockchain node that contains the verified relationship information verification information.
제12항에 있어서,
상기 관계정보 설정 정보는 상기 특정 엔티티 DID와 상기 타 엔티티 DID 사이의 관계를 설정한 관계정보와, 상기 관계정보를 상기 타 엔티티 DID에 대응되는 타 엔티티 프라이빗 키로 암호화한 타 엔티티 서명값을 포함하고, 상기 관계정보 확인 정보는 상기 관계정보와, 상기 관계정보를 상기 특정 엔티티 DID에 대응되는 특정 엔티티 프라이빗 키로 암호화한 특정 엔티티 서명값을 포함하며,
상기 프로세서는, 상기 특정 엔티티 DID와 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID와 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키와 상기 타 엔티티 퍼블릭 키를 획득하도록 하며, 상기 타 엔티티 퍼블릭 키를 이용하여 상기 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하고, 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 특정 엔티티 서명값을 복호화하여 상기 관계정보 확인 정보를 검증함으로써 상기 관계정보 등록 요청 정보를 검증하도록 하는 블록체인 노드.
13. The method of claim 12,
The relationship information setting information includes relationship information for establishing a relationship between the specific entity DID and the other entity DID, and another entity signature value obtained by encrypting the relationship information with another entity private key corresponding to the other entity DID, The relationship information confirmation information includes the relationship information and a specific entity signature value obtained by encrypting the relationship information with a specific entity private key corresponding to the specific entity DID,
The processor is configured to obtain a specific entity public key corresponding to the specific entity DID and another entity public key corresponding to the other entity DID from the blockchain network using the specific entity DID and the other entity DID, or the identity contract to obtain the specific entity public key and the other entity public key from the blockchain network using the specific entity DID and the other entity DID through to verify the relationship information setting information, decrypt the specific entity signature value using the specific entity public key to verify the relationship information confirmation information, thereby verifying the relationship information registration request information.
제13항에 있어서,
상기 프로세서는, 상기 타 엔티티 단말로부터 전송되는 상기 관계정보 설정 정보에 대응한 상기 특정 엔티티 단말로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키에 대한 타 엔티티 퍼블릭 키 요청 정보가 획득되거나, 리졸버 서버로부터 상기 특정 엔티티 단말로부터의 타 엔티티 DID 문서 요청 정보에 대응한 타 엔티티 공개정보 - 상기 타 엔티티 공개정보는 상기 타 엔티티 DID와 관련하여 상기 블록체인 네트워크에 등록되어 있는 정보로서, 적어도 상기 관계정보와 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 포함함 - 에 대한 타 엔티티 공개정보 요청 정보가 획득되면, (i) 상기 특정 엔티티 단말로부터의 상기 타 엔티티 퍼블릭 키 요청 정보에 대응하여 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 상기 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 퍼블릭 키를 획득하도록 하여 상기 타 엔티티 퍼블릭 키를 상기 특정 엔티티 단말로 전송하여 주거나, (ii) 상기 리졸버 서버로부터의 상기 타 엔티티 공개정보 요청 정보에 대응하여 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 공개정보를 획득하거나, 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 공개정보를 획득하도록 하여 상기 타 엔티티 공개정보가 상기 리졸버 서버를 통해 상기 타 엔티티 DID 문서로 가공되어 상기 특정 엔티티 단말로 전송되도록 함으로써, 상기 특정 엔티티 단말로 하여금 상기 블록체인 노드로부터 전송된 상기 타 엔티티 퍼블릭 키 또는 상기 타 엔티티 DID 문서로부터 획득한 상기 타 엔티티 퍼블릭 키를 이용하여 상기 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하도록 하고, 상기 관계정보 설정 정보가 검증되면 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 하여 상기 관계정보 등록 요청 정보를 획득하는 블록체인 노드.
14. The method of claim 13,
The processor is configured to obtain, from the specific entity terminal corresponding to the relationship information setting information transmitted from the other entity terminal, other entity public key request information for the other entity public key corresponding to the other entity DID, or from a resolver server Other entity public information corresponding to the other entity DID document request information from the specific entity terminal - The other entity public information is information registered in the blockchain network in relation to the other entity DID, at least the relation information and the When the other entity public information request information for - including the other entity public key corresponding to the other entity DID is obtained, (i) the other entity DID is obtained in response to the other entity public key request information from the specific entity terminal to obtain the other entity public key corresponding to the other entity DID from the blockchain network using the Transmitting an entity public key to the specific entity terminal, or (ii) using the other entity DID in response to the other entity public information request information from the resolver server to correspond to the other entity DID from the blockchain network Obtain other entity public information or obtain the other entity public information from the blockchain network using the other entity DID through the identity contract, so that the other entity public information is transmitted through the resolver server to the other entity DID document processed as , and transmitted to the specific entity terminal, so that the specific entity terminal uses the other entity public key transmitted from the block chain node or the other entity public key obtained from the other entity DID document to the other entity Decrypting the signature value to verify the relation information setting information, and setting the relation information When the information is verified, the block chain node obtains the relationship information registration request information by broadcasting the relationship information registration request information to the block chain network.
제13항에 있어서,
상기 프로세서는,
상기 타 엔티티 단말로부터 상기 관계정보 설정 정보가 상기 블록체인 네트워크로 브로드캐스팅되어 상기 관계정보 설정 정보가 획득되면, 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하거나 상기 아이덴티티 컨트랙트를 통해 상기 관계정보 설정 정보가 상기 특정 엔티티 단말로 전송되도록 함으로써, 상기 특정 엔티티 단말로 하여금 상기 관계정보 설정 정보의 검증 결과에 대응한 상기 관계정보 등록 요청 정보를 상기 블록체인 네트워크로 브로드캐스팅하도록 함으로써 상기 관계정보 등록 요청 정보를 획득하는 블록체인 노드.
14. The method of claim 13,
The processor is
When the relation information setting information is obtained by broadcasting the relation information setting information from the other entity terminal to the block chain network, the relation information setting information is transmitted to the specific entity terminal or the relation information setting through the identity contract The relationship information registration request information by causing the specific entity terminal to broadcast the relationship information registration request information corresponding to the verification result of the relationship information setting information to the block chain network by sending the information to the specific entity terminal A blockchain node that acquires
제12항에 있어서,
상기 프로세서는,
상기 타 엔티티 단말로부터 상기 관계정보 설정 정보가 상기 블록체인 네트워크로 브로드캐스팅되면, (i) 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 DID에 대응되는 타 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 타 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 타 엔티티 퍼블릭 키를 획득하도록 하며, 상기 타 엔티티 퍼블릭 키를 이용하여 타 엔티티 서명값을 복호화하여 상기 관계정보 설정 정보를 검증하고, 상기 관계정보 설정 정보가 검증되면 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하거나 상기 아이덴티티 컨트랙트로 하여금 상기 관계정보 설정 정보에 대한 검증 결과를 상기 타 엔티티 단말로 전송하여 상기 타 엔티티 단말이 상기 관계정보 설정 정보를 상기 특정 엔티티 단말로 전송하게 하도록 하며,
상기 특정 엔티티 단말로부터 상기 관계정보 확인 정보가 상기 블록체인 네트워크로 브로드캐스팅되면, (i) 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 DID에 대응되는 특정 엔티티 퍼블릭 키를 획득하거나 상기 아이덴티티 컨트랙트를 통해 상기 특정 엔티티 DID를 이용하여 상기 블록체인 네트워크로부터 상기 특정 엔티티 퍼블릭 키를 획득하도록 하며, 상기 특정 엔티티 퍼블릭 키를 이용하여 상기 관계정보 확인 정보를 복호화하여 특정 엔티티 서명값을 검증하는 블록체인 노드.
13. The method of claim 12,
The processor is
When the relationship information setting information from the other entity terminal is broadcast to the blockchain network, (i) using the other entity DID to obtain another entity public key corresponding to the other entity DID from the blockchain network, or Obtain the other entity public key from the block chain network using the other entity DID through the identity contract, decrypt the other entity signature value using the other entity public key, and verify the relationship information setting information, When the relation information setting information is verified, the relation information setting information is transmitted to the specific entity terminal or the identity contract transmits the verification result for the relation information setting information to the other entity terminal, so that the other entity terminal is connected to the relationship to transmit information setting information to the specific entity terminal,
When the relationship information confirmation information from the specific entity terminal is broadcast to the block chain network, (i) obtain a specific entity public key corresponding to the specific entity DID from the block chain network using the specific entity DID, or A block to obtain the specific entity public key from the blockchain network using the specific entity DID through an identity contract, and to decrypt the relationship information confirmation information using the specific entity public key to verify a specific entity signature value chain node.
KR1020200076079A 2019-07-11 2020-06-22 Method for providing relational decentralized identifier service and blockchain node using them KR102367052B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/KR2020/008923 WO2021006616A1 (en) 2019-07-11 2020-07-08 Method for providing relational decentralized identifier service and blockchain node using the same
US16/925,528 US11366803B2 (en) 2019-07-11 2020-07-10 Method for providing relational decentralized identifier service and blockchain node using the same
KR1020210084361A KR20210084380A (en) 2019-07-11 2021-06-28 Method for providing relational decentralized identifier service and blockchain node using them

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190084088 2019-07-11
KR20190084088 2019-07-11

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210084361A Division KR20210084380A (en) 2019-07-11 2021-06-28 Method for providing relational decentralized identifier service and blockchain node using them

Publications (2)

Publication Number Publication Date
KR20210007844A KR20210007844A (en) 2021-01-20
KR102367052B1 true KR102367052B1 (en) 2022-02-25

Family

ID=74304634

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020200076079A KR102367052B1 (en) 2019-07-11 2020-06-22 Method for providing relational decentralized identifier service and blockchain node using them
KR1020210084361A KR20210084380A (en) 2019-07-11 2021-06-28 Method for providing relational decentralized identifier service and blockchain node using them

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020210084361A KR20210084380A (en) 2019-07-11 2021-06-28 Method for providing relational decentralized identifier service and blockchain node using them

Country Status (1)

Country Link
KR (2) KR102367052B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102465467B1 (en) * 2021-02-22 2022-11-09 주식회사 블록체인기술연구소 The decentralized user data storage and sharing system based on DID
WO2023277556A1 (en) * 2021-06-30 2023-01-05 주식회사 아티프렌즈 System and method for authenticating and identifying personal information by using did

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018160073A (en) * 2017-03-22 2018-10-11 本田技研工業株式会社 Information processing device, program and information processing method
US20190164156A1 (en) * 2017-11-27 2019-05-30 Nok Nok Labs, Inc. Extending a secure key storage for transaction confirmation and cryptocurrency

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018160073A (en) * 2017-03-22 2018-10-11 本田技研工業株式会社 Information processing device, program and information processing method
US20190164156A1 (en) * 2017-11-27 2019-05-30 Nok Nok Labs, Inc. Extending a secure key storage for transaction confirmation and cryptocurrency

Also Published As

Publication number Publication date
KR20210007844A (en) 2021-01-20
KR20210084380A (en) 2021-07-07

Similar Documents

Publication Publication Date Title
CN111970129B (en) Data processing method and device based on block chain and readable storage medium
CN110912707B (en) Block chain-based digital certificate processing method, device, equipment and storage medium
US8589372B2 (en) Method and system for automated document registration with cloud computing
JP6716745B2 (en) Blockchain-based authorization authentication method, terminal and server using this
KR101270323B1 (en) Methods, apparatuses, and computer program products for providing a single service sign-on
US9185146B2 (en) Service providing system
CN111742531B (en) Profile information sharing
CN110263579B (en) Data processing method, system and related equipment
JP6543743B1 (en) Management program
US20200412554A1 (en) Id as service based on blockchain
KR102189554B1 (en) Teriminal apparatus, server apparatus, blockchain and method for fido universal authentication using the same
KR102367052B1 (en) Method for providing relational decentralized identifier service and blockchain node using them
CN112804354B (en) Method and device for data transmission across chains, computer equipment and storage medium
WO2018129753A1 (en) Method and device for downloading subscription information set, and related equipment
CN106453349A (en) An account number login method and apparatus
CN110910110A (en) Data processing method and device and computer storage medium
WO2014169802A1 (en) Terminal, network side device, terminal application control method, and system
CN113474804A (en) Transaction and account verification method, device and storage medium of digital currency
CN113569210A (en) Distributed identity authentication method, equipment access method and device
TW202018525A (en) Authentication system and authentication method
CN105141624A (en) Login method, account management server and client system
JP6783527B2 (en) Electronic key re-registration system, electronic key re-registration method and program
US10515225B2 (en) Method for mutual verifying of data ownership
JP6920614B2 (en) Personal authentication device, personal authentication system, personal authentication program, and personal authentication method
CN117938406A (en) Block chain-based data processing method, equipment and readable storage medium

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant