KR20230080676A - Method and system for managing DID using a high speed block-chain network - Google Patents
Method and system for managing DID using a high speed block-chain network Download PDFInfo
- Publication number
- KR20230080676A KR20230080676A KR1020210168068A KR20210168068A KR20230080676A KR 20230080676 A KR20230080676 A KR 20230080676A KR 1020210168068 A KR1020210168068 A KR 1020210168068A KR 20210168068 A KR20210168068 A KR 20210168068A KR 20230080676 A KR20230080676 A KR 20230080676A
- Authority
- KR
- South Korea
- Prior art keywords
- speed
- data
- user
- speed processing
- cell block
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000012545 processing Methods 0.000 claims abstract description 136
- 238000012795 verification Methods 0.000 claims abstract description 79
- 238000007726 management method Methods 0.000 claims description 17
- 230000006870 function Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000010170 biological method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000036632 reaction speed Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
본 발명은 유무선 네트워크를 통해 상호 연결된 복수의 고속 처리 노드로 구성된 고속 블록체인 네트워크에서의 탈중앙화 아이디(Decentralized Identity, DID)를 관리하기 위한 시스템 및 방법에 관한 것으로서, 이를 위하여 상기 고속 처리 노드는 경우 사용자 단말 내 DID 앱을 통해 DID 등록 요청 메시지가 수신됨에 따라 상기 DID 앱이 설치된 사용자 단말과의 제 1 합의 알고리즘에 수행하여 상기 DID 등록 요청 메시지 내 DID 데이터에 대한 검증을 수행한 후 상기 DID 데이터를 토대로 단위 트랜잭션을 생성하는 단위 트랜잭션 생성 기능과, 기준 시간 마다 상기 복수의 고속 처리 노드 중 적어도 둘 이상 생성된 고속 처리 노드를 선택-선택된 고속 처리 노드를 증거 노드로 함-하며, 상기 증거 노드와의 제 2 합의 알고리즘을 통해 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 검증을 수행하는 검증 기능과, 상기 검증이 완료됨에 따라 상기 기준 시간 동안 생성된 단위 트랜잭션들을 묶어 하나의 셀 블록을 생성하며, 상기 생성한 셀 블록을 상기 고속 블록체인 시스템에 의해 생성된 고속 블록체인에 저장하는 셀 블록 생성 기능과, 상기 고속 블록체인의 각 셀 블록 내 단위 트랜잭션의 전자 서명값을 메인넷 블록체인 시스템에 의해 생성된 메인 블록체인에 저장하는 메인넷 연동 기능을 포함할 수 있다.The present invention relates to a system and method for managing a decentralized identity (DID) in a high-speed blockchain network composed of a plurality of high-speed processing nodes interconnected through wired and wireless networks. As the DID registration request message is received through the DID app in the user terminal, the first agreement algorithm with the user terminal in which the DID app is installed is performed to verify the DID data in the DID registration request message, and then the DID data a unit transaction generation function for generating unit transactions based on a unit transaction generation function, and selecting at least two generated high-speed processing nodes among the plurality of high-speed processing nodes at each reference time - making the selected high-speed processing node an evidence node - and A verification function for performing verification on unit transactions generated during the reference time through a second consensus algorithm, and upon completion of the verification, unit transactions generated during the reference time are bundled to generate one cell block, and the generation A cell block generation function for storing one cell block in the high-speed block chain generated by the high-speed block chain system, and the electronic signature value of the unit transaction in each cell block of the high-speed block chain generated by the mainnet block chain system. It may include a mainnet linkage function that is stored in the main blockchain.
Description
본 발명은 고속 블록체인 네트워크를 이용한 DID 관리 시스템 및 방법에 관한 것이다.The present invention relates to a DID management system and method using a high-speed blockchain network.
일반적으로, 사용자 인증은 사용자 정보를 보관하고 있는 서비스 제공 서버에서 사용자가 등록되어 있는 정당한 사용자인지를 확인하여 사용자를 신뢰할 수 있는지 여부를 확인하는 과정으로, 서비스 제공 서버가 제공하는 서비스에 대한 사용자의 접근권한을 관리하고 불법적인 활동을 감지하는 데에 중요한 역할을 수행한다.In general, user authentication is a process of verifying whether a user can be trusted by checking whether a user is a legitimate user registered in a service providing server that stores user information. It plays an important role in managing access rights and detecting illegal activities.
이러한 사용자 인증을 위한 기술로서, 사용자 아이디와 패스워드 조합을 이용하는 단일 요소 인증 방식, 카드 및 비밀번호 등과 같이 2가지를 조합하여 사용하는 이중 요소 인증 방식, 양측 간에 공유되고 있는 비밀키를 이용하는 공유 비밀키 방식, 및 지문인식이나 홍채인식 등과 같은 생물학적 방식 등이 있다.As technologies for such user authentication, a single factor authentication method using a combination of user ID and password, a two-factor authentication method using a combination of two such as a card and password, and a shared secret key method using a secret key shared between both parties , and biological methods such as fingerprint recognition or iris recognition.
하지만, 종래의 사용자 인증 방식은 여러 서비스 제공 서버에 사용자 정보가 보관되기 때문에 사용자 정보를 소유하고 있는 서버가 많아질수록 서버 해킹에 의한 사용자 정보 유출 위험도 높아진다는 문제점이 있다.However, in the conventional user authentication method, since user information is stored in several service providing servers, the risk of leakage of user information due to server hacking increases as the number of servers possessing user information increases.
또한, 사용자 정보가 여러 서버에 분산되어 있어서 사용자 정보 제공에 대한 이력 관리가 어렵고, 사용자 정보의 변경시 여러 서버에서 일일이 변경해야 하며, 사용자 아이디 도용에 대한 문제도 발생할 수 있다.In addition, since user information is distributed in several servers, it is difficult to manage the history of providing user information, and when user information is changed, it must be changed one by one in several servers, and a problem with user ID theft may also occur.
이에 더하여, 각각의 서버마다 아이디와 비밀번호를 별도로 모두 기억해야 하는 불편함이 있고, 각 서비스 제공자의 서비스에 가입 시마다 사용자 정보를 반복해서 입력하여야 하는 번거로움이 있다.In addition, it is inconvenient to separately remember IDs and passwords for each server, and it is inconvenient to repeatedly input user information whenever subscribing to a service of each service provider.
한편, 최근에는 서버를 이용한 중앙 집중 방식의 문제점을 해결하기 위하여 보안성과 안정성이 확보된 블록체인 네트워크 기술을 활용하여 정보를 관리하는 방안이 대두되고 있다.On the other hand, recently, in order to solve the problem of the centralized method using a server, a method of managing information by using a block chain network technology with security and stability has emerged.
본 발명은 복수의 고속 처리 노드들로 구성되어 고속 블록체인을 생성함과 더불어 복수의 메인넷 노드들로 구성된 메인넷 블록체인 시스템과 연동되는 고속 블록체인 네트워크를 이용하여 탈중앙화 아이디(이하, 'DID'라고 함)와 관련된 데이터를 관리할 수 있는 고속 블록체인을 이용한 DID 관리 시스템 및 방법을 제공한다.The present invention is composed of a plurality of high-speed processing nodes to create a high-speed blockchain and uses a high-speed blockchain network linked with a mainnet blockchain system composed of a plurality of mainnet nodes to create a decentralized ID (hereinafter, ' It provides a DID management system and method using a high-speed blockchain that can manage data related to DID').
본 발명이 해결하고자 하는 과제는 상기에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재들로부터 본 발명이 속하는 통상의 지식을 가진 자에 의해 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to those mentioned above, and other problems to be solved that are not mentioned can be clearly understood by those skilled in the art from the description below. will be.
상술한 해결하고자 하는 과제를 해결하기 위해서 본 발명의 실시예에 따른 고속 블록체인 네트워크를 이용한 DID 관리 시스템은 유무선 네트워크를 통해 상호 연결된 복수의 고속 처리 노드로 구성된 고속 블록체인 네트워크에서의 탈중앙화 아이디(Decentralized Identity, DID)를 관리하기 위한 시스템으로서, 상기 고속 처리 노드는 사용자 단말 내 DID 앱을 통해 DID 등록 요청 메시지가 수신됨에 따라 상기 DID 앱이 설치된 사용자 단말과의 제 1 합의 알고리즘에 수행하여 상기 DID 등록 요청 메시지 내 DID 데이터에 대한 검증을 수행한 후 상기 DID 데이터를 토대로 단위 트랜잭션을 생성하는 단위 트랜잭션 생성 기능과, 기준 시간 마다 상기 복수의 고속 처리 노드 중 적어도 둘 이상 생성된 고속 처리 노드를 선택-선택된 고속 처리 노드를 증거 노드로 함-하며, 상기 증거 노드와의 제 2 합의 알고리즘을 통해 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 검증을 수행하는 검증 기능과, 상기 검증이 완료됨에 따라 상기 기준 시간 동안 생성된 단위 트랜잭션들을 묶어 하나의 셀 블록을 생성하며, 상기 생성한 셀 블록을 상기 고속 블록체인 시스템에 의해 생성된 고속 블록체인에 저장하는 셀 블록 생성 기능과, 상기 고속 블록체인의 각 셀 블록 내 단위 트랜잭션의 전자 서명값을 메인넷 블록체인 시스템에 의해 생성된 메인 블록체인에 저장하는 메인넷 연동 기능을 포함할 수 있다.In order to solve the above-described problem to be solved, a DID management system using a high-speed blockchain network according to an embodiment of the present invention is a decentralized ID in a high-speed blockchain network composed of a plurality of high-speed processing nodes interconnected through wired and wireless networks As a system for managing decentralized identity (DID), the high-speed processing node, upon receiving a DID registration request message through a DID app in a user terminal, performs a first consensus algorithm with a user terminal in which the DID app is installed to perform the DID After verifying the DID data in the registration request message, a unit transaction generation function for generating a unit transaction based on the DID data, and selecting at least two generated high-speed processing nodes among the plurality of high-speed processing nodes at each reference time- A verification function that uses a selected high-speed processing node as an evidence node and performs verification of unit transactions generated during the reference time through a second agreement algorithm with the evidence node; and, as the verification is completed, the reference time A cell block generation function for generating one cell block by bundling unit transactions generated during the process and storing the generated cell block in the high-speed block chain created by the high-speed block chain system; and each cell block of the high-speed block chain. It may include a mainnet interworking function that stores the electronic signature value of my unit transaction in the main blockchain created by the mainnet blockchain system.
본 발명의 실시예에 따르면, 상기 DID 등록 요청 메시지는 상기 DID 데이터 및 사용자 개인키로 암호화된 상기 DID 데이터의 전자 서명값을 포함하며, 상기 제 1 합의 알고리즘은 상기 DID 데이터를 이용하여 상기 DID 데이터의 전자 서명값을 계산하고, 상기 DID 데이터의 전자 서명값을 사용자 공개키로 복호화한 후 상기 계산한 전자 서명값과 상기 복호화한 전자 서명값간의 비교를 통해 상기 DID 데이터를 검증할 수 있다.According to an embodiment of the present invention, the DID registration request message includes the DID data and an electronic signature value of the DID data encrypted with a user's private key, and the first consensus algorithm uses the DID data to obtain the DID data. After calculating the electronic signature value and decrypting the electronic signature value of the DID data with the user public key, the DID data can be verified by comparing the calculated electronic signature value with the decrypted electronic signature value.
본 발명의 실시예에 따르면, 상기 셀 블록을 생성하고자 하는 고속 처리 노드는 상기 선택한 증거 노드 각각에 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 셀 블록 생성용 데이터와 상기 셀 블록을 생성하고자 하는 고속 처리 노드의 사용자 개인키로 상기 셀 블록 생성용 데이터의 전자 서명값을 암호화하여 전송하며, 상기 제 2 합의 알고리즘은 상기 선택한 증거 노드 각각에서 상기 셀 블록 생성용 데이터에 대한 전자 서명값을 계산하며, 상기 셀 블록을 생성하고자 하는 고속 처리 노드의 사용자 공개키를 이용하여 상기 암호화된 상기 셀 블록 생성용 데이터의 전자 서명값을 복호화한 후 상기 계산한 전자 서명값과 상기 복호화한 전자 서명값간의 비교를 통해 상기 셀 블록 생성용 데이터에 대한 검증을 수행할 수 있다.According to an embodiment of the present invention, the high-speed processing node that wants to generate the cell block provides data for cell block generation for unit transactions generated during the reference time to each of the selected evidence nodes and high-speed processing that wants to generate the cell block. The electronic signature value of the cell block generation data is encrypted and transmitted with the user's private key of the node, and the second consensus algorithm calculates the electronic signature value of the cell block generation data in each of the selected evidence nodes, and the cell block generation data is encrypted and transmitted. After decrypting the electronic signature value of the encrypted cell block generation data using the public key of the user of the high-speed processing node to generate the block, the calculated electronic signature value and the decrypted electronic signature value are compared to Verification of cell block generation data may be performed.
본 발명의 실시예에 따르면, 상기 DID 데이터는 상기 DID를 인증하기 위한 정보 및 상기 DID와 상호 작용하는 서비스들의 리스트를 포함하며, 상기 사용자 단말에는 상기 DID 앱에 의해 액세스 가능하며, 소정의 발급 서버로부터 발급받으며 사용자의 신원을 증명할 수 있는 VC 정보가 암호화되어 저장된 암호화 전자 지갑을 구비할 수 있다.According to an embodiment of the present invention, the DID data includes information for authenticating the DID and a list of services interacting with the DID, accessible to the user terminal by the DID app, and a predetermined issuing server. It is issued from and may have an encrypted electronic wallet in which VC information that can prove the user's identity is encrypted and stored.
본 발명의 실시예에 따르면, 상기 고속 처리 노드는 소정의 발급 서버로부터 발급받고 사용자의 신원을 증명할 수 있는 VC 정보에 대한 등록 요청이 상기 사용자의 DID를 이용하여 수신되는 경우 상기 사용자의 DID를 이용하여 상기 고속 블록체인 시스템에서 사용자 공개키를 획득하며, 상기 사용자 공개키와 상기 VC 정보를 상기 고속 블록체인 시스템에서 마스터로 동작하는 마스터 고속 처리 노드에 전송하며, 상기 마스터 고속 처리 노드는 자신의 식별키와 상기 전송받은 사용자 공개키로 이루어진 암호키를 생성한 후 이를 이용하여 상기 VC 정보를 암호화하여 보안 스토리지에 저장할 수 있다.According to an embodiment of the present invention, the high-speed processing node uses the user's DID when a registration request for VC information issued by a predetermined issuing server and capable of proving the user's identity is received using the user's DID. to obtain a user public key in the high-speed blockchain system, transmit the user public key and the VC information to a master high-speed processing node operating as a master in the high-speed blockchain system, and the master high-speed processing node identifies itself After generating an encryption key composed of a key and the transmitted user public key, the VC information may be encrypted and stored in a secure storage using the encryption key.
상술한 해결하고자 하는 과제를 해결하기 위해서 본 발명의 실시예에 따른 고속 블록체인 네트워크를 이용한 DID 관리 방법은 유무선 네트워크를 통해 상호 연결된 복수의 고속 처리 노드로 구성된 고속 블록체인 네트워크에서의 탈중앙화 아이디(Decentralized Identity, DID)를 관리하기 위한 방법으로서, 상기 고속 처리 노드에서 사용자 단말 내 DID 앱을 통해 DID 등록 요청 메시지를 수신하는 단계와, 상기 DID 앱이 설치된 사용자 단말과의 제 1 합의 알고리즘에 수행하여 상기 DID 등록 요청 메시지 내 DID 데이터에 대한 검증을 수행한 후 상기 DID 데이터를 토대로 단위 트랜잭션을 생성하는 단계와, 기준 시간 마다 상기 복수의 고속 처리 노드 중 적어도 둘 이상 생성된 고속 처리 노드를 선택-선택된 고속 처리 노드를 증거 노드로 함-하며, 상기 증거 노드와의 제 2 합의 알고리즘을 통해 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 검증을 수행하는 단계와, 상기 검증이 완료됨에 따라 상기 기준 시간 동안 생성된 단위 트랜잭션들을 묶어 하나의 셀 블록을 생성하며, 상기 생성한 셀 블록을 상기 고속 블록체인 시스템에 의해 생성된 고속 블록체인에 저장하는 단계와, 상기 고속 블록체인의 각 셀 블록 내 단위 트랜잭션의 전자 서명값을 메인넷 블록체인 시스템에 의해 생성된 메인 블록체인에 저장하는 단계를 포함할 수 있다.In order to solve the above-described problem to be solved, a DID management method using a high-speed blockchain network according to an embodiment of the present invention is a decentralized ID in a high-speed blockchain network composed of a plurality of high-speed processing nodes interconnected through wired and wireless networks ( As a method for managing decentralized identity (DID), the high-speed processing node receives a DID registration request message through a DID app in a user terminal, and performs a first agreement algorithm with a user terminal in which the DID app is installed After verifying the DID data in the DID registration request message, generating a unit transaction based on the DID data, and selecting at least two generated high-speed processing nodes among the plurality of high-speed processing nodes at each reference time-selected A high-speed processing node as an evidence node, and performing verification on unit transactions generated during the reference time through a second agreement algorithm with the evidence node, and generating during the reference time as the verification is completed. generating a single cell block by bundling the unit transactions, and storing the generated cell block in a high-speed block chain generated by the high-speed block chain system; It may include storing the signature value in the main blockchain generated by the mainnet blockchain system.
본 발명의 실시예에 따르면, 상기 수신하는 단계는 상기 DID 데이터 및 사용자 개인키로 암호화된 상기 DID 데이터의 전자 서명값을 포함하는 DID 등록 요청 메시지를 수신하며, 상기 제 1 합의 알고리즘은 상기 DID 데이터를 이용하여 상기 DID 데이터의 전자 서명값을 계산하고, 상기 DID 데이터의 전자 서명값을 사용자 공개키로 복호화하며, 상기 계산한 전자 서명값과 상기 복호화한 전자 서명값간의 비교를 통해 상기 DID 데이터를 검증을 통해 상기 사용자 단말과의 합의를 수행할 수 있다.According to an embodiment of the present invention, the receiving step receives a DID registration request message including the DID data and an electronic signature value of the DID data encrypted with a user private key, and the first consensus algorithm receives the DID data to calculate the electronic signature value of the DID data, decrypt the electronic signature value of the DID data with the user public key, and verify the DID data through comparison between the calculated electronic signature value and the decrypted electronic signature value. Through this, it is possible to perform an agreement with the user terminal.
본 발명의 실시예에 따르면, 상기 검증을 수행하는 단계는 상기 선택한 증거 노드 각각에 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 셀 블록 생성용 데이터와 상기 셀 블록을 생성하고자 하는 고속 처리 노드의 사용자 개인키로 암호화된 상기 셀 블록 생성용 데이터의 전자 서명값을 전송하는 단계를 더 포함하며, 상기 제 2 합의 알고리즘은 상기 선택한 증거 노드 각각에서 상기 셀 블록 생성용 데이터에 대한 전자 서명값을 계산하며, 상기 셀 블록을 생성하고자 하는 고속 처리 노드의 사용자 공개키를 이용하여 상기 암호화된 상기 셀 블록 생성용 데이터의 전자 서명값을 복호화하며, 상기 계산한 전자 서명값과 상기 복호화한 전자 서명값간의 비교를 통해 상기 셀 블록 생성용 데이터에 대한 검증을 수행할 수 있다.According to an embodiment of the present invention, the step of performing the verification may include data for generating a cell block for unit transactions generated during the reference time in each of the selected evidence nodes and individual users of high-speed processing nodes who want to generate the cell block. and transmitting an electronic signature value of the cell block generation data encrypted with a key, wherein the second consensus algorithm calculates an electronic signature value of the cell block generation data at each of the selected proof nodes, The encrypted electronic signature value of the cell block generation data is decrypted using the user public key of the high-speed processing node to generate the cell block, and the calculated electronic signature value is compared with the decrypted electronic signature value. Verification of the cell block generation data may be performed.
본 발명의 실시예에 따르면, DID 관리 방법은 상기 고속 처리 노드에서 소정의 발급 서버로부터 발급받고 사용자의 신원을 증명할 수 있는 VC 정보에 대한 등록 요청을 수신하는 단계와, 상기 등록 요청한 사용자의 DID를 이용하여 상기 고속 블록체인 시스템에서 사용자 공개키를 획득하는 단계와, 상기 사용자 공개키와 상기 VC 정보를 상기 고속 블록체인 시스템에서 마스터로 동작하는 마스터 고속 처리 노드에 전송하는 단계와, 상기 마스터 고속 처리 노드에서 자신의 식별키와 상기 전송받은 사용자 공개키로 이루어진 암호키를 생성한 후 이를 이용하여 상기 VC 정보를 암호화하여 보안 스토리지에 저장하는 단계를 더 포함할 수 있다.According to an embodiment of the present invention, the DID management method includes the steps of receiving a registration request for VC information issued from a predetermined issuing server at the high-speed processing node and capable of proving the user's identity, and the DID of the user requesting the registration. obtaining a user public key in the high-speed blockchain system using the high-speed blockchain system, transmitting the user public key and the VC information to a master high-speed processing node operating as a master in the high-speed blockchain system, and the master high-speed processing node. The method may further include generating an encryption key composed of its own identification key and the received user public key at the node, encrypting the VC information using the encryption key, and storing the encrypted VC information in a secure storage.
전술한 본 발명의 과제 해결 수단에 따르면, 복수의 고속 처리 노드들로 구성되어 고속 블록체인을 생성함과 더불어 복수의 메인넷 노드들로 구성된 메인넷 블록체인 시스템과 연동되는 고속 블록체인 네트워크를 이용하여 DID와 관련된 데이터를 관리할 수 있는 고속 블록체인 네트워크를 이용한 DID 관리 시스템 및 방법을 제공함으로써, 반응속도와 신뢰성을 향상을 통해 DID 관련 신원 증명 서비스를 활성화시킬 수 있다.According to the above-described problem solving means of the present invention, a high-speed blockchain network composed of a plurality of high-speed processing nodes is created and a high-speed blockchain network linked with a mainnet blockchain system composed of a plurality of mainnet nodes is used. By providing a DID management system and method using a high-speed blockchain network that can manage DID-related data, it is possible to activate DID-related identity verification services by improving reaction speed and reliability.
도 1은 본 발명의 실시예에 따른 DID를 관리하기 위한 고속 블록체인 네트워크의 구조를 도시한 도면이다.
도 2는 본 발명의 실시예에 따른 고속 블록체인 네트워크에서의 고속 처리 노드의 기능을 도시한 블록도이다.
도 3은 본 발명의 실시예에 따른 고속 블록체인 네트워크에서의 마스터 고속 처리 노드의 기능을 도시한 블록도이다.
도 4는 본 발명의 일 실시예에 따른 고속 블록체인 네트워크를 이용하여 DID 데이터를 등록하는 과정을 도시한 흐름도이다.
도 5는 본 발명의 실시예에 따른 고속 블록체인 네트워크를 이용하여 VC 정보를 등록하는 과정을 도시한 흐름도이다.
도 6은 본 발명의 실시예에 따른 고속 블록체인 네트워크를 이용하여 VP 정보를 획득하여 신원을 증명하는 과정을 도시한 흐름도이다.1 is a diagram showing the structure of a high-speed blockchain network for managing DID according to an embodiment of the present invention.
2 is a block diagram illustrating the function of a high-speed processing node in a high-speed blockchain network according to an embodiment of the present invention.
3 is a block diagram illustrating the functions of a master high-speed processing node in a high-speed blockchain network according to an embodiment of the present invention.
4 is a flowchart illustrating a process of registering DID data using a high-speed blockchain network according to an embodiment of the present invention.
5 is a flowchart illustrating a process of registering VC information using a high-speed blockchain network according to an embodiment of the present invention.
6 is a flowchart illustrating a process of proving an identity by obtaining VP information using a high-speed blockchain network according to an embodiment of the present invention.
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The detailed descriptions that follow are provided to provide a comprehensive understanding of the methods, devices and/or systems described herein. However, this is only an example and the present invention is not limited thereto.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.In describing the embodiments of the present invention, if it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted. In addition, terms to be described later are terms defined in consideration of functions in the present invention, which may vary according to the intention or custom of a user or operator. Therefore, the definition should be made based on the contents throughout this specification. Terminology used in the detailed description is only for describing the embodiments of the present invention and should in no way be limiting. Unless expressly used otherwise, singular forms of expression include plural forms. In this description, expressions such as "comprising" or "comprising" are intended to indicate any characteristic, number, step, operation, element, portion or combination thereof, one or more other than those described. It should not be construed to exclude the existence or possibility of any other feature, number, step, operation, element, part or combination thereof.
이하, 첨부된 도면을 참조하여 탈중앙화 아이디(이하, 'DID'라고 함) 관리를 위한 고속 블록체인 네트워크 시스템에 대해 설명하기로 한다.Hereinafter, a high-speed blockchain network system for decentralized ID (hereinafter referred to as 'DID') management will be described with reference to the accompanying drawings.
도 1은 본 발명의 실시예에 따른 DID를 관리하기 위한 고속 블록체인 네트워크의 구조를 도시한 도면이며, 도 2는 본 발명의 실시예에 따른 고속 블록체인 네트워크에서의 고속 처리 노드의 기능을 도시한 블록도이며, 도 3은 본 발명의 실시예에 따른 고속 블록체인 네트워크에서의 마스터 고속 처리 노드의 기능을 도시한 블록도이다.1 is a diagram showing the structure of a high-speed blockchain network for managing DID according to an embodiment of the present invention, and FIG. 2 shows the function of a high-speed processing node in a high-speed blockchain network according to an embodiment of the present invention. 3 is a block diagram showing the functions of a master high-speed processing node in a high-speed blockchain network according to an embodiment of the present invention.
도 1에 도시된 바와 같이, 고속 블록체인 네트워크(10)는 복수의 사용자 단말(100), 복수의 고속 처리 노드(110)들로 구성된 고속 블록체인 시스템(120) 및 복수의 메인넷 노드(130)들로 구성된 메인넷 블록체인 시스템(140) 등을 포함할 수 있다.As shown in FIG. 1, the high-speed blockchain network 10 includes a plurality of
본 발명의 실시예에서, 사용자 단말(100)은 DID 앱(105)을 통해 DID 데이터를 생성한 후 이를 고속 블록체인 시스템(120)에 전송하여 등록시킬 수 있다. 구체적으로, 사용자 단말(100)은 DID 앱(105)을 통해 DID 데이터를 생성한 후 이를 고속 블록체인 시스템(120)에 전송하여 등록함과 더불어 고속 블록체인 시스템(120)과 연동되는 메인넷 블록체인 시스템(140)에 등록할 수 있다.In an embodiment of the present invention, the
여기에서, 고속 블록체인 시스템(120)에 DID 데이터의 등록은 DID 데이터를 이용하여 생성된 단위 트랜잭션으로 구성된 셀 블록을 고속 블록체인 시스템(120)에 의해 생성되어 관리되는 고속 블록체인에 연결시켜 저장하는 것을 의미하며, 메인넷 블록체인 시스템(140)에 대한 등록은 고속 블록체인을 구성하는 셀 블록에 포함된 단위 트랜잭션에 대한 해시값을 메인 블록체인에 저장하는 것을 의미할 수 있다.Here, the registration of DID data in the high-
본 발명의 실시예에서, DID 데이터는 아이디, 아이디와 관련된 공개키, 인증 정보, 서비스 등의 정보를 포함할 수 있다. 여기에서, 아이디는 DID 데이터가 설명하기 위한 것이고, 인증 정보는 DID 데이터 내 아이디의 소유권을 증명하기 위한 정보, 예컨대 DID 데이터에 정의된 공개키 중 어느 공개키로 아이디를 인증할 수 있다는 정보이며, 서비스는 DID 데이터 내 아이디와 상호 작용이 가능한 서비스들의 리스트를 의미할 수 있다.In an embodiment of the present invention, DID data may include information such as ID, public key related to ID, authentication information, and service. Here, the ID is for description of the DID data, and the authentication information is information for proving the ownership of the ID in the DID data, for example, information that the ID can be authenticated with any public key among the public keys defined in the DID data, and the service may mean a list of services that can interact with the ID in the DID data.
한편, DID 앱(105)은 사용자 단말(100)에 실행 가능한 형태로 저장된 암호화 전자 지갑(107)에 저장된 메타 데이터, 즉 검증 가능한 자격증명(Verifiable Credential) 정보(이하, 'VC 정보'라고 함)에 액세스 가능하며, 메타 데이터 중 증명하고 싶은 정보(이하, 'VP(Verifiable Presentation : 증명 제시) 정보'라고 함)를 고속 블록체인 시스템(120)에 전송하여 증명을 요청할 수 있다.On the other hand, the
여기에서, VC는 사용자 신원 증명 및 확인을 위한 정보를 발급하기 위한 기관에 의해 관리되는 서버, 즉 발급 서버(160)로부터 발급될 수 있다.Here, the VC may be issued from a server managed by an organization for issuing information for user identification and confirmation, that is, the issuing server 160 .
본 발명의 실시예에서 VC 정보는 발급자 정보, 자격 정보들, 발급자 서명(proof) 등을 포함할 수 있으며, 암호화된 형태로 암호화 전자 지갑(107)에 저장될 수 있다. 여기에서, 발급자 정보는 발급자의 아이디, 이름 등을 포함하며, 자격 정보들은 신원에 대한 정보로서, 이름, 나이, 학위 등의 정보뿐만 아니라 부모, 친구와의 관계 정보 등을 포함할 수 있으며, 발급자 서명은 발급 정보를 증명하기 위한 발급자의 서명 등을 포함할 수 있다.In an embodiment of the present invention, VC information may include issuer information, qualification information, issuer signature (proof), and the like, and may be stored in the encrypted
VP 정보는 신원 증명을 요청한 단말, 즉 신원 증명 요청측 기기(180)에 제공되는 정보로서, 사용자 단말(100) 내 DID 앱(105)을 통해 제공될 수 있다. 즉, 본 발명의 실시예에 따른 DID 앱(105)은 암호화 전자 지갑(107)에 저장된 VC 정보 중 증명하고자 하는 정보만을 모아서 암호화한 후 이를 신원 증명 요청측 기기(180)에 전송할 수 있다.VP information is information provided to the terminal requesting identity verification, that is, the identity
이 경우, 사용자 단말(100)은 사용자 개인키를 이용하여 VP 정보를 암호화한 후 이를 신원 증명 요청측 기기(180)에 전송할 수 있다. 이에 따라, 신원 증명 요청측 단말(180)은 고속 블록체인 시스템(120)과의 연동을 통해 사용자 개인키에 대한 사용자 공개키를 획득하며, 획득한 사용자 공개키를 이용하여 암호화된 VP 정보를 복호화하여 VP 정보를 획득할 수 있다.In this case, the
신원 증명 요청측 기기(180)는 사용자에 대한 신원 증명을 위해 고속 블록체인 시스템(120)으로부터 사용자 개인키에 대응되는 사용자 공개키를 제공받으며, 제공받은 사용자 공개키를 이용하여 VP 정보를 복호화한 후 이를 기반으로 사용자의 신원을 증명할 수 있다.The identity
본 발명의 실시예에서 DID 데이터의 등록은 고속 블록체인 시스템(120)을 통해 이루어질 수 있다.In an embodiment of the present invention, registration of DID data can be made through the high-
즉, 고속 블록체인 시스템(120)을 구성하는 복수의 고속 처리 노드(110) 중 어느 하나는 사용자 단말(100) 내 DID 앱(105)을 통해 DID 발급 요청 메시지를 수신하며, DID 앱(105)이 설치된 사용자 단말(100)과의 제 1 합의 알고리즘에 수행하여 DID 발급 요청 메시지 내 DID 데이터에 대한 검증을 수행한 후 DID 데이터를 토대로 단위 트랜잭션을 생성할 수 있다. 이때, 단위 트랜잭션은 고속 처리 노드(110)에 의해 스토리지(112)에 저장될 수 있다.That is, any one of the plurality of high-
제 1 합의 알고리즘을 수행을 위해 사용자 단말(100)은 DID 앱(105)을 통해 DID 데이터 및 사용자 개인키로 암호화된 DID 데이터의 전자 서명값(예컨대 해시값)을 포함한 DID 발급 요청 메시지를 전송할 수 있다.To perform the first consensus algorithm, the
이에 따라, 고속 처리 노드(110)는 DID 데이터를 이용하여 DID 데이터의 전자 서명값을 계산하고, DID 데이터의 전자 서명값을 사용자 공개키로 복호화한 후 계산한 전자 서명값과 복호화한 전자 서명값간의 비교를 통해 DID 데이터를 검증하는 방식으로 사용자 단말(100)과의 제 1 합의 알고리즘을 수행할 수 있다.Accordingly, the high-
한편, 고속 처리 노드(110)는 기준 시간 마다 기준 시간 동안 생성된 단위 트랜잭션을 토대로 셀 블록을 생성한 후 이를 고속 블록체인의 끝단에 연결시켜 고속 블록체인에 저장시킬 수 있다. 이를 위하여, 고속 처리 노드(110)는 복수의 고속 처리 노드(110) 중 적어도 둘 이상 생성된 고속 처리 노드(110)를 선택-선택된 고속 처리 노드를 증거 노드로 함-하며, 증거 노드와의 제 2 합의 알고리즘을 통해 기준 시간 동안 생성된 단위 트랜잭션에 대한 검증을 수행할 수 있다. 이때, 단위 트랜잭션에 대한 검증을 수행하기 위한 고속 처리 노드(110)는 선택한 증거 노드 각각에 기준 시간 동안 생성된 단위 트랜잭션에 대한 셀 블록 생성용 데이터와 자신의 사용자자 개인키로 암호화된 셀 블록 생성용 데이터의 전자 서명값(예컨대, 해시값)을 전송할 수 있다. 이에 따라, 선택한 증거 노드 각각에서는 셀 블록 생성용 데이터에 대한 전자 서명값을 계산하며, 셀 블록을 생성하고자 하는 고속 처리 노드(110)의 사용자 공개키를 이용하여 암호화된 셀 블록 생성용 데이터의 전자 서명값을 복호화한 후 계산한 전자 서명값과 복호화한 전자 서명값간의 비교를 통해 셀 블록 생성용 데이터에 대한 검증을 통해 제 2 합의 알고리즘을 수행할 수 있다.On the other hand, the high-
고속 처리 노드(110)는 검증이 완료됨에 따라 기준 시간 동안 생성된 단위 트랜잭션들을 묶어 하나의 셀 블록을 생성하며, 생성한 셀 블록을 고속 블록체인 시스템(120)에 의해 생성되어 관리되는 고속 블록체인에 저장, 예컨대 고속 블록체인의 끝단에 셀 블록을 연결시키는 방식으로 고속 블록체인에 저장할 수 있다.Upon completion of verification, the high-
한편, 고속 처리 노드(110)는 고속 블록체인의 각 셀 블록 내 단위 트랜잭션의 전자 서명값을 메인넷 블록체인 시스템(140)에 의해 생성된 메인 블록체인에 저장할 수 있다. 이 경우, 고속 처리 노드(110)는 고속 블록체인 시스템(120)을 구성하는 고속 처리 노드(110)의 개수에 따라 합의 방식을 선택할 수 있다. 구체적으로, 고속 처리 노드(110)은 고속 블록체인 시스템(120)을 구성하는 고속 처리 노드(110)의 수가 기 설정된 임계 노드 수보다 작은 경우 작업 증명 방식(PoW : Proof of Work)을 이용하고, 그렇지 않을 경우 지분 증명 방식(PoS)을 이용하여 제 3 합의 알고리즘을 수행하며, 제 3 합의 알고리즘에 의해 합의가 완료됨에 따라 메인넷 블록체인 시스템(140)에 의해 생성된 블록체인 상에 연결될 블록을 생성할 수 있다.Meanwhile, the high-
즉, 고속 처리 노드(110)는 작업 증명 방식 또는 지분 증명 방식을 통해 선택된 고속 처리 노드(110)들간의 제 3 합의 알고리즘을 통해 합의를 수행한 후 이를 토대로 블록을 생성할 수 있다. 여기에서, 제 3 합의 알고리즘은 이중 합의 알고리즘으로서, 블록을 생성하기 위한 데이터(즉, 단위 트랜잭션 내 전자 서명값)과 고속 처리 노드(110)에 의해 관리되는 사용자 개인키를 이용하여 암호화된 데이터의 전자 서명값을 선택된 고속 처리 노드(110)들에게 전송하는 방법으로 선택된 고속 처리 노드(110)들과의 합의를 수행하는 것을 의미할 수 있다. 이 경우, 선택된 고속 처리 노드(110) 각각은 데이터에 대한 전자 서명값을 산출하며, 산출한 전자 서명값과 사용자 공개키를 이용하여 복호화된 데이터의 전자 서명값간의 비교를 통해 데이터의 검증을 수행할 수 있다. That is, the high-
사용자 단말(100)은 DID 앱(105)을 통해 발급 서버(160)로부터 VC 정보를 발급받아 암호화 전자 지갑(107)에 저장하여 관리할 수 있다.The
한편, 사용자 단말(100)은 DID 앱(105)을 통해 발급 서버(160)로부터 발급받은 VC 정보를 고속 블록체인 시스템(120)을 구성하는 복수의 고속 처리 노드(110) 중 어느 하나의 노드(이하, '마스터 고속 처리 노드'라고 함)에 등록시킬 수 있다. 여기에서, 마스터 고속 처리 노드는 고속 블록체인 시스템(120) 내 복수의 고속 처리 노드(110)들을 관리하기 위한 것으로서, 고속 블록체인 시스템(120)에 대한 노드 추가, 노드 삭제 등을 수행할 수 있을 뿐만 아니라 VC 정보를 저장하기 위한 보안 스토리지(125)를 관리할 수 있다.On the other hand, the
마스터 고속 처리 노드는 사용자 단말(100)의 DID 앱(105)을 통한 VC 등록 요청이 수신됨에 따라 고속 블록체인 상에 저장된 DID 데이터를 토대로 사용자에 대한 검증을 수행하며, 사용자에 대한 검증이 완료됨에 따라 검증 시 이용되는 사용자 공개키와 마스터 고속 처리 노드의 고유 식별키(예컨대 마스터 고속 처리 노드에 의해 관리되는 사용자 개인키)의 조합을 통해 암호키를 생성한 후 이를 이용하여 VP 정보를 암호화하여 보안 스토리지(125)에 저장할 수 있다.As the master high-speed processing node receives a VC registration request through the DID
본 발명의 실시예에서 DID 앱(105)을 통한 VC 등록 요청은 복수의 고속 처리 노드(110)를 통해 수신되어 마스터 고속 처리 노드에 전달될 수 있다.In an embodiment of the present invention, a VC registration request through the DID
상술한 바와 같이, 마스터 고속 처리 노드에 의해 VC 정보가 관리되는 경우, 사용자 단말(100)의 DID 앱(105)을 통해 신원 증명에 필요한 정보(이하, '신원 증명 필요 정보'라고 함)가 고속 블록체인 시스템(120)의 어느 하나의 고속 처리 노드(110)에 수신될 수 있다. 이때, 신원 증명 필요 정보는 신원 증명 요청측 기기(180)로부터 신원 증명 요청에 따라 생성될 수 있다. As described above, when the VC information is managed by the master high-speed processing node, information necessary for identity verification (hereinafter referred to as 'identity verification required information') is provided through the DID
이 경우, 사용자 단말(100)은 DID 앱(105)을 통해 신원 증명 필요 정보, 사용자 개인키로 암호화된 서명 확인값 및 사용자의 DID를 포함할 수 있다. 이에 따라, 어느 하나의 고속 처리 노드(110)는 사용자의 DID를 이용하여 고속 블록체인 시스템(120)에서 사용자 개인키에 대응되는 사용자 공개키를 획득하며, 획득한 사용자 공개키를 이용하여 암호화된 서명 확인값에 대한 확인을 수행한 후 획득한 사용자 공개키와 신원 증명 필요 정보를 마스터 고속 처리 노드에 전송하며, 이에 대한 응답으로 VP 정보를 수신하여 사용자 단말(100)에 제공할 수 있다. 이때, 마스터 고속 처리 노드는 사용자 공개키와 자신의 식별키의 조합을 통해 암호화된 VC 정보를 복호화한 후 복호화한 VC 정보 중 신원 증명 필요 정보에 대응되는 VP 정보만을 추출한 후 어느 하나의 고속 처리 노드(110)에 제공할 수 있다. In this case, the
사용자 단말(100)은 VP 정보를 신원 증명 요청측 기기(180)에 전송하여 신원 증명을 요청하는데, VP 정보를 사용자 개인키로 암호화한 후 이를 신원 증명 요청측 기기(180)에 전송하여 신원 증명을 요청할 수 있다. 이에 따라, 신원 증명 요청측 기기(180)는 사용자 개인키에 대응되는 사용자 공개키를 고속 블록체인 시스템(120)을 통해 획득한 후 이를 이용하여 암호화된 VP 정보를 복호화하며, 복호화한 VP 정보를 토대로 사용자의 신원을 증명할 수 있다. The
한편, 신원 증명 요청측 기기(180)는 사용자 단말(100)과 연동하여 사용자 DID를 수신한 후 이를 토대로 사용자 신원을 증명을 수행할 수도 있다. 이 경우, 신원 증명 요청측 기기(180)는 사용자 단말(100)로부터 수신한 사용자의 DID 및 사용자 개인키로 암호화된 서명 확인값과 사용자 신원 증명에 필요한 정보(이하, '신원 증명 필요 정보'라고 함)를 고속 블록체인 시스템(120)의 어느 하나의 고속 처리 노드(110)에 전송하여 신원 확인을 요청할 수 있다. 이 경우, 어느 하나의 고속 처리 노드(110)는 사용자의 DID를 이용하여 고속 블록체인 시스템(120)에서 사용자 개인키에 대응되는 사용자 공개키를 획득하며, 획득한 사용자 공개키를 이용하여 암호화된 서명 확인값에 대한 확인을 수행한 후 획득한 사용자 공개키와 신원 증명 필요 정보를 마스터 고속 처리 노드에 전송하며, 이에 대한 응답으로 VP 정보를 수신하여 사용자 단말(100)에 제공할 수 있다. 이때, 마스터 고속 처리 노드는 사용자 공개키와 자신의 식별키의 조합을 통해 암호화된 VC 정보를 복호화한 후 복호화한 VC 정보 중 신원 증명 필요 정보에 대응되는 VP 정보만을 추출한 후 이를 어느 하나의 고속 처리 노드(110)에 제공할 수 있다.Meanwhile, the identity
이에 따라, 신원 증명 요청측 기기(180)는 어느 하나의 고속 처리 노드(110)로부터 수신한 VP 정보를 토대로 사용자의 신원을 증명할 수 있다. Accordingly, the identity
이러한 동작을 수행하기 위해 고속 블록체인 시스템(120) 내 각 고속 처리 노드(110)는, 도 2에 도시된 바와 같이, 단위 트랜잭션 생성 기능(110a), 합의 알고리즘을 수행하여 검증을 수행하는 검증 기능(110b), 셀 블록 생성 기능(110c), 메인넷 연동 기능(110d) 및 마스터 고속 처리 노드와의 연동하기 위한 마스터 연동 기능(110e) 등을 포함할 수 있다. To perform these operations, each high-
또한, 마스터 고속 처리 노드는, 도 3에 도시된 바와 같이, 단위 트랜잭션 생성 기능(110a), 합의 알고리즘을 수행하여 검증을 수행하는 검증 기능(110b), 셀 블록 생성 기능(110c), 메인넷 연동 기능(110d)뿐만 아니라 VC 정보를 보안 스토리지(125)에 저장하기 위한 VC 처리 기능(110f) 및 신원 증명 요청에 필요한 정보를 제공하는 정보 제공 기능(110g)을 더 포함할 수 있다.In addition, as shown in FIG. 3, the master high-speed processing node has a unit
상술한 바와 같은 기능들은 다수의 명령어의 조합으로 구성된 프로그램에 의해 수행될 수 있다.Functions as described above may be performed by a program composed of a combination of a plurality of instructions.
상술한 바와 같은 구성을 갖는 고속 블록체인 네트워크를 이용한 DID를 관리하는 과정에 대해 도 4 및 도 6을 참조하여 설명하기로 한다.A process of managing a DID using a high-speed blockchain network having the above configuration will be described with reference to FIGS. 4 and 6.
도 4는 본 발명의 일 실시예에 따른 고속 블록체인 네트워크를 이용하여 DID 데이터를 등록하는 과정을 도시한 흐름도이다.4 is a flowchart illustrating a process of registering DID data using a high-speed blockchain network according to an embodiment of the present invention.
설명에 앞서, DID 데이터 등록은 사용자 단말(100)이 발급 서버(160)에 DID 발급 요청에 따라 발급 서버(160)와 고속 블록체인 시스템(120)과의 연동을 통해 이루어지거나 사용자 단말(100) 내 DID 앱(105)을 이용하여 이루어질 수 있다.Prior to the description, DID data registration is performed through interworking between the issuing server 160 and the high-
즉, DID 데이터 등록 요청 메시지는 사용자 단말(100) 내 DID 앱(105)을 통해 고속 블록체인 시스템(120)의 어느 하나의 고속 처리 노드(110)에 전송되거나 사용자 단말(100)이 DID 앱(105)을 이용하여 발급 서버(160)에 DID 발급 요청에 따라 발급 서버(160)에 의해 고속 블록체인 시스템(120)의 어느 하나의 고속 처리 노드(110)에 전송될 수 있다.That is, the DID data registration request message is transmitted to any one high-
이하에서는 설명의 편의를 위해 DID 데이터 등록 요청 메시지가 사용자 단말(100)의 DID 앱(105)을 통해 수신되는 것을 예로 들어 설명하기로 한다. Hereinafter, for convenience of description, an example in which a DID data registration request message is received through the DID
도 4에 도시된 바와 같이, DID 데이터 등록 요청 메시지가 수신되면(S400), 고속 블록체인 시스템(120)의 고속 처리 노드(110)는 이중 합의 알고리즘을 통해 DID 데이터에 대한 검증(S402)을 수행하며, 검증이 완료됨에 따라 DID 데이터를 토대로 단위 트랜잭션을 생성한 후 이를 스토리지(112)에 저장시킨다(S404).As shown in FIG. 4, when the DID data registration request message is received (S400), the high-
이와 단계들을 기준 시간 동안 수행하며, 기준 시간 동안에 고속 블록체인 시스템(120) 내 복수의 고속 처리 노드(110)에 의해 생성된 단위 트랜잭션이 스토리지(150)에 저장될 수 있다.These steps are performed for a reference time, and unit transactions generated by the plurality of high-
기준 시간이 경과되면, 고속 블록체인 시스템(120) 내 임의의 고속 처리 노드(110)는 기준 시간 동안 생성된 단위 트랜잭션을 이용하여 고속 블록체인용 셀 블록을 생성한 후 이를 스토리지(112)의 저장 공간에 저장시킨다(S406). 구체적으로, 임의의 고속 처리 노드(110)는 적어도 둘 이상의 고속 처리 노드(이하, '증거 노드'라고 함)를 선택하며, 선택한 증거 노드들과의 이중 합의 알고리즘을 통해 기준 시간 동안 생성된 단위 트랜잭션에 대한 검증을 수행하며, 검증이 완료됨에 따라 단위 트랜잭션을 이용하여 고속 블록체인용 셀 블록을 생성한 후 생성한 고속 블록체인용 셀 블록의 복사본을 증거 노드 각각의 스토리지(112)에 저장시킬 수 있다.When the reference time elapses, any high-
이후, 임의의 고속 처리 노드(110)는 고속 블록체인의 끝단에 생성한 고속 블록체인용 셀 블록을 연결(S408)시킴으로써, 고속 블록체인을 업데이트시킨다.Then, any high-
그런 다음, 고속 블록체인 시스템(120) 내 임의의 고속 처리 노드(110)는 고속 블록체인 내 각 단위 트랜잭션을 이용하여 메인넷 블록체인 시스템(140)에 생성된 블록체인 상에 연결될 블록을 생성한다. 구체적으로, 임의의 고속 처리 노드(110)는 고속 블록체인 시스템(120) 내 고속 처리 노드의 수를 토대로 합의 방식을 설정(S410)하며, 설정한 합의 방식에 의해 선택된 고속 처리 노드들과의 합의 과정을 통해 고속 블록체인 내 각 단위 트랜잭션에 대한 데이터를 검증(S412)한 후 검증이 완료됨에 따라 고속 블록체인 내 각 단위 트랜잭션을 이용하여 블록을 생성(S414)하며, 생성한 블록을 메인넷 블록체인 시스템(140)의 어느 하나의 메인넷 노드(130)에 전송하여 블록체인에 저장(S416)할 수 있다.Then, any high-
도 5는 본 발명의 실시예에 따른 고속 블록체인 네트워크를 이용하여 VC 정보를 등록하는 과정을 도시한 흐름도이다.5 is a flowchart illustrating a process of registering VC information using a high-speed blockchain network according to an embodiment of the present invention.
도 5에 도시된 바와 같이, 사용자 단말(100) 내 DID 앱(105)을 통해 DID를 이용한 VC 등록 요청이 수신(S500)됨에 따라 고속 블록체인 시스템(120)의 고속 처리 노드(110)는 DID를 이용하여 사용자 공개키를 획득하며(S502), 사용자 공개키와 VC 정보를 마스터 고속 처리 노드로 설정된 고속 처리 노드(110)에 전송한다(S504).As shown in FIG. 5, as the VC registration request using the DID is received (S500) through the DID
이때, DID 앱(105)은 고속 처리 노드(110)와의 이중 합의 알고리즘을 수행하기 위해 VC의 전자 서명값(즉, 해시값)을 사용자 개인키로 암호화한 후 고속 처리 노드(110)에 전송할 수 있다. 이에 따라, 고속 처리 노드(110)는 DID 앱(105)을 통해 수신한 DID와 고속 블록체인에 저장된 정보를 이용하여 사용자 공개키를 획득한 후 암호화된 VC 정보에 대한 전자 서명값을 복호화시키며, VC 정보에 대한 전자 서명값을 계산한 후 복호화된 전자 서명값과 계산한 전자 서명값간의 비교를 통해 VC 정보에 대한 검증을 실시한다.At this time, the DID
이러한 검증을 통해 유효한 경우 고속 처리 노드(110)는 사용자 공개키와 VC 정보를 마스터 고속 처리 노드로 설정된 고속 처리 노드(110)에 전송할 수 있다.If valid through this verification, the high-
마스터 고속 처리 노드는 수신한 사용자 공개키와 자신의 개인키를 이용하여 암호키를 생성한 후 암호키로 VC 정보를 암호화하여 보안 스토리지(125)에 저장한다(S506).The master high-speed processing node generates an encryption key using the received user public key and its own private key, and then encrypts the VC information with the encryption key and stores it in the secure storage 125 (S506).
도 6은 본 발명의 실시예에 따른 고속 블록체인 네트워크를 이용하여 VP 정보를 획득하여 신원을 증명하는 과정을 도시한 흐름도이다.6 is a flowchart illustrating a process of proving an identity by obtaining VP information using a high-speed blockchain network according to an embodiment of the present invention.
도 6에 도시된 바와 같이, 신원 증명 요청측 기기(180)로부터 사용자의 DID를 이용한 신원 증명 요청이 수신(S600)됨에 따라 고속 처리 노드(110)는 사용자의 DID를 이용하여 고속 블록체인에 저장된 사용자 공개키를 획득한다(S602). 이때, 고속 처리 노드(110)와 신원 증명 요청측 기기(180)간의 이중 합의 알고리즘을 통한 검증을 위해서는 신원 증명 요청측 기기(180)는 신원 증명 요청이 포함된 메시지의 전자 서명값을 신원 증명 요청측 개인키로 암호화하여 전송하며, 고속 처리 노드(110)는 신원 증명 요청측 개인키에 대응되는 공개키를 이용하여 암호화된 메시지의 전자 서명값을 복호화하며, 메시지에 대해 계산한 전자 서명값과 복호화한 전자 서명값간의 비교를 통해 검증을 수행할 수 있다.As shown in FIG. 6, as the identity verification request using the user's DID is received from the identity verification requesting device 180 (S600), the high-
한편, 신원 증명 요청은 신원 증명에 필요한 정보의 종류가 설정된 메시지 형태로 수신될 수 있다.Meanwhile, the identity verification request may be received in the form of a message in which the type of information necessary for identity verification is set.
고속 처리 노드(110)는 획득한 사용자 공개키와 신원 증명 필요 정보를 마스터 고속 처리 노드(110)에 전송한다(S604).The high-
이에 따라, 마스터 고속 처리 노드(110)는 사용자 공개키와 자신의 개인키를 조합하여 암호키를 생성한 후 이를 이용하여 암호화된 VC 정보를 복호화한다(S606).Accordingly, the master high-
이후, 마스터 고속 처리 노드(110)는 VC 정보 중 신원 증명 필요 정보를 추출한 후 이를 이용하여 VP 정보를 생성하며, 생성한 VP 정보를 신원 증명 요청측 기기(180)에 전송한다(S608).Thereafter, the master high-
이에 따라, 신원 증명 요청측 기기(180)는 VP 정보를 이용하여 사용자의 신원에 대한 증명을 수행한다(S610).Accordingly, the identity
한편, 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록에서 설명된 기능들을 수행하는 수단을 생성하게 된다.Meanwhile, combinations of each block of the accompanying block diagram and each step of the flowchart may be performed by computer program instructions. Since these computer program instructions may be loaded into a processor of a general-purpose computer, special-purpose computer, or other programmable data processing equipment, the instructions executed by the processor of the computer or other programmable data processing equipment are described in each block of the block diagram. It creates means to perform functions.
이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 기록매체(또는 메모리) 등에 저장되는 것도 가능하므로, 그 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 기록매체(또는 메모리)에 저장된 인스트럭션들은 블록도의 각 블록에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다.These computer program instructions may be stored on a computer usable or computer readable medium (or memory) or the like that may be directed to a computer or other programmable data processing equipment to implement functions in a particular manner, so that the computer usable Alternatively, the instructions stored in a computer readable recording medium (or memory) may produce an article of manufacture containing instruction means for performing a function described in each block of the block diagram.
그리고, 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.In addition, since the computer program instructions can be loaded on a computer or other programmable data processing equipment, a series of operational steps are performed on the computer or other programmable data processing equipment to create a computer-executed process to generate a computer or other programmable data processing equipment. Instructions performing possible data processing equipment may also provide steps for executing the functions described in each block of the block diagram.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 적어도 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.Also, each block may represent a module, segment, or portion of code including at least one or more executable instructions for executing specified logical function(s). It should also be noted that in some alternative embodiments, it is possible for the functions mentioned in the blocks to occur out of order. For example, two blocks shown in succession may in fact be executed substantially concurrently, or the blocks may sometimes be executed in reverse order depending on their function.
100 : 사용자 단말
110 : 고속 처리 노드
120 : 고속 블록체인 시스템
130 : 메인넷 노드
140 : 메인넷 블록체인 시스템100: user terminal
110: high-speed processing node
120: high-speed blockchain system
130: mainnet node
140: Mainnet blockchain system
Claims (9)
상기 고속 처리 노드는,
사용자 단말 내 DID 앱을 통해 DID 등록 요청 메시지가 수신됨에 따라 상기 DID 앱이 설치된 사용자 단말과의 제 1 합의 알고리즘에 수행하여 상기 DID 등록 요청 메시지 내 DID 데이터에 대한 검증을 수행한 후 상기 DID 데이터를 토대로 단위 트랜잭션을 생성하는 단위 트랜잭션 생성 기능과,
기준 시간 마다 상기 복수의 고속 처리 노드 중 적어도 둘 이상 생성된 고속 처리 노드를 선택-선택된 고속 처리 노드를 증거 노드로 함-하며, 상기 증거 노드와의 제 2 합의 알고리즘을 통해 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 검증을 수행하는 검증 기능과,
상기 검증이 완료됨에 따라 상기 기준 시간 동안 생성된 단위 트랜잭션들을 묶어 하나의 셀 블록을 생성하며, 상기 생성한 셀 블록을 상기 고속 블록체인 시스템에 의해 생성된 고속 블록체인에 저장하는 셀 블록 생성 기능과,
상기 고속 블록체인의 각 셀 블록 내 단위 트랜잭션의 전자 서명값을 메인넷 블록체인 시스템에 의해 생성된 메인 블록체인에 저장하는 메인넷 연동 기능을 포함하는 고속 블록체인 네트워크를 이용한 DID 관리 시스템.
A system for managing decentralized identity (DID) in a high-speed blockchain network composed of multiple high-speed processing nodes interconnected through wired and wireless networks,
The high-speed processing node,
As the DID registration request message is received through the DID app in the user terminal, the first agreement algorithm with the user terminal in which the DID app is installed is performed to verify the DID data in the DID registration request message, and then the DID data a unit transaction generation function for generating a unit transaction based on;
Selecting at least two high-speed processing nodes generated from among the plurality of high-speed processing nodes at each reference time - making the selected high-speed processing node an evidence node - and generating during the reference time through a second consensus algorithm with the evidence node A verification function for verifying unit transactions;
Upon completion of the verification, a cell block generation function for generating one cell block by combining unit transactions generated during the reference time and storing the generated cell block in a high-speed block chain generated by the high-speed block chain system; ,
A DID management system using a high-speed blockchain network that includes a mainnet linkage function that stores the electronic signature value of the unit transaction in each cell block of the high-speed blockchain in the main blockchain generated by the mainnet blockchain system.
상기 DID 등록 요청 메시지는,
상기 DID 데이터 및 사용자 개인키로 암호화된 상기 DID 데이터의 전자 서명값을 포함하며,
상기 제 1 합의 알고리즘은,
상기 DID 데이터를 이용하여 상기 DID 데이터의 전자 서명값을 계산하고, 상기 DID 데이터의 전자 서명값을 사용자 공개키로 복호화한 후 상기 계산한 전자 서명값과 상기 복호화한 전자 서명값간의 비교를 통해 상기 DID 데이터를 검증하는 고속 블록체인 네트워크를 이용한 DID 관리 시스템.
According to claim 1,
The DID registration request message,
It includes the digital signature value of the DID data and the DID data encrypted with the user's private key,
The first consensus algorithm,
After calculating the electronic signature value of the DID data using the DID data, decrypting the electronic signature value of the DID data with the user public key, and comparing the calculated electronic signature value with the decrypted electronic signature value, the DID A DID management system using a high-speed blockchain network that verifies data.
상기 셀 블록을 생성하고자 하는 고속 처리 노드는,
상기 선택한 증거 노드 각각에 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 셀 블록 생성용 데이터와 상기 셀 블록을 생성하고자 하는 고속 처리 노드의 사용자 개인키로 암호화된 상기 셀 블록 생성용 데이터의 전자 서명값을 전송하며,
상기 제 2 합의 알고리즘은,
상기 선택한 증거 노드 각각에서 상기 셀 블록 생성용 데이터에 대한 전자 서명값을 계산하며, 상기 셀 블록을 생성하고자 하는 고속 처리 노드의 사용자 공개키를 이용하여 상기 암호화된 상기 셀 블록 생성용 데이터의 전자 서명값을 복호화한 후 상기 계산한 전자 서명값과 상기 복호화한 전자 서명값간의 비교를 통해 상기 셀 블록 생성용 데이터에 대한 검증을 수행하는 고속 블록체인 네트워크를 이용한 DID 관리 시스템.
According to claim 1,
A high-speed processing node that wants to generate the cell block,
The cell block generation data for the unit transaction generated during the reference time and the electronic signature value of the cell block generation data encrypted with the user private key of the high-speed processing node to generate the cell block are transmitted to each of the selected evidence nodes. and
The second consensus algorithm,
An electronic signature value for the cell block generation data is calculated in each of the selected evidence nodes, and the electronic signature of the encrypted cell block generation data is obtained by using a user public key of a high-speed processing node to generate the cell block. A DID management system using a high-speed blockchain network that performs verification of the cell block generation data through comparison between the calculated electronic signature value and the decrypted electronic signature value after decrypting the value.
상기 DID 데이터는,
상기 DID를 인증하기 위한 정보 및 상기 DID와 상호 작용하는 서비스들의 리스트를 포함하며,
상기 사용자 단말에는,
상기 DID 앱에 의해 액세스 가능하며, 소정의 발급 서버로부터 발급받으며 사용자의 신원을 증명할 수 있는 VC 정보가 암호화되어 저장된 암호화 전자 지갑을 구비하는 고속 블록체인 네트워크를 이용한 DID 관리 시스템.
According to claim 1,
The DID data,
Includes information for authenticating the DID and a list of services that interact with the DID;
In the user terminal,
DID management system using a high-speed blockchain network accessible by the DID app, issued from a predetermined issuing server, and having an encrypted electronic wallet in which VC information that can prove the user's identity is encrypted and stored.
상기 고속 처리 노드는,
소정의 발급 서버로부터 발급받고 사용자의 신원을 증명할 수 있는 VC 정보에 대한 등록 요청이 상기 사용자의 DID를 이용하여 수신되는 경우 상기 사용자의 DID를 이용하여 상기 고속 블록체인 시스템에서 사용자 공개키를 획득하며, 상기 사용자 공개키와 상기 VC 정보를 상기 고속 블록체인 시스템에서 마스터로 동작하는 마스터 고속 처리 노드에 전송하며,
상기 마스터 고속 처리 노드는,
자신의 식별키와 상기 전송받은 사용자 공개키로 이루어진 암호키를 생성한 후 이를 이용하여 상기 VC 정보를 암호화하여 보안 스토리지에 저장하는 고속 블록체인 네트워크를 이용한 DID 관리 시스템.
According to claim 1,
The high-speed processing node,
When a registration request for VC information that is issued from a predetermined issuing server and can prove the user's identity is received using the user's DID, the user's DID is used to obtain a user public key in the high-speed blockchain system, , Transmitting the user public key and the VC information to a master high-speed processing node operating as a master in the high-speed blockchain system,
The master high-speed processing node,
A DID management system using a high-speed blockchain network that generates an encryption key consisting of its own identification key and the received user public key, and then uses it to encrypt the VC information and store it in secure storage.
상기 고속 처리 노드에서 사용자 단말 내 DID 앱을 통해 DID 등록 요청 메시지를 수신하는 단계와,
상기 DID 앱이 설치된 사용자 단말과의 제 1 합의 알고리즘에 수행하여 상기 DID 등록 요청 메시지 내 DID 데이터에 대한 검증을 수행한 후 상기 DID 데이터를 토대로 단위 트랜잭션을 생성하는 단계와,
기준 시간 마다 상기 복수의 고속 처리 노드 중 적어도 둘 이상 생성된 고속 처리 노드를 선택-선택된 고속 처리 노드를 증거 노드로 함-하며, 상기 증거 노드와의 제 2 합의 알고리즘을 통해 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 검증을 수행하는 단계와,
상기 검증이 완료됨에 따라 상기 기준 시간 동안 생성된 단위 트랜잭션들을 묶어 하나의 셀 블록을 생성하며, 상기 생성한 셀 블록을 상기 고속 블록체인 시스템에 의해 생성된 고속 블록체인에 저장하는 단계와,
상기 고속 블록체인의 각 셀 블록 내 단위 트랜잭션의 전자 서명값을 메인넷 블록체인 시스템에 의해 생성된 메인 블록체인에 저장하는 단계를 포함하는 고속 블록체인 네트워크를 이용한 DID 관리 방법.
As a method for managing decentralized identity (DID) in a high-speed blockchain network composed of a plurality of high-speed processing nodes interconnected through wired and wireless networks,
Receiving a DID registration request message through a DID app in a user terminal at the high-speed processing node;
Generating a unit transaction based on the DID data after verifying the DID data in the DID registration request message by performing a first agreement algorithm with a user terminal in which the DID app is installed;
Selecting at least two high-speed processing nodes generated from among the plurality of high-speed processing nodes at each reference time - making the selected high-speed processing node an evidence node - and generating during the reference time through a second consensus algorithm with the evidence node verifying the unit transaction;
Upon completion of the verification, generating a single cell block by combining unit transactions generated during the reference time, and storing the generated cell block in a high-speed block chain generated by the high-speed block chain system;
DID management method using a high-speed blockchain network comprising the step of storing the electronic signature value of the unit transaction in each cell block of the high-speed blockchain in the main blockchain generated by the mainnet blockchain system.
상기 수신하는 단계는,
상기 DID 데이터 및 사용자 개인키로 암호화된 상기 DID 데이터의 전자 서명값을 포함하는 DID 등록 요청 메시지를 수신하며,
상기 제 1 합의 알고리즘은,
상기 DID 데이터를 이용하여 상기 DID 데이터의 전자 서명값을 계산하고, 상기 DID 데이터의 전자 서명값을 사용자 공개키로 복호화하며,
상기 계산한 전자 서명값과 상기 복호화한 전자 서명값간의 비교를 통해 상기 DID 데이터를 검증을 통해 상기 사용자 단말과의 합의를 수행하는 고속 블록체인 네트워크를 이용한 DID 관리 방법.
According to claim 6,
In the receiving step,
Receiving a DID registration request message including the DID data and an electronic signature value of the DID data encrypted with the user's private key;
The first consensus algorithm,
Calculate an electronic signature value of the DID data using the DID data, and decrypt the electronic signature value of the DID data with a user public key;
DID management method using a high-speed blockchain network for performing an agreement with the user terminal through verification of the DID data through comparison between the calculated electronic signature value and the decrypted electronic signature value.
상기 검증을 수행하는 단계는,
상기 선택한 증거 노드 각각에 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 셀 블록 생성용 데이터와 상기 셀 블록을 생성하고자 하는 고속 처리 노드의 사용자 개인키로 암호화된 상기 셀 블록 생성용 데이터의 전자 서명값을 전송하는 단계를 더 포함하며,
상기 제 2 합의 알고리즘은,
상기 선택한 증거 노드 각각에서 상기 셀 블록 생성용 데이터에 대한 전자 서명값을 계산하며, 상기 셀 블록을 생성하고자 하는 고속 처리 노드의 사용자 공개키를 이용하여 상기 암호화된 상기 셀 블록 생성용 데이터의 전자 서명값을 복호화하며,
상기 계산한 전자 서명값과 상기 복호화한 전자 서명값간의 비교를 통해 상기 셀 블록 생성용 데이터에 대한 검증을 수행하는 고속 블록체인 네트워크를 이용한 DID 관리 방법.
According to claim 6,
The step of performing the verification is,
The cell block generation data for the unit transaction generated during the reference time and the electronic signature value of the cell block generation data encrypted with the user private key of the high-speed processing node to generate the cell block are transmitted to each of the selected evidence nodes. It further includes the steps of
The second consensus algorithm,
An electronic signature value for the cell block generation data is calculated in each of the selected evidence nodes, and the electronic signature of the encrypted cell block generation data is obtained by using a user public key of a high-speed processing node to generate the cell block. decrypt the value;
DID management method using a high-speed blockchain network for performing verification of the cell block generation data through comparison between the calculated electronic signature value and the decrypted electronic signature value.
상기 고속 처리 노드에서 소정의 발급 서버로부터 발급받고 사용자의 신원을 증명할 수 있는 VC 정보에 대한 등록 요청을 수신하는 단계와,
상기 등록 요청한 사용자의 DID를 이용하여 상기 고속 블록체인 시스템에서 사용자 공개키를 획득하는 단계와,
상기 사용자 공개키와 상기 VC 정보를 상기 고속 블록체인 시스템에서 마스터로 동작하는 마스터 고속 처리 노드에 전송하는 단계와,
상기 마스터 고속 처리 노드에서 자신의 식별키와 상기 전송받은 사용자 공개키로 이루어진 암호키를 생성한 후 이를 이용하여 상기 VC 정보를 암호화하여 보안 스토리지에 저장하는 단계를 더 포함하는 고속 블록체인 네트워크를 이용한 DID 관리 방법.According to claim 6,
receiving, at the high-speed processing node, a registration request for VC information issued from a predetermined issuing server and capable of proving an identity of a user;
obtaining a user public key in the high-speed blockchain system using the DID of the user who requested the registration;
Transmitting the user public key and the VC information to a master high-speed processing node operating as a master in the high-speed blockchain system;
DID using a high-speed blockchain network further comprising the step of generating an encryption key consisting of its own identification key and the received user public key in the master high-speed processing node, encrypting the VC information using it and storing it in a secure storage management method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210168068A KR20230080676A (en) | 2021-11-30 | 2021-11-30 | Method and system for managing DID using a high speed block-chain network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210168068A KR20230080676A (en) | 2021-11-30 | 2021-11-30 | Method and system for managing DID using a high speed block-chain network |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230080676A true KR20230080676A (en) | 2023-06-07 |
Family
ID=86760814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210168068A KR20230080676A (en) | 2021-11-30 | 2021-11-30 | Method and system for managing DID using a high speed block-chain network |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230080676A (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210095093A (en) | 2020-01-22 | 2021-07-30 | 주식회사 코인플러그 | Method for providing authentification service by using decentralized identity and server using the same |
-
2021
- 2021-11-30 KR KR1020210168068A patent/KR20230080676A/en not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210095093A (en) | 2020-01-22 | 2021-07-30 | 주식회사 코인플러그 | Method for providing authentification service by using decentralized identity and server using the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109862041B (en) | Digital identity authentication method, equipment, device, system and storage medium | |
KR101974452B1 (en) | Methods and system for managing personal information based on programmable blockchain and one-id | |
KR101863953B1 (en) | System and method for providing electronic signature service | |
CA2341784C (en) | Method to deploy a pki transaction in a web browser | |
JP4866863B2 (en) | Security code generation method and user device | |
KR102177848B1 (en) | Method and system for verifying an access request | |
TWI497336B (en) | Data security devices and computer program | |
AU2008344384B2 (en) | Information distribution system and program for the same | |
KR102307574B1 (en) | Cloud data storage system based on blockchain and method for storing in cloud | |
EP3556069A1 (en) | System and method for securely processing an electronic identity | |
CA2753039A1 (en) | System and methods for online authentication | |
JP2001326632A (en) | Distribution group management system and method | |
JPWO2007094165A1 (en) | Identification system and program, and identification method | |
US20220014354A1 (en) | Systems, methods and devices for provision of a secret | |
WO2019163040A1 (en) | Access management system and program thereof | |
JPH05298174A (en) | Remote file access system | |
JP4840575B2 (en) | Terminal device, certificate issuing device, certificate issuing system, certificate acquisition method and certificate issuing method | |
CN107409043B (en) | Distributed processing of products based on centrally encrypted stored data | |
KR100970552B1 (en) | Method for generating secure key using certificateless public key | |
KR101933090B1 (en) | System and method for providing electronic signature service | |
JP2017108237A (en) | System, terminal device, control method and program | |
US8307098B1 (en) | System, method, and program for managing a user key used to sign a message for a data processing system | |
JP7211518B2 (en) | Owner identity confirmation system and owner identity confirmation method | |
JP7211519B2 (en) | Owner identity confirmation system, terminal and owner identity confirmation method | |
KR20230080676A (en) | Method and system for managing DID using a high speed block-chain network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal |