A private key encryption and decryption trusteeship method, device and medium based on blockchain

By using encryption and smart contract technology on the blockchain, the problem that users cannot control the private key data extraction permissions is solved, and the secure hosting and traceability of private key data is achieved.

CN111082923BActive Publication Date: 2025-02-25INSPUR YUNZHOU (SHANDONG) IND INTERNET CO LTD

Patent Information

Application Number
CN201911151096.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-11-21
Publication Date
2025-02-25
Estimated Expiration
2039-11-21

AI Technical Summary

Technical Problem

The user entrusts the private key data to the custodian, which makes the user unable to control the extraction permissions of the private key data, and the private key data is in danger of being obtained in violation of regulations.

Method used

The private key encryption and decryption hosting method based on blockchain is adopted, and the private key data is encrypted by setting a private key custody password, and the private key custody password is re-encrypted by using the authorized custody party information data. Only the custody parties who obtain user authorization are allowed. Only then can the private key data be extracted.

Benefits of technology

The user control over private key data is realized, ensuring that only the authorized custodian can obtain private key data, improving security, and extracting statistical data through the blockchain's immutable record record to ensure the authenticity of the data and Traceability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN111082923B_ABST
    Figure CN111082923B_ABST
Patent Text Reader

Abstract

The present application discloses a private key data encryption and decryption trusteeship method based on blockchain, including an encryption process and a decryption process, wherein the encryption process includes obtaining a private key trusteeship password and authorized trustee information data; using the private key trusteeship password as a first encryption key, according to a first encryption and decryption algorithm, encrypting the private key data to obtain encrypted private key data; using the authorized trustee information data as a second encryption key, according to a second encryption and decryption algorithm, encrypting the private key trusteeship password to obtain an encrypted private key trusteeship password; according to a private key trusteeship smart contract, uploading the encrypted private key data and the encrypted private key trusteeship password to a private key trusteeship blockchain. The user sets a private key trusteeship password to encrypt the private key, sets an authorized trustee to encrypt the private key trusteeship password, and uploads the encrypted data to the private key trusteeship blockchain. By utilizing the immutability of the on-chain data, the user controls the private key extraction authority and retains the extraction information, thereby improving data security.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of server-side private key hosting, and in particular to a blockchain-based private key encryption and decryption hosting method, device, and medium. Background Art

[0002] With the development of the new generation of information technology, in the construction and development of new smart cities, there will be more and more connections between people, people and things, and things and things. Intelligent products and services will be integrated into people's daily lives, and a large amount of public and personal data will inevitably be generated in people's daily lives. In the context of big data and urban digital development, how to protect the security of users' personal data and privacy data has become an important issue that cannot be avoided.

[0003] In the traditional data network method, after the user successfully registers the ID for the first time, the method will automatically generate a key pair assigned to the user, namely the public key data and the private key data. Since the codes of the public key data and the private key data are relatively complex, the user often directly hands over the private key data assigned to him to the custodian for custody. When the private key data is needed for encryption and decryption, the private key data can be easily obtained from the custodian. However, the traditional private key custody method has certain security risks, because the user completely entrusts the private key data to the custodian, which makes it easy for the custodian to obtain the user's private key data. In addition, the public key data disclosed in the key pair makes it easy for the custodian to obtain the user's personal data or even privacy data. Once individual personnel of the custodian are driven by interests and illegally obtain and use the user's private key data for profit, the user will suffer irreparable losses.

[0004] As the owner of private key data, users essentially lack control over their private key data. Their private key data may be obtained by a third party without the user's authorization without the user's knowledge, leading to frequent incidents of user privacy data leakage.

[0005] Therefore, there is an urgent need to develop a new type of private key data custody method to ensure that users have control over their private key data, that is, only the user himself or a part of the custodian authorized by the user can obtain the user's private key data. Summary of the invention

[0006] The embodiments of this specification provide a blockchain-based private key encryption and decryption trusteeship method, device, and medium, which are used to solve the following technical problems in the prior art: the user completely entrusts the private key data to the trustee, resulting in the user himself being unable to control the extraction authority of the private key data, and the user's private key data is in danger of being obtained illegally.

[0007] The embodiments of this specification adopt the following technical solutions:

[0008] A private key data encryption and decryption trusteeship method based on blockchain, including encryption process and decryption process:

[0009] The encryption process includes:

[0010] Obtain the private key escrow password and authorized escrow party information data;

[0011] Using the private key escrow password as a first encryption key, encrypting the private key data according to a first encryption and decryption algorithm to obtain encrypted private key data;

[0012] Using the authorized escrow party information data as the second encryption key, according to the second encryption and decryption algorithm, the private key escrow password is encrypted to obtain an encrypted private key escrow password;

[0013] According to the private key escrow smart contract, the encrypted private key data and the encrypted private key escrow password are uploaded to the private key escrow blockchain;

[0014] The decryption process includes:

[0015] Obtain the information data of the private key custodian, compare the information data of the private key custodian with the information data of the authorized custodian, and confirm whether the authority to extract the private key data is available. If yes, then:

[0016] Extracting the encrypted private key escrow password from the private key escrow blockchain according to the private key escrow smart contract;

[0017] Using the extracted private key escrow party information data, decrypting the encrypted private key escrow password according to the second encryption and decryption algorithm to obtain a private key escrow password;

[0018] The encrypted private key data is decrypted using the private key escrow password according to the first encryption and decryption algorithm to obtain the private key data.

[0019] Optionally, the blockchain-based private key data encryption and decryption trusteeship method further includes:

[0020] Statistically extract private key custodian information data and corresponding extraction time and / or extraction times, and upload the statistical data to the private key custodian blockchain.

[0021] Optionally, the blockchain-based private key data encryption and decryption trusteeship method further includes:

[0022] Obtain a hash value of the private key escrow password, and upload the hash value of the private key escrow password to the private key escrow blockchain according to the private key escrow smart contract.

[0023] Optionally, the blockchain-based private key data encryption and decryption trusteeship method further includes:

[0024] Obtain the hash value of the input password, compare the hash value of the input password with the hash value of the private key escrow password, and confirm whether you have the authority to extract the private key data. If so, then: obtain the private key data from the private key escrow blockchain according to the private key escrow smart contract.

[0025] Optionally, the blockchain-based private key data encryption and decryption trusteeship method further includes:

[0026] Obtain user information data generated by user registration, and obtain public key data and private key data based on the user information data.

[0027] Optionally, the first encryption algorithm adopts a symmetric encryption algorithm, and the second encryption algorithm adopts an asymmetric encryption algorithm.

[0028] Optionally, the symmetric encryption algorithm includes at least one of the following: AES algorithm, SM4 algorithm.

[0029] Optionally, the asymmetric encryption algorithm includes at least one of the following: RSA algorithm, SM4 algorithm.

[0030] A private key data encryption and decryption trusteeship device based on blockchain, characterized by comprising:

[0031] at least one processor; and,

[0032] a memory communicatively connected to the at least one processor; wherein,

[0033] The memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to:

[0034] Including encryption process and decryption process,

[0035] The encryption process includes:

[0036] Obtain the private key escrow password and authorized escrow party information data;

[0037] Using the private key escrow password as a first encryption key, encrypting the private key data according to a first encryption and decryption algorithm to obtain encrypted private key data;

[0038] Using the authorized escrow party information data as the second encryption key, according to the second encryption and decryption algorithm, the private key escrow password is encrypted to obtain an encrypted private key escrow password;

[0039] According to the private key escrow smart contract, the encrypted private key data and the encrypted private key escrow password are uploaded to the private key escrow blockchain;

[0040] The decryption process includes:

[0041] Obtain the information data of the private key custodian, compare the information data of the private key custodian with the information data of the authorized custodian, and confirm whether the authority to extract the private key data is available. If yes, then:

[0042] Extracting the encrypted private key escrow password from the private key escrow blockchain according to the private key escrow smart contract;

[0043] Using the extracted private key escrow party information data, decrypting the encrypted private key escrow password according to the second encryption and decryption algorithm to obtain a private key escrow password;

[0044] The encrypted private key data is decrypted using the private key escrow password according to the first encryption and decryption algorithm to obtain the private key data.

[0045] A non-volatile computer storage medium for private key data encryption and decryption based on blockchain, storing computer executable instructions, characterized in that the computer executable instructions are set to:

[0046] Including encryption process and decryption process,

[0047] The encryption process includes:

[0048] Obtain the private key escrow password and authorized escrow party information data;

[0049] Using the private key escrow password as a first encryption key, encrypting the private key data according to a first encryption and decryption algorithm to obtain encrypted private key data;

[0050] Using the authorized escrow party information data as the second encryption key, according to the second encryption and decryption algorithm, the private key escrow password is encrypted to obtain an encrypted private key escrow password;

[0051] According to the private key escrow smart contract, the encrypted private key data and the encrypted private key escrow password are uploaded to the private key escrow blockchain;

[0052] The decryption process includes:

[0053] Obtain the information data of the private key custodian, compare the information data of the private key custodian with the information data of the authorized custodian, and confirm whether the authority to extract the private key data is available. If yes, then:

[0054] Extracting the encrypted private key escrow password from the private key escrow blockchain according to the private key escrow smart contract;

[0055] Using the extracted private key escrow party information data, decrypting the encrypted private key escrow password according to the second encryption and decryption algorithm to obtain a private key escrow password;

[0056] The encrypted private key data is decrypted using the private key escrow password according to the first encryption and decryption algorithm to obtain the private key data.

[0057] At least one of the above technical solutions adopted in the embodiments of this specification can achieve the following beneficial effects:

[0058] (1) When a user performs private key escrow, the private key data is encrypted by setting a private key escrow password. At the same time, the user selects a trusted escrow party for authorization, that is, the escrow party is allowed to extract the private key data from the private key escrow blockchain, and the private key escrow password set by the user is re-encrypted according to the information data of the authorized escrow party. Only the escrow party authorized by the user can obtain the user's private key escrow password using its own information data, and further obtain the user's private key. The escrow party that is not authorized by the user cannot obtain the user's private key escrow password, and thus cannot obtain the user's private key data. The encrypted private key data and the encrypted private key escrow password are uploaded to the private key escrow blockchain through the private key escrow smart contract. The private key escrow smart contract is used to realize the private key extraction permission control and the automatic encryption, storage and decryption extraction of private key data, so that the user controls the extraction permission of the private key data, and only the escrow party authorized by the user can extract it. At the same time, the password information in the encryption and decryption process of the private key data is hidden, thereby achieving the purpose of improving security.

[0059] (2) By collecting statistics on the time and number of times the private key custodian information data is extracted and the private key data extraction operation is performed, these statistics are uploaded to the private key custodian blockchain. Through blockchain-level log records, the statistical data is recorded and traced, ensuring the authenticity and immutability of the statistical data. In this way, on the one hand, each private key extraction operation can be traced and verified; on the other hand, if an unauthorized person illegally extracts the user's private key data, it can also be recorded and evidenced, which is convenient for tracing.

[0060] (3) By uploading the hash value of the private key escrow password to the private key escrow blockchain and comparing it with the hash value of the input escrow password, users can easily extract private key data and perform operations.

[0061] (4) The security of user private key data is enhanced by using a combination of symmetric encryption algorithms and asymmetric encryption and decryption algorithms to encrypt and decrypt user private key data. BRIEF DESCRIPTION OF THE DRAWINGS

[0062] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0063] Figure 1A flowchart of the encryption process in the blockchain-based private key encryption and decryption trusteeship method provided in the embodiment of this specification;

[0064] Figure 2 A flowchart of the decryption process of the blockchain-based private key encryption and decryption trusteeship method provided in the embodiment of this specification. DETAILED DESCRIPTION

[0065] In order to make the purpose, technical solutions and advantages of this specification more clear, the technical solutions of this application will be clearly and completely described below in combination with the specific embodiments of this specification and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of this application, not all of them. Based on the embodiments in the specification, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0066] The technical solutions provided by various embodiments of the present application are described in detail below in conjunction with the accompanying drawings.

[0067] The solution of this application provides a private key data encryption and decryption trusteeship method based on blockchain, including encryption process and decryption process:

[0068] The encryption process includes:

[0069] Obtain the private key escrow password and authorized escrow party information data;

[0070] Using the private key escrow password as a first encryption key, encrypting the private key data according to a first encryption and decryption algorithm to obtain encrypted private key data;

[0071] Using the authorized escrow party information data as the second encryption key, according to the second encryption and decryption algorithm, the private key escrow password is encrypted to obtain an encrypted private key escrow password;

[0072] According to the private key escrow smart contract, the encrypted private key data and the encrypted private key escrow password are uploaded to the private key escrow blockchain;

[0073] The decryption process includes:

[0074] Obtain the information data of the private key custodian, compare the information data of the private key custodian with the information data of the authorized custodian, and confirm whether the authority to extract the private key data is available. If yes, then:

[0075] Extracting the encrypted private key escrow password from the private key escrow blockchain according to the private key escrow smart contract;

[0076] Using the extracted private key escrow party information data, decrypting the encrypted private key escrow password according to the second encryption and decryption algorithm to obtain a private key escrow password;

[0077] The encrypted private key data is decrypted using the private key escrow password according to the first encryption and decryption algorithm to obtain the private key data.

[0078] To facilitate the understanding of the present invention, the specific steps of the above-mentioned blockchain-based private key data encryption and decryption trusteeship method are further described below:

[0079] First, build a private key escrow blockchain network, deploy a private key escrow smart contract on the built private key escrow blockchain, and save data information and log trace information through the deployed private key escrow smart contract.

[0080] In some embodiments of the present application, a private key escrow blockchain is built using a Hyperledger fabric blockchain network.

[0081] In some embodiments of the present application, when a user registers for the first time, user information data is generated. The user information data includes, for example, a user ID. The user ID is recorded as U. The user registers his identity in the Hyperledger fabric network with U as the user name, and obtains public key data and private key data.

[0082] The process of encrypting private key data is:

[0083] The user sets his / her own private key escrow password and records the private key escrow password as PWD. According to the private key escrow smart contract, the hash value of the private key escrow password PWD is automatically saved in the blockchain database for verification.

[0084] At the same time, the user authorizes the custodian he trusts. The authorized custodian is the person allowed by the user to extract his private key data from the private key custodian blockchain. The number of authorized custodians is recorded as n.

[0085] Obtain a user information list of the authorized trustee, wherein the user information list at least includes the authorized trustee information data.

[0086] The user private key data is encrypted using the first encryption and decryption algorithm with the private key escrow password PWD as the first encryption key to obtain the encrypted private key data, and the obtained encrypted private key data is recorded as EK.

[0087] The private key escrow password PWD is encrypted using the second encryption algorithm and the public key of each authorized user to obtain a set of encrypted private key escrow passwords, and the obtained encrypted private key escrow passwords are recorded as EP1-EPn.

[0088] Assemble the above information into a json string and write it into the private key escrow blockchain, using U as the key.

[0089] Among them, the json structure is as follows:

[0090]

[0091] The process of decrypting the private key data and extracting the private key data is as follows:

[0092] The custodian who performs the private key data extraction operation inputs his information data, that is, extracts the private key custodian information data, which includes the private key in its user information. Compare the extracted private key custodian information data with the user-authorized custodian information data to confirm whether it is one of the custodians authorized by the user. If it is, it has the authority to extract the private key data. After confirming that it has the authority, the encrypted private key custodian password EP is automatically extracted from the private key custodian blockchain according to the private key custodian smart contract. EP is one of EP1-EPn. According to the private key in the user information of the extracted private key custodian, the encrypted and decrypted private key custodian password EP is decrypted using the second encryption and decryption algorithm to obtain the private key custodian password PWD. Finally, according to the private key custodian password PWD, the encrypted private key data EK is decrypted using the first encryption and decryption algorithm to obtain the user's private key data.

[0093] When performing private key escrow, the user encrypts the private key data by setting a private key escrow password. At the same time, the user authorizes some escrow parties that he trusts to allow them to extract his private key data. The private key escrow password set by the user is encrypted using the authorized escrow party's own information data. In this way, only the escrow party authorized by the user can decrypt the encrypted private key escrow password, so as to further obtain the user's private key data, while the unauthorized escrow party cannot decrypt the user's private key escrow password and cannot obtain the private key data. The encrypted private key data and the encrypted private key escrow password are uploaded to the private key escrow blockchain through the private key escrow smart contract, so that the user can control the extraction authority of the private key data and hide the password information in the encryption and decryption process of the private key data, thereby achieving the purpose of improving security.

[0094] In some embodiments of the present application, the first encryption algorithm adopts a symmetric encryption algorithm, and the symmetric encryption algorithm includes, for example, at least one of the following: AES algorithm, SM4 algorithm.

[0095] In some embodiments of the present application, the second encryption algorithm adopts an asymmetric encryption algorithm, and the asymmetric encryption algorithm includes, for example, at least one of the following: RSA algorithm, SM4 algorithm.

[0096] By comprehensively using multiple encryption and decryption algorithms such as symmetric encryption algorithms and asymmetric encryption and decryption algorithms to encrypt and decrypt user private key data, the security of user private key data is enhanced.

[0097] In some embodiments of the present application, the blockchain-based private key data encryption and decryption trusteeship method also includes statistically extracting private key trustee information data and the corresponding extraction time, and uploading the statistical data to the private key trusteeship blockchain.

[0098] The extracted private key custodian information data is written into the blockchain, and the key is the user ID. The log content json structure is as follows:

[0099]

[0100] Of course, it is understandable that the statistical information uploaded to the blockchain log can be not only the extraction time, but also the number of extractions and other information related to the extraction of private key data on the blockchain. By statistically extracting the private key custodian information data and the time and number of extraction operations corresponding to it, these statistical data are uploaded to the private key custodian blockchain, and the blockchain-level log records are used to verify the authenticity and immutability of the statistical data. In this way, each private key extraction operation can be traced and verified. If unauthorized personnel illegally extract user private key data, traces can be left as evidence for easy tracing.

[0101] In some embodiments of the present application, the blockchain-based private key data encryption and decryption trusteeship method further includes obtaining a hash value of a private key trusteeship password, and uploading the hash value of the private key trusteeship password to a private key trusteeship blockchain according to a private key trusteeship smart contract. When a user sets a private key trusteeship password, the private key trusteeship smart contract automatically calculates the hash value of the private key trusteeship password and uploads it to the private key trusteeship blockchain.

[0102] When the user needs to operate the private key data in advance, he only needs to enter the password. If the hash value of the password entered by the user is consistent with the hash value of the private key escrow password stored in the blockchain, it is confirmed that he has the authority to extract the private key data, and the private key data is automatically obtained from the private key escrow blockchain according to the private key escrow smart contract. By uploading the hash value of the private key escrow password to the private key escrow blockchain and comparing it with the hash value of the input escrow password, it is convenient for users to extract private key data and operate.

[0103] Some embodiments of the present application provide corresponding Figure 1 The blockchain-based private key encryption and decryption hosting device includes:

[0104] at least one processor; and,

[0105] a memory communicatively connected to the at least one processor; wherein,

[0106] The memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to:

[0107] Including encryption process and decryption process,

[0108] The encryption process includes:

[0109] Obtain the private key escrow password and authorized escrow party information data;

[0110] Using the private key escrow password as a first encryption key, encrypting the private key data according to a first encryption and decryption algorithm to obtain encrypted private key data;

[0111] Using the authorized escrow party information data as the second encryption key, according to the second encryption and decryption algorithm, the private key escrow password is encrypted to obtain an encrypted private key escrow password;

[0112] According to the private key escrow smart contract, the encrypted private key data and the encrypted private key escrow password are uploaded to the private key escrow blockchain;

[0113] The decryption process includes:

[0114] Obtain the information data of the private key custodian, compare the information data of the private key custodian with the information data of the authorized custodian, and confirm whether the authority to extract the private key data is available. If yes, then:

[0115] Extracting the encrypted private key escrow password from the private key escrow blockchain according to the private key escrow smart contract;

[0116] Using the extracted private key escrow party information data, decrypting the encrypted private key escrow password according to the second encryption and decryption algorithm to obtain a private key escrow password;

[0117] The encrypted private key data is decrypted using the private key escrow password according to the first encryption and decryption algorithm to obtain the private key data.

[0118] Some embodiments of the present application provide corresponding Figure 1 A non-volatile computer storage medium for total factor quality data management, storing computer executable instructions, wherein the computer executable instructions are configured as follows:

[0119] Including encryption process and decryption process,

[0120] The encryption process includes:

[0121] Obtain the private key escrow password and authorized escrow party information data;

[0122] Using the private key escrow password as a first encryption key, encrypting the private key data according to a first encryption and decryption algorithm to obtain encrypted private key data;

[0123] Using the authorized escrow party information data as the second encryption key, according to the second encryption and decryption algorithm, the private key escrow password is encrypted to obtain an encrypted private key escrow password;

[0124] According to the private key escrow smart contract, the encrypted private key data and the encrypted private key escrow password are uploaded to the private key escrow blockchain;

[0125] The decryption process includes:

[0126] Obtain the information data of the private key custodian, compare the information data of the private key custodian with the information data of the authorized custodian, and confirm whether the authority to extract the private key data is available. If yes, then:

[0127] Extracting the encrypted private key escrow password from the private key escrow blockchain according to the private key escrow smart contract;

[0128] Using the extracted private key escrow party information data, decrypting the encrypted private key escrow password according to the second encryption and decryption algorithm to obtain a private key escrow password;

[0129] The encrypted private key data is decrypted using the private key escrow password according to the first encryption and decryption algorithm to obtain the private key data.

[0130] Each embodiment in this application is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the device and medium embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiments.

[0131] The devices and media provided in the embodiments of the present application correspond one-to-one to the methods. Therefore, the devices and media also have similar beneficial technical effects as the corresponding methods. Since the beneficial technical effects of the methods have been described in detail above, the beneficial technical effects of the devices and media will not be repeated here.

[0132] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0133] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0134] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0135] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0136] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0137] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0138] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0139] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0140] The above is only the embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims

1. A private key data encryption and decryption trusteeship method based on blockchain, including an encryption process and a decryption process, characterized in that: The encryption process includes: Obtain the private key escrow password and the authorized escrow party information data; obtain the authorized escrow party public key data according to the authorized escrow party information data; Using the private key escrow password as a first encryption key, encrypting the private key data according to a first encryption and decryption algorithm to obtain encrypted private key data; Using the authorized escrow party's public key data as a second encryption key, according to a second encryption and decryption algorithm, encrypt the private key escrow password to obtain an encrypted private key escrow password; Obtaining a hash value of the private key escrow password; According to the private key escrow smart contract, the hash value of the private key escrow password, the encrypted private key data and the encrypted private key escrow password are uploaded to the private key escrow blockchain; If the subject extracting the private key data is the private key custodian, the decryption process includes: Obtain the extracted private key custodian information data, obtain the extracted private key custodian private key data according to the extracted private key custodian information data, compare the extracted private key custodian information data with the authorized custodian information data, and confirm whether the authority to extract the private key data is available. If yes, then: Extracting the encrypted private key escrow password from the private key escrow blockchain according to the private key escrow smart contract; Using the extracted private key data of the private key escrow party, decrypt the encrypted private key escrow password according to the second encryption and decryption algorithm to obtain the private key escrow password; Decrypting the encrypted private key data using the private key escrow password according to the first encryption and decryption algorithm to obtain the private key data; If the subject extracting the private key data is the owner of the private key data, the decryption process includes: Obtaining a hash value of a password input by the owner of the private key data; Compare the hash value of the input password with the hash value of the private key escrow password to confirm whether the user has the authority to extract the private key data; If so, the private key data is obtained from the private key escrow blockchain according to the private key escrow smart contract.

2. The blockchain-based private key data encryption and decryption trusteeship method according to claim 1 is characterized in that: Also includes: Statistically extract private key custodian information data and corresponding extraction time and / or extraction times, and upload the statistical data to the private key custodian blockchain.

3. The blockchain-based private key data encryption and decryption trusteeship method according to claim 1 is characterized in that: The first encryption algorithm adopts a symmetric encryption algorithm, and the second encryption algorithm adopts an asymmetric encryption algorithm.

4. The blockchain-based private key data encryption and decryption trusteeship method according to claim 3 is characterized in that: The symmetric encryption algorithm includes at least one of the following: AES algorithm, SM4 algorithm.

5. The blockchain-based private key data encryption and decryption trusteeship method according to claim 3 is characterized in that: The asymmetric encryption algorithm includes at least one of the following: RSA algorithm, SM4 algorithm.

6. A private key data encryption and decryption hosting device based on blockchain, characterized in that: include: at least one processor; as well as, a memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the blockchain-based private key data encryption and decryption custody method described in any one of claims 1-5.

7. A non-volatile computer storage medium for private key data encryption and decryption based on blockchain, storing computer executable instructions, characterized in that: The computer executable instructions are configured to be able to execute a blockchain-based private key data encryption and decryption trusteeship method as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Private key management method and apparatus for bastion host

    CN107181589A

Cited By

  • End-to-end encryption for teams utilizing a team-based stratified key structure

    US20260149582A1