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 PDF

Info

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
Application number
KR1020210168068A
Other languages
Korean (ko)
Inventor
송명석
신광호
Original Assignee
(주) 모로보기
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주) 모로보기 filed Critical (주) 모로보기
Priority to KR1020210168068A priority Critical patent/KR20230080676A/en
Publication of KR20230080676A publication Critical patent/KR20230080676A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key 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/0825Key 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

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 관리 시스템 및 방법{Method and system for managing DID using a high speed block-chain network}DID management system and method using a high speed block-chain network {Method and system for managing DID using a high speed block-chain network}

본 발명은 고속 블록체인 네트워크를 이용한 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.

대한민국공개특허 제10-2021-0095093호(2021.07.30.공개.)Korean Patent Publication No. 10-2021-0095093 (published on July 30, 2021.)

본 발명은 복수의 고속 처리 노드들로 구성되어 고속 블록체인을 생성함과 더불어 복수의 메인넷 노드들로 구성된 메인넷 블록체인 시스템과 연동되는 고속 블록체인 네트워크를 이용하여 탈중앙화 아이디(이하, '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 user terminals 100, a high-speed blockchain system 120 composed of a plurality of high-speed processing nodes 110, and a plurality of mainnet nodes 130. ) may include a mainnet blockchain system 140 composed of;

본 발명의 실시예에서, 사용자 단말(100)은 DID 앱(105)을 통해 DID 데이터를 생성한 후 이를 고속 블록체인 시스템(120)에 전송하여 등록시킬 수 있다. 구체적으로, 사용자 단말(100)은 DID 앱(105)을 통해 DID 데이터를 생성한 후 이를 고속 블록체인 시스템(120)에 전송하여 등록함과 더불어 고속 블록체인 시스템(120)과 연동되는 메인넷 블록체인 시스템(140)에 등록할 수 있다.In an embodiment of the present invention, the user terminal 100 may generate DID data through the DID app 105 and transmit it to the high-speed blockchain system 120 for registration. Specifically, the user terminal 100 generates DID data through the DID app 105, transmits and registers it to the high-speed blockchain system 120, and a mainnet block that works with the high-speed blockchain system 120. You can register in the chain system 140.

여기에서, 고속 블록체인 시스템(120)에 DID 데이터의 등록은 DID 데이터를 이용하여 생성된 단위 트랜잭션으로 구성된 셀 블록을 고속 블록체인 시스템(120)에 의해 생성되어 관리되는 고속 블록체인에 연결시켜 저장하는 것을 의미하며, 메인넷 블록체인 시스템(140)에 대한 등록은 고속 블록체인을 구성하는 셀 블록에 포함된 단위 트랜잭션에 대한 해시값을 메인 블록체인에 저장하는 것을 의미할 수 있다.Here, the registration of DID data in the high-speed blockchain system 120 connects the cell block composed of unit transactions generated using the DID data to the high-speed blockchain created and managed by the high-speed blockchain system 120 and stored. Registration in the mainnet blockchain system 140 may mean storing hash values for unit transactions included in cell blocks constituting the high-speed blockchain in the main blockchain.

본 발명의 실시예에서, 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 DID app 105 is metadata stored in the encrypted electronic wallet 107 stored in an executable form on the user terminal 100, that is, verifiable credential information (hereinafter referred to as 'VC information') It is possible to access, and it is possible to request proof by transmitting information to be proved (hereinafter referred to as 'VP (Verifiable Presentation) information') among meta data to the high-speed blockchain system 120.

여기에서, 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 electronic wallet 107 in an encrypted form. Here, the issuer information includes the ID and name of the issuer, and the qualification information is information about the identity and may include information such as name, age, and degree, as well as information on relationships with parents and friends. The signature may include an issuer's signature for verifying issuance information.

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 verification requesting device 180, and may be provided through the DID app 105 in the user terminal 100. That is, the DID app 105 according to the embodiment of the present invention collects and encrypts only the information to be proved among the VC information stored in the encrypted electronic wallet 107, and then transmits it to the device 180 requesting identity verification.

이 경우, 사용자 단말(100)은 사용자 개인키를 이용하여 VP 정보를 암호화한 후 이를 신원 증명 요청측 기기(180)에 전송할 수 있다. 이에 따라, 신원 증명 요청측 단말(180)은 고속 블록체인 시스템(120)과의 연동을 통해 사용자 개인키에 대한 사용자 공개키를 획득하며, 획득한 사용자 공개키를 이용하여 암호화된 VP 정보를 복호화하여 VP 정보를 획득할 수 있다.In this case, the user terminal 100 may encrypt the VP information using the user's private key and transmit the encrypted VP information to the identity verification requesting device 180 . Accordingly, the identity verification requesting terminal 180 obtains the user public key for the user private key through interworking with the high-speed blockchain system 120, and decrypts the encrypted VP information using the obtained user public key. Thus, VP information can be obtained.

신원 증명 요청측 기기(180)는 사용자에 대한 신원 증명을 위해 고속 블록체인 시스템(120)으로부터 사용자 개인키에 대응되는 사용자 공개키를 제공받으며, 제공받은 사용자 공개키를 이용하여 VP 정보를 복호화한 후 이를 기반으로 사용자의 신원을 증명할 수 있다.The identity verification requesting device 180 receives a user public key corresponding to the user private key from the high-speed blockchain system 120 to prove the identity of the user, and decrypts the VP information using the provided user public key. Then, based on this, the user's identity can be proven.

본 발명의 실시예에서 DID 데이터의 등록은 고속 블록체인 시스템(120)을 통해 이루어질 수 있다.In an embodiment of the present invention, registration of DID data can be made through the high-speed blockchain system 120.

즉, 고속 블록체인 시스템(120)을 구성하는 복수의 고속 처리 노드(110) 중 어느 하나는 사용자 단말(100) 내 DID 앱(105)을 통해 DID 발급 요청 메시지를 수신하며, DID 앱(105)이 설치된 사용자 단말(100)과의 제 1 합의 알고리즘에 수행하여 DID 발급 요청 메시지 내 DID 데이터에 대한 검증을 수행한 후 DID 데이터를 토대로 단위 트랜잭션을 생성할 수 있다. 이때, 단위 트랜잭션은 고속 처리 노드(110)에 의해 스토리지(112)에 저장될 수 있다.That is, any one of the plurality of high-speed processing nodes 110 constituting the high-speed blockchain system 120 receives a DID issuance request message through the DID app 105 in the user terminal 100, and the DID app 105 After verifying the DID data in the DID issuance request message by performing the first agreement algorithm with the installed user terminal 100, a unit transaction may be generated based on the DID data. At this time, the unit transaction may be stored in the storage 112 by the high-speed processing node 110 .

제 1 합의 알고리즘을 수행을 위해 사용자 단말(100)은 DID 앱(105)을 통해 DID 데이터 및 사용자 개인키로 암호화된 DID 데이터의 전자 서명값(예컨대 해시값)을 포함한 DID 발급 요청 메시지를 전송할 수 있다.To perform the first consensus algorithm, the user terminal 100 may transmit a DID issuance request message including DID data and an electronic signature value (eg, hash value) of the DID data encrypted with the user's private key through the DID app 105. .

이에 따라, 고속 처리 노드(110)는 DID 데이터를 이용하여 DID 데이터의 전자 서명값을 계산하고, DID 데이터의 전자 서명값을 사용자 공개키로 복호화한 후 계산한 전자 서명값과 복호화한 전자 서명값간의 비교를 통해 DID 데이터를 검증하는 방식으로 사용자 단말(100)과의 제 1 합의 알고리즘을 수행할 수 있다.Accordingly, the high-speed processing node 110 calculates the electronic signature value of the DID data using the DID data, decrypts the electronic signature value of the DID data with the user public key, and then between the calculated electronic signature value and the decrypted electronic signature value The first agreement algorithm with the user terminal 100 may be performed in a manner of verifying DID data through comparison.

한편, 고속 처리 노드(110)는 기준 시간 마다 기준 시간 동안 생성된 단위 트랜잭션을 토대로 셀 블록을 생성한 후 이를 고속 블록체인의 끝단에 연결시켜 고속 블록체인에 저장시킬 수 있다. 이를 위하여, 고속 처리 노드(110)는 복수의 고속 처리 노드(110) 중 적어도 둘 이상 생성된 고속 처리 노드(110)를 선택-선택된 고속 처리 노드를 증거 노드로 함-하며, 증거 노드와의 제 2 합의 알고리즘을 통해 기준 시간 동안 생성된 단위 트랜잭션에 대한 검증을 수행할 수 있다. 이때, 단위 트랜잭션에 대한 검증을 수행하기 위한 고속 처리 노드(110)는 선택한 증거 노드 각각에 기준 시간 동안 생성된 단위 트랜잭션에 대한 셀 블록 생성용 데이터와 자신의 사용자자 개인키로 암호화된 셀 블록 생성용 데이터의 전자 서명값(예컨대, 해시값)을 전송할 수 있다. 이에 따라, 선택한 증거 노드 각각에서는 셀 블록 생성용 데이터에 대한 전자 서명값을 계산하며, 셀 블록을 생성하고자 하는 고속 처리 노드(110)의 사용자 공개키를 이용하여 암호화된 셀 블록 생성용 데이터의 전자 서명값을 복호화한 후 계산한 전자 서명값과 복호화한 전자 서명값간의 비교를 통해 셀 블록 생성용 데이터에 대한 검증을 통해 제 2 합의 알고리즘을 수행할 수 있다.On the other hand, the high-speed processing node 110 can generate a cell block based on unit transactions generated during the reference time per reference time, and then connect it to the end of the high-speed blockchain to store it in the high-speed blockchain. To this end, the high-speed processing node 110 selects at least two generated high-speed processing nodes 110 from among the plurality of high-speed processing nodes 110 - making the selected high-speed processing node an evidence node - and 2 Verification of unit transactions generated during the reference time can be performed through the consensus algorithm. At this time, the high-speed processing node 110 for verifying the unit transaction has data for cell block generation for unit transactions generated during the reference time in each of the selected proof nodes and cell block generation data encrypted with its user's private key. An electronic signature value (eg, hash value) of data may be transmitted. Accordingly, each of the selected proof nodes calculates an electronic signature value for the cell block generation data, and the electronic signature of the cell block generation data encrypted using the user public key of the high-speed processing node 110 to generate the cell block. After decrypting the signature value, the second agreement algorithm may be performed by verifying cell block generation data through comparison between the calculated electronic signature value and the decrypted electronic signature value.

고속 처리 노드(110)는 검증이 완료됨에 따라 기준 시간 동안 생성된 단위 트랜잭션들을 묶어 하나의 셀 블록을 생성하며, 생성한 셀 블록을 고속 블록체인 시스템(120)에 의해 생성되어 관리되는 고속 블록체인에 저장, 예컨대 고속 블록체인의 끝단에 셀 블록을 연결시키는 방식으로 고속 블록체인에 저장할 수 있다.Upon completion of verification, the high-speed processing node 110 combines unit transactions generated during the reference time to create one cell block, and the generated cell block is a high-speed block chain that is created and managed by the high-speed block chain system 120. For example, it can be stored in the high-speed blockchain by connecting the cell block to the end of the high-speed blockchain.

한편, 고속 처리 노드(110)는 고속 블록체인의 각 셀 블록 내 단위 트랜잭션의 전자 서명값을 메인넷 블록체인 시스템(140)에 의해 생성된 메인 블록체인에 저장할 수 있다. 이 경우, 고속 처리 노드(110)는 고속 블록체인 시스템(120)을 구성하는 고속 처리 노드(110)의 개수에 따라 합의 방식을 선택할 수 있다. 구체적으로, 고속 처리 노드(110)은 고속 블록체인 시스템(120)을 구성하는 고속 처리 노드(110)의 수가 기 설정된 임계 노드 수보다 작은 경우 작업 증명 방식(PoW : Proof of Work)을 이용하고, 그렇지 않을 경우 지분 증명 방식(PoS)을 이용하여 제 3 합의 알고리즘을 수행하며, 제 3 합의 알고리즘에 의해 합의가 완료됨에 따라 메인넷 블록체인 시스템(140)에 의해 생성된 블록체인 상에 연결될 블록을 생성할 수 있다.Meanwhile, the high-speed processing node 110 may store the electronic signature value of the unit transaction within each cell block of the high-speed block chain in the main block chain generated by the mainnet block chain system 140. In this case, the high-speed processing node 110 may select an agreement method according to the number of high-speed processing nodes 110 constituting the high-speed blockchain system 120 . Specifically, the high-speed processing node 110 uses a Proof of Work (PoW) method when the number of high-speed processing nodes 110 constituting the high-speed blockchain system 120 is smaller than the preset threshold number of nodes, Otherwise, the third consensus algorithm is performed using the Proof of Stake method (PoS), and as the consensus is completed by the third consensus algorithm, the block to be connected on the blockchain created by the mainnet blockchain system 140 is created. can create

즉, 고속 처리 노드(110)는 작업 증명 방식 또는 지분 증명 방식을 통해 선택된 고속 처리 노드(110)들간의 제 3 합의 알고리즘을 통해 합의를 수행한 후 이를 토대로 블록을 생성할 수 있다. 여기에서, 제 3 합의 알고리즘은 이중 합의 알고리즘으로서, 블록을 생성하기 위한 데이터(즉, 단위 트랜잭션 내 전자 서명값)과 고속 처리 노드(110)에 의해 관리되는 사용자 개인키를 이용하여 암호화된 데이터의 전자 서명값을 선택된 고속 처리 노드(110)들에게 전송하는 방법으로 선택된 고속 처리 노드(110)들과의 합의를 수행하는 것을 의미할 수 있다. 이 경우, 선택된 고속 처리 노드(110) 각각은 데이터에 대한 전자 서명값을 산출하며, 산출한 전자 서명값과 사용자 공개키를 이용하여 복호화된 데이터의 전자 서명값간의 비교를 통해 데이터의 검증을 수행할 수 있다. That is, the high-speed processing node 110 may generate a block based on the consensus after performing an agreement through a third agreement algorithm between the high-speed processing nodes 110 selected through the proof-of-work method or the proof-of-stake method. Here, the third agreement algorithm is a double agreement algorithm, which is a combination of data for generating a block (ie, an electronic signature value within a unit transaction) and data encrypted using a user's private key managed by the high-speed processing node 110. As a method of transmitting an electronic signature value to the selected high-speed processing nodes 110, it may mean performing an agreement with the selected high-speed processing nodes 110. In this case, each of the selected high-speed processing nodes 110 calculates an electronic signature value for the data, and performs verification of the data by comparing the calculated electronic signature value with the electronic signature value of the decrypted data using the user public key. can do.

사용자 단말(100)은 DID 앱(105)을 통해 발급 서버(160)로부터 VC 정보를 발급받아 암호화 전자 지갑(107)에 저장하여 관리할 수 있다.The user terminal 100 may receive VC information issued from the issuing server 160 through the DID app 105 and store it in the encrypted electronic wallet 107 for management.

한편, 사용자 단말(100)은 DID 앱(105)을 통해 발급 서버(160)로부터 발급받은 VC 정보를 고속 블록체인 시스템(120)을 구성하는 복수의 고속 처리 노드(110) 중 어느 하나의 노드(이하, '마스터 고속 처리 노드'라고 함)에 등록시킬 수 있다. 여기에서, 마스터 고속 처리 노드는 고속 블록체인 시스템(120) 내 복수의 고속 처리 노드(110)들을 관리하기 위한 것으로서, 고속 블록체인 시스템(120)에 대한 노드 추가, 노드 삭제 등을 수행할 수 있을 뿐만 아니라 VC 정보를 저장하기 위한 보안 스토리지(125)를 관리할 수 있다.On the other hand, the user terminal 100 transmits the VC information issued from the issuing server 160 through the DID app 105 to any one of the plurality of high-speed processing nodes 110 constituting the high-speed blockchain system 120 ( hereinafter referred to as 'master high-speed processing node'). Here, the master high-speed processing node is for managing a plurality of high-speed processing nodes 110 in the high-speed blockchain system 120, and can perform node addition and node deletion for the high-speed blockchain system 120. In addition, a secure storage 125 for storing VC information may be managed.

마스터 고속 처리 노드는 사용자 단말(100)의 DID 앱(105)을 통한 VC 등록 요청이 수신됨에 따라 고속 블록체인 상에 저장된 DID 데이터를 토대로 사용자에 대한 검증을 수행하며, 사용자에 대한 검증이 완료됨에 따라 검증 시 이용되는 사용자 공개키와 마스터 고속 처리 노드의 고유 식별키(예컨대 마스터 고속 처리 노드에 의해 관리되는 사용자 개인키)의 조합을 통해 암호키를 생성한 후 이를 이용하여 VP 정보를 암호화하여 보안 스토리지(125)에 저장할 수 있다.As the master high-speed processing node receives a VC registration request through the DID app 105 of the user terminal 100, it verifies the user based on the DID data stored on the high-speed blockchain, and upon completion of the verification for the user After generating an encryption key through a combination of the user public key used for verification and the unique identification key of the master high-speed processing node (e.g., the user private key managed by the master high-speed processing node), the VP information is encrypted and secured using this key. may be stored in the storage 125 .

본 발명의 실시예에서 DID 앱(105)을 통한 VC 등록 요청은 복수의 고속 처리 노드(110)를 통해 수신되어 마스터 고속 처리 노드에 전달될 수 있다.In an embodiment of the present invention, a VC registration request through the DID app 105 may be received through a plurality of high-speed processing nodes 110 and transmitted to the master high-speed processing node.

상술한 바와 같이, 마스터 고속 처리 노드에 의해 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 app 105 of the user terminal 100 at high speed. It can be received at any one high-speed processing node 110 of the blockchain system 120. At this time, the identity verification required information may be generated according to the identity verification request from the identity verification requesting device 180 .

이 경우, 사용자 단말(100)은 DID 앱(105)을 통해 신원 증명 필요 정보, 사용자 개인키로 암호화된 서명 확인값 및 사용자의 DID를 포함할 수 있다. 이에 따라, 어느 하나의 고속 처리 노드(110)는 사용자의 DID를 이용하여 고속 블록체인 시스템(120)에서 사용자 개인키에 대응되는 사용자 공개키를 획득하며, 획득한 사용자 공개키를 이용하여 암호화된 서명 확인값에 대한 확인을 수행한 후 획득한 사용자 공개키와 신원 증명 필요 정보를 마스터 고속 처리 노드에 전송하며, 이에 대한 응답으로 VP 정보를 수신하여 사용자 단말(100)에 제공할 수 있다. 이때, 마스터 고속 처리 노드는 사용자 공개키와 자신의 식별키의 조합을 통해 암호화된 VC 정보를 복호화한 후 복호화한 VC 정보 중 신원 증명 필요 정보에 대응되는 VP 정보만을 추출한 후 어느 하나의 고속 처리 노드(110)에 제공할 수 있다. In this case, the user terminal 100 may include the identity verification required information, the signature verification value encrypted with the user's private key, and the user's DID through the DID app 105 . Accordingly, any one high-speed processing node 110 obtains a user public key corresponding to the user private key in the high-speed blockchain system 120 using the user's DID, and uses the obtained user public key to obtain encrypted data. After checking the signature verification value, the obtained user public key and identity verification required information are transmitted to the master high-speed processing node, and in response, VP information may be received and provided to the user terminal 100 . At this time, the master high-speed processing node decrypts the encrypted VC information through the combination of the user's public key and its own identification key, extracts only the VP information corresponding to the identity verification required information from among the decrypted VC information, and selects one of the high-speed processing nodes (110) can be provided.

사용자 단말(100)은 VP 정보를 신원 증명 요청측 기기(180)에 전송하여 신원 증명을 요청하는데, VP 정보를 사용자 개인키로 암호화한 후 이를 신원 증명 요청측 기기(180)에 전송하여 신원 증명을 요청할 수 있다. 이에 따라, 신원 증명 요청측 기기(180)는 사용자 개인키에 대응되는 사용자 공개키를 고속 블록체인 시스템(120)을 통해 획득한 후 이를 이용하여 암호화된 VP 정보를 복호화하며, 복호화한 VP 정보를 토대로 사용자의 신원을 증명할 수 있다. The user terminal 100 transmits the VP information to the identity verification requesting device 180 to request identity verification. After encrypting the VP information with the user's private key, the user terminal 100 transmits it to the identity verification requesting device 180 to verify the identity. can request Accordingly, the identity verification requesting device 180 acquires the user public key corresponding to the user private key through the high-speed blockchain system 120, decrypts the encrypted VP information using it, and converts the decrypted VP information to Based on this, the identity of the user can be proven.

한편, 신원 증명 요청측 기기(180)는 사용자 단말(100)과 연동하여 사용자 DID를 수신한 후 이를 토대로 사용자 신원을 증명을 수행할 수도 있다. 이 경우, 신원 증명 요청측 기기(180)는 사용자 단말(100)로부터 수신한 사용자의 DID 및 사용자 개인키로 암호화된 서명 확인값과 사용자 신원 증명에 필요한 정보(이하, '신원 증명 필요 정보'라고 함)를 고속 블록체인 시스템(120)의 어느 하나의 고속 처리 노드(110)에 전송하여 신원 확인을 요청할 수 있다. 이 경우, 어느 하나의 고속 처리 노드(110)는 사용자의 DID를 이용하여 고속 블록체인 시스템(120)에서 사용자 개인키에 대응되는 사용자 공개키를 획득하며, 획득한 사용자 공개키를 이용하여 암호화된 서명 확인값에 대한 확인을 수행한 후 획득한 사용자 공개키와 신원 증명 필요 정보를 마스터 고속 처리 노드에 전송하며, 이에 대한 응답으로 VP 정보를 수신하여 사용자 단말(100)에 제공할 수 있다. 이때, 마스터 고속 처리 노드는 사용자 공개키와 자신의 식별키의 조합을 통해 암호화된 VC 정보를 복호화한 후 복호화한 VC 정보 중 신원 증명 필요 정보에 대응되는 VP 정보만을 추출한 후 이를 어느 하나의 고속 처리 노드(110)에 제공할 수 있다.Meanwhile, the identity verification requesting device 180 may work with the user terminal 100 to receive the user DID, and then verify the user's identity based on this. In this case, the identity verification requesting device 180 receives the user's DID and the signature verification value encrypted with the user's private key received from the user terminal 100 and information necessary for user identity verification (hereinafter referred to as 'identity verification required information'). ) may be transmitted to any one high-speed processing node 110 of the high-speed blockchain system 120 to request identity verification. In this case, any one high-speed processing node 110 obtains a user public key corresponding to the user's private key in the high-speed blockchain system 120 using the user's DID, and uses the obtained user public key to obtain encrypted data. After checking the signature verification value, the obtained user public key and identity verification required information are transmitted to the master high-speed processing node, and in response, VP information may be received and provided to the user terminal 100 . At this time, the master high-speed processing node decrypts the encrypted VC information through the combination of the user's public key and its own identification key, extracts only the VP information corresponding to the identity verification required information from among the decrypted VC information, and then processes it at high speed. node 110.

이에 따라, 신원 증명 요청측 기기(180)는 어느 하나의 고속 처리 노드(110)로부터 수신한 VP 정보를 토대로 사용자의 신원을 증명할 수 있다. Accordingly, the identity verification requesting device 180 can prove the user's identity based on the VP information received from any one high-speed processing node 110 .

이러한 동작을 수행하기 위해 고속 블록체인 시스템(120) 내 각 고속 처리 노드(110)는, 도 2에 도시된 바와 같이, 단위 트랜잭션 생성 기능(110a), 합의 알고리즘을 수행하여 검증을 수행하는 검증 기능(110b), 셀 블록 생성 기능(110c), 메인넷 연동 기능(110d) 및 마스터 고속 처리 노드와의 연동하기 위한 마스터 연동 기능(110e) 등을 포함할 수 있다. To perform these operations, each high-speed processing node 110 in the high-speed blockchain system 120, as shown in FIG. 2, has a unit transaction generation function 110a and a verification function that performs verification by performing a consensus algorithm. (110b), a cell block generation function (110c), a mainnet interworking function (110d), and a master interworking function (110e) for interworking with a master high-speed processing node.

또한, 마스터 고속 처리 노드는, 도 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 transaction generation function 110a, a verification function 110b performing verification by performing a consensus algorithm, a cell block generation function 110c, and mainnet linkage. In addition to the function 110d, a VC processing function 110f for storing VC information in the secure storage 125 and an information providing function 110g for providing information necessary for an identity verification request may be further included.

상술한 바와 같은 기능들은 다수의 명령어의 조합으로 구성된 프로그램에 의해 수행될 수 있다.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-speed blockchain system 120 according to the user terminal 100 requesting the issuing server 160 to issue a DID, or the user terminal 100 This can be done using the My DID app 105.

즉, 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-speed processing node 110 of the high-speed blockchain system 120 through the DID app 105 in the user terminal 100, or the user terminal 100 is the DID app ( 105), the issuing server 160 may transmit the DID issuing request to the issuing server 160 to any one high-speed processing node 110 of the high-speed blockchain system 120.

이하에서는 설명의 편의를 위해 DID 데이터 등록 요청 메시지가 사용자 단말(100)의 DID 앱(105)을 통해 수신되는 것을 예로 들어 설명하기로 한다. Hereinafter, for convenience of description, an example in which a DID data registration request message is received through the DID app 105 of the user terminal 100 will be described.

도 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-speed processing node 110 of the high-speed blockchain system 120 performs verification (S402) of the DID data through a double agreement algorithm. When the verification is completed, a unit transaction is generated based on the DID data and then stored in the storage 112 (S404).

이와 단계들을 기준 시간 동안 수행하며, 기준 시간 동안에 고속 블록체인 시스템(120) 내 복수의 고속 처리 노드(110)에 의해 생성된 단위 트랜잭션이 스토리지(150)에 저장될 수 있다.These steps are performed for a reference time, and unit transactions generated by the plurality of high-speed processing nodes 110 in the high-speed blockchain system 120 during the reference time may be stored in the storage 150.

기준 시간이 경과되면, 고속 블록체인 시스템(120) 내 임의의 고속 처리 노드(110)는 기준 시간 동안 생성된 단위 트랜잭션을 이용하여 고속 블록체인용 셀 블록을 생성한 후 이를 스토리지(112)의 저장 공간에 저장시킨다(S406). 구체적으로, 임의의 고속 처리 노드(110)는 적어도 둘 이상의 고속 처리 노드(이하, '증거 노드'라고 함)를 선택하며, 선택한 증거 노드들과의 이중 합의 알고리즘을 통해 기준 시간 동안 생성된 단위 트랜잭션에 대한 검증을 수행하며, 검증이 완료됨에 따라 단위 트랜잭션을 이용하여 고속 블록체인용 셀 블록을 생성한 후 생성한 고속 블록체인용 셀 블록의 복사본을 증거 노드 각각의 스토리지(112)에 저장시킬 수 있다.When the reference time elapses, any high-speed processing node 110 in the high-speed blockchain system 120 generates a cell block for high-speed blockchain using the unit transaction generated during the reference time, and then stores it in the storage 112. It is stored in the space (S406). Specifically, any high-speed processing node 110 selects at least two or more high-speed processing nodes (hereinafter, referred to as 'evidence nodes'), and unit transactions generated during the reference time through a double agreement algorithm with the selected evidence nodes. After the verification is completed, a cell block for high-speed blockchain is created using a unit transaction, and then a copy of the cell block for high-speed blockchain can be stored in the storage 112 of each evidence node. there is.

이후, 임의의 고속 처리 노드(110)는 고속 블록체인의 끝단에 생성한 고속 블록체인용 셀 블록을 연결(S408)시킴으로써, 고속 블록체인을 업데이트시킨다.Then, any high-speed processing node 110 updates the high-speed blockchain by connecting the cell block for the high-speed blockchain to the end of the high-speed blockchain (S408).

그런 다음, 고속 블록체인 시스템(120) 내 임의의 고속 처리 노드(110)는 고속 블록체인 내 각 단위 트랜잭션을 이용하여 메인넷 블록체인 시스템(140)에 생성된 블록체인 상에 연결될 블록을 생성한다. 구체적으로, 임의의 고속 처리 노드(110)는 고속 블록체인 시스템(120) 내 고속 처리 노드의 수를 토대로 합의 방식을 설정(S410)하며, 설정한 합의 방식에 의해 선택된 고속 처리 노드들과의 합의 과정을 통해 고속 블록체인 내 각 단위 트랜잭션에 대한 데이터를 검증(S412)한 후 검증이 완료됨에 따라 고속 블록체인 내 각 단위 트랜잭션을 이용하여 블록을 생성(S414)하며, 생성한 블록을 메인넷 블록체인 시스템(140)의 어느 하나의 메인넷 노드(130)에 전송하여 블록체인에 저장(S416)할 수 있다.Then, any high-speed processing node 110 in the high-speed blockchain system 120 uses each unit transaction in the high-speed blockchain to create a block to be connected on the blockchain created in the mainnet blockchain system 140. . Specifically, any high-speed processing node 110 sets a consensus method based on the number of high-speed processing nodes in the high-speed blockchain system 120 (S410), and agrees with the high-speed processing nodes selected by the set consensus method. After verifying the data for each unit transaction in the high-speed blockchain through the process (S412), as the verification is completed, a block is created using each unit transaction in the high-speed blockchain (S414), and the generated block is a mainnet block. It can be transmitted to any one mainnet node 130 of the chain system 140 and stored in the blockchain (S416).

도 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 app 105 in the user terminal 100, the high-speed processing node 110 of the high-speed blockchain system 120 A user public key is acquired using (S502), and the user public key and VC information are transmitted to the high-speed processing node 110 set as a master high-speed processing node (S504).

이때, DID 앱(105)은 고속 처리 노드(110)와의 이중 합의 알고리즘을 수행하기 위해 VC의 전자 서명값(즉, 해시값)을 사용자 개인키로 암호화한 후 고속 처리 노드(110)에 전송할 수 있다. 이에 따라, 고속 처리 노드(110)는 DID 앱(105)을 통해 수신한 DID와 고속 블록체인에 저장된 정보를 이용하여 사용자 공개키를 획득한 후 암호화된 VC 정보에 대한 전자 서명값을 복호화시키며, VC 정보에 대한 전자 서명값을 계산한 후 복호화된 전자 서명값과 계산한 전자 서명값간의 비교를 통해 VC 정보에 대한 검증을 실시한다.At this time, the DID app 105 may encrypt the electronic signature value (ie, hash value) of the VC with the user's private key to perform the double agreement algorithm with the high-speed processing node 110 and then transmit it to the high-speed processing node 110. . Accordingly, the high-speed processing node 110 obtains the user public key using the DID received through the DID app 105 and the information stored in the high-speed blockchain, and then decrypts the electronic signature value for the encrypted VC information, After calculating the digital signature value for the VC information, the VC information is verified through a comparison between the decrypted digital signature value and the calculated digital signature value.

이러한 검증을 통해 유효한 경우 고속 처리 노드(110)는 사용자 공개키와 VC 정보를 마스터 고속 처리 노드로 설정된 고속 처리 노드(110)에 전송할 수 있다.If valid through this verification, the high-speed processing node 110 may transmit the user public key and VC information to the high-speed processing node 110 set as the master high-speed processing node.

마스터 고속 처리 노드는 수신한 사용자 공개키와 자신의 개인키를 이용하여 암호키를 생성한 후 암호키로 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-speed processing node 110 uses the user's DID and stores it in the high-speed blockchain. A user public key is acquired (S602). At this time, for verification through the double agreement algorithm between the high-speed processing node 110 and the identity verification requesting device 180, the identity verification requesting device 180 requests the identity verification value of the message including the identity verification request. The high-speed processing node 110 decrypts the electronic signature value of the encrypted message using the public key corresponding to the private key of the identity requesting party, and the electronic signature value calculated for the message and the decryption Verification can be performed through comparison between electronic signature values.

한편, 신원 증명 요청은 신원 증명에 필요한 정보의 종류가 설정된 메시지 형태로 수신될 수 있다.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-speed processing node 110 transmits the obtained user public key and identity verification required information to the master high-speed processing node 110 (S604).

이에 따라, 마스터 고속 처리 노드(110)는 사용자 공개키와 자신의 개인키를 조합하여 암호키를 생성한 후 이를 이용하여 암호화된 VC 정보를 복호화한다(S606).Accordingly, the master high-speed processing node 110 generates an encryption key by combining the user's public key and its own private key, and then decrypts the encrypted VC information using the encryption key (S606).

이후, 마스터 고속 처리 노드(110)는 VC 정보 중 신원 증명 필요 정보를 추출한 후 이를 이용하여 VP 정보를 생성하며, 생성한 VP 정보를 신원 증명 요청측 기기(180)에 전송한다(S608).Thereafter, the master high-speed processing node 110 extracts identity verification required information from among the VC information, generates VP information using it, and transmits the generated VP information to the identity verification requesting device 180 (S608).

이에 따라, 신원 증명 요청측 기기(180)는 VP 정보를 이용하여 사용자의 신원에 대한 증명을 수행한다(S610).Accordingly, the identity verification requesting device 180 performs verification of the user's identity using the VP information (S610).

한편, 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록에서 설명된 기능들을 수행하는 수단을 생성하게 된다.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)

유무선 네트워크를 통해 상호 연결된 복수의 고속 처리 노드로 구성된 고속 블록체인 네트워크에서의 탈중앙화 아이디(Decentralized Identity, DID)를 관리하기 위한 시스템으로서,
상기 고속 처리 노드는,
사용자 단말 내 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.
제1항에 있어서,
상기 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.
제1항에 있어서,
상기 셀 블록을 생성하고자 하는 고속 처리 노드는,
상기 선택한 증거 노드 각각에 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 셀 블록 생성용 데이터와 상기 셀 블록을 생성하고자 하는 고속 처리 노드의 사용자 개인키로 암호화된 상기 셀 블록 생성용 데이터의 전자 서명값을 전송하며,
상기 제 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.
제1항에 있어서,
상기 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.
제1항에 있어서,
상기 고속 처리 노드는,
소정의 발급 서버로부터 발급받고 사용자의 신원을 증명할 수 있는 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.
유무선 네트워크를 통해 상호 연결된 복수의 고속 처리 노드로 구성된 고속 블록체인 네트워크에서의 탈중앙화 아이디(Decentralized Identity, DID)를 관리하기 위한 방법으로서,
상기 고속 처리 노드에서 사용자 단말 내 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.
제6항에 있어서,
상기 수신하는 단계는,
상기 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.
제6항에 있어서,
상기 검증을 수행하는 단계는,
상기 선택한 증거 노드 각각에 상기 기준 시간 동안 생성된 단위 트랜잭션에 대한 셀 블록 생성용 데이터와 상기 셀 블록을 생성하고자 하는 고속 처리 노드의 사용자 개인키로 암호화된 상기 셀 블록 생성용 데이터의 전자 서명값을 전송하는 단계를 더 포함하며,
상기 제 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.
제6항에 있어서,
상기 고속 처리 노드에서 소정의 발급 서버로부터 발급받고 사용자의 신원을 증명할 수 있는 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.
KR1020210168068A 2021-11-30 2021-11-30 Method and system for managing DID using a high speed block-chain network KR20230080676A (en)

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)

* Cited by examiner, † Cited by third party
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
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