KR102663060B1 - Method and apparatus for implementing identity-based key management using smart contracts - Google Patents

Method and apparatus for implementing identity-based key management using smart contracts Download PDF

Info

Publication number
KR102663060B1
KR102663060B1 KR1020217040076A KR20217040076A KR102663060B1 KR 102663060 B1 KR102663060 B1 KR 102663060B1 KR 1020217040076 A KR1020217040076 A KR 1020217040076A KR 20217040076 A KR20217040076 A KR 20217040076A KR 102663060 B1 KR102663060 B1 KR 102663060B1
Authority
KR
South Korea
Prior art keywords
target user
target
private key
identity information
key
Prior art date
Application number
KR1020217040076A
Other languages
Korean (ko)
Other versions
KR20220012867A (en
Inventor
동웨이 양
동 왕
웨이 지앙
핑 젠
지아씽 쑤안
구오민 리
신 쉬
완리 마
준웨이 마
양 왕
레이 조우
Original Assignee
스테이트 그리드 코퍼레이션 오브 차이나
스테이트 그리드 디지털 테크놀로지 홀딩 컴퍼니 리미티드
스테이트 그리드 슝안 파이낸셜 테크놀로지 그룹 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 스테이트 그리드 코퍼레이션 오브 차이나, 스테이트 그리드 디지털 테크놀로지 홀딩 컴퍼니 리미티드, 스테이트 그리드 슝안 파이낸셜 테크놀로지 그룹 컴퍼니 리미티드 filed Critical 스테이트 그리드 코퍼레이션 오브 차이나
Publication of KR20220012867A publication Critical patent/KR20220012867A/en
Application granted granted Critical
Publication of KR102663060B1 publication Critical patent/KR102663060B1/en

Links

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/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/083Key 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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • 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)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Lock And Its Accessories (AREA)
  • Storage Device Security (AREA)

Abstract

본 출원은 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법 및 장치를 제공하고, 상기 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법은, 스마트 계약을 실행하여, 키 관리 프로세스를 실행하는 단계를 포함하며, 키 관리 프로세스는, 타깃 사용자의 키를 업데이트해야 할 경우, 타깃 사용자가 비감독 대상 사용자이면, 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성하는 단계; 블록 체인에서 타깃 사용자의 신원 정보를 획득하는 단계; 타깃 사용자의 신원 정보 및 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키에 기반하여, 제1 타깃 개인 키를 생성하는 단계; 및 타깃 사용자의 현재 개인 키를 제1 타깃 개인 키로 대체하는 단계를 포함한다.The present application provides a method and apparatus for implementing identity-based key management using a smart contract, and the method for implementing identity-based key management using a smart contract includes executing a smart contract to execute a key management process. The key management process includes: generating a master public key and a master private key belonging to the target user if the target user's key needs to be updated, if the target user is an unsupervised user; Obtaining identity information of a target user from the blockchain; generating a first target private key based on the target user's identity information and the master public key and master private key belonging to the target user; and replacing the target user's current private key with the first target private key.

Description

스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법 및 장치Method and apparatus for implementing identity-based key management using smart contracts

[관련 출원의 상호 참조][Cross-reference to related applications]

본 출원은 출원 번호가 201910445653.3이고, 출원일이 2019년 05월 27일인 중국 특허 출원에 기반하여 제출하였고, 상기 중국 특허 출원의 우선권을 주장하는 바, 상기 중국 특허 출원의 모든 내용은 참조로서 본 출원에 인용된다.This application was filed based on the Chinese patent application with application number 201910445653.3 and the filing date of May 27, 2019, and claims priority of the Chinese patent application. All contents of the Chinese patent application are incorporated herein by reference. It is quoted.

본 출원은 컴퓨터 기술 분야에 관한 것으로, 특히 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법 및 장치에 관한 것이다.This application relates to the field of computer technology, and in particular to methods and devices for implementing identity-based key management using smart contracts.

현재, 신원 기반 암호화(Identity Base Cryptography, IBC) 방안에서는 키 생성 센터(Key Generation Center, KGC)에서 마스터 공개 키 및 마스터 개인 키를 생성한 다음, KGC는 마스터 공개 키, 마스터 개인 키 및 사용자의 신원 정보(예를 들어 이름, 이메일, 주민등록증 번호 등)를 사용하여 사용자의 개인 키를 생성하며, 즉 사용자의 신원 정보는 공개 키이고, 디지털 인증서에 바인딩할 필요가 없으므로, 공개 키 인프라(PKI) 방안에서 디지털 인증서 관리의 복잡한 문제를 방지할 수 있다. Currently, in the Identity Base Cryptography (IBC) scheme, a Key Generation Center (KGC) generates a master public key and a master private key, and then the KGC generates the master public key, the master private key, and the user's identity. Information (e.g. name, email, social security card number, etc.) is used to generate the user's private key, i.e. the user's identity information is the public key, and there is no need to bind it to a digital certificate, so a public key infrastructure (PKI) scheme You can avoid the complex problems of digital certificate management.

그러나, IBC 방안에서는 특정 사용자의 개인 키가 유출되어, 개인 키를 업데이트해야 할 경우, 상기 사용자의 신원 정보를 변경하여 상기 사용자의 개인 키를 업데이트해야 하고, 사용자의 신원 정보가 변경되면, 상기 사용자의 신원 자체 인증이 저하되어, IBC 방안에서 키 업데이트의 성능에 영향을 미친다.However, in the IBC method, if a specific user's private key is leaked and the private key needs to be updated, the user's private key must be updated by changing the user's identity information, and when the user's identity information is changed, the user The self-authentication of the identity is degraded, affecting the performance of key updates in the IBC scheme.

이와 관련된 기술적 문제를 해결하기 위해, 본 출원의 실시예는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법 및 장치를 제공한다.To solve technical problems related to this, embodiments of the present application provide a method and apparatus for implementing identity-based key management using smart contracts.

본 출원의 실시예의 기술 방안은 다음과 같다. The technical solution of the embodiments of this application is as follows.

스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법은, How to implement identity-based key management using smart contracts:

스마트 계약을 실행하여, 키 관리 프로세스를 실행하는 단계를 포함하며, 상기 키 관리 프로세스는, Executing a smart contract to execute a key management process, wherein the key management process includes:

타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성하는 단계; When a target user's key needs to be updated, if the target user is an unsupervised user, generating a master public key and a master private key belonging to the target user;

블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하는 단계; Obtaining identity information of the target user from a blockchain;

상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 상기 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성하는 단계; 및 generating a first target private key based on the master public key and master private key belonging to the target user and the identity information of the target user; and

상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체하는 단계를 포함한다. and replacing the target user's current private key with the first target private key.

상기 방안에서, 상기 키 관리 프로세스는, In the scheme, the key management process is:

상기 타깃 사용자가 비감독 대상 사용자이고 상기 타깃 사용자의 개인 키가 유출되거나, 또는 상기 타깃 사용자가 감독 대상 사용자이면, 상기 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하는 단계; If the target user is an unsupervised user and the target user's private key is leaked, or if the target user is a supervised user, obtaining identity information of the target user from the blockchain;

상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하여, 업데이트된 신원 정보를 타깃 신원 정보로 사용하는 단계; Updating the identity information of the target user and using the updated identity information as target identity information;

상기 타깃 신원 정보를 사용하여, 제2 타깃 개인 키를 생성하는 단계; 및 Using the target identity information, generating a second target private key; and

상기 타깃 사용자의 현재 개인 키를 상기 제2 타깃 개인 키로 대체하는 단계를 더 포함한다. It further includes replacing the target user's current private key with the second target private key.

상기 방안에서, 상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하는 단계는, In the method, the step of updating the identity information of the target user is,

상기 타깃 사용자의 신원 정보 중의 가변 부분에 대해 업데이트를 수행하는 단계를 포함한다. It includes performing an update on the variable portion of the target user's identity information.

상기 방안에서, 상기 키 관리 프로세스는, In the scheme, the key management process is:

상기 블록 체인에서 제1 타깃 신원 정보의 상태 정보를 쿼리하는 단계를 더 포함하며, 상기 제1 타깃 신원 정보는 상기 블록 체인에 저장된 임의의 하나의 사용자의 신원 정보이다. It further includes querying status information of first target identity information in the blockchain, wherein the first target identity information is identity information of any one user stored in the blockchain.

상기 방안에서, 상기 키 관리 프로세스는, In the scheme, the key management process is:

상기 타깃 사용자가 과거 사용한 이력 개인 키를 사용하여 상기 제1 타깃 개인 키와 관련된 상태 정보에 대해 서명을 수행하는 단계를 더 포함한다. It further includes signing state information related to the first target private key using a historical private key used in the past by the target user.

스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 장치는, A device that implements identity-based key management using smart contracts,

스마트 계약을 실행하여, 키 관리 프로세스를 실행하도록 구성된 실행 모듈을 포함하며, 상기 키 관리 프로세스는, an execution module configured to execute a smart contract to execute a key management process, the key management process comprising:

타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성하는 단계; When a target user's key needs to be updated, if the target user is an unsupervised user, generating a master public key and a master private key belonging to the target user;

블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하는 단계; Obtaining identity information of the target user from a blockchain;

상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 상기 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성하는 단계; 및 generating a first target private key based on the master public key and master private key belonging to the target user and the identity information of the target user; and

상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체하는 단계를 포함한다. and replacing the target user's current private key with the first target private key.

상기 방안에서, 상기 실행 모듈이 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스는, In the method, the execution module executes the smart contract, and the executed key management process is:

상기 타깃 사용자가 비감독 대상 사용자이고 상기 타깃 사용자의 개인 키가 유출되거나, 또는 상기 타깃 사용자가 감독 대상 사용자이면, 상기 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하는 단계; If the target user is an unsupervised user and the target user's private key is leaked, or if the target user is a supervised user, obtaining identity information of the target user from the blockchain;

상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하여, 업데이트된 신원 정보를 타깃 신원 정보로 사용하는 단계; Updating the identity information of the target user and using the updated identity information as target identity information;

상기 타깃 신원 정보를 사용하여, 제2 타깃 개인 키를 생성하는 단계; 및 Using the target identity information, generating a second target private key; and

상기 타깃 사용자의 현재 개인 키를 상기 제2 타깃 개인 키로 대체하는 단계를 더 포함한다. It further includes replacing the target user's current private key with the second target private key.

상기 방안에서, 상기 실행 모듈이 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스에서 상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하는 프로세스는, In the above method, a process in which the execution module executes the smart contract to update the target user's identity information in the executed key management process includes:

상기 타깃 사용자의 신원 정보 중의 가변 부분에 대해 업데이트를 수행하는 단계를 포함한다. It includes performing an update on the variable portion of the target user's identity information.

상기 방안에서, 상기 실행 모듈이 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스는, In the method, the execution module executes the smart contract, and the executed key management process is,

상기 블록 체인에서 제1 타깃 신원 정보의 상태 정보를 쿼리하는 단계를 더 포함하며, 상기 제1 타깃 신원 정보는 상기 블록 체인에 저장된 임의의 하나의 사용자의 신원 정보이다. It further includes querying status information of first target identity information in the blockchain, wherein the first target identity information is identity information of any one user stored in the blockchain.

상기 방안에서, 상기 실행 모듈이 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스는, In the method, the execution module executes the smart contract, and the executed key management process is,

상기 타깃 사용자가 과거 사용한 이력 개인 키를 사용하여 상기 제1 타깃 개인 키와 관련된 상태 정보에 대해 서명을 수행하는 단계를 더 포함한다.It further includes signing state information related to the first target private key using a historical private key used in the past by the target user.

관련 기술에 비해, 본 출원의 실시예는 다음과 같은 유익한 효과를 제공한다. Compared to related technologies, the embodiments of the present application provide the following beneficial effects.

본 출원의 실시예에서, 스마트 계약을 실행하여, 실행된 키 관리 프로세스에서, 타깃 사용자의 키를 업데이트해야 할 경우, 타깃 사용자가 비감독 대상 사용자이면, 타깃 사용자에 속하는 마스터 공개 및 마스터 개인 키를 생성하여, KGC에 의해 생성된 마스터 공개 키 및 마스터 개인 키를 채택하지 않고, 블록 체인에서 타깃 사용자의 신원 정보를 획득하여, 타깃 사용자의 신원 정보를 변경하지 않으며, KGC에 의해 생성된 마스터 공개 키 및 마스터 개인 키와 상이한 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 변경되지 않은 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성하며, 타깃 사용자의 현재 개인 키를 제1 타깃 개인 키로 대체하여, 사용자 개인 키의 업데이트를 구현한다. 사용자 개인 키의 업데이트 프로세스에서, 타깃 사용자의 신원 정보가 변경하지 않으므로, 타깃 사용자의 신원 자체 인증이 저하되지 않아, IBC 방안에서 키 업데이트의 성능이 향상된다.In an embodiment of the present application, by executing a smart contract, in the executed key management process, when the target user's key needs to be updated, if the target user is an unsupervised user, the master public and master private keys belonging to the target user are stored. Generate, do not adopt the master public key and master private key generated by KGC, obtain the target user's identity information from the blockchain, do not change the target user's identity information, and do not adopt the master public key generated by KGC and generate a first target private key based on the master public key and the master private key belonging to a target user different from the master private key, and the unchanged identity information of the target user, and set the current private key of the target user to the first target. Implements updating the user's private key by replacing it with the private key. In the update process of the user private key, the identity information of the target user does not change, so the identity self-authentication of the target user is not degraded, improving the performance of key update in the IBC scheme.

본 출원의 실시예의 기술 방안을 더욱 명확하게 설명하기 위해, 아래에 실시예의 설명에 필요한 도면을 간략하게 소개하며, 명백하게, 아래의 설명에서의 도면은 본 출원의 일부 실시예일 뿐, 본 기술 분야의 통상의 기술자는, 창조적 작업 없이도, 이러한 도면에 따라 다른 도면을 획득할 수 있다.
도 1은 본 출원의 실시예에 의해 제공되는 블록 체인 네트워크의 아키텍처 모식도이다.
도 2는 본 출원의 실시예에 의해 제공되는 키 관리 프로세스의 흐름 모식도이다.
도 3은 본 출원의 실시예에 의해 제공되는 다른 키 관리 프로세스의 흐름 모식도이다.
도 4는 본 출원의 실시예에 의해 제공되는 또 다른 키 관리 프로세스의 흐름 모식도이다.
도 5는 본 출원의 실시예에 의해 제공되는 또 다른 키 관리 프로세스의 흐름 모식도이다.
도 6은 본 출원의 실시예에 의해 제공되는 또 다른 키 관리 프로세스의 흐름 모식도이다.
도 7은 본 출원의 실시예에 의해 제공되는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 장치의 논리적 구조 모식도이다.
In order to more clearly explain the technical solutions of the embodiments of the present application, the drawings necessary for the description of the embodiments are briefly introduced below. Obviously, the drawings in the description below are only some embodiments of the present application, and are related to the technical field of the present invention. A person skilled in the art can obtain other drawings according to these drawings without any creative work.
1 is a schematic diagram of the architecture of a blockchain network provided by an embodiment of the present application.
Figure 2 is a flow diagram of a key management process provided by an embodiment of the present application.
Figure 3 is a flow diagram of another key management process provided by an embodiment of the present application.
Figure 4 is a flow diagram of another key management process provided by an embodiment of the present application.
Figure 5 is a flow diagram of another key management process provided by an embodiment of the present application.
Figure 6 is a flow diagram of another key management process provided by an embodiment of the present application.
Figure 7 is a logical structure schematic diagram of a device that implements identity-based key management using a smart contract provided by an embodiment of the present application.

아래에 본 출원의 실시예에서의 도면을 참조하여, 본 출원의 실시예에서의 기술 방안을 명확하고 완전하게 설명하며, 설명된 실시예는 본 출원 실시예 중 일부일 뿐이며, 모든 실시예가 아닌 것은 명백하다. 본 출원의 실시예에 기반하여, 본 분야의 통상의 기술자가 창조성 노동을 부여하지 않은 전제 하에서 얻은 다른 실시예는 전부 본 출원의 청구범위에 속한다. Below, with reference to the drawings in the embodiments of the present application, the technical solutions in the embodiments of the present application are clearly and completely explained, and it is clear that the described embodiments are only some of the embodiments of the present application and not all embodiments. do. Based on the embodiments of this application, all other embodiments obtained by a person skilled in the art without assigning creative labor fall within the scope of the claims of this application.

본 출원의 실시예는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법을 개시하고, 상기 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법은, 스마트 계약을 실행하여, 키 관리 프로세스를 실행하는 단계를 포함하며, 상기 키 관리 프로세스는, 타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성하는 단계; 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하고, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 상기 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성하는 단계; 및 상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체하는 단계를 포함한다. 본 출원의 실시예에서, IBC 방안에서 키 업데이트의 성능을 개선할 수 있다. Embodiments of the present application disclose a method of implementing identity-based key management using a smart contract, wherein the method of implementing identity-based key management using a smart contract includes executing a smart contract to execute a key management process. The key management process includes: generating a master public key and a master private key belonging to the target user when the target user's key needs to be updated, if the target user is an unsupervised user; Obtaining the identity information of the target user from a blockchain and generating a first target private key based on the master public key and master private key belonging to the target user and the identity information of the target user; and replacing the target user's current private key with the first target private key. In an embodiment of the present application, the performance of key update in the IBC scheme can be improved.

아래에 본 출원의 실시예에 개시된 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법을 소개하며, 상기 방법은 컴퓨터 기기에 적용되고, 상기 방법은 다음의 단계를 포함한다. Below we introduce a method of implementing identity-based key management using a smart contract disclosed in the embodiments of this application. The method is applied to a computer device, and the method includes the following steps.

단계 S11에 있어서, 스마트 계약을 실행하여, 키 관리 프로세스를 실행한다. In step S11, a smart contract is executed to execute a key management process.

본 실시예에서, 블록 체인 네트워크를 제공하며, 도 1에 도시된 바와 같이, 블록 체인 네트워크는 복수 개의 풀 노드로 구성되고, 각 풀 노드에는 사용자의 공개 키 및 KGC에 의해 생성된 마스터 공개 키 등 정보와 같은 동일한 데이터가 저장된다.In this embodiment, a blockchain network is provided, and as shown in Figure 1, the blockchain network is composed of a plurality of full nodes, and each full node contains the user's public key and the master public key generated by KGC, etc. The same data such as information is stored.

블록 체인 네트워크는 퍼블릭 블록 체인 네트워크 또는 얼라이언스 체인 네트워크로 이해될 수 있다. Blockchain networks can be understood as public blockchain networks or alliance chain networks.

설명해야 할 것은, 사용자의 개인 키 및 KGC에 의해 생성된 마스터 개인 키는 블록 체인에 저장되지 않고 사용자가 보유하고 있어, 개인 키 및 마스터 개인 키 유출을 방지한다. What should be explained is that the user's private key and the master private key generated by KGC are not stored on the blockchain but are held by the user, preventing private key and master private key leakage.

블록 체인 네트워크에서 스마트 계약을 실행하여, 키 관리 프로세스를 실행할 수 있으며, 여기서, 키 관리 프로세스는, By executing a smart contract on a blockchain network, a key management process can be executed, where the key management process is:

사용자의 신원 정보를 등록하며, 등록된 신원 정보를 블록 체인에 저장하는 단계를 포함할 수 있다. It may include registering the user's identity information and storing the registered identity information in the blockchain.

이해할 수 있는 것은, 사용자의 신원 정보를 등록하여, 사용자 신원의 초기 인증을 구현한다. Understandably, it registers the user's identity information, thereby implementing initial authentication of the user's identity.

스마트 계약을 실행하여, 사용자의 신원 정보를 등록하는 동작은, RegisterID(f_ID, v_ID, b_supervise, b_valid) 함수를 호출하여, 사용자의 신원 정보(ID)를 등록하며, 여기서 f_ID 및 v_ID는 등록된 ID이고, 즉 ID =(f_ID || v_ID), f_ID는 이름과 같은 ID의 고정 식별 부분이며; v_ID는 ID의 가변 부분이고, 날짜 또는 다른 난수일 수 있으며, 주로 키 업데이트에 사용되고, 초기 등록 상태는 null 값이다. b_supervis는 부울 변수(bool)로 이해될 수 있으며, 주로 상기 등록된 ID가 감독 대상 사용자인지 여부를 나타내고, 등록된 ID가 감독 대상 사용자이면, 스마트 계약 관리자는 사용자의 개인 키를 획득할 수 있으며, 사용자 키는 이후에 스마트 계약 관리자가 업데이트해야 하며; 동록된 ID가 비감독 대상 사용자이면, 사용자 등록 후 스마트 계약 관리자가 사용자의 개인 키를 획득할 수 없으며, 사용자의 키는 이후에 사용자가 직접 업데이트해야 하며; b_valid는 사용자 ID가 현재 유효한지 여부를 나타낸다. The operation of executing a smart contract to register the user's identity information calls the RegisterID(f_ID, v_ID, b_supervise, b_valid) function to register the user's identity information (ID), where f_ID and v_ID are the registered IDs. That is, ID = (f_ID || v_ID), f_ID is a fixed identifying part of ID, such as name; v_ID is the variable part of the ID, can be a date or other random number, is mainly used for key updates, and its initial registration state is a null value. b_supervis can be understood as a boolean variable (bool), which mainly indicates whether the registered ID is a supervised user. If the registered ID is a supervised user, the smart contract manager can obtain the user's private key, User keys must subsequently be updated by the smart contract manager; If the registered ID is an unsupervised user, the smart contract administrator cannot obtain the user's private key after user registration, and the user's key must be updated directly by the user afterwards; b_valid indicates whether the user ID is currently valid.

본 실시예에서, 도 2를 참조하면, 키 관리 프로세스는 다음의 단계를 포함할 수 있다. In this embodiment, referring to Figure 2, the key management process may include the following steps.

단계 S21에 있어서, 타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성한다. In step S21, when the target user's key needs to be updated, if the target user is an unsupervised user, a master public key and a master private key belonging to the target user are generated.

상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키는, KGC에서 생성된 마스터 공개 키 및 마스터 개인 키와 상이한 값으로 이해할 수 있다. The master public key and master private key belonging to the target user can be understood as different values from the master public key and master private key generated by KGC.

상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키는 주로 타깃 사용자의 개인 키를 생성하는데 사용된다. The master public key and master private key belonging to the target user are mainly used to generate the target user's private key.

단계 S22에 있어서, 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득한다. In step S22, the identity information of the target user is obtained from the blockchain.

이해할 수 있는 것은, 블록 체인에 복수 개의 사용자의 신원 정보가 저장되어 있으므로, 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득할 수 있다. 구체적으로, 타깃 사용자의 식별자에 따라 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득할 수 있다Understandably, since the identity information of a plurality of users is stored in the blockchain, the identity information of the target user can be obtained from the blockchain. Specifically, the target user's identity information can be obtained from the blockchain according to the target user's identifier.

타깃 사용자의 신원 정보는, 타깃 사용자의 공개 키로 이해될 수 있다. The target user's identity information may be understood as the target user's public key.

단계 S23에 있어서, 상기 타깃 사용자의 신원 정보, 및 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키에 기반하여, 제1 타깃 개인 키를 생성한다. In step S23, a first target private key is generated based on the identity information of the target user and the master public key and master private key belonging to the target user.

단계 S24에 있어서, 상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체한다. In step S24, the current private key of the target user is replaced with the first target private key.

타깃 사용자의 현재 개인 키는 타깃 사용자 현재 사용할 수 있는 개인 키로 이해될 수 있다. The target user's current private key can be understood as the private key currently available to the target user.

상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체하여, 타깃 사용자의 개인 키의 업데이트를 구현한다. Implement updating the target user's private key by replacing the target user's current private key with the first target private key.

상기 타깃 사용자가 비감독 대상 사용자이면, 타깃 사용자의 신원 정보 즉 타깃 사용자의 공개 키를 업데이트 할 필요가 없으며, KGC에 의해 생성된 마스터 공개 키 및 마스터 개인 키와 상이한 타깃 사용자에 속하는 마스터 공개 키와 업데이트되지 않은 타깃 사용자의 공개 키를 사용하여, 타깃 사용자 개인 키의 업데이트를 구현한다. If the target user is an unsupervised user, there is no need to update the target user's identity information, that is, the target user's public key, and the master public key and master private key generated by the KGC and the master public key belonging to the different target user Implement an update of the target user's private key using the target user's public key that has not been updated.

본 출원의 실시예에서, 스마트 계약을 실행하여, 실행된 키 관리 프로세스에서, 타깃 사용자의 키를 업데이트해야 할 경우, 타깃 사용자가 비감독 대상 사용자이면, 타깃 사용자에 속하는 마스터 공개 및 마스터 개인 키를 생성하여, KGC에 의해 생성된 마스터 공개 키 및 마스터 개인 키를 채택하지 않고, 블록 체인에서 타깃 사용자의 신원 정보를 획득하여, 타깃 사용자의 신원 정보를 변경하지 않으며, KGC에 의해 생성된 마스터 공개 키 및 마스터 개인 키와 상이한 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키 및 변경되지 않은 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성하며, 타깃 사용자의 현재 개인 키를 제1 타깃 개인 키로 대체하여, 사용자 개인 키의 업데이트를 구현한다. 사용자 개인 키의 업데이트 프로세스에서, 타깃 사용자의 신원 정보가 변경하지 않으므로, 타깃 사용자의 신원 자체 인증이 저하되지 않아, IBC 방안에서 키 업데이트의 성능이 향상된다. In an embodiment of the present application, by executing a smart contract, in the executed key management process, when the target user's key needs to be updated, if the target user is an unsupervised user, the master public and master private keys belonging to the target user are stored. Generate, do not adopt the master public key and master private key generated by KGC, obtain the target user's identity information from the blockchain, do not change the target user's identity information, and do not adopt the master public key generated by KGC and based on the master private key and the master public key and the master private key belonging to a different target user and the unchanged identity information of the target user, generate a first target private key, and apply the target user's current private key to the first target user. Implements updating the user's private key by replacing it with the key. In the update process of the user private key, the identity information of the target user does not change, so the identity self-authentication of the target user is not degraded, improving the performance of key update in the IBC scheme.

또한, 비감독 대상 사용자는 스스로 키를 업데이트할 수 있으므로, 마스터 개인 키 및 마스터 공개 키가 KGC에 의해 변경될 때, 모든 사용자의 개인 키를 다시 업데이트해야 하는 문제를 피할 수 있어, 완전히 분산된 키 관리 방식을 구현하며, 실용성을 향상시킨다. Additionally, unsupervised users can update their keys on their own, avoiding the problem of having to update every user's private key again when the master private key and master public key are changed by the KGC, resulting in a completely decentralized key. Implements management methods and improves practicality.

본 출원의 다른 실시예 2로서, 도 3을 참조하면, 본 출원에 따라 제공되는 다른 키 관리 프로세스의 흐름 모식도이고, 본 실시예는 주로 상기 실시예 1에서 설명된 키 관리 프로세스의 확장된 방법이며, 도 3에 도시된 바와 같이, 상기 방법은 다음의 단계를 포함할 수 있지만 이에 한정되지 않는다. As another Embodiment 2 of the present application, referring to Figure 3, it is a flow diagram of another key management process provided according to the present application, and this embodiment is mainly an expanded method of the key management process described in Embodiment 1 above. , As shown in Figure 3, the method may include, but is not limited to, the following steps.

단계 S31에 있어서, 타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성한다. In step S31, when the target user's key needs to be updated, if the target user is an unsupervised user, a master public key and a master private key belonging to the target user are generated.

단계 S32에 있어서, 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득한다. In step S32, the identity information of the target user is obtained from the blockchain.

단계 S33에 있어서, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 상기 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성한다. In step S33, a first target private key is generated based on the master public key and master private key belonging to the target user and the identity information of the target user.

단계 S34에 있어서, 상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체한다. In step S34, the current private key of the target user is replaced with the first target private key.

단계 S31 내지 단계 S34에 대한 상세한 프로세스는 실시예 1의 단계 S21 내지 S24에 대한 설명을 참조할 수 있으며, 여기서 더이상 반복하지 않는다. The detailed process for steps S31 to S34 can refer to the description of steps S21 to S24 in Example 1, and is not repeated further here.

단계 S35에 있어서, 상기 타깃 사용자가 비감독 대상 사용자이고 상기 타깃 사용자의 개인 키가 유출되거나, 또는 상기 타깃 사용자가 감독 대상 사용자이면, 상기 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득한다. In step S35, if the target user is an unsupervised user and the target user's private key is leaked, or if the target user is a supervised user, the identity information of the target user is obtained from the blockchain.

여기서, 타깃 사용자의 개인 키가 유출되면, b_valid를 무효 상태로 설정할 수 있다. 그 다음, 키 업데이트 프로세스가 시작되고, 우선 상기 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득한다. Here, if the target user's private key is leaked, b_valid can be set to invalid. Then, the key update process begins, first obtaining the target user's identity information from the blockchain.

단계 S36에 있어서, 상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하여, 업데이트된 신원 정보를 타깃 신원 정보로 사용한다. In step S36, the identity information of the target user is updated, and the updated identity information is used as the target identity information.

단계 S37에 있어서, 상기 타깃 신원 정보를 사용하여, 제2 타깃 개인 키를 생성한다. In step S37, a second target private key is generated using the target identity information.

여기서, 상기 타깃 신원 정보를 사용하여, 제2 타깃 개인 키를 생성하는 동작은 다음과 같이 이해할 수 있다. Here, the operation of generating a second target private key using the target identity information can be understood as follows.

상기 타깃 신원 정보 및 KGC에 의해 생성된 마스터 공개 키 및 마스터 개인 키를 사용하여, 새로운 개인 키를 생성하여, 제2 타깃 개인 키로 간주한다. Using the target identity information and the master public key and master private key generated by KGC, a new private key is generated and regarded as the second target private key.

단계 S38에 있어서, 상기 타깃 사용자의 현재 개인 키를 상기 제2 타깃 개인 키로 대체한다. In step S38, the current private key of the target user is replaced with the second target private key.

여기서, 타깃 사용자의 현재 개인 키는 타깃 사용자 현재 사용할 수 있는 개인 키로 이해될 수 있다. Here, the target user's current private key can be understood as a private key that the target user can currently use.

상기 타깃 사용자의 현재 개인 키를 상기 제2 타깃 개인 키로 대체하여, 타깃 사용자의 개인 키의 업데이트를 구현한다. Implement updating the target user's private key by replacing the target user's current private key with the second target private key.

본 실시예에서, 상기 타깃 사용자가 비감독 대상 사용자이고 상기 타깃 사용자의 개인 키가 유출되거나, 또는 상기 타깃 사용자가 감독 대상 사용자이면, 타깃 사용자의 신원 정보를 업데이트하여 타깃 사용자의 공개 키를 업데이트하며, 업데이트된 공개 키에 기반하여 타깃 사용자의 개인 키를 업데이트한다. In this embodiment, if the target user is an unsupervised user and the target user's private key is leaked, or the target user is a supervised user, updating the target user's identity information to update the target user's public key; , updates the target user's private key based on the updated public key.

본 출원의 다른 실시예 3으로서, 도 4를 참조하면, 본 출원에 따라 제공되는 다른 키 관리 프로세스의 흐름 모식도이고, 본 실시예는 주로 상기 실시예 2에서 설명된 키 관리 프로세스의 세부 방법이며, 도 3에 도시된 바와 같이, 상기 방법은 다음의 단계를 포함할 수 있지만 이에 한정되지 않는다. As another Embodiment 3 of the present application, referring to Figure 4, it is a flow diagram of another key management process provided according to the present application, and this embodiment is mainly a detailed method of the key management process described in Embodiment 2 above, As shown in Figure 3, the method may include, but is not limited to, the following steps.

단계 S41에 있어서, 타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성한다. In step S41, when the target user's key needs to be updated, if the target user is an unsupervised user, a master public key and a master private key belonging to the target user are generated.

단계 S42에 있어서, 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득한다. In step S42, the identity information of the target user is obtained from the blockchain.

단계 S43에 있어서, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 상기 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성한다. In step S43, a first target private key is generated based on the master public key and master private key belonging to the target user and the identity information of the target user.

