CN111385350A - Quantum computation resistant blockchain transaction method and system based on one-time-varying secret sharing and routing device - Google Patents

Quantum computation resistant blockchain transaction method and system based on one-time-varying secret sharing and routing device Download PDF

Info

Publication number
CN111385350A
CN111385350A CN202010090163.9A CN202010090163A CN111385350A CN 111385350 A CN111385350 A CN 111385350A CN 202010090163 A CN202010090163 A CN 202010090163A CN 111385350 A CN111385350 A CN 111385350A
Authority
CN
China
Prior art keywords
routing device
transaction
public key
user
key
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN202010090163.9A
Other languages
Chinese (zh)
Other versions
CN111385350B (en
Inventor
富尧
钟一民
杨羽成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ruban Quantum Technology Co Ltd
Nanjing Ruban Quantum Technology Co Ltd
Original Assignee
Ruban Quantum Technology Co Ltd
Nanjing Ruban Quantum Technology Co Ltd
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 Ruban Quantum Technology Co Ltd, Nanjing Ruban Quantum Technology Co Ltd filed Critical Ruban Quantum Technology Co Ltd
Priority to CN202010090163.9A priority Critical patent/CN111385350B/en
Publication of CN111385350A publication Critical patent/CN111385350A/en
Application granted granted Critical
Publication of CN111385350B publication Critical patent/CN111385350B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • 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/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
    • 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/3242Cryptographic 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 keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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

Abstract

The invention discloses a quantum computation resistant blockchain transaction method and system based on one-time variable secret sharing and routing devices, which comprises a blockchain network consisting of more than one intranet in communication connection, wherein each intranet is provided with a plurality of users and routing devices, the users are in communication connection with the routing devices in the intranet where the users are located, and each routing device is provided with a blockchain client side for providing CA service; the routing device issues key fobs and keys for users in the intranet where the routing device is located, and the keys of the users are stored in a secret sharing mode in a distributed mode. The invention is used as a transaction initiator and a routing device to perform bidirectional verification firstly, then to send a signature transaction formally after the verification is passed, and the user and the routing device need to sign respectively to complete a complete transaction signature.

Description

Quantum computation resistant blockchain transaction method and system based on one-time-varying secret sharing and routing device
Technical Field
The invention relates to the technical field of blockchain information security, in particular to a quantum computation resistant blockchain transaction method and system based on one-time-varying secret sharing and routing devices.
Background
The block chain is a brand new distributed infrastructure and a calculation paradigm, stores data by using an ordered chain data structure, updates the data by using a consensus algorithm, and ensures data security by using a cryptography technology. In blockchain based transactions, ensuring data security for the transaction and privacy for the customer is a necessary condition for the blockchain to be able to develop further. For this reason, cryptography, and in particular public key cryptography, is widely used in blockchains.
As most people know, quantum computers have great potential in password cracking. The asymmetric (public key) encryption algorithms, such as the RSA encryption algorithm, which are mainstream today, are mostly based on two mathematical challenges, namely factorization of large integers or computation of discrete logarithms over a finite field. Their difficulty in breaking is also dependent on the efficiency with which these problems are solved. On a traditional computer, the two mathematical problems are required to be solved, and the time is taken to be exponential (namely, the cracking time increases in exponential order along with the increase of the length of the public key), which is not acceptable in practical application. The xiuer algorithm tailored for quantum computers can perform integer factorization or discrete logarithm calculation within polynomial time (i.e. the cracking time increases at the speed of k power along with the increase of the length of a public key, wherein k is a constant irrelevant to the length of the public key), thereby providing possibility for the cracking of RSA and discrete logarithm encryption algorithms.
The patent document with publication number 109660344a discloses a quantum computation resistant blockchain transaction method based on an asymmetric key pool routing device, wherein each user and each routing device are respectively provided with a key fob, and a private key of the routing device of the own party, an asymmetric key pool, a random number of a public key pointer of the routing device and an intranet public key set are stored in the key fob of the routing device; the user key card stores the private key of the own user and the public key of the routing device; asymmetric key pools in all the routing device key cards are the same, and user public keys of all users in the intranet are stored in the intranet public key set. However, in this method, if the key fob is lost or stolen, it may be directly used and damage the rights and interests corresponding to the user account. For example, the user account is transferred with the right, and the right is stolen.
Further, patent document CN107944255A discloses a key management method for a block chain, in which two pairs of keys are allocated to each user who joins the block chain, a pair of backup keys is generated in a key management center, and for each user in the block chain, although two pairs of keys are configured, the key management center generates a pair of backup keys, and for each pair of master keys, a pair of slave keys, and a pair of backup keys, the key management center defines a multiple signature verification script for the block chain transaction process by setting weights for the master key pair, the slave key pair, and the backup key pair, respectively. After the key pair is lost or stolen, the content of the key is easily acquired by an enemy, and the key management method has great risk and cannot realize reliable protection on the privacy and information safety of the user.
In summary, the problems of the prior art are as follows:
1. after the key fob is lost or stolen, the key fob may be hacked to obtain the internal key. If the private key of the blockchain system is known to the enemy, the ownership of the blockchain account corresponding to the private key is lost. If the public key of the asymmetric key system is known by an enemy, if the enemy owns the quantum computer, the private key is cracked through the public key, and the ownership corresponding to the private key is lost.
2. After the key fob is lost or stolen, it may be directly used and may damage the rights and interests corresponding to the user account. For example, the user account is transferred with the right, and the right is stolen.
Disclosure of Invention
The technical purpose is as follows: in order to solve the technical problems, the invention provides an anti-quantum computation blockchain system based on one-time-varying secret sharing and routing devices,
the technical scheme is as follows: in order to realize the technical purpose, the invention adopts the following technical scheme:
a quantum computation resistant blockchain transaction method based on one-time-varying secret sharing and routing devices is characterized in that: the block chain network comprises a block chain network formed by more than one intranet in communication connection, wherein each intranet is provided with a plurality of users and routing devices, the users are in communication connection with the routing devices in the intranet where the users are located, and each routing device is provided with a block chain client side for providing registration and authentication services;
each user and each routing device are respectively provided with a key fob, the routing devices issue the key fobs and keys for the users in the intranet where the routing devices are located, the private keys of each user are stored in a distributed mode in a secret sharing mode (2,2), and each private key obtains a group of private key secret components; each private key secret component comprises a random number and a private key component, a corresponding public key component is calculated according to the private key component, and the private key component and the public key component are respectively stored in a key fob of the routing device and a corresponding user key fob;
the method comprises the following transaction steps:
the user is used as a transaction initiator, before sending transaction content to a routing device of an intranet where the user is located, bidirectional verification is carried out between the user and the routing device, and the next step is carried out if the verification is passed;
the user sends a user transaction including a first signature to a routing device of an intranet where the user is located, wherein the first signature is obtained by taking out a private key component stored in a key card of the user and calculating generated transaction content;
the routing device judges the received user transaction and verifies the first signature;
the routing device calculates a second signature for the user transaction passing the verification, wherein the second signature is obtained by taking out a private key component stored in the key card of the routing device and calculating the received transaction content;
the routing device calculates a third signature according to the first signature and the second signature;
the routing device sending the client transaction including the third signature to other routing devices in the blockchain network in a broadcast manner;
and after finding that the client transaction is successfully submitted to the blockchain, the routing device sends a transaction notification to the initiator user.
Preferably, the method for issuing the key fob by the routing device is as follows:
the routing device issues a first private key and a plurality of second private keys for each user, the private keys are stored in a distributed mode in a secret sharing mode (2,2), a key pointer function, a key coefficient pointer function and a random number Nonce are stored in the user key fob and the routing device key fob, key components are extracted according to the key pointer function and the key coefficient pointer function, and transaction information of each transaction of the users in the intranet in which the routing device key fob is located is stored in the routing device key fob;
in each transaction process, a first private key component used by a user or a routing device is a fixed value, a second private key component is a calculated value only used for the transaction, the second private key component directly used for the transaction is recorded as the calculated value second private key component, the calculated value second private key component is obtained by searching the second private key component stored in the current key fob and calculating, each public key component is obtained by calculating according to the corresponding private key component, and a complete public key or private key used in the transaction process is obtained by calculating the corresponding public key component or private key component by adopting a secret sharing recovery method.
Preferably, the method for issuing the key fob by the routing device is as follows:
the routing device carries out (2,2) secret sharing on each private key of the user to obtain a corresponding random number I, a random number II, a first private key component I, a first private key component II, a plurality of groups of second private key components I and second private key components II, and a corresponding public key component is obtained through calculation according to each private key component;
storing the hash value of the random number two into a random number pool of the user key fob, storing the first public key component one, the multiple groups of second public key components one and the first public key component two into a public key pool of the user key fob, storing the first private key component one and the multiple groups of second private key components one into a private key pool of the user key fob, and storing the CA signature into a certificate pool of the user key fob; the CA signature is obtained by adopting a CA private key to carry out combined signature on the user ID and the first public key;
and storing the first random number and the second random number into a random number pool of the routing device key fob, storing the first public key component two, the multiple groups of the second public key component two and the public keys of all the routing devices into a public key pool of the routing device key fob, storing the first private key component two and the multiple groups of the second private key component two into a private key pool of the routing device key fob, and storing the private key of the routing device and the CA public key into a private area of the routing device key fob.
Preferably, the user who is the transaction initiator comprises the steps of:
in the process of bidirectional verification between a user and a routing device, calculating to obtain a first calculated value second public key component, a first calculated value second private key component and a complete calculated value second public key for the transaction;
generating transaction content, wherein the transaction content comprises but is not limited to a timestamp and an address of a transaction initiator, and the address of the transaction initiator comprises a hash value of a second public key of the user and an ID (identity) of a routing device in the same intranet;
dividing the calculated value second public key into a second public key x component and a second public key y component, calculating the second public key x component to obtain a first intermediate verification parameter, calculating a hash value of the combination of the first intermediate verification parameter and the transaction content and taking the hash value as a transaction content ciphertext I, and calculating a first signature according to the first private key component I, the calculated value second private key component I and the transaction content ciphertext I;
the user transaction including the transaction content and the first signature is sent to a routing device located on the same intranet as the routing device.
Preferably, the routing device located in the same intranet as the originating device includes:
in the bidirectional verification process of the routing device and the user, obtaining a calculated value second public key component II, a calculated value second private key component II, a first public key component I, a calculated value second public key component I and a calculated value second public key for the transaction;
judging whether the user ID belongs to the routing device and whether the routing device ID is the routing device ID;
judging whether the timestamp in the transaction content is reasonable or not;
and if the judgment is passed, verifying the first signature:
dividing the calculated value of the second public key into a second public key x component and a second public key y component, calculating the second public key x component to obtain a second intermediate verification parameter, calculating a hash value of the combination of the second intermediate verification parameter and the transaction content and taking the hash value as a transaction content ciphertext II, and comparing the value calculated according to the first public key component I, the calculated value of the second public key component I and the transaction content ciphertext II with the value of the first signature;
after the verification is passed, the routing device calculates transaction information and temporarily stores the key information in the local;
preferably, the routing device located in the same intranet as the originating device includes a transaction step:
after the verification is passed, the routing device calculates to obtain a second signature according to the second first private key component, the second calculated value, the second private key component and the second transaction content ciphertext;
the routing device calculates a third signature according to the first signature and the second signature, and encrypts a combination of the first public key of the user and the second transaction content ciphertext by using a private key of the routing device to obtain a second ciphertext;
and the routing device sends client transactions including the third signature to other routing devices in the blockchain network in a broadcasting mode, wherein the client transactions include transaction contents, the third signature, the CA signature and the second ciphertext.
Preferably, the routing device located in the same intranet as the originating device includes a transaction step:
after the routing device finds that the client transaction is successfully submitted to the blockchain, notification content is generated;
and calculating a hash value of the combination of the second intermediate verification parameter, the notification content and the Nonce, using the hash value as a transaction notification ciphertext, calculating a notification signature according to the second first private key component, the second calculated private key component and the transaction notification ciphertext, and sending the notification content and the notification signature to a corresponding user.
Preferably, the other routing devices in the blockchain network, which verify the client transaction, include the steps of:
acquiring the ID of the routing device where the initiator is located from the client transaction, then taking out the corresponding public key of the routing device from the local public key pool, and decrypting the second encrypted text to obtain a first public key and a second transaction content ciphertext;
verifying the CA signature by adopting a local CA public key;
calculating to obtain a new calculated value second public key according to the transaction content ciphertext II, the first public key and the third signature, further obtaining a new calculated value second public key x component, calculating the new second public key x component to obtain a third intermediate verification parameter, calculating a hash value of the combination of the third intermediate verification parameter and the transaction content to obtain a transaction content ciphertext III, comparing the transaction content ciphertext III with the transaction content ciphertext II obtained by decryption, and verifying whether the transaction content ciphertext III is the same or not;
and after the verification is passed, the transaction verification is successful, and the transaction is placed into a local cache transaction pool.
Preferably, the bidirectional authentication comprises the steps of:
the user generates a first encrypted message and a first message authentication code and sends the first encrypted message and the first message authentication code to a routing device;
the routing device verifies the first message authentication code;
the routing device sends a third ciphertext and a second message authentication code to the user;
the user verifies the second message authentication code; wherein the content of the first and second substances,
the first encrypted text is obtained by adopting the combination encryption of a first public key component pair, namely a first public key component I, a calculated value, a second public key component I and a Nonce, an offset is added in the encryption process, and the offset is obtained by calculation according to a random number II and a timestamp;
the first message authentication code is obtained by adopting the hash value of a random number two to calculate the combination of a timestamp, a first public key component I, a calculated value, a second public key component I and a Nonce;
when the first encrypted text is decrypted, the routing device calculates the offset by taking out the random number two from the key fob of the routing device and combining the time stamp, and then decrypts the random number two according to the offset and the first private key component two to obtain a first public key component I, a calculated value second public key component I and a Nonce;
when the first message authentication code is verified, the routing device performs combined calculation by using a random number two-pair timestamp, a first public key component I, a calculated value second public key component I and a Nonce to obtain a message authentication code, and judges whether the obtained message authentication code is consistent with the first message authentication code;
the second message authentication code is obtained by calculating a timestamp and a calculated value second public key by using a hash value of a random number two, the third ciphertext is obtained by encrypting the calculated value second public key by using a first public key component, and an offset is added in the encryption process, wherein the offset is the hash value of the Nonce and the timestamp;
when the third encrypted text is decrypted, the hash value of the Nonce and the timestamp is calculated by the user to serve as an offset, and the third encrypted text is decrypted according to the offset and the first private key component to obtain a calculated value second public key;
when the second message authentication code is verified, the user calculates the time stamp and the calculated value by using the hash value of the random number two, the obtained message authentication code is compared with the second message authentication code, if the obtained message authentication code is consistent with the second message authentication code, the verification is passed, and the bidirectional verification is finished.
The invention also provides a quantum computation resistant blockchain transaction system based on the one-time-to-one secret sharing and routing device, which is characterized in that: the block chain network comprises a block chain network formed by more than one intranet in communication connection, wherein each intranet is provided with a plurality of users and routing devices, the users are in communication connection with the routing devices in the intranet where the users are located, and each routing device is provided with a block chain client side for providing registration and authentication services;
each user and each routing device are respectively provided with a key fob, the routing devices issue the key fobs and keys for the users in the intranet where the routing devices are located, the private keys of each user are stored in a distributed mode in a secret sharing mode (2,2), and each private key obtains a group of private key secret components; each private key secret component comprises a random number and a private key component, a corresponding public key component is calculated according to the private key component, and the private key component and the public key component are respectively stored in a key fob of the routing device and a corresponding user key fob;
each user and the routing device respectively comprise a memory and a processor, wherein the memory stores a computer program, and the processor realizes the quantum computation resistant block chain transaction method of the secret sharing and routing device when executing the computer program.
Has the advantages that:
1. after the key fob is lost or stolen, the key fob cannot be cracked violently to obtain the internal key. If the adversary acquires the user's key fob, the user's key fob has PK stored thereina、PKb、SKaThe SK, PK cannot be recovered using secret sharing, i.e. without any valid identity-related key information. If the adversary acquires the routing device key fob, x is stored in the routing device key foba、xb、PKb、SKbThe SK, PK cannot be recovered using secret sharing, i.e. without any valid identity-related key information. Because the private key of the blockchain system cannot be known by an enemy, and a plurality of identical user key fobs are issued at the same time as backups each time the user key fobs are issued, the private key cannot be maliciously acquired, and the private key cannot be lost, so that all rights and interests of the blockchain account corresponding to the private key are greatly protected.
2. Before a user formally sends a message containing transaction content to a routing device, the user and the routing device perform bidirectional authentication, in the bidirectional authentication process, the user and the routing device use a key component stored by a key card of the user and operate the sent or received message, a key used for operation comprises a one-time variable key component, and the one-time variable key component is obtained by searching key components stored in a plurality of local key areas and is calculated, so that the use safety of the key is further improved.
3. After the key fob is lost or stolen, it is not easily used and ownership of the blockchain account is transferred. The user end must deal in the intranet controlled by the corresponding routing device, that is, the user signature and the routing device are required to sign to complete the complete transaction signature; the enemy can not trade in the external network, namely the enemy can not obtain the signature of the routing device after signing in the external network, so that the enemy can not obtain a complete trade signature. Thus, the ownership of the blockchain account corresponding to the key fob is greatly protected.
Drawings
FIG. 1 is a block diagram of a system according to an embodiment of the present invention;
FIG. 2 is a block diagram of a key block of a user-side key fob according to the present invention;
fig. 3 is a diagram of a key zone structure of a routing device key fob of the present invention.
Detailed Description
Description of the System
The system structure diagram of the embodiment of the invention is shown in fig. 1, and the cryptographic system for the communication between the user side and the routing device uses an ECC system.
When the routing device issues a key fob for a user, the domain parameters of the elliptic curve including q, a, b, P and n are selected first. q represents the size of the finite field Fq; the variables a and b being elliptic curves y2=x3A coefficient of + ax + b, satisfies 4a3+27b2Not equal to 0; p is the base point generator. After the elliptic curve is generated, a base point generator P is selected, which satisfies that the order is an integer n. The generated private key sk and public key pk satisfy pk sk P. The relevant parameters q, a, b, P, n of the algorithm are written to the key fob designated area.
The secret sharing of (2,2) is performed for the private key SK of each user side. When secret sharing of (t, n) is carried out on information m, n is the number of fragments of m for splitting shared secret, t is the minimum number of fragments required for recovering m, and t is more than or equal to 2 and less than or equal to n.
Generating two secret shared random numbers xa,xbFor the secret key SK, two secrets are calculated, i.e. the secret component is (x)a,SKa),(xb,SKb)。
SK can be recovered by collecting 2 groups of secrets, and the specific steps are as follows:
2 sets of secret lagrangian parameters
Figure BDA0002383423770000071
Wherein
Figure BDA0002383423770000072
To obtain
Figure BDA0002383423770000073
In the case of an ECC system: PKa=SKa*P,PKb=SKbP. The PK is SK P
Figure BDA0002383423770000081
Each routing device manages key fob issuance for multiple users within the local network. Each time a user key fob is issued, several identical user key fobs are issued at the same time as backups and managed by the administrator, preventing the user key fobs from being lost.
Let the mth user key fob be affiliated with the nth routing device.
Generating a random number SK upon key fob issuance to a userMainAnd SKTempAs a private key, and (2,2) secret sharing is performed to obtain (x)a,SKaMain),(xb,SKbMain),(xa,SKaTemp),(xb,SKbTemp) And respectively storing the data into the routing device and the key card of the user, wherein the specific storage mode is as follows:
the structure of the key area of the key card at the user end is shown in fig. 2. The specific structure is described as follows:
random number hash value Hxb=H(xb) H (#) is a hash operation;
public key pool including PKaRegion and PKbA zone;
the pool of secret shared private keys comprises SKaA zone;
in the signature pool, the value of the CA signature area unit is SIGCA=SIGNRsA(IDM||PKMain,SKCA). Wherein IDM is ID, SIGN of Mth userRSA(m, sk) denotes RSA signing of the message m using the private key sk. Because IDM PKMainPK of (1)MainNot known to the enemy, so that the enemy cannot pass through the SIGCASolving SKCA
The key fob is obtained in a secure manner (e.g., by registration of devices on the intranet, secure introduction of corresponding keys into the key fob).
PK in key fobMain/SKMainIs fixed, PKTemp/SKTempAnd the key is searched in the key area and calculated. Since all keys are handled by secret sharing, what is actually stored is a set of Hxb/PKaMain/SKaMain/PKbMain/SIGCAMultiple groups of PKaTemp/SKaTemp
The structure of the key card key area of the routing device is shown in fig. 3 (M users, N routing devices).
Each user corresponds to a group x in the key areaa/xb/PKbMain/SKbMainMultiple groups of PKbTemp/SKbTemp
The routing device public key pool stores RSA public keys of all routing devices, and the public key of the routing device can be acquired from the routing device public key pool according to the ID of the routing device. The RSA public key described here does not include the RSA algorithm parameter ModN, i.e. the product of two large prime numbers.
The private zone of the routing device key fob may be an area of higher security within the present key fob, such as within a secure chip. Or it may be a private zone key fob controlled with a routing device key fobAnd can ensure that there is no hostile wired communication connection such as a USB connection, or controlled with a routing device key fob and can ensure that there is no hostile wireless communication connection such as an NFC connection. The private area of the routing device key fob stores the private key SK of the routing device and the public key PK of the CACAAnd an RSA algorithm parameter ModN. If the ModN is acquired by an enemy, the enemy can decompose the ModN into a product of two large texels by using a quantum computer and then crack an RSA public key and a private key; the RSA algorithm is stored in a private part and is not acquired by an enemy, so that the RSA algorithm has stronger capability of resisting quantum computing attack.
And (3) transaction flow:
each routing device has a blockchain client. The blockchain data is not stored in the user, but in the routing device. The routing device does not initiate a transaction, which is initiated by the user.
A user reads blockchain transaction data from a routing device; for example, the routing device can share the information to the intranet user in a document sharing or database mode; because of the public link, the data does not need to be kept secret.
Step 1: mth user generates userSiga
1.1:
The user acquires the current timestamp Time, and calculates RK ═ h (Time).
According to KN key pointer functions { F }Pi,i∈[1,KN]}, KN key coefficient pointer functions { FUi,i∈[1,KN]Acquisition position Pi ═ FPi(RK),i∈[1,KN]F, key coefficient [ mu i ═ F }Ui(RK),i∈[1,KN]}。
From PK according to position PiaRegion, SKaRespectively taking out KN secret keys { PKaTempi,i∈[1,KN]}、{SKaTempi,i∈[1,KN]And calculate
Figure BDA0002383423770000091
Figure BDA0002383423770000092
Computing using ECIES algorithmsTo obtain EPKa=ENC(PKaMain||PKaTemp||Nonce,PKbMain)={EPKaR,EPKac,EPKat}. For EPKaRCalculating the offset to obtain EPK'a={EPKaR-HG(Hxb||Time),EPKac,EPKat}. Where HG is a hash function that maps integers to elliptic curve points.
Using HxbFor Time PKaMain||PKaTempObtaining MAC by calculating message authentication code by | Noncea=MAC(Time||PKaMain||PKaTemp||Nonce,Hxb). Where MAC (m, k) denotes the calculation of a message authentication code for message m using key k.
The User sends IDM Time EPK to the Nth routing device'a||SIGCA||MACa
1.2:
The routing device judges the rationality of the IDM, namely whether the IDM belongs to the routing device.
The routing device determines the rationality of the Time. Calculate RK ═ h (time).
From PK in a manner consistent with that described abovebRegion, SKbZone taking out
Figure BDA0002383423770000093
Figure BDA0002383423770000101
Using xbCalculating to obtain HG (Hx)bTime), further recovering EPK'aIs EPKaUsing SKbMainDecrypting EPKaObtaining PKaMain||PKaTemp| Nonce. Comparing the nonces, stopping if the nonces do not accord with the local nonces.
Using HxbFor Time PKaMain||PKaTemp'MAC is obtained by calculating message authentication code | | Nonce'a=MAC(Time||PKaMain||PKaTemp||Nonce,Hxb) With the received MACaAnd performing comparison authentication.
According to(xa,PKaTemp),(xb,PKbTemp) PK recoveryTemp(ii) a According to (x)a,PKaMain),(xb,PKbMain) PK recoveryMain. The principle is as follows:
because of the public key of the ith public key unit
Figure BDA0002383423770000102
So that the sum of KN public keys
Figure BDA0002383423770000103
Figure BDA0002383423770000104
Thus, it is possible to provide
Figure BDA0002383423770000105
In the same way
Figure BDA0002383423770000106
CA public key PK using private areaCAVerification SIGCA=SIGNRSA(IDM||PKMain,SKCA) Thus proving IDM | | | PKMainThe correctness of the operation.
Calculating to obtain EPK by using ECIES algorithmT=ENC(PKTemp,PKaMain)={EPKTR,EPKTc,EPKTt}。
The routing device takes out the current Nonce of the IDM. The method comprises the following specific steps: each routing device locally stores per-transaction txlnfo (tid (Nonce), where tid (h (tx)) of each affiliated user. All transactions of the user can be searched from the blockchain data according to tid, and the Nonce of the last transaction of the IDM can be read from Txinfo of the latest transaction of the IDM, and the Nonce is read after + 1.
For EPKTCalculating the offset to obtain EPK'T={EPKTR-HG(Nonce||Time),EPKTc,EPKTt}。
Using HxbFor Time PKTempCalculating message authentication code to obtain MACb=MAC(Time||PKTemp,Hxb)。
Will Time EPK'T||MACbAnd sending the data to a User.
1.3:
The User finds the previous request according to the Time, HG (Nonce Time) is obtained by using Nonce calculation, and EPK 'is further recovered'TIs EPKTUsing SKaMainDecrypting EPKTObtaining PKTemp
Using HxbFor Time PKTempCompute message authentication code to MAC'b=MAC(Time||PKTemp,Hxb) With the received MACbAnd performing comparison authentication.
After the authentication is passed, the User generates a transaction Tx, which can be expressed as Tx Time From To Value Data. Wherein, From is the address of the transaction initiator, which can be represented as From ═ IDM | | | IDN, IDN is the serial number of the corresponding routing device; to is the address of the transfer or the address of the smart contract, which is stored and run in the key fob; value is the amount of the transfer; data is a transaction Data field, and can be the participation required by the intelligent contract, the incidental information of the transaction and the like.
PKTempCan be expressed as (PK)Tempx,PKTempy)。
Calculating TxsigRa=PKTempx(mod q),TxsigEa=H(TxsigRa||Tx),userSiga=SKaTemp+SKaMain*TxsigEa(mod q)。
The User sends userTx to the nth routing device, which may be expressed as userTx ═ Tx, userSiga}。
Step 2: nth routing device verifies userSiga
The routing device judges the rationality of the IDM/IDN, namely whether the IDM belongs to the routing device and whether the IDN is the ID of the routing device.
The routing device determines the rationality of the Time.
And the routing device judges whether the account balance is enough to carry out the transaction in the local world state database.
The routing device takes out the current Nonce of the IDM.
PKTemp=(PKTempx,PKTempy) Calculating TxsigRb=PKTempx(mod q),TxsigEb=H(TxsigRb||Tx)。
Due to userSiga=SKaTemp+SKaMain*TxsigEa(mod q),PKaTemp=SKaTemp*P,PKaMain=SKaMain*P,TxsigRb=TxsigRa,TxsigEb=TxsigEaTherefore, if userSigaP and PKaTemp+PKaMain*TxsigEbIf they are equal, the pair userSig is completedaAnd (4) verifying.
After the verification is passed, the nth routing device temporarily stores Txinfo and the related key for subsequent signature.
And step 3: the nth routing device generates Txsig.
The Nth routing device calculates userSigb=SKbTemp+SKbMain*TxsigEb(mod q)。
Obtaining complete signature Txsig ═ SKTemp+SKMain*TxsigEb(mod q)=(λa*SKaTempb*SKbTemp)+(λa*SKaMainb*SKbMain)*TxsigEb(mod q)=λa*(SKaTemp+SKaMain*TxsigEa(mod q))+λb*(SKbTemp+SKbMain*TxsigEb(mod q))=λa*userSigab*userSigb
And 4, step 4: the nth routing device initiates the transaction.
The public and private keys of the Nth routing device are PKNAnd SKN
Calculating clientTx { Tx, Txsig, ENCRSA(PKMain||TxsigEb,SKN),SIGCA}。ENCRSA(m, sk) representsThe message m is RSA encrypted using the private key sk.
The nth routing device transmits the clientTx to the blockchain Client of each routing device through a broadcasting mechanism of the blockchain.
And 5: each routing device verifies the transaction.
The routing device receives the clientTx, acquires the IDN From the From, and acquires the public key PK of the routing device From the public key pool of the routing device according to the IDNNDecrypting ENCRSA(PKMain||TxsigEb,SKN) Obtaining PKMain||TxsigEb
With PKMainVerifying the signature Txsig, which comprises the following specific steps:
(1) CA public key PK using private areaCAVerification SIGCA=SIGNRSA(IDM||PKMain,SKCA) Thus proving IDM | | | PKMainThe correctness of the test;
(2) calculate PK'Temp=Txsig*P-PKMain*TxsigEb(ii) a The principle is as follows: txsig P-PKMain*TxsigEb=(SKTemp+SKMain*TxsigEb(mod q))*P-PKMain*TxsigEb=PKTemp+PKMain*TxsigEb-PKMain*TxsigEb=PKTemp
To obtain PK'Temp=(PK′Tempx,PK′Tempy)。
(2) Calculating TxsigR'b=PK′Tempx(mod q), further calculating TxsigE'b=H(TxsigR′b| Tx). Prepared from TxsigE'bAnd the decrypted TxsigEbAnd (6) carrying out comparison.
And after the verification is passed, the transaction verification is successful, and the transaction is placed into a local cache transaction pool.
The transaction created by the User under the router or the transaction broadcast by other routers is cached in the cache transaction pool, and each router continuously accumulates the transactions in the cache transaction pool.
Step 6: the miners form blocks.
And the miners collect a certain amount of effective transactions from the cache transaction pool, calculate to obtain the POW certificate and broadcast the release block.
And 7: the routing device performs the transaction.
The routing device invokes the smart contract to perform the transaction and changes the local world state database.
And 8: the nth routing means issues a transaction notification to the mth user key fob that presented the transaction.
And the Nth routing device finds that the transaction of the tid is successfully submitted to the block chain, and generates a transaction notification Notify to the Mth user. The notification content Notify is encrypted by ECIES, and ENtf ═ ENC (Notify, PK) is calculatedaMain)={ENtfR,ENtfc,ENtft}. For ENtfRCalculating the offset to obtain ENtf ═ { ENtfR-HG(Hxb||tid),ENtfc,ENtft}. Resulting in Ntf tid ENtf'.
If the notification content Notify may not be encrypted, Ntf | | | Notify.
Fetching the TxInfo and related key, PK temporarily stored in the Nth routing deviceTemp=(PKTempx,PKTempy) Calculating TxsigRb=PKTempx(mod q),NtfsigEb=H(TxsigRb| Ntf | | Nonce), calculate NotifySigb=SKbTemp+SKbMain*NtfsigEb(mod q). Let clientNtf ═ Ntf, NotifySigbAnd sending the M user.
The Nth routing device locally stores tid | Nonce of the Mth user key card in the transaction.
And step 9: mth user key fob verification NotifySigb
After the user receives the clientNtf, the user can determine the PKTemp=(PKTempx,PKTempy) Calculating TxsigRa=PKTempx(modq),NtfsigEa=H(TxsigRa||Ntf||Nonce)。
Due to NotifySigb=SKbTemp+SKbMain*NtfsigEb(mod q),PKbTemp=SKbTemp*P,PKbMain=SKbMain*P,NtfsigEb=NtfsigEaTherefore, if NotifySigbP and PKbTemp+PKbMain*NtfsigEaIf they are equal, the NotifySig pair is completedbAnd (4) verifying.
If the verification is successful, then Nonce + 1.
If Notify is encrypted, HG (Hxb | | | tid) is obtained by using xb calculation, and ENtf' is further recovered to be ENtf, wherein the ENtf is obtained by adding HG (Hxb | | | | tid) to ENtfR-HG (Hxb | | | tid); using SKaMainDecrypting ENtf yields Notify.
The technical features of the embodiments described above may be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the embodiments described above are not described, but should be considered as being within the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present invention, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the inventive concept, which falls within the scope of the present invention. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (10)

1. A quantum computation resistant blockchain transaction method based on one-time-varying secret sharing and routing devices is characterized in that: the block chain network comprises a block chain network formed by more than one intranet in communication connection, wherein each intranet is provided with a plurality of users and routing devices, the users are in communication connection with the routing devices in the intranet where the users are located, and each routing device is provided with a block chain client side for providing registration and authentication services;
each user and each routing device are respectively provided with a key fob, the routing devices issue the key fobs and keys for the users in the intranet where the routing devices are located, the private keys of each user are stored in a distributed mode in a secret sharing mode (2,2), and each private key obtains a group of private key secret components; each private key secret component comprises a random number and a private key component, a corresponding public key component is calculated according to the private key component, and the private key component and the public key component are respectively stored in a key fob of the routing device and a corresponding user key fob;
the method comprises the following transaction steps:
the user is used as a transaction initiator, before sending transaction content to a routing device of an intranet where the user is located, bidirectional verification is carried out between the user and the routing device, and the next step is carried out if the verification is passed;
the user sends a user transaction including a first signature to a routing device of an intranet where the user is located, wherein the first signature is obtained by taking out a private key component stored in a key card of the user and calculating generated transaction content;
the routing device judges the received user transaction and verifies the first signature;
the routing device calculates a second signature for the user transaction passing the verification, wherein the second signature is obtained by taking out a private key component stored in the key card of the routing device and calculating the received transaction content;
the routing device calculates a third signature according to the first signature and the second signature;
the routing device sending the client transaction including the third signature to other routing devices in the blockchain network in a broadcast manner;
and after finding that the client transaction is successfully submitted to the blockchain, the routing device sends a transaction notification to the initiator user.
2. The quantum computation resistant blockchain transaction method based on one-time-varying secret sharing and routing device of claim 1, wherein: the method for issuing the key card by the routing device comprises the following steps:
the routing device issues a first private key and a plurality of second private keys for each user, the private keys are stored in a distributed mode in a secret sharing mode (2,2), a key pointer function, a key coefficient pointer function and a random number Nonce are stored in the user key fob and the routing device key fob, key components are extracted according to the key pointer function and the key coefficient pointer function, and transaction information of each transaction of the users in the intranet in which the routing device key fob is located is stored in the routing device key fob;
in each transaction process, a first private key component used by a user or a routing device is a fixed value, a second private key component is a calculated value only used for the transaction, the second private key component directly used for the transaction is recorded as the calculated value second private key component, the calculated value second private key component is obtained by searching the second private key component stored in the current key fob and calculating, each public key component is obtained by calculating according to the corresponding private key component, and a complete public key or private key used in the transaction process is obtained by calculating the corresponding public key component or private key component by adopting a secret sharing recovery method.
3. The quantum computation resistant blockchain transaction method based on one-time-varying secret sharing and routing device of claim 2, wherein the method for issuing the key fob by the routing device is as follows:
the routing device carries out (2,2) secret sharing on each private key of the user to obtain a corresponding random number I, a random number II, a first private key component I, a first private key component II, a plurality of groups of second private key components I and second private key components II, and a corresponding public key component is obtained through calculation according to each private key component;
storing the hash value of the random number two into a random number pool of the user key fob, storing the first public key component one, the multiple groups of second public key components one and the first public key component two into a public key pool of the user key fob, storing the first private key component one and the multiple groups of second private key components one into a private key pool of the user key fob, and storing the CA signature into a certificate pool of the user key fob; the CA signature is obtained by adopting a CA private key to carry out combined signature on the user ID and the first public key;
and storing the first random number and the second random number into a random number pool of the routing device key fob, storing the first public key component two, the multiple groups of the second public key component two and the public keys of all the routing devices into a public key pool of the routing device key fob, storing the first private key component two and the multiple groups of the second private key component two into a private key pool of the routing device key fob, and storing the private key of the routing device and the CA public key into a private area of the routing device key fob.
4. The quantum computation resistant blockchain transaction method based on one-time-varying secret sharing and routing device according to claim 3, wherein the user as a transaction initiator comprises the steps of:
in the process of bidirectional verification between a user and a routing device, calculating to obtain a first calculated value second public key component, a first calculated value second private key component and a complete calculated value second public key for the transaction;
generating transaction content, wherein the transaction content comprises but is not limited to a timestamp and an address of a transaction initiator, and the address of the transaction initiator comprises a hash value of a second public key of the user and an ID (identity) of a routing device in the same intranet;
dividing the calculated value second public key into a second public key x component and a second public key y component, calculating the second public key x component to obtain a first intermediate verification parameter, calculating a hash value of the combination of the first intermediate verification parameter and the transaction content and taking the hash value as a transaction content ciphertext I, and calculating a first signature according to the first private key component I, the calculated value second private key component I and the transaction content ciphertext I;
the user transaction including the transaction content and the first signature is sent to a routing device located on the same intranet as the routing device.
5. The quantum computation resistant blockchain transaction method based on one-time-varying secret sharing and routing device according to claim 4, wherein the routing device located in the same intranet as the originating device comprises the steps of:
in the bidirectional verification process of the routing device and the user, obtaining a calculated value second public key component II, a calculated value second private key component II, a first public key component I, a calculated value second public key component I and a calculated value second public key for the transaction;
judging whether the user ID belongs to the routing device and whether the routing device ID is the routing device ID;
judging whether the timestamp in the transaction content is reasonable or not;
and if the judgment is passed, verifying the first signature:
dividing the calculated value of the second public key into a second public key x component and a second public key y component, calculating the second public key x component to obtain a second intermediate verification parameter, calculating a hash value of the combination of the second intermediate verification parameter and the transaction content and taking the hash value as a transaction content ciphertext II, and comparing the value calculated according to the first public key component I, the calculated value of the second public key component I and the transaction content ciphertext II with the value of the first signature;
after the verification is passed, the routing device calculates transaction information and temporarily stores the key information in the local;
6. the quantum computation-resistant blockchain transaction method based on one-time-varying secret sharing and routing device according to claim 5, wherein the routing device located in the same intranet as the originating device comprises the transaction steps of:
after the verification is passed, the routing device calculates to obtain a second signature according to the second first private key component, the second calculated value, the second private key component and the second transaction content ciphertext;
the routing device calculates a third signature according to the first signature and the second signature, and encrypts a combination of the first public key of the user and the second transaction content ciphertext by using a private key of the routing device to obtain a second ciphertext;
and the routing device sends client transactions including the third signature to other routing devices in the blockchain network in a broadcasting mode, wherein the client transactions include transaction contents, the third signature, the CA signature and the second ciphertext.
7. The quantum computation resistant blockchain transaction method based on one-time-varying secret sharing and routing device of claim 6, wherein: the routing device located in the same intranet as the initiating position comprises a transaction step:
after the routing device finds that the client transaction is successfully submitted to the blockchain, notification content is generated;
and calculating a hash value of the combination of the second intermediate verification parameter, the notification content and the Nonce, using the hash value as a transaction notification ciphertext, calculating a notification signature according to the second first private key component, the second calculated private key component and the transaction notification ciphertext, and sending the notification content and the notification signature to a corresponding user.
8. The quantum computation-resistant blockchain transaction method based on one-time-varying secret sharing and routing device according to claim 6, wherein the other routing devices in the blockchain network verify the client transaction, comprising the steps of:
acquiring the ID of the routing device where the initiator is located from the client transaction, then taking out the corresponding public key of the routing device from the local public key pool, and decrypting the second encrypted text to obtain a first public key and a second transaction content ciphertext;
verifying the CA signature by adopting a local CA public key;
calculating to obtain a new calculated value second public key according to the transaction content ciphertext II, the first public key and the third signature, further obtaining a new calculated value second public key x component, calculating the new second public key x component to obtain a third intermediate verification parameter, calculating a hash value of the combination of the third intermediate verification parameter and the transaction content to obtain a transaction content ciphertext III, comparing the transaction content ciphertext III with the transaction content ciphertext II obtained by decryption, and verifying whether the transaction content ciphertext III is the same or not;
and after the verification is passed, the transaction verification is successful, and the transaction is placed into a local cache transaction pool.
9. The quantum computation resistant blockchain transaction method based on one-time-varying secret sharing and routing device according to any one of claims 3 to 8, wherein the bidirectional authentication comprises the steps of:
the user generates a first encrypted message and a first message authentication code and sends the first encrypted message and the first message authentication code to a routing device;
the routing device verifies the first message authentication code;
the routing device sends a third ciphertext and a second message authentication code to the user;
the user verifies the second message authentication code; wherein the content of the first and second substances,
the first encrypted text is obtained by adopting the combination encryption of a first public key component pair, namely a first public key component I, a calculated value, a second public key component I and a Nonce, an offset is added in the encryption process, and the offset is obtained by calculation according to a random number II and a timestamp;
the first message authentication code is obtained by adopting the hash value of a random number two to calculate the combination of a timestamp, a first public key component I, a calculated value, a second public key component I and a Nonce;
when the first encrypted text is decrypted, the routing device calculates the offset by taking out the random number two from the key fob of the routing device and combining the time stamp, and then decrypts the random number two according to the offset and the first private key component two to obtain a first public key component I, a calculated value second public key component I and a Nonce;
when the first message authentication code is verified, the routing device performs combined calculation by using a random number two-pair timestamp, a first public key component I, a calculated value second public key component I and a Nonce to obtain a message authentication code, and judges whether the obtained message authentication code is consistent with the first message authentication code;
the second message authentication code is obtained by calculating a timestamp and a calculated value second public key by using a hash value of a random number two, the third ciphertext is obtained by encrypting the calculated value second public key by using a first public key component, and an offset is added in the encryption process, wherein the offset is the hash value of the Nonce and the timestamp;
when the third encrypted text is decrypted, the hash value of the Nonce and the timestamp is calculated by the user to serve as an offset, and the third encrypted text is decrypted according to the offset and the first private key component to obtain a calculated value second public key;
when the second message authentication code is verified, the user calculates the time stamp and the calculated value by using the hash value of the random number two, the obtained message authentication code is compared with the second message authentication code, if the obtained message authentication code is consistent with the second message authentication code, the verification is passed, and the bidirectional verification is finished.
10. A quantum computation resistant blockchain transaction system based on a one-time-varying secret sharing and routing apparatus, comprising: the block chain network comprises a block chain network formed by more than one intranet in communication connection, wherein each intranet is provided with a plurality of users and routing devices, the users are in communication connection with the routing devices in the intranet where the users are located, and each routing device is provided with a block chain client side for providing registration and authentication services;
each user and each routing device are respectively provided with a key fob, the routing devices issue the key fobs and keys for the users in the intranet where the routing devices are located, the private keys of each user are stored in a distributed mode in a secret sharing mode (2,2), and each private key obtains a group of private key secret components; each private key secret component comprises a random number and a private key component, a corresponding public key component is calculated according to the private key component, and the private key component and the public key component are respectively stored in a key fob of the routing device and a corresponding user key fob;
each user and the routing device comprises a memory in which a computer program is stored and a processor which, when executing the computer program, implements the quantum computation resistant blockchain transaction method of the secret sharing and routing device according to any one of claims 1 to 9.
CN202010090163.9A 2020-02-13 2020-02-13 Quantum computation resistant blockchain transaction method and system based on one-time-varying secret sharing and routing device Active CN111385350B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010090163.9A CN111385350B (en) 2020-02-13 2020-02-13 Quantum computation resistant blockchain transaction method and system based on one-time-varying secret sharing and routing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010090163.9A CN111385350B (en) 2020-02-13 2020-02-13 Quantum computation resistant blockchain transaction method and system based on one-time-varying secret sharing and routing device

Publications (2)

Publication Number Publication Date
CN111385350A true CN111385350A (en) 2020-07-07
CN111385350B CN111385350B (en) 2022-12-30

Family

ID=71216980

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010090163.9A Active CN111385350B (en) 2020-02-13 2020-02-13 Quantum computation resistant blockchain transaction method and system based on one-time-varying secret sharing and routing device

Country Status (1)

Country Link
CN (1) CN111385350B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112766971A (en) * 2021-03-30 2021-05-07 支付宝(杭州)信息技术有限公司 Method and apparatus for transmitting transactions and executing transactions in blockchain

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012048015A1 (en) * 2010-10-06 2012-04-12 Prasad Peddada System and method for single use transaction signatures
US20190268149A1 (en) * 2018-02-28 2019-08-29 Vmware, Inc. Methods and systems that efficiently and securely store encryption keys
CN110661613A (en) * 2019-09-26 2020-01-07 如般量子科技有限公司 Anti-quantum-computation implicit certificate issuing method and system based on alliance chain
CN110737915A (en) * 2019-09-26 2020-01-31 如般量子科技有限公司 Anti-quantum-computation anonymous identity recognition method and system based on alliance chain and implicit certificate
CN110768781A (en) * 2019-08-28 2020-02-07 如般量子科技有限公司 Public and private key issuing and issuing method and system based on alliance chain and resisting quantum computation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012048015A1 (en) * 2010-10-06 2012-04-12 Prasad Peddada System and method for single use transaction signatures
US20190268149A1 (en) * 2018-02-28 2019-08-29 Vmware, Inc. Methods and systems that efficiently and securely store encryption keys
CN110768781A (en) * 2019-08-28 2020-02-07 如般量子科技有限公司 Public and private key issuing and issuing method and system based on alliance chain and resisting quantum computation
CN110661613A (en) * 2019-09-26 2020-01-07 如般量子科技有限公司 Anti-quantum-computation implicit certificate issuing method and system based on alliance chain
CN110737915A (en) * 2019-09-26 2020-01-31 如般量子科技有限公司 Anti-quantum-computation anonymous identity recognition method and system based on alliance chain and implicit certificate

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112766971A (en) * 2021-03-30 2021-05-07 支付宝(杭州)信息技术有限公司 Method and apparatus for transmitting transactions and executing transactions in blockchain
WO2022205959A1 (en) * 2021-03-30 2022-10-06 蚂蚁区块链科技(上海)有限公司 Method and apparatus for sending transaction in blockchain, and method and apparatus for executing transaction in blockchain

Also Published As

Publication number Publication date
CN111385350B (en) 2022-12-30

Similar Documents

Publication Publication Date Title
CN109687963B (en) Anti-quantum computing alliance chain transaction method and system based on public key pool
CN109151053B (en) Anti-quantum computing cloud storage method and system based on public asymmetric key pool
CN111475796B (en) Anti-quantum computation identity authentication method and system based on secret sharing and quantum communication service station
CN109150519B (en) Anti-quantum computing cloud storage security control method and system based on public key pool
CN110969431B (en) Secure hosting method, device and system for private key of blockchain digital coin
CN110932870B (en) Quantum communication service station key negotiation system and method
CN106130716B (en) Key exchange system and method based on authentication information
CN110519046B (en) Quantum communication service station key negotiation method and system based on one-time asymmetric key pair and QKD
CN111404664B (en) Quantum secret communication identity authentication system and method based on secret sharing and multiple mobile devices
CN109919611B (en) Quantum computation resistant blockchain transaction method and system based on symmetric key pool server
CN109670826B (en) Anti-quantum computation block chain transaction method based on asymmetric key pool
CN110661613B (en) Anti-quantum-computation implicit certificate issuing method and system based on alliance chain
CN114362993B (en) Block chain assisted Internet of vehicles security authentication method
CN111416715A (en) Quantum secret communication identity authentication system and method based on secret sharing
CN109347923B (en) Anti-quantum computing cloud storage method and system based on asymmetric key pool
CN110930251A (en) Anti-quantum computing cloud storage method and system based on alliance chain and implicit certificate
CN111416712B (en) Quantum secret communication identity authentication system and method based on multiple mobile devices
CN110557248A (en) Secret key updating method and system for resisting quantum computation signcryption based on certificateless cryptography
CN111327419B (en) Method and system for resisting quantum computation block chain based on secret sharing
CN111343160B (en) Anti-quantum computation blockchain transaction method and system based on secret sharing and routing device
CN104125239A (en) Network authentication method and system based on data link encryption transmission
CN109787747B (en) Anti-quantum-computation multi-encryption cloud storage method and system based on multiple asymmetric key pools
CN109299618B (en) Quantum-resistant computing cloud storage method and system based on quantum key card
CN111245611B (en) Anti-quantum computation identity authentication method and system based on secret sharing and wearable equipment
CN111385350B (en) Quantum computation resistant blockchain transaction method and system based on one-time-varying secret sharing and routing device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant