CN111652618A - Decentralized unlinked cross-chain atomic transaction method - Google Patents

Decentralized unlinked cross-chain atomic transaction method Download PDF

Info

Publication number
CN111652618A
CN111652618A CN202010672839.5A CN202010672839A CN111652618A CN 111652618 A CN111652618 A CN 111652618A CN 202010672839 A CN202010672839 A CN 202010672839A CN 111652618 A CN111652618 A CN 111652618A
Authority
CN
China
Prior art keywords
module
transaction
hash
contract
time locking
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
CN202010672839.5A
Other languages
Chinese (zh)
Other versions
CN111652618B (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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202010672839.5A priority Critical patent/CN111652618B/en
Publication of CN111652618A publication Critical patent/CN111652618A/en
Application granted granted Critical
Publication of CN111652618B publication Critical patent/CN111652618B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

The invention discloses a decentralized unlinked cross-chain atomic transaction method, which adopts the technical scheme that a privacy security system consisting of a transaction initialization module, a transaction initiating module, a transaction responding module, a Hash time locking contract module and a money obtaining module is constructed; the transaction initialization module constructs a hash function with additive hash homomorphism, and the transaction initiating module of the sender initiates a transaction; the response transaction module of the receiver responds to the transaction; the transaction initiating module of the sender, the hash time locking contract module of the receiver and the amount obtaining module are matched with each other to unlock the contract, so that the sender obtains the locked amount; the response transaction module of the receiver, the hash time locking contract module of the sender and the amount obtaining module are matched with each other to unlock the contract, and the receiver obtains the locked amount. The invention realizes decentralized unlinked cross-chain atomic transaction, so that transaction participants cannot be tracked according to the hash value, and the safety of cross-chain transaction is protected.

Description

Decentralized unlinked cross-chain atomic transaction method
Technical Field
The invention relates to a method for improving transaction security in the technical field of cross-chain technology, in particular to a decentralized cross-chain atomic transaction method based on a Hash time locking technology.
Background
The block chain is a distributed account book technology which is jointly maintained by multiple parties, transmission and access safety is guaranteed by using cryptography, data can be stored consistently, tampering is difficult, and repudiation is prevented. Since the introduction of bitcoin, hundreds of blockchain projects are emerging to the public for medical health, financial trade, asset management, etc., but this has brought about the problem of interoperability between different blockchains. At present, the interoperability between blockchains greatly limits the application space of blockchains. No matter to public chain or private chain, the cross-chain technique is the key of realizing worth internet, and it is the good medicine that saves the block chain from dispersed island, is the bridge that the block chain outwards expands and connects, is favorable to realizing worth internet. Existing mainstream cross-link technologies include notary mechanisms, side chains/relays, hash time locking, and distributed private key control. For cross-chain asset transactions only, where the notary mechanism is at a centralized risk; the side chain can not complete the chain-crossing operation of two different architecture block chains, and is only suitable for the chain-crossing transaction of the side chain and the main chain; the relay technology needs to additionally build a relay chain, which wastes resources and causes the risk of malicious behaviors of the chain to be borne by a user; the distributed private key control technology requires the intelligent contract language drawing of the bottom layer block chain to be complete and limited in scene; both sides can finish by oneself in the technology of hash time locking, need not third party's participation, have simple efficient advantage.
The blockchain originates from the bitcoin system proposed by the inventor in 2008, and is essentially a database independent of third parties. The technical scheme is that a reliable database is maintained collectively in a decentralized and distrust mode. The block chain has the characteristics of decentration, openness, anonymity, non-tampering and the like. Each transaction in the blockchain is confirmed by the consensus of most participants in the system. Once entered, the information is never deleted.
The Hash time locking technology is originally derived from a discussion in Bitcoin Talk Forum in 2013, Tier Nolan proposes an atom exchange idea to realize atomicity of cross-link transaction, the technology is called as a Hash locking method after an improved technical scheme, and the technical ground is related to a lightning network of 2016 bitcoin. The lightning Network (Lighting Network) is a white paper "bitcoin lightning Network" published by josephpon and thuddeus Dryja: the extensible off-link instant payment is essentially a mechanism for securely processing "0 confirmed" transactions by using a hash Time Lock Contract (hash Time Lock Contract), and users can perform unconfirmed transactions on the lightning network by smartly setting the "intelligent Contract". The hash time locking technology is a technology which can perform currency transaction and interchange between different blockchain items. In the conventional exchange, when the exchange carries out the transaction with different currencies, the trader needs to firstly mortgage the currency of the trader to the exchange in advance, which brings certain transaction risks and needs to charge a high commission charge for the transaction. In the Hash time locking technology, only a sender and a receiver need to carry out transaction, and any exchange platform is not needed in the process, so that the atomicity of the transaction is ensured, and the transaction is successful, namely the two parties successfully carry out asset transaction, or the transaction is failed, namely the two parties do not acquire the asset of the other party and lose money. In summary, fair trading is achieved by locking assets and setting corresponding time and unlocking conditions.
Elliptic curve cryptography (Elliptic curve cryptography) is an algorithm of public key cryptography based on Elliptic curve mathematics. The use of elliptic curves in cryptography was independently proposed in 1985 by NealKoblitz and vicctormiller, respectively. Elliptic curve cryptography has many different forms, but all rely on the difficulty of solving the elliptic curve discrete logarithm problem. Elliptic curve cryptography provides smaller keys and a higher level of security than the RSA encryption algorithm, and it is generally accepted that an elliptic curve key of 160 bits provides a security strength comparable to that of a 1024-bit RSA key.
Although the Hash locking method can realize decentralized cross-chain atomic asset transaction, as two transaction parties use the same Hash value, malicious nodes can be connected with addresses of users on different blockchains through the Hash value, the source and the destination of cross-chain funds are tracked, the privacy of the cross-chain transaction cannot be guaranteed, and the fund flow direction of participants is leaked, so that personal property information of the users is damaged, and the safety of the cross-chain transaction is threatened. How to solve the problem of privacy security protection in the cross-chain field is a technical problem which is of great concern to the technical personnel in the field.
Disclosure of Invention
The technical problem to be solved by the invention is as follows: the method for un-centralized unlinked cross-chain atomic transaction is provided, cross-chain asset transaction is not linked by any malicious node on the premise of not losing atomicity and un-centralized, and privacy of cross-chain transaction participants is protected so as to protect security of transaction.
The main idea of the present invention is to use elliptic curves to construct a special hash function that has additive hash homomorphism, i.e. if c ═ a + b, then h (c) ═ h (a) + h (b). By using the property, under the condition that different hash values are locked by two parties of a user, a sending party and a receiving party cannot be tracked according to the hash values, the atomicity of the transaction is ensured, the anonymity of the two parties of the transaction is solved, and the safety of the transaction is ensured.
The invention comprises the following steps:
in a first step, a privacy security system is constructed. The privacy security system consists of five functional modules, namely a transaction initialization module, a transaction initiating module, a transaction responding module, a hash time locking contract module and a money amount acquiring module. The privacy and security system is deployed on a chain of different blocks where the two parties (i.e., sender and receiver) that participate in the transaction are located. Suppose the chain in which the sender is located is Block1The chain of the receiver is Block2. For convenience of description, let Block1The transaction initialization module, the transaction initiation module, the transaction response module, the hash time locking contract module and the money acquisition module which are arranged on the system are the firstThe system comprises a transaction initialization module, a first transaction initiating module, a first transaction responding module, a first Hash time locking contract module and a first amount obtaining module; order Block2The transaction initialization module, the transaction initiating module, the transaction responding module, the hash time locking contract module and the money amount obtaining module are arranged on the system, and the transaction initialization module, the transaction initiating module, the transaction responding module, the hash time locking contract module and the money amount obtaining module are the second transaction initialization module, the second transaction initiating module, the second transaction responding module, the second hash time locking contract module and the second money amount obtaining module.
The first transaction initialization module is connected with the first transaction initiating module. The first transaction initiation module generates a hash function h (x) and sends the hash function h (x) to the first originating transaction module.
The second transaction initialization module is connected with the second response transaction module. The second transaction initiation module generates a hash function h (x) and sends the hash function h (x) to the second responsive transaction module.
The first starting transaction module is connected with the first transaction initialization module, the second response transaction module, the first hash time locking contract module and the second hash time locking contract module. The first initiating transaction module randomly selects three positive integers, a, b, c, to ensure that c is a + b, and calculates h (a), h (b). And sending H (a), H (b) and c to a second response transaction module through an asymmetric encryption algorithm. Randomly selecting any one of H (a) or H (b) (wherein a is the original image of H (a) and b is the original image of H (b)) (for clarity, the order is H (a)) and sending the selected one to the first hash time locking contract module. The first initiating transaction module further sends the hash primitive b (wherein, the selection of a or b is determined according to the hash value of the second hash time locking contract module, if the first initiating transaction module sends H (a) to the first hash time locking contract module, the hash value of the second hash time locking contract module will be H (b), and at this time, the first initiating transaction module sends the hash primitive b to the second hash time locking contract module.
The second response transaction module is connected with the second transaction initialization module, the second hash time locking contract module, the first initiation transaction module and the first hash time locking contract module. The second response transaction module receives H (a), H (b) and c from the first initiating transaction module, selects a different hash value from the first hash time locking contract module (the hash value deployed in the first hash time locking contract module is H (a), H (b) is selected here), and sends the selected hash value H (b) to the second hash time locking contract module. The second responsive transaction module also sends a hash primitive a (where a or b is selected based on the hash value of the first hash time lock contract module since the first initiating transaction module sent h (a) to the first hash time lock contract module, and thus the hash primitive at that time is a) to the first hash time lock contract module.
The first hash time locking contract module is connected with the first initiating transaction module, the second responding transaction module and the first amount obtaining module. The first hash time lock contract module receives a hash value h (a) from the first originating transaction module, at Block1A first hash time locking contract is deployed. The first hash time locking contract module receives the hash primitive a from the second response transaction module, and sends the hash primitive a and the address of the receiver (the sender and the receiver can know the communication under the chain) to the first amount obtaining module.
The second hash time locking contract module is connected with the second response transaction module, the first initiation transaction module and the second amount acquisition module. The second hash time lock contract module receives the hash value, h (b), from the second responsive transaction module, at Block2A second hash time locking contract is deployed. The second hash time locking contract module receives the hash original image b from the first initiating transaction module and sends the hash original image b and the address of the sender (the sender and the receiver can know the communication under the chain) to the second amount obtaining module.
The second amount obtaining module is connected with the second hash time locking contract module. The second amount obtaining module receives the hash primitive b and the sender address of the second hash time locking contract module, sends the hash primitive b to a transaction amount unlocking script P2SH (Andrescen G. script Hash [ J ]. Consulted,2012,6:2012.) on the blockchain, runs the P2SH script, and sends the amount locked by the receiver to the sender address after the running result of the script is verified to be true.
The first amount obtaining module is connected with the first hash time locking contract module. The first money obtaining module receives the Hash primitive a and the receiver address of the first Hash time locking contract module, sends the corresponding Hash primitive a to the P2SH script, runs the P2SH script, and sends the money locked by the sender to the receiver address after the running result of the script is verified to be true.
The second initiating transaction module has the same connection relation with the first initiating transaction module and has the same function with the first initiating transaction module. Chain Block at receiver2The second initiating transaction module does not work during the transaction process.
The first response transaction module has the same connection relation with the second response transaction module and the same function with the second response transaction module. Chain Block at the sender1The first responsive transaction module does not operate during the transaction.
Secondly, the first transaction initialization module generates a hash function h (x) by:
2.1 defining common parameters (q, F) of elliptic curves in blockchainsqG), q is a prime number, FqIs a prime number field, and the generator G is an elliptic curve base point. For finite field FqThe above elliptic curve equation is: y is2=x3+a1x+b1modq, wherein a1,b1∈FqSatisfies the conditions
Figure BDA0002582956370000061
The set of points obtained by the elliptic curve equation is named E (F)q) The method is characterized in that a point set of an elliptic curve equation on a projection plane is added with a set of infinite points theta.
2.2 define a security parameter λ ∈ N, the hash function being H (x) x.G, λ meaning that the hash function is secure when the input x to the hash function is greater than or equal to λ bits, where · is the dot multiplication operation on an elliptic curve, and x is the primitive of H (x). The hash function value is considered as an element of finite field, embedded on the elliptic curve, mapped to a point on the elliptic curve*→E(Fq) Wherein {0,1}*Representing a string of arbitrary length. The safety of the hash function H (x) depends on the difficulty of the elliptic curve discrete logarithm problem, and meets the safety requirements of the hash function such as unidirectionality, collision resistance and the like.
2.3 sending the hash function h (x) to the first originating transaction module.
And thirdly, the first transaction initiating module receives a transaction initiating instruction of the sender from the keyboard and initiates the transaction.
The method comprises the following steps:
3.1 the first initiating transaction module receives the initiating transaction instruction from the keyboard, randomly selects two numbers a, b,
Figure BDA0002582956370000071
the integer round set modulo q is used to calculate c ═ a + b, h (a) ═ a · G, and h (b) ═ b · G.
3.2 the first initiating transaction module encrypts H (a), H (b) and c by adopting an asymmetric encryption algorithm and sends the encrypted H (a), H (b) and c to the second responding transaction module.
3.3 the first initiating transaction module randomly selects H (a) or H (b), assuming that H (a) is selected:
3.3.1 first initiating transaction Module in Block1Above through a hash lock and time lock script component (Herlihy M. atom exchange across chains [ C]The discourse of ACM distributed computing theory in/2018. 2018: 245-1Sender account amount V on chainAWith P2SH locking, the first amount acquisition module is invoked to unlock P2SH only if the recipient presents the correct hash value pre-image. The sender uses a private key of the sender to sign the amount of money in the account, and the first hash time locking contract content is as follows: within the time range 2 Δ T (T is a time length set by man and is generally set to 60min), if the original image a of H (a) is received (because the hash function is one-way, only the owner of the original image can provide the true original image of the hash value), the amount V to be lockedAIs sent to Block1Addresses of upper receivers (sender and receiver)The communication under the side chain is known), turning to the fourth step; if the time reaches 2 delta T and the original image a is not received, the locked amount is returned to Block1And the address of the sender indicates that the transaction is unsuccessful, the transaction is terminated, and the step is switched to the second step.
And fourthly, the second response transaction module receives a response transaction instruction of the receiver from the keyboard and responds to the transaction.
The method comprises the following steps:
4.1 the second response transaction module receives the response transaction command from the receiving party from the keyboard, and receives H (a), H (b) and c sent by the first initiating transaction module, and judges the correctness of H (a), H (b) and c, namely judges whether H (c) is H (a) + H (b) is true. If yes, turning to 4.2; if not, the first transaction initiating module is informed that the random number is selected by mistake, and the third step is carried out, and the sender initiates the transaction again.
4.2 second response transaction Module check Block1If the first hash time locking contract is correctly deployed, check Block1And (4) judging whether the contract content comprises a first hash time locking contract of the address of the receiver or not to judge whether the sender is honest or not, if so, indicating correct deployment, turning to 4.3, and if not, indicating that the correct deployment is not performed, turning to the third step.
4.3 second response transaction Module judges the amount of money V to be transacted by the senderAAnd if so, selecting another hash value different from the hash value used by the first hash time locking contract module by the second response transaction module, namely H (b). Second response transaction Module at Block2Create a second hash time locking contract through the hash lock and time lock script component, and lock the Block2Account amount V of the receiver on the chainAAnd P2SH locking is carried out, and the first amount obtaining module is called to carry out P2SH unlocking only when the sender presents a correct hash value primitive. The receiver uses the private key of the receiver to sign the amount of money in the account, and the second hash time locking contract content is as follows: within time range DeltaT, if the original image b of H (b) is received, the locked amount VBIs sent to Block2The address of the upper sender (known by the communication of the sender and the receiver under the chain) is changed to the fifth step; if the time reaches delta T and the original image b is not received, the amount V to be locked is determinedBReturns to Block2The address of the upper receiver indicates that the transaction is unsuccessful, the transaction is terminated, and the second step is carried out.
And fifthly, the first starting transaction module, the second hash time locking contract module and the second amount obtaining module are matched with each other to unlock the contract, so that the sender obtains the locking amount. The method comprises the following steps:
5.1 first initiating transaction Module check Block2If the second hash lock contract is correctly deployed, check Block2Whether a second hash time locking contract containing the sender address appears or not is judged, and if the second hash time locking contract is correctly deployed, 5.2 is carried out; and if the second hash locking contract is not deployed correctly, turning to the third step, and reinitiating the transaction.
5.2 the first initiating transaction module sends the pre-image b of H (b) to the second hash time lock contract module.
5.3 the second hash time locking contract module judges whether a hash original image b is received in a time range delta T, if b is received in the time range delta T, the second hash time locking contract module sends the sender address and the original image b to the second money amount acquisition module, and 5.4 is turned; if the time reaches delta T and the primary image b is not received, the transaction is terminated, and the step is switched to the second step.
5.4 the second amount obtaining module sends the corresponding hash value primitive b to the P2SH script, runs the P2SH script, verifies whether the running result of the P2SH script is true, and if true, the second amount obtaining module locks the amount VBIs sent to the sender in Block2The address is updated, and the step six is carried out; if the hash value is false, 5.2 is turned to, and the original image of the hash value is sent again.
And sixthly, the second response transaction module, the first hash time locking contract module and the first amount obtaining module are matched with each other to unlock the contract, so that the receiver obtains the locked amount. The method comprises the following steps:
6.1 the second responding transaction module gets Block by calculating a ═ c-b1Last first hash time lockingThe original image a of the contract and sends the original image a of H (a) to the first hash time locking contract module
6.2 the first hash time locking contract module judges whether a hash primitive a is received within the time range of 2 delta T, if a is received within 2 delta T, the first hash time locking contract module sends the address of the receiver and the primitive a to the first amount acquisition module, and 6.3 is carried out; if the time reaches 2 delta T and the primary image a is not received, the transaction is terminated, and the step is switched to the second step.
6.3 the first amount obtaining module sends the corresponding Hash primitive a to the P2SH script, runs the P2SH script, verifies whether the running result of the P2SH script is true, and if true, the first amount obtaining module locks the amount VASending to the receiving party in Block1The cross-chain atomic transaction is completed, and the seventh step is carried out; if the operation result is false, 6.1 is carried out, and the original image of the hash value is sent again.
And step seven, finishing.
The invention can achieve the following technical effects:
the invention uses a special hash function constructed based on an elliptic curve, the hash function has additive hash homomorphism, meets the security requirements of the hash function such as unidirectionality and collision resistance, and ensures the security of transaction.
The invention can achieve the following technical effects by using the constructed special hash function and the hash time locking technology: the method and the system realize decentralized unlinked cross-chain atomic transaction, protect the privacy of cross-chain transaction participants, and solve the problem that a malicious node tracks the fund flow direction of the hash locking participants.
Drawings
FIG. 1 is a general flow diagram of the present invention;
fig. 2 is a logical structure diagram of the privacy security system constructed in the first step of the present invention.
Detailed Description
As shown in fig. 1, the present invention comprises the steps of:
in a first step, a privacy security system is constructed. Privacy security system As shown in FIG. 2, a transaction is initiated by a transaction initiation moduleThe system comprises a module, a response transaction module, a hash time locking contract module and a money obtaining module. The privacy and security system is deployed on a chain of different blocks where the two parties (i.e., sender and recipient) that participate in the transaction are located. Suppose the chain in which the sender is located is Block1The chain of the receiver is Block2. As shown in FIG. 2, let Block1The transaction initialization module, the transaction initiating module, the transaction responding module, the hash time locking contract module and the money amount obtaining module are arranged on the system, and the transaction initiating module, the transaction responding module, the hash time locking contract module and the money amount obtaining module are a first transaction initialization module, a first transaction initiating module, a first transaction responding module, a first hash time locking contract module and a first money amount obtaining module; order Block2The transaction initialization module, the transaction initiating module, the transaction responding module, the hash time locking contract module and the money amount obtaining module are arranged on the system, and the transaction initialization module, the transaction initiating module, the transaction responding module, the hash time locking contract module and the money amount obtaining module are the second transaction initialization module, the second transaction initiating module, the second transaction responding module, the second hash time locking contract module and the second money amount obtaining module.
The first transaction initialization module is connected with the first transaction initiating module. The first transaction initiation module generates a hash function h (x) and sends the hash function h (x) to the first originating transaction module.
The second transaction initialization module is connected with the second response transaction module. The second transaction initiation module generates a hash function h (x) and sends the hash function h (x) to the second responsive transaction module.
The first starting transaction module is connected with the first transaction initialization module, the second response transaction module, the first hash time locking contract module and the second hash time locking contract module. The first initiating transaction module randomly selects three positive integers, a, b, c, to ensure that c is a + b, and calculates h (a), h (b). And sending H (a), H (b) and c to a second response transaction module through an asymmetric encryption algorithm. Randomly selecting any one of H (a) or H (b) (wherein a is the primary image of H (a) and b is the primary image of H (b)) (here, H (a)) and sending the selected one to the first Hash time locking contract module. The first initiating transaction module further sends the hash primitive b (wherein, the selection of a or b is determined according to the hash value of the second hash time locking contract module, if the first initiating transaction module sends H (a) to the first hash time locking contract module, the hash value of the second hash time locking contract module will be H (b), and at this time, the first initiating transaction module sends the hash primitive b to the second hash time locking contract module.
The second response transaction module is connected with the second transaction initialization module, the second hash time locking contract module, the first initiation transaction module and the first hash time locking contract module. The second responding transaction module receives H (a), H (b) and c from the first initiating transaction module, selects a different hash value than that deployed by the first Hash time locking contract module (since the Hash value deployed in the first Hash time locking contract module is H (a), H (b) is selected here), and sends the selected hash value H (b) to the second Hash time locking contract module. The second responsive transaction module also sends a hash primitive a (where a or b is selected based on the hash value of the first hash time lock contract module since the first initiating transaction module sent h (a) to the first hash time lock contract module, and thus the hash primitive at that time is a) to the first hash time lock contract module.
The first hash time locking contract module is connected with the first initiating transaction module, the second responding transaction module and the first amount obtaining module. The first hash time lock contract module receives a hash value h (a) from the first originating transaction module, at Block1A first hash time locking contract is deployed. The first hash time locking contract module receives the hash original image a from the second response transaction module and sends the hash original image a and the receiver address to the first amount acquisition module.
The second hash time locking contract module is connected with the second response transaction module, the first initiation transaction module and the second amount acquisition module. The second hash time lock contract module receives the hash value, h (b), from the second responsive transaction module, at Block2A second hash time locking contract is deployed. The second hash time locking contract module receives the hash original image b from the first initiating transaction module and sends the hash original image b and the sender address to the second amount obtaining module.
The second amount obtaining module is connected with the second hash time locking contract module. The second amount obtaining module receives the Hash primitive b and the sender address of the second Hash time locking contract module, sends the Hash primitive b to the transaction amount unlocking script P2SH on the blockchain, runs the P2SH script, and sends the amount locked by the receiver to the sender address after the running result of the script is verified to be true.
The first amount obtaining module is connected with the first hash time locking contract module. The first money obtaining module receives the Hash primitive a and the receiver address of the first Hash time locking contract module, sends the corresponding Hash primitive a to the P2SH script, runs the P2SH script, and sends the money locked by the sender to the receiver address after the running result of the script is verified to be true.
The second initiating transaction module has the same connection relation with the first initiating transaction module and has the same function with the first initiating transaction module. Chain Block at receiver2The second initiating transaction module does not work during the transaction process. For clarity of fig. 2, and also to illustrate that the second originating transaction module of the receiving party is not involved, the second originating transaction module in fig. 2 does not show a connection relationship.
The first response transaction module has the same connection relation with the second response transaction module and the same function with the second response transaction module. Chain Block at the sender1The first responsive transaction module does not operate during the transaction. For clarity of fig. 2, and also to illustrate that the first response transaction module of the sender does not participate in the operation, the first response transaction module in fig. 2 does not show a connection relationship.
Secondly, the first transaction initialization module generates a hash function h (x) by:
2.1 defining common parameters (q, F) of elliptic curves in blockchainsqG), q is a prime number, FqIs a prime number field, and the generator G is an elliptic curve base point. For finite field FqThe above elliptic curve equation is: y is2=x3+a1x+b1modq, wherein a1,b1∈FqSatisfies the conditions
Figure BDA0002582956370000131
The set of points obtained by the elliptic curve equation is named E (F)q) The method is characterized in that a point set of an elliptic curve equation on a projection plane is added with a set of infinite points theta.
2.2 specifies a security parameter λ ∈ N, the hash function is h (x) x · G, λ means that the hash function is secure when its input x is greater than or equal to λ bits. Where, the product is a dot product on an elliptic curve, and x is the original image of H (x). And taking the hash function value as an element of a finite field, embedding the element into the elliptic curve, and mapping the element into a point on the elliptic curve.
2.3 sending the hash function h (x) to the first originating transaction module.
And thirdly, the first transaction initiating module receives a transaction initiating instruction of the sender from the keyboard and initiates the transaction.
The method comprises the following steps:
3.1 the first initiating transaction module receives the initiating transaction instruction from the keyboard, randomly selects two numbers a, b,
Figure BDA0002582956370000132
the integer round set modulo q is used to calculate c ═ a + b, h (a) ═ a · G, and h (b) ═ b · G.
3.2 the first initiating transaction module encrypts H (a), H (b) and c by adopting an asymmetric encryption algorithm and sends the encrypted H (a), H (b) and c to the second responding transaction module.
3.3 the first initiating transaction module randomly selects H (a) or H (b), assuming that H (a) is selected:
3.3.1 first initiating transaction Module in Block1The Hash time locking contract is created through the Hash lock and time lock script component, and Block is executed1Sender account amount V on chainAWith P2SH locking, the first amount acquisition module is invoked to unlock P2SH only if the recipient presents the correct hash value pre-image. The sender uses a private key of the sender to sign the amount of money in the account, and the first hash time locking contract content is as follows: within a time range of 2 Δ T (T is a manually set duration, generally set 60min), if the original image a of H (a) is received, the amount V to be lockedAIs sent to Block1The address of the receiver is uploaded, and the fourth step is carried out; if the time reaches 2 delta T and the original image a is not received, the locked amount is returned to Block1And the address of the sender indicates that the transaction is unsuccessful, the transaction is terminated, and the step is switched to the second step.
And fourthly, the second response transaction module receives a response transaction instruction of the receiver from the keyboard and responds to the transaction.
The method comprises the following steps:
4.1 the second response transaction module receives the response transaction command from the receiving party from the keyboard, and receives H (a), H (b) and c sent by the first initiating transaction module, and judges the correctness of H (a), H (b) and c, namely judges whether H (c) is H (a) + H (b) is true. If yes, turning to 4.2; if not, the first transaction initiating module is informed that the random number is selected by mistake, and the third step is carried out, and the sender initiates the transaction again.
4.2 second response transaction Module check Block1If the first hash time locking contract is correctly deployed, check Block1And (4) judging whether the contract content comprises a first hash time locking contract of the address of the receiver or not to judge whether the sender is honest or not, if so, indicating correct deployment, turning to 4.3, and if not, indicating that the correct deployment is not performed, turning to the third step.
4.3 second response transaction Module judges the amount of money V to be transacted by the senderAAnd if so, selecting another hash value different from the hash value used by the first hash time locking contract module by the second response transaction module, namely H (b). Second response transaction Module at Block2Create a second hash time locking contract through the hash lock and time lock script component, and lock the Block2Account amount V of the receiver on the chainAAnd P2SH locking is carried out, and the first amount obtaining module is called to carry out P2SH unlocking only when the sender presents a correct hash value primitive. The receiver uses its own private key to sign the account amount and the second hash time lockThe contract-defining content is as follows: within time range DeltaT, if the original image b of H (b) is received, the locked amount VBIs sent to Block2Uploading the address of the sender, and turning to the fifth step; if the time reaches delta T and the original image b is not received, the amount V to be locked is determinedBReturns to Block2The address of the upper receiver indicates that the transaction is unsuccessful, the transaction is terminated, and the second step is carried out.
And fifthly, the first starting transaction module, the second hash time locking contract module and the second amount obtaining module are matched with each other to unlock the contract, so that the sender obtains the locking amount. The method comprises the following steps:
5.1 first initiating transaction Module check Block2If the second hash lock contract is correctly deployed, check Block2Whether a second hash time locking contract containing the sender address appears or not is judged, and if the second hash time locking contract is correctly deployed, 5.2 is carried out; and if the second hash locking contract is not deployed correctly, turning to the third step, and reinitiating the transaction.
5.2 the first initiating transaction module sends the pre-image b of H (b) to the second hash time lock contract module.
5.3 the second hash time locking contract module judges whether a hash original image b is received in a time range delta T, if b is received in the time range delta T, the second hash time locking contract module sends the sender address and the original image b to the second money amount acquisition module, and 5.4 is turned; if the time reaches delta T and the primary image b is not received, the transaction is terminated, and the step is switched to the second step.
5.4 the second amount obtaining module sends the corresponding hash value primitive b to the P2SH script, runs the P2SH script, verifies whether the running result of the script is true, and if true, the second amount obtaining module locks the amount VBIs sent to the sender in Block2The address is updated, and the step six is carried out; if the hash value is false, 5.2 is turned to, and the original image of the hash value is sent again.
And sixthly, the second response transaction module, the first hash time locking contract module and the first amount obtaining module are matched with each other to unlock the contract, so that the receiver obtains the locked amount. The method comprises the following steps:
6.1 second responsive transaction Module by calculating a ═ c-bTo obtain Block1And the original image a of the first hash time locking contract, and sending the original image a of H (a) to the first hash time locking contract module.
6.2 the first hash time locking contract module judges whether a hash primitive a is received within the time range of 2 delta T, if a is received within 2 delta T, the first hash time locking contract module sends the address of the receiver and the primitive a to the first amount acquisition module, and 6.3 is carried out; if the time reaches 2 delta T and the primary image a is not received, the transaction is terminated, and the step is switched to the second step.
6.3 the first amount obtaining module sends the corresponding Hash primitive a to the P2SH script, runs the P2SH script, verifies whether the running result of the P2SH script is true, and if true, the first amount obtaining module locks the amount VASending to the receiving party in Block1The cross-chain atomic transaction is completed, and the seventh step is carried out; if the operation result is false, 6.1 is carried out, and the original image of the hash value is sent again.
And step seven, finishing.

Claims (4)

1. A decentralized unlinked cross-chain atomic transaction method is characterized by comprising the following steps:
the first step, construct the privacy security system; the privacy security system consists of a transaction initialization module, a transaction initiating module, a transaction responding module, a hash time locking contract module and a money amount obtaining module; the privacy security system is arranged on different block chains where two parties participating in the transaction, namely a sender and a receiver, are located; order Block1The transaction initialization module, the transaction initiating module, the transaction responding module, the Hash time locking contract module and the money amount obtaining module which are arranged on the system are a first transaction initialization module, a first transaction initiating module, a first transaction responding module, a first Hash time locking contract module, a first money amount obtaining module and a Block1Is the chain where the sender is located; order Block2The transaction initialization module, the transaction initiating module, the transaction responding module, the hash time locking contract module and the money acquiring module which are arranged on the system are a second transaction initialization module, a second transaction initiating module and a second transaction responding moduleA second hash time locking contract module, a second amount obtaining module and a Block2Is the chain in which the receiver is located;
the first transaction initialization module is connected with the first transaction initiating module, generates a hash function H (x), and sends H (x) to the first transaction initiating module;
the second transaction initialization module is connected with the second response transaction module, generates a hash function H (x), and sends the hash function H (x) to the second response transaction module;
the first starting transaction module is connected with the first transaction initialization module, the second response transaction module, the first Hash time locking contract module and the second Hash time locking contract module; the first initiating transaction module randomly selects three positive integers a, b and c, ensures that c is a + b, and calculates H (a), H (b); sending H (a), H (b) and c to a second response transaction module in an encrypted way; randomly selecting any one of H (a) or H (b), making H (a) be used, and sending the H (a) to a first hash time locking contract module; the first initiating transaction module also sends the hash primitive b to a second hash time locking contract module;
the second response transaction module is connected with the second transaction initialization module, the second hash time locking contract module, the first initiation transaction module and the first hash time locking contract module; the second response transaction module receives H (a), H (b) and c from the first initiating transaction module, selects a different hash value H (b) deployed from the first hash time locking contract module, and sends H (b) to the second hash time locking contract module; the second response transaction module also sends the hash primitive a to the first hash time locking contract module;
the first hash time locking contract module is connected with the first initiating transaction module, the second responding transaction module and the first amount acquisition module; the first hash time lock contract module receives a hash value h (a) from the first originating transaction module, at Block1Deploying a first hash time locking contract; the first hash time locking contract module receives the hash original image a from the second response transaction module and sends the hash original image a and the address of the receiver to the first amount acquisition module;
the second hash time locking contract module is connected with the second response transaction module, the first initiation transaction module and the second amount acquisition module; the second hash time lock contract module receives the hash value h (b) from the second responsive transaction module, at Block2Deploying a second hash time locking contract; the second Hash time locking contract module receives the Hash original image b from the first starting transaction module and sends the Hash original image b and the sender address to the second amount acquisition module;
the second amount obtaining module is connected with the second Hash time locking contract module; the second amount obtaining module receives the Hash primitive b and the sender address of the second Hash time locking contract module, sends the Hash primitive b to a transaction amount unlocking script P2SH on the blockchain, runs the P2SH script, and sends the amount locked by the receiver to the sender address if the running result of the P2SH is verified to be true;
the first amount obtaining module is connected with the first Hash time locking contract module; the first money obtaining module receives the Hash primitive image a and the receiver address of the first Hash time locking contract module, sends the corresponding Hash primitive image a to the P2SH script, runs the P2SH script, and sends the money locked by the sender to the receiver address if the running result of the script is verified to be true;
secondly, the first transaction initialization module generates a hash function h (x) by:
2.1 defining common parameters (q, F) of elliptic curves in blockchainsqG), q is a prime number, FqIs a prime number field, and the generating element G is an elliptic curve base point; for finite field FqThe above elliptic curve equation is: y is2=x3+a1x+b1modq, wherein a1,b1∈FqSatisfies the conditions
Figure FDA0002582956360000031
The set of points obtained by the elliptic curve equation is named E (F)q) The method is characterized in that an infinite point theta set is added to a point set of an elliptic curve equation on a projection plane;
2.2 specifying a safety parameter lambda∈ N, the hash function is H (x) x G, λ means that the hash function is secure when the input x of the hash function is greater than or equal to λ bit, where x is the point multiplication operation on the elliptic curve, x is the primitive of H (x), the hash function value is regarded as an element of finite field, embedded on the elliptic curve, and mapped to a point on the elliptic curve, H (x) is defined as H: {0,1}*→E(Fq) Wherein {0,1}*A character string representing an arbitrary length;
2.3 sending the hash function h (x) to the first originating transaction module;
thirdly, the first initiating transaction module receives a transaction initiating instruction of a sender from the keyboard and initiates a transaction, and the method comprises the following steps:
3.1 the first initiating transaction module receives the initiating transaction instruction from the keyboard, randomly selects two numbers a, b,
Figure FDA0002582956360000032
Figure FDA0002582956360000033
calculating c ═ a + b, h (a) ═ a · G, and h (b) ═ b · G, using an integer cyclic set modulo q;
3.2 the first initiating transaction module encrypts H (a), H (b) and c and sends the encrypted H (a), H (b) and c to the second responding transaction module;
3.3 the first initiating transaction module randomly selects H (a) or H (b) to make the following operations, let selection H (a):
3.3.1 first initiating transaction Module in Block1Create a first hash time locking contract and Block1Sender account amount V on chainAAdopting P2SH for locking, and using the private key of the sender to sign the amount in the account; the first hash time lock contract contents are: within time frame 2 Δ T, if primary image a of H (a) is received, the amount V to be lockedAIs sent to Block1The address of the receiver is uploaded, and the fourth step is carried out; if the time reaches 2 delta T and the original image a is not received, the locked amount is returned to Block1Uploading the address of the sender, and turning to the second step;
fourthly, the second response transaction module receives a response transaction instruction of the receiver from the keyboard, and the response transaction is carried out by the method that:
4.1 the second response transaction module receives the response transaction instruction from the receiving party from the keyboard, receives H (a), H (b) and c sent by the first initiating transaction module, and judges the correctness of H (a), H (b) and c, namely judges whether H (c) is H (a) + H (b); if yes, turning to 4.2; if not, informing the first initiating transaction module that the random number is selected by mistake, and turning to the third step;
4.2 second response transaction Module check Block1If the first hash time locking contract is correctly deployed, check Block1If the first hash time locking contract containing the address of the receiver appears, the correct deployment is represented, and the step is converted to 4.3, if the first hash time locking contract does not appear, the incorrect deployment is indicated, and the step is converted to the third step;
4.3 second response transaction Module judges the amount of money V to be transacted by the senderAJudging whether the hash value in the first hash time locking contract content is the received hash value H (a) or not, if so, selecting another hash value H (b) different from the hash value used by the first hash time locking contract module by the second response transaction module; second response transaction Module at Block2Creates a second hash time locking contract and blocks2Account amount V of the receiver on the chainAPerforming a P2SH lock; the receiver uses the private key of the receiver to sign the amount of money in the account, and the second hash time locking contract content is as follows: within time range DeltaT, if the original image b of H (b) is received, the locked amount VBIs sent to Block2Uploading the address of the sender, and turning to the fifth step; if the time reaches delta T and the original image b is not received, the amount V to be locked is determinedBReturns to Block2The address of the receiver is uploaded, and the second step is carried out;
fifthly, the first starting transaction module, the second hash time contract locking module and the second amount obtaining module are matched with each other to unlock the contract, so that the sender obtains the locked amount, and the method comprises the following steps:
5.1 first initiating transaction Module checkBlock2If the second hash lock contract is correctly deployed, check Block2Whether a second hash time locking contract containing the sender address appears or not is judged, and if the second hash time locking contract is correctly deployed, 5.2 is carried out; if the second Hash locking contract is not deployed correctly, switching to the third step;
5.2 the first initiating transaction module sends the primary image b of H (b) to the second hash time locking contract module;
5.3 the second hash time locking contract module judges whether a hash original image b is received in a time range delta T, if b is received in the time range delta T, the second hash time locking contract module sends the sender address and the original image b to the second money amount acquisition module, and 5.4 is turned; if the time reaches delta T and the original image b is not received, the transaction is terminated, and the second step is carried out;
5.4 the second amount obtaining module sends the corresponding hash value primitive b to the P2SH script, runs the P2SH script, verifies whether the running result of the P2SH script is true, and if true, the second amount obtaining module locks the amount VBIs sent to the sender in Block2The address is updated, and the step six is carried out; if false, 5.2 is turned;
sixthly, the second response transaction module, the first hash time locking contract module and the first amount obtaining module are matched with each other to unlock the contract, so that the receiver obtains the locking amount, and the method comprises the following steps:
6.1 the second responding transaction module gets Block by calculating a ═ c-b1The original image a of the first Hash time locking contract is obtained, and the original image a of H (a) is sent to a first Hash time locking contract module;
6.2 the first hash time locking contract module judges whether a hash primitive a is received within the time range of 2 delta T, if a is received within 2 delta T, the first hash time locking contract module sends the address of the receiver and the primitive a to the first amount acquisition module, and 6.3 is carried out; if the time reaches 2 delta T and the primary image a is not received, the transaction is terminated, and the second step is carried out;
6.3 the first amount obtaining module sends the corresponding Hash primitive a to the P2SH script, runs the P2SH script, verifies whether the running result of the P2SH script is true, and if the running result is true, the first amount obtaining module locksAmount of (V)ASending to the receiving party in Block1The cross-chain atomic transaction is completed, and the seventh step is carried out; if the operation result is false, turning to 6.1;
and step seven, finishing.
2. The decentralized non-linkable cross-chain atomic transaction method according to claim 1, wherein the 3.2 steps of the first originating transaction module encrypt h (a), h (b), and c using an asymmetric encryption algorithm.
3. The decentralized unlinked atomic cross-link trading method according to claim 1, wherein the first initiating trading module in step 3.3.1 is in Block1Creating a first hash time locking contract through the hash lock and time lock script component; the 4.3-step second response transaction module is in Block2A second hash time lock contract is created by the hash lock and time lock script component.
4. A decentralized method for unlinked atomic cross chain transaction according to claim 1, wherein Δ T is 60 min.
CN202010672839.5A 2020-07-14 2020-07-14 Decentralized unlinked cross-chain atomic transaction method Active CN111652618B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010672839.5A CN111652618B (en) 2020-07-14 2020-07-14 Decentralized unlinked cross-chain atomic transaction method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010672839.5A CN111652618B (en) 2020-07-14 2020-07-14 Decentralized unlinked cross-chain atomic transaction method

Publications (2)

Publication Number Publication Date
CN111652618A true CN111652618A (en) 2020-09-11
CN111652618B CN111652618B (en) 2022-09-02

Family

ID=72350653

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010672839.5A Active CN111652618B (en) 2020-07-14 2020-07-14 Decentralized unlinked cross-chain atomic transaction method

Country Status (1)

Country Link
CN (1) CN111652618B (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112488707A (en) * 2020-11-24 2021-03-12 泰康保险集团股份有限公司 Service flow supervision method and system
CN112636930A (en) * 2020-12-31 2021-04-09 重庆邮电大学 Asset transaction method and system based on atomic exchange
CN112804262A (en) * 2021-03-19 2021-05-14 北京万物智链科技有限公司 Safety guarantee method and system in block chain cross-chain communication
CN113159741A (en) * 2020-11-05 2021-07-23 北京跨联元焕网络科技有限公司 Cross-chain transaction method and model meeting mutual exchange between UTXO and intelligent contract
CN113205418A (en) * 2021-05-06 2021-08-03 杭州复杂美科技有限公司 Cross-chain transaction method, computer device and storage medium
CN113538150A (en) * 2021-07-28 2021-10-22 浙江数秦科技有限公司 Block chain asset cross-chain transaction method
CN113627906A (en) * 2021-08-31 2021-11-09 浙江大学 Cross-chain transaction method, system and storage medium of Hash locking and side chain technology
CN113763163A (en) * 2021-07-22 2021-12-07 中山大学 Block chain payment channel network transaction commission distribution method and system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109685489A (en) * 2018-12-28 2019-04-26 杭州云象网络技术有限公司 A kind of assets across chain method of commerce between block chain
US20200051041A1 (en) * 2018-08-10 2020-02-13 Hajoon Ko System and method for arbitrating a blockchain transaction
CN111091382A (en) * 2018-10-24 2020-05-01 成都高新信息技术研究院 Block chain asset decentralized cross-chain transaction method and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200051041A1 (en) * 2018-08-10 2020-02-13 Hajoon Ko System and method for arbitrating a blockchain transaction
CN111091382A (en) * 2018-10-24 2020-05-01 成都高新信息技术研究院 Block chain asset decentralized cross-chain transaction method and system
CN109685489A (en) * 2018-12-28 2019-04-26 杭州云象网络技术有限公司 A kind of assets across chain method of commerce between block chain

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
魏昂: "一种改进的区块链跨链技术", 《网络空间安全》 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113159741A (en) * 2020-11-05 2021-07-23 北京跨联元焕网络科技有限公司 Cross-chain transaction method and model meeting mutual exchange between UTXO and intelligent contract
CN112488707A (en) * 2020-11-24 2021-03-12 泰康保险集团股份有限公司 Service flow supervision method and system
CN112488707B (en) * 2020-11-24 2023-06-23 泰康保险集团股份有限公司 Business circulation supervision method and system
CN112636930A (en) * 2020-12-31 2021-04-09 重庆邮电大学 Asset transaction method and system based on atomic exchange
CN112636930B (en) * 2020-12-31 2022-05-03 重庆邮电大学 Asset transaction method and system based on atomic exchange
CN112804262A (en) * 2021-03-19 2021-05-14 北京万物智链科技有限公司 Safety guarantee method and system in block chain cross-chain communication
CN112804262B (en) * 2021-03-19 2021-07-27 北京万物智链科技有限公司 Safety guarantee method and system in block chain cross-chain communication
CN113205418B (en) * 2021-05-06 2022-09-13 杭州复杂美科技有限公司 Cross-chain transaction method, computer device and storage medium
CN113205418A (en) * 2021-05-06 2021-08-03 杭州复杂美科技有限公司 Cross-chain transaction method, computer device and storage medium
CN113763163B (en) * 2021-07-22 2023-11-17 中山大学 Block chain payment channel network transaction commission distribution method and system
CN113763163A (en) * 2021-07-22 2021-12-07 中山大学 Block chain payment channel network transaction commission distribution method and system
CN113538150A (en) * 2021-07-28 2021-10-22 浙江数秦科技有限公司 Block chain asset cross-chain transaction method
CN113538150B (en) * 2021-07-28 2024-04-05 浙江数秦科技有限公司 Block chain asset cross-chain transaction method
CN113627906B (en) * 2021-08-31 2022-03-25 浙江大学 Cross-chain transaction method, system and storage medium of Hash locking and side chain technology
CN113627906A (en) * 2021-08-31 2021-11-09 浙江大学 Cross-chain transaction method, system and storage medium of Hash locking and side chain technology

Also Published As

Publication number Publication date
CN111652618B (en) 2022-09-02

Similar Documents

Publication Publication Date Title
CN111652618B (en) Decentralized unlinked cross-chain atomic transaction method
CN106899698B (en) Cross-chain interoperation method between block chains
EP0348812B1 (en) Authentication method and apparatus therefor
KR0146437B1 (en) Identification scheme, digital signature giving message recovery scheme, digital signature with appendix schemie, key exchange scheme,..
CN112950367B (en) Method and device for generating and executing intelligent contract transaction
US4309569A (en) Method of providing digital signatures
US5493614A (en) Private signature and proof systems
CN109858281A (en) A kind of block chain account model method for secret protection based on zero-knowledge proof
Vaudenay Hidden collisions on DSS
CN104782077A (en) Reissue of cryptographic credentials
US20230368195A1 (en) System and method for transferring resources using a blockchain
CN110009354A (en) Voting method based on group ranking in a kind of block chain
CN111738857B (en) Generation and verification method and device of concealed payment certificate applied to block chain
US20240163098A1 (en) Computer-implemented methods and systems for controlling tasks implemented by a cyclically-ordered set of nodes participating in a blockchain network
CN110930153A (en) Block chain privacy data management method and system based on hidden third-party account
CN113344705B (en) Data sharing method and system based on block chain
US20240179211A1 (en) Computer-implemented system and method for controlling processing steps of a distributed system
US6697946B1 (en) Message recovery signature apparatus
CN112184245A (en) Cross-block-chain transaction identity confirmation method and device
JP2003513480A (en) A method for proving the authenticity of an entity and / or the integrity of a message
CN112950183B (en) Cross-chain data interchange method, system, device and electronic equipment
CN112348674A (en) Block chain transaction data storage and acquisition method and device
Zou et al. A new digital signature primitive and its application in blockchain
Ahmedova et al. Generation and distribution secret encryption keys with parameter
CN113704831B (en) Digital signature multiparty generation method and system without simultaneous online of participants

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