단계 S44에 있어서, 상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체한다. In step S44, the current private key of the target user is replaced with the first target private key.

단계 S45에 있어서, 상기 타깃 사용자가 비감독 대상 사용자이고 상기 타깃 사용자의 개인 키가 유출되거나, 또는 상기 타깃 사용자가 감독 대상 사용자이면, 상기 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득한다. In step S45, if the target user is an unsupervised user and the target user's private key is leaked, or if the target user is a supervised user, the identity information of the target user is obtained from the blockchain.

단계 S41 내지 단계 S45에 대한 상세한 프로세스는 실시예 2의 단계 S31 내지 S35에 대한 설명을 참조할 수 있으며, 여기서 더이상 반복하지 않는다. The detailed process for steps S41 to S45 may refer to the description of steps S31 to S35 in Example 2, and will not be repeated here.

단계 S46에 있어서, 상기 타깃 사용자의 신원 정보 중의 가변 부분에 대해 업데이트를 수행하여, 업데이트된 신원 정보를 타깃 신원 정보로 사용한다. In step S46, the variable part of the target user's identity information is updated, and the updated identity information is used as the target identity information.

여기서, 타깃 사용자의 신원 정보는 고정 부분 및 가변 부분으로 구성될 수 있다. Here, the target user's identity information may be composed of a fixed part and a variable part.

가변 부분은, 날짜 또는 다른 난수와 같은 변경될 수 있는 부분으로 이해될 수 있다. The variable part can be understood as a part that can change, such as a date or other random number.

상기 타깃 사용자의 신원 정보 중의 가변 부분에 대해 업데이트를 수행하고, 타깃 사용자의 신원 정보 중의 고정 부분을 업데이트하지 않는 것은, 타깃 사용자의 신원 정보의 유효성 및 신뢰성을 보장할 수 있다. Updating the variable part of the target user's identity information and not updating the fixed part of the target user's identity information can ensure the validity and reliability of the target user's identity information.

단계 S47에 있어서, 상기 타깃 신원 정보를 사용하여, 제2 타깃 개인 키를 생성한다. In step S47, a second target private key is generated using the target identity information.

단계 S48에 있어서, 상기 타깃 사용자의 현재 개인 키를 상기 제2 타깃 개인 키로 대체한다. In step S48, the current private key of the target user is replaced with the second target private key.

단계 S47 내지 단계 S48에 대한 상세한 프로세스는 실시예 2의 단계 S37 내지 S38에 대한 설명을 참조할 수 있으며, 여기서 더이상 반복하지 않는다. The detailed process for steps S47 to S48 can refer to the description of steps S37 to S38 in Example 2, and is not repeated further here.

본 출원의 다른 실시예 4로서, 도 5를 참조하면, 본 출원에 따라 제공되는 다른 키 관리 프로세스의 흐름 모식도이고, 본 실시예는 주로 상기 실시예 1에서 설명된 키 관리 프로세스의 확장된 방법이며, 도 5에 도시된 바와 같이, 상기 방법은 다음의 단계를 포함할 수 있지만 이에 한정되지 않는다. As another Embodiment 4 of this application, referring to Figure 5, it is a flow diagram of another key management process provided according to this application, and this embodiment is mainly an expanded method of the key management process described in Embodiment 1 above. , As shown in Figure 5, the method may include, but is not limited to, the following steps.

단계 S51에 있어서, 타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성한다. In step S51, when the target user's key needs to be updated, if the target user is an unsupervised user, a master public key and a master private key belonging to the target user are generated.

단계 S52에 있어서, 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득한다. In step S52, the identity information of the target user is obtained from the blockchain.

단계 S53에 있어서, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 상기 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성한다. In step S53, a first target private key is generated based on the master public key and master private key belonging to the target user and the identity information of the target user.

단계 S54에 있어서, 상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체한다. In step S54, the current private key of the target user is replaced with the first target private key.

단계 S51 내지 단계 S54에 대한 상세한 프로세스는 실시예 1의 단계 S21 내지 S24에 대한 설명을 참조할 수 있으며, 여기서 더이상 반복하지 않는다. The detailed process for steps S51 to S54 can refer to the description of steps S21 to S24 in Embodiment 1, and is not repeated further here.

단계 S55에 있어서, 상기 블록 체인에서 제1 타깃 신원 정보의 상태 정보를 쿼리하고, 상기 제1 타깃 신원 정보는 상기 블록 체인에 저장된 임의의 하나의 사용자의 신원 정보이다. In step S55, query the status information of the first target identity information in the block chain, and the first target identity information is the identity information of any one user stored in the block chain.

여기서, 제1 타깃 신원 정보의 상태 정보는 제1 타깃 신원 정보의 등록 여부, 제1 타깃 신원 정보가 감독 대상 사용자에 속하는지 여부 및 신원 정보가 현재 유효한지 등을 포함할 수 있지만 이에 한정되지 않는다. Here, the status information of the first target identity information may include, but is not limited to, whether the first target identity information is registered, whether the first target identity information belongs to a user subject to supervision, and whether the identity information is currently valid. .

이해할 수 있는 것은, 블록 체인에 신원 정보의 상태 정보를 저장하면, 신원 정보의 상태 정보가 변조되는 것을 방지할 수 있어, 퀴리된 제1 타깃 신원 정보의 상태 정보의 신뢰성을 보장한다. What can be understood is that storing the state information of the identity information in the blockchain can prevent the state information of the identity information from being tampered with, thereby ensuring the reliability of the state information of the queried first target identity information.

본 출원의 다른 실시예 5로서, 도 6를 참조하면, 본 출원에 따라 제공되는 다른 키 관리 프로세스의 흐름 모식도이고, 본 실시예는 주로 상기 실시예 1에서 설명된 키 관리 프로세스의 확장된 방법이며, 도 6에 도시된 바와 같이, 상기 방법은 다음의 단계를 포함할 수 있지만 이에 한정되지 않는다. As another Embodiment 5 of the present application, referring to Figure 6, it is a flow diagram of another key management process provided according to the present application, and this embodiment is mainly an expanded method of the key management process described in Embodiment 1 above. , As shown in Figure 6, the method may include, but is not limited to, the following steps.

단계 S61에 있어서, 타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성한다. In step S61, when the target user's key needs to be updated, if the target user is an unsupervised user, a master public key and a master private key belonging to the target user are generated.

단계 S62에 있어서, 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득한다. In step S62, the identity information of the target user is obtained from the blockchain.

단계 S63에 있어서, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 상기 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성한다. In step S63, a first target private key is generated based on the master public key and master private key belonging to the target user and the identity information of the target user.

단계 S64에 있어서, 상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체한다. In step S64, the current private key of the target user is replaced with the first target private key.

단계 S61 내지 단계 S64에 대한 상세한 프로세스는 실시예 1의 단계 S21 내지 S24에 대한 설명을 참조할 수 있으며, 여기서 더이상 반복하지 않는다. The detailed process for steps S61 to S64 can refer to the description of steps S21 to S24 in Embodiment 1, and is not repeated further here.

단계 S65에 있어서, 상기 타깃 사용자가 과거 사용한 이력 개인 키를 사용하여 상기 제1 타깃 개인 키와 관련된 상태 정보에 대해 서명을 수행한다. In step S65, status information related to the first target private key is signed using a historical private key used in the past by the target user.

여기서, 상기 타깃 사용자가 과거 사용한 이력 개인 키는 상기 타깃 사용자의 개인 키를 제1 타깃 개인 키로 업데이트하기 전에, 가장 최근에 사용한 개인 키로 이해될 수 있다. Here, the historical private key used in the past by the target user may be understood as the most recently used private key before updating the target user's private key to the first target private key.

제1 타깃 개인 키와 관련된 상태 정보는, 제1 타깃 개인 키에 대응하는 타깃 사용자의 신원 정보가 등록되었는지 여부, 제1 타깃 개인 키에 대응하는 타깃 사용자의 신원 정보가 감독 대상 사용자의 신원 정보인지 여부 및 제1 타깃 개인 키에 대응하는 타깃 사용자의 신원 정보가 현재 유효한지 여부를 포함할 수 있지만 이에 한정되지 않는다. The status information related to the first target private key includes whether the identity information of the target user corresponding to the first target private key is registered, and whether the identity information of the target user corresponding to the first target private key is the identity information of the user to be supervised. It may include, but is not limited to, whether the target user's identity information corresponding to the first target private key is currently valid.

상기 타깃 사용자가 과거 사용한 이력 개인 키를 사용하여 상기 제1 타깃 개인 키와 관련된 상태 정보에 대해 서명을 수행하고, 상기 타깃 사용자가 의해 사용된 이력 개인 키를 사용하여 상기 제1 타깃 개인 키와 관련된 상태 정보에 대해 유효성 서명을 수행하는 것으로 이해될 수 있다. Sign state information related to the first target private key using a historical private key used in the past by the target user, and perform a signature on state information related to the first target private key using a historical private key used by the target user. It can be understood as performing a validity signature on state information.

상기 타깃 사용자가 과거 사용한 이력 개인 키를 사용하여 상기 제1 타깃 개인 키와 관련된 상태 정보에 대해 유효성 서명을 수행하여, 제1 타깃 개인 키와 관련된 상태 정보의 유효성을 보장할 수 있다. The validity of the state information related to the first target private key can be guaranteed by performing a validity signature on the state information related to the first target private key using the historical private key used in the past by the target user.

전술한 각 실시예에서 설명한 키 관리 프로세스에서, 특정 사용자의 신원 정보를 로그 오프해야 하면, 상기 사용자의 신원 정보를 로그 오프하고, 블록 체인에서 상기 사용자의 신원 정보를 삭제할 수 있다. In the key management process described in each of the above-described embodiments, if it is necessary to log off the identity information of a specific user, the user's identity information may be logged off and the user's identity information may be deleted from the blockchain.

아래에 본 출원에 따라 제공된 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 장치에 대해 설명하고, 아래에서 설명하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 장치와 위에서 설명하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법은 서로 참조할 수 있다. Described below are devices that implement identity-based key management using smart contracts provided in accordance with this application, and devices that implement identity-based key management using smart contracts described below and devices using smart contracts described above. So, methods for implementing identity-based key management can be referenced.

도 7을 참조하면, 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 장치는 실행 모듈(11)을 포함한다. Referring to Figure 7, a device implementing identity-based key management using a smart contract includes an execution module 11.

실행 모듈(11)은, 스마트 계약을 실행하여, 키 관리 프로세스를 실행하도록 구성되며, 상기 키 관리 프로세스는, The execution module 11 is configured to execute a smart contract and execute a key management process, wherein the key management process includes:

타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성하는 단계; When a target user's key needs to be updated, if the target user is an unsupervised user, generating a master public key and a master private key belonging to the target user;

블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하는 단계; Obtaining identity information of the target user from a blockchain;

상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 상기 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성하는 단계; 및 generating a first target private key based on the master public key and master private key belonging to the target user and the identity information of the target user; and

상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체하는 단계를 포함한다. and replacing the target user's current private key with the first target private key.

본 실시예에서, 상기 실행 모듈(11)은 스마트 계약을 실행하여, 키 관리 프로세스를 실행하도록 구성되며, 상기 키 관리 프로세스는, In this embodiment, the execution module 11 is configured to execute a smart contract and execute a key management process, wherein the key management process includes:

상기 타깃 사용자가 비감독 대상 사용자이고 상기 타깃 사용자의 개인 키가 유출되거나, 또는 상기 타깃 사용자가 감독 대상 사용자이면, 상기 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하는 단계; If the target user is an unsupervised user and the target user's private key is leaked, or if the target user is a supervised user, obtaining identity information of the target user from the blockchain;

상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하여, 업데이트된 신원 정보를 타깃 신원 정보로 사용하는 단계; Updating the identity information of the target user and using the updated identity information as target identity information;

상기 타깃 신원 정보를 사용하여, 제2 타깃 개인 키를 생성하는 단계; 및 Using the target identity information, generating a second target private key; and

상기 타깃 사용자의 현재 개인 키를 상기 제2 타깃 개인 키로 대체하는 단계를 더 포함할 수 있다. The method may further include replacing the current private key of the target user with the second target private key.

본 실시예에서, 상기 실행 모듈(11)은 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스에서 상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하는 프로세스는, In this embodiment, the execution module 11 executes the smart contract, and the process of updating the target user's identity information in the executed key management process is:

상기 타깃 사용자의 신원 정보 중의 가변 부분에 대해 업데이트를 수행하는 단계를 포함할 수 있다. It may include updating a variable portion of the target user's identity information.

본 실시예에서, 상기 실행 모듈(11)이 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스는, In this embodiment, the execution module 11 executes the smart contract, and the executed key management process is,

상기 블록 체인에서 제1 타깃 신원 정보의 상태 정보를 쿼리하는 단계를 더 포함할 수 있으며, 상기 제1 타깃 신원 정보는 상기 블록 체인에 저장된 임의의 하나의 사용자의 신원 정보이다. It may further include querying status information of first target identity information in the blockchain, wherein the first target identity information is identity information of any one user stored in the blockchain.

본 실시예에서, 상기 실행 모듈(11)이 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스는, In this embodiment, the execution module 11 executes the smart contract, and the executed key management process is,

상기 타깃 사용자가 과거 사용한 이력 개인 키를 사용하여 상기 제1 타깃 개인 키와 관련된 상태 정보에 대해 서명을 수행하는 단계를 더 포함할 수 있다. The method may further include signing state information related to the first target private key using a historical private key used in the past by the target user.

설명해야 할 것은, 각 실시예는 모두 점진적으로 설명되며, 각 실시예는 다른 실시예와의 차이점에 초점을 맞추고, 각 실시예 사이의 동일하거나 유사한 부분은 서로 참조될 수 있다. 시스템 실시예는 장치 실시예와 거의 유사하므로, 설명이 비교적 간단하고, 관련 부분에 대해서는 방법 실시예의 설명을 참조한다. It should be noted that each embodiment is described progressively, focusing on the differences between each embodiment and the other embodiments, and the same or similar parts between the embodiments may be referenced to each other. Since the system embodiment is almost similar to the device embodiment, the description is relatively simple, and reference is made to the description of the method embodiment for relevant parts.

마지막으로, 더 설명해야 할 것은, 본 발명에서, 제1 및 제2 등 과 같은 관계 용어는 하나의 실체 또는 동작과, 다른 하나의 엔티티 또는 동작을 구별하기 위해서 사용되고, 이러한 실체나 동작 사이에 어떠한 실제적인 관계나 순서가 존재한다는 것을 반드시 요구하거나 암시하는 것은 아니다. 또한, 용어 “포함” 또는 이의 임의의 다른 변형은 비배타적인 포함을 포함하도록 의도됨으로써, 일련의 요소를 포함하는 프로세스, 방법, 물품 또는 기기로 하여금 이러한 요소를 포함하도록 할 뿐만 아니라, 명시적으로 열거되지 않은 다른 요소를 포함하도록 할 수도 있거나, 이러한 프로세스, 방법, 물품, 또는 기기에 고유한 요소를 포함하도록 한다. 더 많은 한정이 없는 경우, 어구 “하나의……을 포함하다”에 의해 정의된 요소는, 상기 요소를 포함하는 과정, 방법, 물품 또는 기기에 동일한 다른 요소가 존재한다는 것을 배제하지 않는다. Finally, it should be further explained that, in the present invention, relational terms such as first and second are used to distinguish one entity or operation from another entity or operation, and there is no relationship between these entities or operations. It does not necessarily require or imply that an actual relationship or order exists. Additionally, the term “comprise” or any other variation thereof is intended to include a non-exclusive inclusion, so as to cause a process, method, article or device to include a set of elements, as well as to explicitly include such elements. You may wish to include other elements not listed, or elements unique to this process, method, article, or device. In the absence of further qualification, the phrase “one…” … An element defined by “comprises” does not exclude the presence of other identical elements in a process, method, article or device that includes the element.

설명의 편의을 위해, 상기 장치를 설명할 때 기능을 여러 단위로 구분하여 각각 설명한다. 물론, 본 출원을 구현할 때 각 단위의 기능을 하나 또는 복수 개의 소프트워어 및/또는 하드웨어에서 구현될 수 있다. For convenience of explanation, when describing the above device, the functions are divided into several units and explained respectively. Of course, when implementing the present application, the function of each unit may be implemented in one or more software and/or hardware.

상기 실시형태의 설명을 통해 알다시피, 당업자는 본 출원이 소프트웨어에 필요한 범용 하드웨어 플랫폼을 추가하는 방식으로 구현될 수 있다. 이러한 이해에 기반하여, 본 출원의 기술방안은 실질적으로 또는 선행기술에 기여하는 부분이 소프트웨어 제품의 형태로 구현될 수 있고, 상기 컴퓨터 소프트웨어 제품은 ROM/RAM, 자기 디스크 및 광 디스크와 같은 저장 매체에 저장할 수 있으며, 하나의 컴퓨터 기기(개인용 컴퓨터, 서버, 에어컨 또는 네트워크 기기 등일 수 있음)가 본 발명의 각 실시예 또는 실시예의 일부 부분에 따른 방법을 실행하도록 하는 여러 명령어를 포함한다. As can be seen from the description of the above embodiments, those skilled in the art can implement the present application by adding a general-purpose hardware platform required for software. Based on this understanding, the technical solution of the present application may be implemented substantially or in part contributing to the prior art in the form of a software product, and the computer software product may be implemented in a storage medium such as ROM/RAM, magnetic disk, and optical disk. It can be stored in and includes several instructions that cause one computer device (which may be a personal computer, server, air conditioner, or network device, etc.) to execute a method according to each embodiment or part of the embodiment of the present invention.

본 출원에서 제공하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법 및 장치에 대해 상세히 설명하였으며, 이상의 실시예의 설명은 다만 본 출원의 방법 및 이의 핵심 사상의 이해를 돕기 위해서만 사용되며; 동시에, 당업자는 본 출원의 사상에 따라 구체적인 실시형태 및 응용 범위에 변화가 있으며, 결론적으로, 본 명세서의 내용은 본 출원을 한정하는 것이 아니라는 것을 이해할 것이다.The method and device for implementing identity-based key management using the smart contract provided in the present application have been described in detail, and the description of the above embodiments is only used to help understand the method and the core idea thereof of the present application; At the same time, those skilled in the art will understand that there are changes in the specific embodiments and application scope according to the spirit of the present application, and in conclusion, the content of this specification does not limit the present application.

Claims (10)

스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법으로서,
스마트 계약을 실행하여, 키 관리 프로세스를 실행하는 단계를 포함하며, 상기 키 관리 프로세스는,
타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성하는 단계;
블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하는 단계;
상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 상기 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성하는 단계; 및
상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체하는 단계를 포함하고,
상기 키 관리 프로세스는,
상기 타깃 사용자가 비감독 대상 사용자이고 상기 타깃 사용자의 개인 키가 유출되거나, 또는 상기 타깃 사용자가 감독 대상 사용자이면, 상기 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하는 단계;
상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하여, 업데이트된 신원 정보를 타깃 신원 정보로 사용하는 단계;
상기 타깃 신원 정보를 사용하여, 제2 타깃 개인 키를 생성하는 단계; 및
상기 타깃 사용자의 현재 개인 키를 상기 제2 타깃 개인 키로 대체하는 단계를 더 포함하는 것을 특징으로 하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법.
A method of implementing identity-based key management using smart contracts, comprising:
Executing a smart contract to execute a key management process, wherein the key management process includes:
When a target user's key needs to be updated, if the target user is an unsupervised user, generating a master public key and a master private key belonging to the target user;
Obtaining identity information of the target user from a blockchain;
generating a first target private key based on the master public key and master private key belonging to the target user and the identity information of the target user; and
Replacing the target user's current private key with the first target private key,
The key management process is,
If the target user is an unsupervised user and the target user's private key is leaked, or if the target user is a supervised user, obtaining identity information of the target user from the blockchain;
Updating the identity information of the target user and using the updated identity information as target identity information;
Using the target identity information, generating a second target private key; and
A method of implementing identity-based key management using a smart contract, further comprising replacing the target user's current private key with the second target private key.
삭제delete 제1항에 있어서,
상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하는 단계는,
상기 타깃 사용자의 신원 정보 중의 가변 부분에 대해 업데이트를 수행하는 단계를 포함하는 것을 특징으로 하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법.
According to paragraph 1,
The step of updating the target user's identity information is,
A method of implementing identity-based key management using a smart contract, comprising the step of performing an update on a variable portion of the target user's identity information.
제1항에 있어서,
상기 키 관리 프로세스는,
상기 블록 체인에서 제1 타깃 신원 정보의 상태 정보를 쿼리하는 단계를 더 포함하며, 상기 제1 타깃 신원 정보는 상기 블록 체인에 저장된 임의의 하나의 사용자의 신원 정보임을 특징으로 하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법.
According to paragraph 1,
The key management process is,
Further comprising querying the status information of first target identity information in the blockchain, wherein the first target identity information is identity information of any one user stored in the blockchain using a smart contract. How to implement identity-based key management.
제1항에 있어서,
상기 키 관리 프로세스는,
상기 타깃 사용자가 과거 사용한 이력 개인 키를 사용하여 상기 제1 타깃 개인 키와 관련된 상태 정보에 대해 서명을 수행하는 단계를 더 포함하는 것을 특징으로 하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 방법.
According to paragraph 1,
The key management process is,
A method of implementing identity-based key management using a smart contract, further comprising signing state information related to the first target private key using a historical private key used in the past by the target user. .
스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 장치로서,
스마트 계약을 실행하여, 키 관리 프로세스를 실행하도록 구성된 실행 모듈을 포함하며, 상기 키 관리 프로세스는,
타깃 사용자의 키를 업데이트해야 할 경우, 상기 타깃 사용자가 비감독 대상 사용자이면, 상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키를 생성하는 단계;
블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하는 단계;
상기 타깃 사용자에 속하는 마스터 공개 키 및 마스터 개인 키, 및 상기 타깃 사용자의 신원 정보에 기반하여, 제1 타깃 개인 키를 생성하는 단계; 및
상기 타깃 사용자의 현재 개인 키를 상기 제1 타깃 개인 키로 대체하는 단계를 포함하고,
상기 실행 모듈이 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스는,
상기 타깃 사용자가 비감독 대상 사용자이고 상기 타깃 사용자의 개인 키가 유출되거나, 또는 상기 타깃 사용자가 감독 대상 사용자이면, 상기 블록 체인에서 상기 타깃 사용자의 신원 정보를 획득하는 단계;
상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하여, 업데이트된 신원 정보를 타깃 신원 정보로 사용하는 단계;
상기 타깃 신원 정보를 사용하여, 제2 타깃 개인 키를 생성하는 단계; 및
상기 타깃 사용자의 현재 개인 키를 상기 제2 타깃 개인 키로 대체하는 단계를 더 포함하는 것을 특징으로 하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 장치.
A device that implements identity-based key management using smart contracts, comprising:
an execution module configured to execute a smart contract to execute a key management process, the key management process comprising:
When a target user's key needs to be updated, if the target user is an unsupervised user, generating a master public key and a master private key belonging to the target user;
Obtaining identity information of the target user from a blockchain;
generating a first target private key based on the master public key and master private key belonging to the target user and the identity information of the target user; and
Replacing the target user's current private key with the first target private key,
The execution module executes the smart contract, and the executed key management process is,
If the target user is an unsupervised user and the target user's private key is leaked, or if the target user is a supervised user, obtaining identity information of the target user from the blockchain;
Updating the identity information of the target user and using the updated identity information as target identity information;
Using the target identity information, generating a second target private key; and
An apparatus for implementing identity-based key management using a smart contract, further comprising replacing the target user's current private key with the second target private key.
삭제delete 제6항에 있어서,
상기 실행 모듈이 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스에서 상기 타깃 사용자의 신원 정보에 대해 업데이트를 수행하는 프로세스는,
상기 타깃 사용자의 신원 정보 중의 가변 부분에 대해 업데이트를 수행하는 단계를 포함하는 것을 특징으로 하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 장치.
According to clause 6,
A process in which the execution module executes the smart contract and updates the target user's identity information in the executed key management process,
An apparatus for implementing identity-based key management using a smart contract, comprising the step of performing an update on a variable part of the target user's identity information.
제6항에 있어서,
상기 실행 모듈이 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스는,
상기 블록 체인에서 제1 타깃 신원 정보의 상태 정보를 쿼리하는 단계를 더 포함하며, 상기 제1 타깃 신원 정보는 상기 블록 체인에 저장된 임의의 하나의 사용자의 신원 정보임을 특징으로 하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 장치.
According to clause 6,
The execution module executes the smart contract, and the executed key management process is,
Further comprising querying the status information of first target identity information in the blockchain, wherein the first target identity information is identity information of any one user stored in the blockchain using a smart contract. A device that implements identity-based key management.
제6항에 있어서,
상기 실행 모듈이 상기 스마트 계약을 실행하여, 실행된 키 관리 프로세스는,
상기 타깃 사용자가 과거 사용한 이력 개인 키를 사용하여 상기 제1 타깃 개인 키와 관련된 상태 정보에 대해 서명을 수행하는 단계를 더 포함하는 것을 특징으로 하는 스마트 계약을 사용하여 신원 기반 키 관리를 구현하는 장치.
According to clause 6,
The execution module executes the smart contract, and the executed key management process is,
A device for implementing identity-based key management using a smart contract, further comprising the step of signing state information related to the first target private key using a historical private key used in the past by the target user. .
KR1020217040076A 2019-05-27 2019-06-18 Method and apparatus for implementing identity-based key management using smart contracts KR102663060B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910445653.3A CN110166254B (en) 2019-05-27 2019-05-27 Method and device for realizing identity-based key management by using intelligent contract
CN201910445653.3 2019-05-27
PCT/CN2019/091788 WO2020237751A1 (en) 2019-05-27 2019-06-18 Method and device employing smart contract to realize identity-based key management

Publications (2)

Publication Number Publication Date
KR20220012867A KR20220012867A (en) 2022-02-04
KR102663060B1 true KR102663060B1 (en) 2024-05-08

Family

ID=67629117

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217040076A KR102663060B1 (en) 2019-05-27 2019-06-18 Method and apparatus for implementing identity-based key management using smart contracts

Country Status (8)

Country Link
US (1) US20220158834A1 (en)
EP (1) EP3843326B1 (en)
JP (1) JP7426402B2 (en)
KR (1) KR102663060B1 (en)
CN (1) CN110166254B (en)
AU (1) AU2019448286B2 (en)
BR (1) BR112021023517A8 (en)
WO (1) WO2020237751A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110635899B (en) * 2019-09-03 2022-10-25 核芯互联科技(青岛)有限公司 IBC user key updating method and device
CN112019553B (en) * 2020-08-31 2021-07-06 航天信息股份有限公司 Data sharing method based on IBE/IBBE
CN112187454B (en) * 2020-09-14 2022-12-02 国网浙江省电力有限公司 Key management method and system based on block chain
CN112804356B (en) * 2021-03-30 2021-07-23 信联科技(南京)有限公司 Block chain-based networking equipment supervision authentication method and system
US11902451B2 (en) * 2021-07-01 2024-02-13 Fujitsu Limited Cross-blockchain identity and key management
CN114499883A (en) * 2022-02-09 2022-05-13 浪潮云信息技术股份公司 Cross-organization identity authentication method and system based on block chain and SM9 algorithm

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109600219A (en) * 2018-11-29 2019-04-09 天津大学 A kind of public-key management systems based on ether mill intelligence contract

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3275812B2 (en) * 1997-12-12 2002-04-22 日本電気株式会社 ID-authenticated key distribution method and apparatus, and machine-readable recording medium recording program
ATE465571T1 (en) * 2001-08-13 2010-05-15 Univ Leland Stanford Junior SYSTEMS AND METHODS FOR IDENTITY-BASED ENCRYPTION AND RELATED CRYPTOGRAPHIC TECHNIQUES
JP3895245B2 (en) * 2002-09-19 2007-03-22 株式会社エヌ・ティ・ティ・ドコモ Encryption method and encryption system based on user identification information capable of updating key
CN101170404B (en) * 2006-10-24 2010-05-19 华为技术有限公司 Method for secret key configuration based on specified group
CN101166088A (en) * 2007-09-27 2008-04-23 航天信息股份有限公司 Encryption and decryption method based on user identity identifier
CN101521569B (en) * 2008-02-28 2013-04-24 华为技术有限公司 Method, equipment and system for realizing service access
CN104022880B (en) * 2014-06-04 2017-02-08 青岛大学 Invasion-resistant identity-based signature method
US10447478B2 (en) * 2016-06-06 2019-10-15 Microsoft Technology Licensing, Llc Cryptographic applications for a blockchain system
EP3520318A4 (en) * 2016-09-29 2020-04-29 Nokia Technologies Oy Method and apparatus for trusted computing
CN106411901B (en) * 2016-10-08 2018-01-23 北京三未信安科技发展有限公司 A kind of digital identity mark management method and system
CN107425972B (en) * 2017-05-05 2020-08-07 河南理工大学 Graded encryption method based on identity
CN107888384B (en) * 2017-11-30 2020-11-27 中链科技有限公司 Identity data management method, system and computer readable storage medium
CN108235805B (en) * 2017-12-29 2021-07-30 达闼机器人有限公司 Account unifying method and device and storage medium
CN108462696B (en) * 2018-02-05 2020-12-15 邓海南 Decentralized block chain intelligent identity authentication system
CN109327309A (en) * 2018-11-08 2019-02-12 北京中电华大电子设计有限责任公司 A kind of domain traversal key management method based on IBC Yu PKI mixed system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109600219A (en) * 2018-11-29 2019-04-09 天津大学 A kind of public-key management systems based on ether mill intelligence contract

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Tara Salman 외 4명, Security Services Using Blockchains: A State of the Art Survey, IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 21, NO. 1 (2018.08.)*

Also Published As

Publication number Publication date
BR112021023517A8 (en) 2023-02-14
BR112021023517A2 (en) 2022-01-25
EP3843326B1 (en) 2022-11-23
AU2019448286A1 (en) 2021-03-18
JP2022528765A (en) 2022-06-15
EP3843326A1 (en) 2021-06-30
AU2019448286B2 (en) 2022-12-22
JP7426402B2 (en) 2024-02-01
CN110166254B (en) 2020-09-29
CN110166254A (en) 2019-08-23
US20220158834A1 (en) 2022-05-19
WO2020237751A1 (en) 2020-12-03
KR20220012867A (en) 2022-02-04
EP3843326A4 (en) 2022-01-19

Similar Documents

Publication Publication Date Title
KR102663060B1 (en) Method and apparatus for implementing identity-based key management using smart contracts
US20210056081A1 (en) Securing Access to Confidential Data Using a Blockchain Ledger
CN109688120B (en) Dynamic authority management system based on improved RBAC model and Spring Security framework
CN110149316B (en) Block chain publishing method and device
US6499059B1 (en) Method of controlling a network element using a service profile and apparatus of the same
CN113271311B (en) Digital identity management method and system in cross-link network
CN110289962B (en) UTXO model-based IBE key updating method and device
Arshad et al. Efficient and scalable integrity verification of data and query results for graph databases
CN114465817B (en) Digital certificate system and method based on TEE predictor clusters and blockchain
Manevich et al. Endorsement in Hyperledger Fabric via service discovery
CN111783128A (en) Verifiable distributed database access control method
CN106991148A (en) It is a kind of to support the full database authentication system and method for updating operation
EP3817320B1 (en) Blockchain-based system for issuing and validating certificates
Papadopoulos et al. Separating authentication from query execution in outsourced databases
CN110445765B (en) Data sharing method based on block chain, terminal device and medium
Feng et al. One-stop efficient PKI authentication service model based on blockchain
CN103346916A (en) Management method for network equipment digital certificate
Cachin et al. Stateful multi-client verifiable computation
CN110719163B (en) Information processing method, device and storage medium
CN111901339A (en) Block chain credible evidence storing method based on extensible distributed system
CN109933363A (en) The management method and device of big data software
CN109951529B (en) Resource management method and device
CN112989404A (en) Log management method based on block chain and related equipment
CN111177803B (en) Device information management method and system based on SN sequence
CN111581634B (en) Authority management method of budget platform

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant