CN108335106A - 基于区块链的零知识多账本兑换转账方法、装置及存储介质 - Google Patents
基于区块链的零知识多账本兑换转账方法、装置及存储介质 Download PDFInfo
- Publication number
- CN108335106A CN108335106A CN201810067292.9A CN201810067292A CN108335106A CN 108335106 A CN108335106 A CN 108335106A CN 201810067292 A CN201810067292 A CN 201810067292A CN 108335106 A CN108335106 A CN 108335106A
- Authority
- CN
- China
- Prior art keywords
- account
- ciphertext
- user
- preset
- account book
- 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.)
- Pending
Links
- 238000012546 transfer Methods 0.000 title claims abstract description 61
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000012795 verification Methods 0.000 claims abstract description 128
- 238000004364 calculation method Methods 0.000 claims description 48
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000010200 validation analysis Methods 0.000 abstract 3
- 239000003999 initiator Substances 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/22—Payment schemes or models
- G06Q20/223—Payment schemes or models based on the use of peer-to-peer networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/381—Currency conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3218—Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3218—Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
- H04L9/3221—Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
- H04L9/3255—Cryptographic 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 using group based signatures, e.g. ring or threshold signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q2220/00—Business processing using cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Economics (AREA)
- Development Economics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Marketing (AREA)
- Software Systems (AREA)
- Technology Law (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明涉及一种基于区块链的零知识多账本兑换转账方法、装置及存储介质,该方法包括:区块链中第一账本下第一用户账户发起与第二账本下第二用户账户的交易请求,接收第一用户加密生成的第一密文;获取数字签名后的第一密文及第一校验密文;通过预设的若干合法兑换率数值和第一密文计算各个对应的第一验证值密文;利用第一验证值密文与第一校验密文算出用于验证第一账本与第二账本交易的预设兑换率是否在预设的合法兑换率数值范围之内的第二验证值密文;若是,基于第一密文和第一校验密文完成转账交易。本发明在能证明多个账本的转账交易是在一个提前设置的合法兑换率域内但第三方无法得知具体兑换率的情况下,实现多账本转账操作。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于区块链的零知识多账本兑换转账方法、装置及存储介质。
背景技术
区块链技术因其具备的去中心化、信息不可篡改性等特点,越来越受到金融、保险等领域的公司的青睐,尤其是运用区块链技术实现多方参与的交易事件(例如,转账交易、支付交易等事件)越来越成为人们关注的焦点,例如,当银行A要卖100票据给银行B,如果这笔交易在区块链上进行,那么所有其他在区块链上的节点都会验证这笔交易,好处是其他参与方可以一起参与确认交易准确性,但又不能解读(解密)数据(又称零知识检测)。
为了保证交易的隐私性,目前业界通常会在交易中采用隐私交易加/解密算法。然而,现有的隐私交易加/解密算法一般仅局限于区块链技术场景下一个账本内的操作,例如把一个资产账本内的x份额从甲账户转到乙账户。然而,在实际区块链技术场景中,每一笔转账都有可能牵扯两个或多个账本,且在一些场景下还要在能证明多个账本的转账交易是在一个提前设置的合法兑换率域内但第三方无法得知具体兑换率的情况下,来实现多账本转账操作,则这种现有隐私交易加/解密算法将无法实现区块链技术场景下的这种隐私交易。
发明内容
本发明的目的在于提供一种基于区块链的零知识多账本兑换转账方法、装置及存储介质,旨在保证交易信息安全的情况下,实现区块链技术场景中的多账本转账操作。
为实现上述目的,本发明提供一种基于区块链的零知识多账本兑换转账方法,应用于电子装置,所述基于区块链的零知识多账本兑换转账方法包括:
A、若区块链中第一账本下第一用户的第一用户账户发起与第二账本下第二用户的第二用户账户的交易请求,则接收所述第一用户预先加密生成的第一密文;所述交易请求为将预设兑换交易份额按预设兑换率进行兑换的请求,所述第一密文为预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成的第一密文;
B、获取数字签名后的第一密文及第一校验密文;所述第一校验密文由所述第一用户通过第一预设兑换计算公式及所述预设兑换率和所述第一密文为所述第二账本计算出所述第二账本的加密兑换交易份额,并在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文;
C、通过预先设置的若干合法兑换率数值和所述第一密文计算出各个对应的第一验证值密文;并利用各个所述第一验证值密文与所述第一校验密文算出用于验证所述第一账本与所述第二账本交易的预设兑换率是否在预先设置的合法兑换率数值范围之内的第二验证值密文;
D、若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则基于所述第一密文和所述第一校验密文,并按预设规则完成所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户的交易。
优选地,所述获取数字签名后的第一密文及第一校验密文的步骤包括:
所述第一用户将计算生成的第一密文、第一校验密文数字签名后发给所述第二用户,当获得所述第二用户对交易份额认同和数字签名后,所述第一用户将所述第一密文和所述第一校验密文发布到区块链网络上的各个节点上;或者,所述第一用户将计算生成的第一密文、第一校验密文数字签名后发给所述第二用户,所述第二用户对交易份额认同和数字签名后直接发布到区块链网络上的各个节点上;
从区块链网络上获取到发布的数字签名后的第一密文及第一校验密文。
优选地,该方法还包括:
通过预设的环签名验证方式证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内。
优选地,该方法还包括:
呈现与所有第二账本合法交易份额对应的第二验证值密文,由所述第一用户或所述第二用户通过所述第一校验密文中的附加隐私参数对应的私钥和所有第二验证值密文验证通过所述第一校验密文中的加密兑换交易份额是在预设合理交易范围内的数字,则证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内。
优选地,所述步骤D包括:
若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则根据所述第一密文更新所述第一账本下第一用户的第一用户账户的余额和所述第一账本下第二用户的第三账户的余额,并根据所述第一校验密文更新所述第二账本下第一用户的第四账户的余额和所述第二账本下第二用户的第二用户账户的余额。
优选地,所述根据所述第一密文更新所述第一账本下第一用户的第一用户账户的余额和所述第一账本下第二用户的第三账户的余额的步骤包括:
根据第一预设余额计算公式在所述第一账本下第一用户的第一用户账户的余额中扣除所述预设兑换交易份额,计算出所述第一账本下第一用户的第一用户账户的第一新余额,并将计算出的第一新余额更新到共享资产账本上;
根据第二预设余额计算公式在所述第一账本下第二用户的第三账户的余额中增加所述预设兑换交易份额,计算出所述第一账本下第二用户的第三账户的第二新余额,并将计算出的第二新余额更新到共享资产账本上。
优选地,所述根据所述第一校验密文更新所述第二账本下第一用户的第四账户的余额和所述第二账本下第二用户的第二用户账户的余额的步骤包括:
根据第三预设余额计算公式在所述第二账本下第二用户的第二用户账户的余额中扣除所述预设兑换交易份额,计算出所述第二账本下第二用户的第二用户账户的第三新余额,并将计算出的第三新余额更新到共享资产账本上;
根据第四预设余额计算公式在所述第二账本下第一用户的第四账户的余额中增加所述预设兑换交易份额,计算出所述第二账本下第一用户的第四账户的第四新余额,并将计算出的第四新余额更新到共享资产账本上。
此外,为实现上述目的,本发明还提供一种电子装置,所述电子装置包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的基于区块链的零知识多账本兑换转账系统,所述基于区块链的零知识多账本兑换转账系统被所述处理器执行时实现如下步骤:
若区块链中第一账本下第一用户的第一用户账户发起与第二账本下第二用户的第二用户账户的交易请求,则接收所述第一用户预先加密生成的第一密文;所述交易请求为将预设兑换交易份额按预设兑换率进行兑换的请求,所述第一密文为预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成的第一密文;
获取数字签名后的第一密文及第一校验密文;所述第一校验密文由所述第一用户通过第一预设兑换计算公式及所述预设兑换率和所述第一密文为所述第二账本计算出所述第二账本的加密兑换交易份额,并在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文;
通过预先设置的若干合法兑换率数值和所述第一密文计算出各个对应的第一验证值密文;并利用各个所述第一验证值密文与所述第一校验密文算出用于验证所述第一账本与所述第二账本交易的预设兑换率是否在预先设置的合法兑换率数值范围之内的第二验证值密文;
若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则基于所述第一密文和所述第一校验密文,并按预设规则完成所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户的交易。
优选地,所述基于区块链的零知识多账本兑换转账系统被所述处理器执行实现获取数字签名后的第一密文及第一校验密文的步骤时,具体包括:
所述第一用户将计算生成的第一密文、第一校验密文数字签名后发给所述第二用户,当获得所述第二用户对交易份额认同和数字签名后,所述第一用户将所述第一密文和所述第一校验密文发布到区块链网络上的各个节点上;或者,所述第一用户将计算生成的第一密文、第一校验密文数字签名后发给所述第二用户,所述第二用户对交易份额认同和数字签名后直接发布到区块链网络上的各个节点上;
从区块链网络上获取到发布的数字签名后的第一密文及第一校验密文。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有基于区块链的零知识多账本兑换转账系统,所述基于区块链的零知识多账本兑换转账系统可被至少一个处理器执行,以使所述至少一个处理器执行如上述的基于区块链的零知识多账本兑换转账方法的步骤。
本发明提出的基于区块链的零知识多账本兑换转账方法、装置及存储介质,在区块链中第一账本下第一用户的第一用户账户发起与第二账本下第二用户的第二用户账户将预设兑换交易份额按预设兑换率进行兑换的交易请求后,接收所述第一用户预先为预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成的第一密文;通过第一预设兑换计算公式并基于所述预设兑换率和所述第一密文,为所述第二账本计算生成所述第二账本的加密兑换交易份额,并在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文。通过预先设置的若干合法兑换率数值和所述第一密文计算出各个对应的第一验证值密文;并利用各个所述第一验证值密文与所述第一校验密文算出第二验证值密文;若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则基于所述第一密文和所述第一校验密文,并按预设规则完成所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户的交易。
由于能对第一账本下第一用户账户的预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成第一密文,并为所述第二账本计算生成所述第二账本的加密兑换交易份额,在交易过程中区块链上的其他节点无法解读具体的兑换交易份额数据,从而有效保证区块链技术场景中交易信息安全。而且,由于在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文,该附加隐私参数使得第三方无法得知具体兑换率,同时,通过第二验证值密文可验证所述第一账本与所述第二账本交易的预设兑换率是否在预先设置的合法兑换率数值范围之内。从而在有效保证区块链技术场景中交易信息安全、且能证明多个账本的转账交易是在一个提前设置的合法兑换率域内但第三方无法得知具体兑换率的情况下,实现多账本转账操作。
附图说明
图1为本发明基于区块链的零知识多账本兑换转账系统10较佳实施例的运行环境示意图;
图2为本发明基于区块链的零知识多账本兑换转账方法一实施例的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明提供一种基于区块链的零知识多账本兑换转账系统。请参阅图1,是本发明基于区块链的零知识多账本兑换转账系统10较佳实施例的运行环境示意图。
在本实施例中,所述的基于区块链的零知识多账本兑换转账系统10安装并运行于电子装置1中。该电子装置1可包括,但不仅限于,存储器11、处理器12及网络接口13。图1仅示出了具有组件11-13的电子装置1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
所述电子装置1通过网络接口13连接网络(图1未标出),获取资讯。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System ofMobile communication,GSM)、宽带码分多址(Wideband Code Division MultipleAccess,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi、通话网络等无线或有线网络。
所述存储器11为至少一种类型的可读计算机存储介质,所述存储器11在一些实施例中可以是所述电子装置1的内部存储单元,例如该电子装置1的硬盘或内存。所述存储器11在另一些实施例中也可以是所述电子装置1的外部存储设备,例如所述电子装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括所述电子装置1的内部存储单元也包括外部存储设备。所述存储器11用于存储安装于所述电子装置1的应用软件及各类数据,例如所述基于区块链的零知识多账本兑换转账系统10的程序代码等。所述存储器11还可以用于暂时地存储已经输出或者将要输出的数据。
所述处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片,用于运行所述存储器11中存储的程序代码或处理数据,例如执行所述基于区块链的零知识多账本兑换转账系统10等。
所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在所述电子装置1与其他电子设备之间建立通信连接。
基于区块链的零知识多账本兑换转账系统10包括至少一个存储在所述存储器11中的计算机可读指令,该至少一个计算机可读指令可被所述处理器12执行,以实现本申请各实施例。
其中,上述基于区块链的零知识多账本兑换转账系统10被所述处理器12执行时实现如下步骤:
步骤S1,若区块链中第一账本下第一用户的第一用户账户发起与第二账本下第二用户的第二用户账户的交易请求,则接收所述第一用户预先加密生成的第一密文;所述交易请求为将预设兑换交易份额按预设兑换率进行兑换的请求,所述第一密文为预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成的第一密文。
本实施例中,首先由区块链中的用户或者机构将自己在每一个账本下每一个用户账户的余额采用第一预设密码公式及对应的余额隐私秘钥进行加密,并将自己在每一个账本下每一个用户账户加密后的余额通过区块链的智能合约写到该区块链的各个节点上的共享资产账本上。例如,采用Pederson Commitment算法,所述第一预设密码公式为a'ij=g^aij*h^xij,或者,a'ij=h^aij*g^xij,其中,aij代表第i账本下的第j个用户账户的余额,xij代表第i账本下的第j个用户账户的余额隐私秘钥,a'ij代表第i账本下的第j个用户账户的加密余额,g和h为离散对数问题中的基,h=g^c,c为未知数,i和j为正整数。
同时,在区块链智能合约创建时预先设置合法兑换率数值。例如,合法兑换率数值可以记为:e1,e2,e3,e4,...;在区块链智能合约创建时可以为多个账本预先设置两两之间的合法兑换率,如人民币账本和美元账本之间的合法兑换率只能是6.7,6.8,6.9,7.0,...等。
在第一账本(例如,该第一账本可以是人民币账本)下第一用户的第一用户账户发起与第二账本(例如,该第二账本可以是美元账本)下第二用户的第二用户账户将预设兑换交易份额按预设兑换率进行兑换的交易请求之前,由该第一用户为该预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成第一密文。例如,所述第二预设密码公式为t'1ij=g^tij*h^zij,或者,t'1ij=h^tij*g^zij,其中,t1ij代表第i账本下的第j个第一用户账户的兑换交易份额,z1ij代表第i账本下的第j个第一用户账户的兑换交易份额隐私秘钥,t'1ij代表第i账本下的第j个第一用户账户的加密兑换交易份额,g和h为基,h是g的一个n次方,n为正整数,i和j为正整数。
步骤S2,获取数字签名后的第一密文及第一校验密文;所述第一校验密文由所述第一用户通过第一预设兑换计算公式及所述预设兑换率和所述第一密文为所述第二账本计算出所述第二账本的加密兑换交易份额,并在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文。
本实施例中,若为该预设兑换交易份额采用预设兑换率e(例如,人民币对美元的兑换率是7,那么e=7)进行兑换,则通过第一预设兑换计算公式并基于所述预设兑换率e和第一密文,为第二账本计算出第二账本的加密兑换交易份额,并在第二账本的加密兑换交易份额上加上一个附加隐私参数生成第一校验密文,该附加隐私参数为一个隐私公钥,只有交易方知道与该附加隐私参数对应的附加隐私秘钥。在第二账本的加密兑换交易份额上加上一个附加隐私参数生成第一校验密文的作用是让第三方可以检验第二账本加密交易份额是在合法交易范围内,但第三方无法得知具体兑换率。
例如,所述第一预设交易兑换计算公式为 或者, 其中,t1ij*e代表第i账本下的第j个第二用户账户的兑换交易份额,z1ij*e代表第i账本下的第j个第二用户账户的兑换交易份额隐私秘钥,z2ij代表第i账本下的第j个第二用户账户的兑换交易份额附加隐私秘钥,t'2ij代表第i账本下的第j个第二用户账户的加密兑换交易份额,g和h为基,h是g的一个n次方,n为正整数,i和j为正整数。
步骤S3,通过预先设置的若干合法兑换率数值和所述第一密文计算出各个对应的第一验证值密文;并利用各个所述第一验证值密文与所述第一校验密文算出用于验证所述第一账本与所述第二账本交易的预设兑换率是否在预先设置的合法兑换率数值范围之内的第二验证值密文。
第一用户将第一密文、第一校验密文数字签名后发给第二用户,当获得第二用户对交易份额认同和数字签名后,第一用户将第一密文和第一校验密文发布到区块链网络上的各个节点上,并由区块链网络上的智能合约通过预先设置的所有合法兑换率(e1,e2,e3,e4…..)和第一密文计算出各个合理第二账本更新数值(即各个合法兑换率对应的第二账本更新数值)对应的第一验证值密文,其中,第一验证值密文与第一校验密文的不同在于所有第一验证值密文都不含有附加隐私参数。此外,第一用户将第一密文、第一校验密文数字签名后发给第二用户后,第二用户对交易份额认同和数字签名后可以直接发布到区块链网络上的各个节点上。
智能合约用各个第一验证值密文与第一校验密文算出验证第一账本与第二账本的交易份额兑换率是否在预先设置的合理兑换率数值之内的第二验证值密文。需要说明的是:每一个第二验证值密文都等同于一个公钥,若第一用户或第二用户要证明第一校验密文在合法兑换范围内,则第一或第二用户必须有对应这个第二验证值密文(公钥)的一个私钥。如果第一校验密文确实在合法兑换范围内,那么第二验证值密文(公钥)就是已知附加到第一校验密文中的附加隐私参数,与第二验证值密文(公钥)对应的私钥就是与第一校验密文中的附加隐私参数(公钥)对应的私钥。
步骤S4,若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则基于所述第一密文和所述第一校验密文,并按预设规则完成所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户的交易。
本实施例中,可通过预设的环签名或Range Proof验证方式证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内。例如,在一种可选的实施方式中,当智能合约上呈现与所有第二账本合法交易份额对应的第二验证值密文(公钥)后,第一用户或第二用户通过所述第一校验密文中的附加隐私参数对应的私钥和所有第二验证值密文(公钥)验证通过第一校验密文加密的加密份额是在预设合理交易范围内的数字,则证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内。
在另一种可选的实施方式中,第一校验密文对应第一密文的合理范围未必是交易兑换率,第一密文和第一校验密也可以各自代表一个数字(如日期),可以用上述算法检测第一密文代表的数字与第一校验密代表的数字的相差是否在一个提前预设的范围内,来证明第一校验密文是在预先设置的合理兑换率数值之内,进而证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内。
若第一校验密文被证明在预先设置的合理兑换率数值之内,则该区块链的智能合约根据所述第一密文更新该第一账本下第一用户的第一用户账户的余额和该第一账本下第二用户的第三账户的余额,并根据所述第一校验密文更新该第二账本下第一用户的第四账户的余额和该第二账本下第二用户的第二用户账户的余额。例如,可将预设兑换交易份额按预设兑换率在所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户之间进行转账交易。还可将第一用户在所述第一账本(例如,该第一账本可以是人民币账本)以及所述第二账本(例如,该第二账本可以是美元账本)下的所有用户账户同时进行更新(例如余额更新),将第二用户在所述第一账本(例如,该第一账本可以是人民币账本)以及所述第二账本(例如,该第二账本可以是美元账本)下的所有用户账户同时进行更新(例如余额更新)。例如,如果甲要与乙用人民币兑换美元,则本实施例中甲和乙的人民币和美元的账户可以实现同时更新,完成区块链技术场景下多账本转账的隐私交易。
与现有技术相比,本实施例在区块链中第一账本下第一用户的第一用户账户发起与第二账本下第二用户的第二用户账户将预设兑换交易份额按预设兑换率进行兑换的交易请求后,接收所述第一用户预先为预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成的第一密文;通过第一预设兑换计算公式并基于所述预设兑换率和所述第一密文,为所述第二账本计算生成所述第二账本的加密兑换交易份额,并在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文。通过预先设置的若干合法兑换率数值和所述第一密文计算出各个对应的第一验证值密文;并利用各个所述第一验证值密文与所述第一校验密文算出第二验证值密文;若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则基于所述第一密文和所述第一校验密文,并按预设规则完成所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户的交易。
由于能对第一账本下第一用户账户的预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成第一密文,并为所述第二账本计算生成所述第二账本的加密兑换交易份额,在交易过程中区块链上的其他节点无法解读具体的兑换交易份额数据,从而有效保证区块链技术场景中交易信息安全。而且,由于在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文,该附加隐私参数使得第三方无法得知具体兑换率,同时,通过第二验证值密文可验证所述第一账本与所述第二账本交易的预设兑换率是否在预先设置的合法兑换率数值范围之内。从而在有效保证区块链技术场景中交易信息安全、且能证明多个账本的转账交易是在一个提前设置的合法兑换率域内但第三方无法得知具体兑换率的情况下,实现多账本转账操作。
在一可选的实施例中,在上述图1的实施例的基础上,所述基于区块链的零知识多账本兑换转账系统10被所述处理器12执行实现所述步骤S4时,具体包括:
根据所述第一密文更新所述第一账本下第一用户的第一用户账户的余额和所述第一账本下第二用户的第三账户的余额,并根据所述第一校验密文更新所述第二账本下第二用户的第二用户账户的余额和所述第二账本下第一用户的第四账户的余额。
本实施例中,在该第一账本(例如,该第一账本可以是人民币账本)下第一用户的第一用户账户发起与第二账本(例如,该第二账本可以是美元账本)下第二用户的第二用户账户的预设交易份额和合法兑换价的交易请求后,该区块链的智能合约根据所述第一密文更新该第一账本下第一用户的第一用户账户的余额和该第一账本下第二用户的第三账户的余额,并根据所述第一校验密文更新该第二账本下第一用户的第四账户的余额和该第二账本下第二用户的第二用户账户的余额。其中,第一用户账户和第四账户都是第一用户的账户,分别为第一用户在该第一账本和该第二账本下的账户,例如,第一用户账户为第一用户的人民币账本账户,第四账户为第一用户的美元账本账户。第二用户账户和第三账户都是第二用户的账户,分别为第二用户在该第二账本和该第一账本下的账户,例如,第二用户账户为第二用户的美元账本账户,第三账户为第二用户的人民币账本账户。
具体地,所述根据所述第一密文更新该第一账本下第一用户的第一用户账户的余额和该第一账本下第二用户的第三账户的余额的步骤包括:
智能合约根据第一预设余额计算公式在该第一账本下第一用户的第一用户账户的余额中扣除所述预设兑换交易份额,计算出该第一账本下第一用户的第一用户账户的第一新余额,并将计算出的第一新余额更新到共享资产账本上。例如,所述第一预设余额计算公式为a1ij”=a1ij'/t1ij'=(g^a1ij*h^x1ij)/(g^tij*h^zij)=g^(a1ij–tij)*h^(x1ij–zij),或者,a1ij”=h^(a1ij–tij)*g^(x1ij–zij)。其中,a1ij代表第i账本下的第j个第一用户账户的余额,x1ij代表第i账本下的第j个第一用户账户的余额隐私秘钥,a1ij”代表第i账本下的第j个第一用户账户的加密新余额,g和h为基,h是g的一个n次方,i和j为正整数,“a1ij-tij”代表第i账本下的第j个第一用户账户的新余额,“x1ij-zij”代表第i账本下的第j个第一用户账户的新混淆余额隐私秘钥,tij代表第i账本下的第j个第一用户账户的交易份额,zij代表第i账本下的第j个第一用户账户的交易份额隐私秘钥。
智能合约根据第二预设余额计算公式在该第一账本下第二用户的第三账户的余额中增加所述预设兑换交易份额,计算出该第一账本下第二用户的第三账户的第二新余额,并将计算出的第二新余额更新到共享资产账本上。例如,所述第二预设余额计算公式为a3ij”=a3ij'*t1ij'=(g^a3ij*h^y3ij)*(g^tij*h^zij)=g^(a3ij+tij)*h^(y3ij+zij),或者,a3ij”=h^(a3ij+tij)*g^(y3ij+zij),a3ij代表第i账本下的第j个第三账户的余额,Y3ij代表第i账本下的第j个第三账户的余额隐私秘钥,a3ij”代表第i账本下的第j个第三账户的加密新余额,g和h为基,h是g的一个n次方,i和j为正整数,“a3ij+tij”代表第i账本下的第j个第三账户的新余额,“y3ij+zij”代表第i账本下的第j个第三账户的新混淆余额隐私秘钥,tij代表第i账本下的第j个第三账户的交易份额,zij代表第i账本下的第j个第三账户的交易份额隐私秘钥。
所述根据所述第一校验密文更新该第二账本下第一用户的第四账户的余额和该第二账本下第二用户的第二用户账户的余额的步骤包括:
智能合约根据第三预设余额计算公式在该第二账本下第二用户的第二用户账户的余额中扣除所述预设兑换交易份额,计算出该第二账本下第二用户的第二用户账户的第三新余额,并将计算出的第三新余额更新到共享资产账本上。例如,所述第三预设余额计算公式为a2ij”=a2ij'/t2ij'=(g^a2ij*h^x2ij)/(g^(t1ij*e)*h^(z1ij*e)*h^z2ij)=g^(a2ij-(tij*e))*h^(x2ij-(z1ij*e)-z2ij),或者a2ij”=h^(a2ij-(t1ij*e))*g^(x2ij-(z1ij*e)-z2ij),其中,a2ij代表第i账本下的第j个第二用户账户的余额,x2ij代表第i账本下的第j个第二用户账户的余额隐私秘钥,a2ij”代表第i账本下的第j个第二用户账户的加密新余额,g和h为基,h是g的一个n次方,i和j为正整数,“a2ij-(tij*e)”代表第i账本下的第j个第二用户账户的新余额,“(x2ij-(z1ij*e)-z2ij)”代表第i账本下的第j个第二用户账户的新混淆余额隐私秘钥,“t1ij*e”代表第i账本下的第j个第二用户账户的交易份额,“z1ij*e”代表第i账本下的第j个第二用户账户的交易份额隐私秘钥。
智能合约根据第四预设余额计算公式在该第二账本下第一用户的第四账户的余额中增加所述预设兑换交易份额,计算出该第二账本下第一用户的第四账户的第四新余额,并将计算出的第四新余额更新到共享资产账本上。例如,所述第四预设余额计算公式为a4ij”=a4ij'*t2ij'=(g^a4ij*h^y4ij)*(g^(t1ij*e)*h^(z1ij*e)*h^z2ij)=g^(a4ij+(t1ij*e))*h^(y4ij+(z1ij*e)+z2ij),或者,a4ij”=h^(a4ij+(tij*e))*g^(y4ij+(zij*e)),a4ij代表第i账本下的第j个第四账户的余额,Y4ij代表第i账本下的第j个第四账户的余额隐私秘钥,a4ij”代表第i账本下的第j个第四账户的加密新余额,g和h为基,h是g的一个n次方,i和j为正整数,“a4ij+(t1ij*e)”代表第i账本下的第j个第四账户的新余额,“(y4ij+(z1ij*e)+z2ij)”代表第i账本下的第j个第四账户的新混淆余额隐私秘钥,“t1ij*e”代表第i账本下的第j个第四账户的交易份额,“z1ij*e”代表第i账本下的第j个第四账户的交易份额隐私秘钥。
在一具体的实施方式中,以下以账本1和账本2为例进行举例说明:
预步骤一:在区块链智能合约创建之初设置合法兑换率数值。如合法兑换率数值:r1,r2,r3,r4...。智能合约可以预先规定合法的兑换率,如人民币和美元兑换只能是6.7,6.8,6.9,7.0...。
预步骤二:在区块链智能合约里为每一个账本下每一个用户账户的余额用一种具有加法同态特性的密码公式加密,只有账户的拥有者可以通过自己的“账户隐私密钥”解密读取自己账户的余额。在此以Pederson Commitment以及ECC(椭圆曲线)为例进行说明,当然,也不限定采用其他如RSA、Diffie-Hellman等。例如可用Pederson Commitment代表每个账户,甲账户要用在账本1的余额换取以账户乙在账本2的余额,例如甲用人民币(账本1)跟乙兑换美元(账本2),甲会在账本1把部分人民币余额转给乙,而乙则会在账本2把自己的美元转给甲。具体地:
对于账本1,定义如下:
a1=甲账户账本1余额
a1’=密码混淆后的甲账户账本1余额
x1=甲账户账本1余额隐私密钥
得到甲账户余额:a1’=g^a1*h^x1。
定义:
b1=乙账户人民币余额
b1’=密码混淆后的乙账户人民币余额
y1=乙账户人民币余额隐私密钥
得到乙账户余额:b1’=g^b1*h^y1。
对于账本2,定义如下:
a2=甲账户账本2余额
a2’=密码混淆后的甲账户账本2余额
x2=甲账户账本2余额隐私密钥
得到甲账户余额:a2’=g^a2*h^x2
定义:
b2=乙账户人民币余额
b2’=密码混淆后的乙账户人民币余额
y2=乙账户人民币余额隐私密钥
得到乙账户余额:b2’=g^b2*h^y2
实现步骤一:如果甲要用账本1的余额交换乙在账本2的余额,甲会创建若干密文,第一个是用加法同态密文保护的账本1交易份额(第一密文),第二个是用加法同态密文保护的账本2交易份额(第一校验密文),第三个是一种证明可以使第三方在零知识环境下验证第一账本和第二账本的兑换率是在法定范围内的第一验证密文及第二验证密文。具体地:
对于第一密文,转账发起方(甲)会自行生成第一密文用的同态隐私密钥和第一校验密文用的隐私密钥和附加参数并将它们和第一密文与第一校验密文发给交易对手(乙),并在获得乙认可和对第一密文和第一校验密文数字签名后将整个交易以及乙方的签名发到区块链网络上(乙方数字签名代表对交易份额与兑换率的认可)。
定义:
t=账本1交易份额
t1’=密码混淆后的第二账本交易份额
z1=第一账本交易份额隐私密钥
得到第一密文(账本1交易份额):t1’=g^t*h^z1
对于第一校验密文,定义:
e=兑换率,实际上应当是法定兑换率范围(r1,r2,r3,r4)中的一位
t*e=te=密码混淆后的第二账本交易份额
z2=第二账本交易份额附加隐私密钥
t2’=账本2交易份额
得到第一校验密文(账本2交易份额):t2’=g^te*h^z1e*h^z2
对于第一验证密文,由于e必须是提前设定的合理兑换率数值(r1,r2,r3,r4)中的一个,当第一账本交易额是t的时候,第二账本交易额必须是t*r1,t*r2,t*r3,t*r4中的一个。假设e=r2,第二账本交易额是t*r2,通过第一密文和合理兑换率数值,区块链智能合约可以轻松算出混淆过的第二账本的合理交易份额,则:
第一验证密文如下:
t21=(g^t*h^z1)^r1=g^(t*r1)*h^(z1*r1)
t22=(g^t*h^z1)^r2=g^(t*r2)*h^(z1*r2)
t23=(g^t*h^z1)^r3=g^(t*r3)*h^(z1*r3)
t24=(g^t*h^z1)^r4=g^(t*r4)*h^(z1*r4)
由于对兑换率隐私需求,交易发起方不能直接提供t21-t24中的任何一个数额,所以交易发起方会在提供的第二账本中的交易份额中增加一个混淆密钥z2,因此第一校验密文变成t2’=t22’=g^(t*e)*h^(z1*e)*h^z2=g^(t*r2)*h^(z1*r2)*h^z2。由于混淆密钥z2的存在,区块链上的任何一方都不知道,第二账本交易份额属于从t21-t24中任何一个份额中演变的,也不确定交易否还在合理兑换率范围内。因此交易发起方必须提供第二账本交易份额还在合理兑换率范围内的证据。
本实施例中可以用环签名来提供这个证据,在这个环签名中的4个(在此仅以4个为例进行说明,还可以为很多个)公私钥分别是:
sk1:t21私钥
sk2:t22私钥
sk3:t23私钥
sk4:t24私钥
对于第二验证密文,每个私钥都会有把每个第二账本交易份额转换成与正确交易份额产生的同样的密文:
t2’=(g^(t*r1)*h^(z1*r1)*h^sk1)
t2’=(g^(t*r2)*h^(z1*r2)*h^sk2)
t2’=(g^(t*r3)*h^(z1*r3)*h^sk3)
t2’=(g^(t*r4)*h^(z1*r4)*h^sk4)
第二验证密文(pk1,pk2,pk3,pk4):
pk1=h^sk1=(g^(t*r1)*h^(z1*r1)*h^sk1)/(g^(t*r1)*h^(z1*r1))=h^?
pk2=h^sk2=(g^(t*r2)*h^(z1*r2)*h^sk2)/(g^(t*r2)*h^(z1*r2))=h^sk2=h^z2
pk3=h^sk3=(g^(t*r3)*h^(z1*r3)*h^sk3)/(g^(t*r3)*h^(z1*r3))=h^?
pk4=h^sk4=(g^(t*r4)*h^(z1*r4)*h^sk4)/(g^(t*r4)*h^(z1*r4))=h^?
很明显,交易发起方只有在当兑换率是r2的时候,知道对应的私钥是z2。通过z2,pk1,pk2,pk3,pk4,和少量参数,生成环签名证据(s)证明兑换率是合理兑换率数值中的一个。
实现步骤二A:智能合约要验证第一账本与第二账本交易份额在合理兑换率数值之内。例如,可通过环签名或Range Proof验证第一账本与第二账本交易份额在合理兑换率数值之内。
实现步骤二B:在账本1的甲账户余额中增加交易份额,并同时在账本1乙账户余额中扣除交易份额。具体地:
甲账户在账本1新份额:a1”=a1’*t’
a1”=(g^a1*h^x1)*(g^t*h^z1)
a1”=g^(a1+t)*h^(x1+z1)
甲账户新余额=a1+t
甲账户新混淆隐私秘钥x1’=(x1+z1)。
乙账户在账本1新份额:b1”=b1’/t’
b1”=(g^b1*h^y1)/(g^t*h^z1)
b1”=g^(b1-t)*h^(y1-z1)
乙账户新余额b1’=b1-t
乙账户新混淆隐私秘钥y1’=y1-z1。
实现步骤二C:在账本2的甲账户余额中扣除交易份额,并同时在账本2乙账户余额中增加上交易份额。具体地:
甲账户在账本2新份额:a2”=a2’/t2’
a2”=(g^a2*h^x2)/(g^(t*e)*h^(z1*e)*h^z2)
a2”=g^(a2-te)*h^(x2-z1*e-z2)
甲账户新余额=a2-te
甲账户新混淆隐私密钥x2’=(x2-z1*e-z2)。
乙账户在账本2新份额:b2”=b2’*te’
b2”=(g^b2*h^y2)*(g^(t*e)*h^(z1*e)*h^z2)
b2”=g^(b2+te)*h^(y2+z1*e+z2)
乙账户新余额b2’=b2+te
乙账户新混淆隐私密钥y2’=y2+z1*e+z2。
如图2所示,图2为本发明基于区块链的零知识多账本兑换转账方法一实施例的流程示意图,该基于区块链的零知识多账本兑换转账方法包括以下步骤:
步骤S10,若区块链中第一账本下第一用户的第一用户账户发起与第二账本下第二用户的第二用户账户的交易请求,则接收所述第一用户预先加密生成的第一密文;所述交易请求为将预设兑换交易份额按预设兑换率进行兑换的请求,所述第一密文为预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成的第一密文。
本实施例中,首先由区块链中的用户或者机构将自己在每一个账本下每一个用户账户的余额采用第一预设密码公式及对应的余额隐私秘钥进行加密,并将自己在每一个账本下每一个用户账户加密后的余额通过区块链的智能合约写到该区块链的各个节点上的共享资产账本上。例如,采用Pederson Commitment算法,所述第一预设密码公式为a'ij=g^aij*h^xij,或者,a'ij=h^aij*g^xij,其中,aij代表第i账本下的第j个用户账户的余额,xij代表第i账本下的第j个用户账户的余额隐私秘钥,a'ij代表第i账本下的第j个用户账户的加密余额,g和h为离散对数问题中的基,h=g^c,c为未知数,i和j为正整数。
同时,在区块链智能合约创建时预先设置合法兑换率数值。例如,合法兑换率数值可以记为:e1,e2,e3,e4,...;在区块链智能合约创建时可以为多个账本预先设置两两之间的合法兑换率,如人民币账本和美元账本之间的合法兑换率只能是6.7,6.8,6.9,7.0,...等。
在第一账本(例如,该第一账本可以是人民币账本)下第一用户的第一用户账户发起与第二账本(例如,该第二账本可以是美元账本)下第二用户的第二用户账户将预设兑换交易份额按预设兑换率进行兑换的交易请求之前,由该第一用户为该预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成第一密文。例如,所述第二预设密码公式为t'1ij=g^tij*h^zij,或者,t'1ij=h^tij*g^zij,其中,t1ij代表第i账本下的第j个第一用户账户的兑换交易份额,z1ij代表第i账本下的第j个第一用户账户的兑换交易份额隐私秘钥,t'1ij代表第i账本下的第j个第一用户账户的加密兑换交易份额,g和h为基,h是g的一个n次方,n为正整数,i和j为正整数。
步骤S20,获取数字签名后的第一密文及第一校验密文;所述第一校验密文由所述第一用户通过第一预设兑换计算公式及所述预设兑换率和所述第一密文为所述第二账本计算出所述第二账本的加密兑换交易份额,并在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文。
本实施例中,若为该预设兑换交易份额采用预设兑换率e(例如,人民币对美元的兑换率是7,那么e=7)进行兑换,则通过第一预设兑换计算公式并基于所述预设兑换率e和第一密文,为第二账本计算出第二账本的加密兑换交易份额,并在第二账本的加密兑换交易份额上加上一个附加隐私参数生成第一校验密文,该附加隐私参数为一个隐私公钥,只有交易方知道与该附加隐私参数对应的附加隐私秘钥。在第二账本的加密兑换交易份额上加上一个附加隐私参数生成第一校验密文的作用是让第三方可以检验第二账本加密交易份额是在合法交易范围内,但第三方无法得知具体兑换率。
例如,所述第一预设交易兑换计算公式为 或者, 其中,t1ij*e代表第i账本下的第j个第二用户账户的兑换交易份额,z1ij*e代表第i账本下的第j个第二用户账户的兑换交易份额隐私秘钥,z2ij代表第i账本下的第j个第二用户账户的兑换交易份额附加隐私秘钥,t'2ij代表第i账本下的第j个第二用户账户的加密兑换交易份额,g和h为基,h是g的一个n次方,n为正整数,i和j为正整数。
步骤S30,通过预先设置的若干合法兑换率数值和所述第一密文计算出各个对应的第一验证值密文;并利用各个所述第一验证值密文与所述第一校验密文算出用于验证所述第一账本与所述第二账本交易的预设兑换率是否在预先设置的合法兑换率数值范围之内的第二验证值密文。
第一用户将第一密文、第一校验密文数字签名后发给第二用户,当获得第二用户对交易份额认同和数字签名后,第一用户将第一密文和第一校验密文发布到区块链网络上的各个节点上,并由区块链网络上的智能合约通过预先设置的所有合法兑换率(e1,e2,e3,e4…..)和第一密文计算出各个合理第二账本更新数值(即各个合法兑换率对应的第二账本更新数值)对应的第一验证值密文,其中,第一验证值密文与第一校验密文的不同在于所有第一验证值密文都不含有附加隐私参数。此外,第一用户将第一密文、第一校验密文数字签名后发给第二用户后,第二用户对交易份额认同和数字签名后可以直接发布到区块链网络上的各个节点上。
智能合约用各个第一验证值密文与第一校验密文算出验证第一账本与第二账本的交易份额兑换率是否在预先设置的合理兑换率数值之内的第二验证值密文。需要说明的是:每一个第二验证值密文都等同于一个公钥,若第一用户或第二用户要证明第一校验密文在合法兑换范围内,则第一或第二用户必须有对应这个第二验证值密文(公钥)的一个私钥。如果第一校验密文确实在合法兑换范围内,那么第二验证值密文(公钥)就是已知附加到第一校验密文中的附加隐私参数,与第二验证值密文(公钥)对应的私钥就是与第一校验密文中的附加隐私参数(公钥)对应的私钥。
步骤S40,若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则基于所述第一密文和所述第一校验密文,并按预设规则完成所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户的交易。
本实施例中,可通过预设的环签名或Range Proof验证方式证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内。例如,在一种可选的实施方式中,当智能合约上呈现与所有第二账本合法交易份额对应的第二验证值密文(公钥)后,第一用户或第二用户通过所述第一校验密文中的附加隐私参数对应的私钥和所有第二验证值密文(公钥)验证通过第一校验密文加密的加密份额是在预设合理交易范围内的数字,则证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内。
在另一种可选的实施方式中,第一校验密文对应第一密文的合理范围未必是交易兑换率,第一密文和第一校验密也可以各自代表一个数字(如日期),可以用上述算法检测第一密文代表的数字与第一校验密代表的数字的相差是否在一个提前预设的范围内,来证明第一校验密文是在预先设置的合理兑换率数值之内,进而证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内。
若第一校验密文被证明在预先设置的合理兑换率数值之内,则该区块链的智能合约根据所述第一密文更新该第一账本下第一用户的第一用户账户的余额和该第一账本下第二用户的第三账户的余额,并根据所述第一校验密文更新该第二账本下第一用户的第四账户的余额和该第二账本下第二用户的第二用户账户的余额。例如,可将预设兑换交易份额按预设兑换率在所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户之间进行转账交易。还可将第一用户在所述第一账本(例如,该第一账本可以是人民币账本)以及所述第二账本(例如,该第二账本可以是美元账本)下的所有用户账户同时进行更新(例如余额更新),将第二用户在所述第一账本(例如,该第一账本可以是人民币账本)以及所述第二账本(例如,该第二账本可以是美元账本)下的所有用户账户同时进行更新(例如余额更新)。例如,如果甲要与乙用人民币兑换美元,则本实施例中甲和乙的人民币和美元的账户可以实现同时更新,完成区块链技术场景下多账本转账的隐私交易。
与现有技术相比,本实施例在区块链中第一账本下第一用户的第一用户账户发起与第二账本下第二用户的第二用户账户将预设兑换交易份额按预设兑换率进行兑换的交易请求后,接收所述第一用户预先为预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成的第一密文;通过第一预设兑换计算公式并基于所述预设兑换率和所述第一密文,为所述第二账本计算生成所述第二账本的加密兑换交易份额,并在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文。通过预先设置的若干合法兑换率数值和所述第一密文计算出各个对应的第一验证值密文;并利用各个所述第一验证值密文与所述第一校验密文算出第二验证值密文;若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则基于所述第一密文和所述第一校验密文,并按预设规则完成所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户的交易。
由于能对第一账本下第一用户账户的预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成第一密文,并为所述第二账本计算生成所述第二账本的加密兑换交易份额,在交易过程中区块链上的其他节点无法解读具体的兑换交易份额数据,从而有效保证区块链技术场景中交易信息安全。而且,由于在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文,该附加隐私参数使得第三方无法得知具体兑换率,同时,通过第二验证值密文可验证所述第一账本与所述第二账本交易的预设兑换率是否在预先设置的合法兑换率数值范围之内。从而在有效保证区块链技术场景中交易信息安全、且能证明多个账本的转账交易是在一个提前设置的合法兑换率域内但第三方无法得知具体兑换率的情况下,实现多账本转账操作。
在一可选的实施例中,在上述实施例的基础上,所述步骤S40具体包括:
根据所述第一密文更新所述第一账本下第一用户的第一用户账户的余额和所述第一账本下第二用户的第三账户的余额,并根据所述第一校验密文更新所述第二账本下第二用户的第二用户账户的余额和所述第二账本下第一用户的第四账户的余额。
本实施例中,在该第一账本(例如,该第一账本可以是人民币账本)下第一用户的第一用户账户发起与第二账本(例如,该第二账本可以是美元账本)下第二用户的第二用户账户的预设交易份额和合法兑换价的交易请求后,该区块链的智能合约根据所述第一密文更新该第一账本下第一用户的第一用户账户的余额和该第一账本下第二用户的第三账户的余额,并根据所述第一校验密文更新该第二账本下第一用户的第四账户的余额和该第二账本下第二用户的第二用户账户的余额。其中,第一用户账户和第四账户都是第一用户的账户,分别为第一用户在该第一账本和该第二账本下的账户,例如,第一用户账户为第一用户的人民币账本账户,第四账户为第一用户的美元账本账户。第二用户账户和第三账户都是第二用户的账户,分别为第二用户在该第二账本和该第一账本下的账户,例如,第二用户账户为第二用户的美元账本账户,第三账户为第二用户的人民币账本账户。
具体地,所述根据所述第一密文更新该第一账本下第一用户的第一用户账户的余额和该第一账本下第二用户的第三账户的余额的步骤包括:
智能合约根据第一预设余额计算公式在该第一账本下第一用户的第一用户账户的余额中扣除所述预设兑换交易份额,计算出该第一账本下第一用户的第一用户账户的第一新余额,并将计算出的第一新余额更新到共享资产账本上。例如,所述第一预设余额计算公式为a1ij”=a1ij'/t1ij'=(g^a1ij*h^x1ij)/(g^tij*h^zij)=g^(a1ij–tij)*h^(x1ij–zij),或者,a1ij”=h^(a1ij–tij)*g^(x1ij–zij)。其中,a1ij代表第i账本下的第j个第一用户账户的余额,x1ij代表第i账本下的第j个第一用户账户的余额隐私秘钥,a1ij”代表第i账本下的第j个第一用户账户的加密新余额,g和h为基,h是g的一个n次方,i和j为正整数,“a1ij-tij”代表第i账本下的第j个第一用户账户的新余额,“x1ij-zij”代表第i账本下的第j个第一用户账户的新混淆余额隐私秘钥,tij代表第i账本下的第j个第一用户账户的交易份额,zij代表第i账本下的第j个第一用户账户的交易份额隐私秘钥。
智能合约根据第二预设余额计算公式在该第一账本下第二用户的第三账户的余额中增加所述预设兑换交易份额,计算出该第一账本下第二用户的第三账户的第二新余额,并将计算出的第二新余额更新到共享资产账本上。例如,所述第二预设余额计算公式为a3ij”=a3ij'*t1ij'=(g^a3ij*h^y3ij)*(g^tij*h^zij)=g^(a3ij+tij)*h^(y3ij+zij),或者,a3ij”=h^(a3ij+tij)*g^(y3ij+zij),a3ij代表第i账本下的第j个第三账户的余额,Y3ij代表第i账本下的第j个第三账户的余额隐私秘钥,a3ij”代表第i账本下的第j个第三账户的加密新余额,g和h为基,h是g的一个n次方,i和j为正整数,“a3ij+tij”代表第i账本下的第j个第三账户的新余额,“y3ij+zij”代表第i账本下的第j个第三账户的新混淆余额隐私秘钥,tij代表第i账本下的第j个第三账户的交易份额,zij代表第i账本下的第j个第三账户的交易份额隐私秘钥。
所述根据所述第一校验密文更新该第二账本下第一用户的第四账户的余额和该第二账本下第二用户的第二用户账户的余额的步骤包括:
智能合约根据第三预设余额计算公式在该第二账本下第二用户的第二用户账户的余额中扣除所述预设兑换交易份额,计算出该第二账本下第二用户的第二用户账户的第三新余额,并将计算出的第三新余额更新到共享资产账本上。例如,所述第三预设余额计算公式为a2ij”=a2ij'/t2ij'=(g^a2ij*h^x2ij)/(g^(t1ij*e)*h^(z1ij*e)*h^z2ij)=g^(a2ij-(tij*e))*h^(x2ij-(z1ij*e)-z2ij),或者a2ij”=h^(a2ij-(t1ij*e))*g^(x2ij-(z1ij*e)-z2ij),其中,a2ij代表第i账本下的第j个第二用户账户的余额,x2ij代表第i账本下的第j个第二用户账户的余额隐私秘钥,a2ij”代表第i账本下的第j个第二用户账户的加密新余额,g和h为基,h是g的一个n次方,i和j为正整数,“a2ij-(tij*e)”代表第i账本下的第j个第二用户账户的新余额,“(x2ij-(z1ij*e)-z2ij)”代表第i账本下的第j个第二用户账户的新混淆余额隐私秘钥,“t1ij*e”代表第i账本下的第j个第二用户账户的交易份额,“z1ij*e”代表第i账本下的第j个第二用户账户的交易份额隐私秘钥。
智能合约根据第四预设余额计算公式在该第二账本下第一用户的第四账户的余额中增加所述预设兑换交易份额,计算出该第二账本下第一用户的第四账户的第四新余额,并将计算出的第四新余额更新到共享资产账本上。例如,所述第四预设余额计算公式为a4ij”=a4ij'*t2ij'=(g^a4ij*h^y4ij)*(g^(t1ij*e)*h^(z1ij*e)*h^z2ij)=g^(a4ij+(t1ij*e))*h^(y4ij+(z1ij*e)+z2ij),或者,a4ij”=h^(a4ij+(tij*e))*g^(y4ij+(zij*e)),a4ij代表第i账本下的第j个第四账户的余额,Y4ij代表第i账本下的第j个第四账户的余额隐私秘钥,a4ij”代表第i账本下的第j个第四账户的加密新余额,g和h为基,h是g的一个n次方,i和j为正整数,“a4ij+(t1ij*e)”代表第i账本下的第j个第四账户的新余额,“(y4ij+(z1ij*e)+z2ij)”代表第i账本下的第j个第四账户的新混淆余额隐私秘钥,“t1ij*e”代表第i账本下的第j个第四账户的交易份额,“z1ij*e”代表第i账本下的第j个第四账户的交易份额隐私秘钥。
在一具体的实施方式中,以下以账本1和账本2为例进行举例说明:
预步骤一:在区块链智能合约创建之初设置合法兑换率数值。如合法兑换率数值:r1,r2,r3,r4...。智能合约可以预先规定合法的兑换率,如人民币和美元兑换只能是6.7,6.8,6.9,7.0...。
预步骤二:在区块链智能合约里为每一个账本下每一个用户账户的余额用一种具有加法同态特性的密码公式加密,只有账户的拥有者可以通过自己的“账户隐私密钥”解密读取自己账户的余额。在此以Pederson Commitment以及ECC(椭圆曲线)为例进行说明,当然,也不限定采用其他如RSA、Diffie-Hellman等。例如可用Pederson Commitment代表每个账户,甲账户要用在账本1的余额换取以账户乙在账本2的余额,例如甲用人民币(账本1)跟乙兑换美元(账本2),甲会在账本1把部分人民币余额转给乙,而乙则会在账本2把自己的美元转给甲。具体地:
对于账本1,定义如下:
a1=甲账户账本1余额
a1’=密码混淆后的甲账户账本1余额
x1=甲账户账本1余额隐私密钥
得到甲账户余额:a1’=g^a1*h^x1。
定义:
b1=乙账户人民币余额
b1’=密码混淆后的乙账户人民币余额
y1=乙账户人民币余额隐私密钥
得到乙账户余额:b1’=g^b1*h^y1。
对于账本2,定义如下:
a2=甲账户账本2余额
a2’=密码混淆后的甲账户账本2余额
x2=甲账户账本2余额隐私密钥
得到甲账户余额:a2’=g^a2*h^x2
定义:
b2=乙账户人民币余额
b2’=密码混淆后的乙账户人民币余额
y2=乙账户人民币余额隐私密钥
得到乙账户余额:b2’=g^b2*h^y2
实现步骤一:如果甲要用账本1的余额交换乙在账本2的余额,甲会创建若干密文,第一个是用加法同态密文保护的账本1交易份额(第一密文),第二个是用加法同态密文保护的账本2交易份额(第一校验密文),第三个是一种证明可以使第三方在零知识环境下验证第一账本和第二账本的兑换率是在法定范围内的第一验证密文及第二验证密文。具体地:
对于第一密文,转账发起方(甲)会自行生成第一密文用的同态隐私密钥和第一校验密文用的隐私密钥和附加参数并将它们和第一密文与第一校验密文发给交易对手(乙),并在获得乙认可和对第一密文和第一校验密文数字签名后将整个交易以及乙方的签名发到区块链网络上(乙方数字签名代表对交易份额与兑换率的认可)。
定义:
t=账本1交易份额
t1’=密码混淆后的第二账本交易份额
z1=第一账本交易份额隐私密钥
得到第一密文(账本1交易份额):t1’=g^t*h^z1
对于第一校验密文,定义:
e=兑换率,实际上应当是法定兑换率范围(r1,r2,r3,r4)中的一位
t*e=te=密码混淆后的第二账本交易份额
z2=第二账本交易份额附加隐私密钥
t2’=账本2交易份额
得到第一校验密文(账本2交易份额):t2’=g^te*h^z1e*h^z2
对于第一验证密文,由于e必须是提前设定的合理兑换率数值(r1,r2,r3,r4)中的一个,当第一账本交易额是t的时候,第二账本交易额必须是t*r1,t*r2,t*r3,t*r4中的一个。假设e=r2,第二账本交易额是t*r2,通过第一密文和合理兑换率数值,区块链智能合约可以轻松算出混淆过的第二账本的合理交易份额,则:
第一验证密文如下:
t21=(g^t*h^z1)^r1=g^(t*r1)*h^(z1*r1)
t22=(g^t*h^z1)^r2=g^(t*r2)*h^(z1*r2)
t23=(g^t*h^z1)^r3=g^(t*r3)*h^(z1*r3)
t24=(g^t*h^z1)^r4=g^(t*r4)*h^(z1*r4)
由于对兑换率隐私需求,交易发起方不能直接提供t21-t24中的任何一个数额,所以交易发起方会在提供的第二账本中的交易份额中增加一个混淆密钥z2,因此第一校验密文变成t2’=t22’=g^(t*e)*h^(z1*e)*h^z2=g^(t*r2)*h^(z1*r2)*h^z2。由于混淆密钥z2的存在,区块链上的任何一方都不知道,第二账本交易份额属于从t21-t24中任何一个份额中演变的,也不确定交易否还在合理兑换率范围内。因此交易发起方必须提供第二账本交易份额还在合理兑换率范围内的证据。
本实施例中可以用环签名来提供这个证据,在这个环签名中的4个(在此仅以4个为例进行说明,还可以为很多个)公私钥分别是:
sk1:t21私钥
sk2:t22私钥
sk3:t23私钥
sk4:t24私钥
对于第二验证密文,每个私钥都会有把每个第二账本交易份额转换成与正确交易份额产生的同样的密文:
t2’=(g^(t*r1)*h^(z1*r1)*h^sk1)
t2’=(g^(t*r2)*h^(z1*r2)*h^sk2)
t2’=(g^(t*r3)*h^(z1*r3)*h^sk3)
t2’=(g^(t*r4)*h^(z1*r4)*h^sk4)
第二验证密文(pk1,pk2,pk3,pk4):
pk1=h^sk1=(g^(t*r1)*h^(z1*r1)*h^sk1)/(g^(t*r1)*h^(z1*r1))=h^?
pk2=h^sk2=(g^(t*r2)*h^(z1*r2)*h^sk2)/(g^(t*r2)*h^(z1*r2))=h^sk2=h^z2
pk3=h^sk3=(g^(t*r3)*h^(z1*r3)*h^sk3)/(g^(t*r3)*h^(z1*r3))=h^?
pk4=h^sk4=(g^(t*r4)*h^(z1*r4)*h^sk4)/(g^(t*r4)*h^(z1*r4))=h^?
很明显,交易发起方只有在当兑换率是r2的时候,知道对应的私钥是z2。通过z2,pk1,pk2,pk3,pk4,和少量参数,生成环签名证据(s)证明兑换率是合理兑换率数值中的一个。
实现步骤二A:智能合约要验证第一账本与第二账本交易份额在合理兑换率数值之内。例如,可通过环签名或Range Proof验证第一账本与第二账本交易份额在合理兑换率数值之内。
实现步骤二B:在账本1的甲账户余额中增加交易份额,并同时在账本1乙账户余额中扣除交易份额。具体地:
甲账户在账本1新份额:a1”=a1’*t’
a1”=(g^a1*h^x1)*(g^t*h^z1)
a1”=g^(a1+t)*h^(x1+z1)
甲账户新余额=a1+t
甲账户新混淆隐私秘钥x1’=(x1+z1)。
乙账户在账本1新份额:b1”=b1’/t’
b1”=(g^b1*h^y1)/(g^t*h^z1)
b1”=g^(b1-t)*h^(y1-z1)
乙账户新余额b1’=b1-t
乙账户新混淆隐私秘钥y1’=y1-z1。
实现步骤二C:在账本2的甲账户余额中扣除交易份额,并同时在账本2乙账户余额中增加上交易份额。具体地:
甲账户在账本2新份额:a2”=a2’/t2’
a2”=(g^a2*h^x2)/(g^(t*e)*h^(z1*e)*h^z2)
a2”=g^(a2-te)*h^(x2-z1*e-z2)
甲账户新余额=a2-te
甲账户新混淆隐私密钥x2’=(x2-z1*e-z2)。
乙账户在账本2新份额:b2”=b2’*te’
b2”=(g^b2*h^y2)*(g^(t*e)*h^(z1*e)*h^z2)
b2”=g^(b2+te)*h^(y2+z1*e+z2)
乙账户新余额b2’=b2+te
乙账户新混淆隐私密钥y2’=y2+z1*e+z2。
此外,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有基于区块链的零知识多账本兑换转账系统,所述基于区块链的零知识多账本兑换转账系统可被至少一个处理器执行,以使所述至少一个处理器执行如上述实施例中的基于区块链的零知识多账本兑换转账方法的步骤,该基于区块链的零知识多账本兑换转账方法的步骤S10、S20、S30等具体实施过程如上文所述,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明,比如作为一个实施例的特征可用于另一实施例而得到又一实施例。凡在运用本发明的技术构思之内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。
Claims (10)
1.一种基于区块链的零知识多账本兑换转账方法,应用于电子装置,其特征在于,所述基于区块链的零知识多账本兑换转账方法包括:
A、若区块链中第一账本下第一用户的第一用户账户发起与第二账本下第二用户的第二用户账户的交易请求,则接收所述第一用户预先加密生成的第一密文;所述交易请求为将预设兑换交易份额按预设兑换率进行兑换的请求,所述第一密文为预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成的第一密文;
B、获取数字签名后的第一密文及第一校验密文;所述第一校验密文由所述第一用户通过第一预设兑换计算公式及所述预设兑换率和所述第一密文为所述第二账本计算出所述第二账本的加密兑换交易份额,并在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文;
C、通过预先设置的若干合法兑换率数值和所述第一密文计算出各个对应的第一验证值密文;并利用各个所述第一验证值密文与所述第一校验密文算出用于验证所述第一账本与所述第二账本交易的预设兑换率是否在预先设置的合法兑换率数值范围之内的第二验证值密文;
D、若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则基于所述第一密文和所述第一校验密文,并按预设规则完成所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户的交易。
2.如权利要求1所述的基于区块链的零知识多账本兑换转账方法,其特征在于,所述获取数字签名后的第一密文及第一校验密文的步骤包括:
所述第一用户将计算生成的第一密文、第一校验密文数字签名后发给所述第二用户,当获得所述第二用户对交易份额认同和数字签名后,所述第一用户将所述第一密文和所述第一校验密文发布到区块链网络上的各个节点上;或者,所述第一用户将计算生成的第一密文、第一校验密文数字签名后发给所述第二用户,所述第二用户对交易份额认同和数字签名后直接发布到区块链网络上的各个节点上;
从区块链网络上获取到发布的数字签名后的第一密文及第一校验密文。
3.如权利要求1或2所述的基于区块链的零知识多账本兑换转账方法,其特征在于,该方法还包括:
通过预设的环签名验证方式证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内。
4.如权利要求3所述的基于区块链的零知识多账本兑换转账方法,其特征在于,该方法还包括:
呈现与所有第二账本合法交易份额对应的第二验证值密文,由所述第一用户或所述第二用户通过所述第一校验密文中的附加隐私参数对应的私钥和所有第二验证值密文验证通过所述第一校验密文中的加密兑换交易份额是在预设合理交易范围内的数字,则证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内。
5.如权利要求1或2所述的基于区块链的零知识多账本兑换转账方法,其特征在于,所述步骤D包括:
若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则根据所述第一密文更新所述第一账本下第一用户的第一用户账户的余额和所述第一账本下第二用户的第三账户的余额,并根据所述第一校验密文更新所述第二账本下第一用户的第四账户的余额和所述第二账本下第二用户的第二用户账户的余额。
6.如权利要求5所述的基于区块链的零知识多账本兑换转账方法,其特征在于,所述根据所述第一密文更新所述第一账本下第一用户的第一用户账户的余额和所述第一账本下第二用户的第三账户的余额的步骤包括:
根据第一预设余额计算公式在所述第一账本下第一用户的第一用户账户的余额中扣除所述预设兑换交易份额,计算出所述第一账本下第一用户的第一用户账户的第一新余额,并将计算出的第一新余额更新到共享资产账本上;
根据第二预设余额计算公式在所述第一账本下第二用户的第三账户的余额中增加所述预设兑换交易份额,计算出所述第一账本下第二用户的第三账户的第二新余额,并将计算出的第二新余额更新到共享资产账本上。
7.如权利要求6所述的基于区块链的零知识多账本兑换转账方法,其特征在于,所述根据所述第一校验密文更新所述第二账本下第一用户的第四账户的余额和所述第二账本下第二用户的第二用户账户的余额的步骤包括:
根据第三预设余额计算公式在所述第二账本下第二用户的第二用户账户的余额中扣除所述预设兑换交易份额,计算出所述第二账本下第二用户的第二用户账户的第三新余额,并将计算出的第三新余额更新到共享资产账本上;
根据第四预设余额计算公式在所述第二账本下第一用户的第四账户的余额中增加所述预设兑换交易份额,计算出所述第二账本下第一用户的第四账户的第四新余额,并将计算出的第四新余额更新到共享资产账本上。
8.一种电子装置,其特征在于,所述电子装置包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的基于区块链的零知识多账本兑换转账系统,所述基于区块链的零知识多账本兑换转账系统被所述处理器执行时实现如下步骤:
若区块链中第一账本下第一用户的第一用户账户发起与第二账本下第二用户的第二用户账户的交易请求,则接收所述第一用户预先加密生成的第一密文;所述交易请求为将预设兑换交易份额按预设兑换率进行兑换的请求,所述第一密文为预设兑换交易份额采用第二预设密码公式及对应的交易份额隐私秘钥进行加密生成的第一密文;
获取数字签名后的第一密文及第一校验密文;所述第一校验密文由所述第一用户通过第一预设兑换计算公式及所述预设兑换率和所述第一密文为所述第二账本计算出所述第二账本的加密兑换交易份额,并在所述第二账本的加密兑换交易份额上利用预设的附加隐私参数生成第一校验密文;
通过预先设置的若干合法兑换率数值和所述第一密文计算出各个对应的第一验证值密文;并利用各个所述第一验证值密文与所述第一校验密文算出用于验证所述第一账本与所述第二账本交易的预设兑换率是否在预先设置的合法兑换率数值范围之内的第二验证值密文;
若利用所述第二验证值密文证明所述第一账本与所述第二账本交易的预设兑换率在预先设置的合法兑换率数值范围之内,则基于所述第一密文和所述第一校验密文,并按预设规则完成所述第一账本下第一用户的第一用户账户与所述第二账本下第二用户的第二用户账户的交易。
9.如权利要求8所述的电子装置,其特征在于,所述基于区块链的零知识多账本兑换转账系统被所述处理器执行实现获取数字签名后的第一密文及第一校验密文的步骤时,具体包括:
所述第一用户将计算生成的第一密文、第一校验密文数字签名后发给所述第二用户,当获得所述第二用户对交易份额认同和数字签名后,所述第一用户将所述第一密文和所述第一校验密文发布到区块链网络上的各个节点上;或者,所述第一用户将计算生成的第一密文、第一校验密文数字签名后发给所述第二用户,所述第二用户对交易份额认同和数字签名后直接发布到区块链网络上的各个节点上;
从区块链网络上获取到发布的数字签名后的第一密文及第一校验密文。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于区块链的零知识多账本兑换转账系统,所述基于区块链的零知识多账本兑换转账系统被处理器执行时实现如权利要求1至7中任一项所述的基于区块链的零知识多账本兑换转账方法的步骤。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810067292.9A CN108335106A (zh) | 2018-01-24 | 2018-01-24 | 基于区块链的零知识多账本兑换转账方法、装置及存储介质 |
EP18902456.5A EP3745335A4 (en) | 2018-01-24 | 2018-08-27 | PROCESS AND APPARATUS FOR TRANSFERRING CURRENCY BETWEEN ZERO DISCLOSURE MULTIPLE ACCOUNT BOOKS BASED ON BLOCK CHAIN, AND INFORMATION MEDIA |
PCT/CN2018/102398 WO2019144612A1 (zh) | 2018-01-24 | 2018-08-27 | 基于区块链的零知识多账本兑换转账方法、装置及存储介质 |
US16/931,544 US20200349563A1 (en) | 2018-01-24 | 2020-07-17 | Zero-knowledge multi-account-book exchange transfer method and apparatus based on blockchain, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810067292.9A CN108335106A (zh) | 2018-01-24 | 2018-01-24 | 基于区块链的零知识多账本兑换转账方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108335106A true CN108335106A (zh) | 2018-07-27 |
Family
ID=62926640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810067292.9A Pending CN108335106A (zh) | 2018-01-24 | 2018-01-24 | 基于区块链的零知识多账本兑换转账方法、装置及存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20200349563A1 (zh) |
EP (1) | EP3745335A4 (zh) |
CN (1) | CN108335106A (zh) |
WO (1) | WO2019144612A1 (zh) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109102286A (zh) * | 2018-08-02 | 2018-12-28 | 平安科技(深圳)有限公司 | 跨账本交易方法及装置 |
CN109493225A (zh) * | 2018-11-12 | 2019-03-19 | 夸克链科技(深圳)有限公司 | 一种区块链的分域验证机制 |
CN109727129A (zh) * | 2018-12-18 | 2019-05-07 | 杭州茂财网络技术有限公司 | 一种数据交易方法及其设备 |
CN109858281A (zh) * | 2019-02-01 | 2019-06-07 | 杭州云象网络技术有限公司 | 一种基于零知识证明的区块链账户模型隐私保护方法 |
CN110073633A (zh) * | 2018-11-07 | 2019-07-30 | 阿里巴巴集团控股有限公司 | 使用同态加密的区块链数据保护 |
WO2019144612A1 (zh) * | 2018-01-24 | 2019-08-01 | 深圳壹账通智能科技有限公司 | 基于区块链的零知识多账本兑换转账方法、装置及存储介质 |
CN110473104A (zh) * | 2019-08-20 | 2019-11-19 | 深圳市网心科技有限公司 | 一种交易处理方法及相关设备 |
CN110505046A (zh) * | 2019-07-29 | 2019-11-26 | 深圳壹账通智能科技有限公司 | 多数据提供方加密数据跨平台零知识校验方法、装置及介质 |
CN110717755A (zh) * | 2019-09-05 | 2020-01-21 | 深圳壹账通智能科技有限公司 | 加密数据零知识校验方法、装置及介质 |
EP3602956A4 (en) * | 2019-01-31 | 2020-05-06 | Alibaba Group Holding Limited | CROSS-CLASS OBJECT TRADE IN BLOCKCHAIN NETWORKS |
CN111127020A (zh) * | 2019-12-31 | 2020-05-08 | 深圳市网心科技有限公司 | 基于区块链的交易数据混淆方法及相关设备 |
CN111178894A (zh) * | 2020-04-10 | 2020-05-19 | 支付宝(杭州)信息技术有限公司 | 资产类型注册、交易记录验证方法及系统 |
CN111245626A (zh) * | 2020-01-19 | 2020-06-05 | 平安科技(深圳)有限公司 | 零知识证明方法、装置及存储介质 |
CN111833186A (zh) * | 2018-09-20 | 2020-10-27 | 创新先进技术有限公司 | 基于区块链的交易方法、装置和节点设备 |
US10922421B2 (en) | 2018-11-07 | 2021-02-16 | Advanced New Technologies Co., Ltd. | Regulating blockchain confidential transactions |
US11004070B2 (en) | 2018-10-26 | 2021-05-11 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
US11050549B2 (en) | 2018-09-30 | 2021-06-29 | Advanced New Technologies Co., Ltd. | Blockchain-based transaction method and apparatus, and remitter device |
US11244306B2 (en) | 2018-08-06 | 2022-02-08 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
US11341492B2 (en) | 2018-08-30 | 2022-05-24 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
US11341487B2 (en) | 2018-12-29 | 2022-05-24 | Advanced New Technologies Co., Ltd. | System and method for information protection |
CN115242477A (zh) * | 2022-07-14 | 2022-10-25 | 武汉金融电子结算中心有限公司 | 同城票据影像交换系统 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110570198A (zh) * | 2019-10-12 | 2019-12-13 | 链农(深圳)信息科技有限公司 | 一种基于区块链智能合约节点的账本安全加固方法及装置 |
CA3098936A1 (en) * | 2019-11-13 | 2020-02-20 | Alipay (Hangzhou) Information Technology Co., Ltd. | Dynamic blockchain data storage based on error correction code |
US12099997B1 (en) | 2020-01-31 | 2024-09-24 | Steven Mark Hoffberg | Tokenized fungible liabilities |
CN113781043A (zh) * | 2020-06-09 | 2021-12-10 | 富泰华工业(深圳)有限公司 | 基于区块链的货币交易方法、装置及电子设备 |
CN112765267A (zh) * | 2020-12-30 | 2021-05-07 | 普华云创科技(北京)有限公司 | 一种基于区块链去中心化的比率预言方法及预言机 |
US12125585B2 (en) * | 2021-11-26 | 2024-10-22 | Kata Gardner Technologies | Leveraging blockchain to secure dialysis components and maintain operational logs |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150363783A1 (en) * | 2014-06-16 | 2015-12-17 | Bank Of America Corporation | Cryptocurrency risk detection system |
CN106503994A (zh) * | 2016-11-02 | 2017-03-15 | 西安电子科技大学 | 基于属性加密的区块链隐私数据访问控制方法 |
CN106779704A (zh) * | 2016-12-06 | 2017-05-31 | 杭州趣链科技有限公司 | 一种基于环签名的区块链匿名交易方法 |
CN107077675A (zh) * | 2016-12-30 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | 基于区块链的货币管理方法和系统 |
CN107358424A (zh) * | 2017-06-26 | 2017-11-17 | 中国人民银行数字货币研究所 | 一种基于数字货币的交易方法和装置 |
CN107392603A (zh) * | 2017-06-26 | 2017-11-24 | 中国人民银行数字货币研究所 | 使用数字货币的交易方法和装置 |
CN107609866A (zh) * | 2017-09-13 | 2018-01-19 | 中国科学院大学 | 基于虚拟货币的电子支付、电子收款方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11526938B2 (en) * | 2016-03-31 | 2022-12-13 | Refinitiv Us Organization Llc | Systems and methods for providing financial data to financial instruments in a distributed ledger system |
GB201611948D0 (en) * | 2016-07-08 | 2016-08-24 | Kalypton Int Ltd | Distributed transcation processing and authentication system |
CN106845960B (zh) * | 2017-01-24 | 2018-03-20 | 上海壹账通区块链科技有限公司 | 基于区块链的安全交易方法及系统 |
CN106960388A (zh) * | 2017-03-01 | 2017-07-18 | 中钞信用卡产业发展有限公司北京智能卡技术研究院 | 跨区块链的数字资产流转的方法和装置 |
CN108335106A (zh) * | 2018-01-24 | 2018-07-27 | 深圳壹账通智能科技有限公司 | 基于区块链的零知识多账本兑换转账方法、装置及存储介质 |
-
2018
- 2018-01-24 CN CN201810067292.9A patent/CN108335106A/zh active Pending
- 2018-08-27 EP EP18902456.5A patent/EP3745335A4/en not_active Withdrawn
- 2018-08-27 WO PCT/CN2018/102398 patent/WO2019144612A1/zh unknown
-
2020
- 2020-07-17 US US16/931,544 patent/US20200349563A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150363783A1 (en) * | 2014-06-16 | 2015-12-17 | Bank Of America Corporation | Cryptocurrency risk detection system |
CN106503994A (zh) * | 2016-11-02 | 2017-03-15 | 西安电子科技大学 | 基于属性加密的区块链隐私数据访问控制方法 |
CN106779704A (zh) * | 2016-12-06 | 2017-05-31 | 杭州趣链科技有限公司 | 一种基于环签名的区块链匿名交易方法 |
CN107077675A (zh) * | 2016-12-30 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | 基于区块链的货币管理方法和系统 |
CN107358424A (zh) * | 2017-06-26 | 2017-11-17 | 中国人民银行数字货币研究所 | 一种基于数字货币的交易方法和装置 |
CN107392603A (zh) * | 2017-06-26 | 2017-11-24 | 中国人民银行数字货币研究所 | 使用数字货币的交易方法和装置 |
CN107609866A (zh) * | 2017-09-13 | 2018-01-19 | 中国科学院大学 | 基于虚拟货币的电子支付、电子收款方法及装置 |
Cited By (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019144612A1 (zh) * | 2018-01-24 | 2019-08-01 | 深圳壹账通智能科技有限公司 | 基于区块链的零知识多账本兑换转账方法、装置及存储介质 |
CN109102286A (zh) * | 2018-08-02 | 2018-12-28 | 平安科技(深圳)有限公司 | 跨账本交易方法及装置 |
CN109102286B (zh) * | 2018-08-02 | 2023-04-07 | 平安科技(深圳)有限公司 | 跨账本交易方法及装置 |
US11379826B2 (en) | 2018-08-06 | 2022-07-05 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
TWI786282B (zh) * | 2018-08-06 | 2022-12-11 | 開曼群島商創新先進技術有限公司 | 區塊鏈交易方法及裝置、電子設備 |
US11244306B2 (en) | 2018-08-06 | 2022-02-08 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
US11392942B2 (en) | 2018-08-30 | 2022-07-19 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
US11341492B2 (en) | 2018-08-30 | 2022-05-24 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
US11032077B2 (en) | 2018-09-20 | 2021-06-08 | Advanced New Technologies Co., Ltd. | Blockchain-based transaction method and apparatus, and remitter device |
US12021993B2 (en) | 2018-09-20 | 2024-06-25 | Advanced New Technologies Co., Ltd. | Blockchain-based transaction method and apparatus, and remitter device |
CN111833186A (zh) * | 2018-09-20 | 2020-10-27 | 创新先进技术有限公司 | 基于区块链的交易方法、装置和节点设备 |
US11050549B2 (en) | 2018-09-30 | 2021-06-29 | Advanced New Technologies Co., Ltd. | Blockchain-based transaction method and apparatus, and remitter device |
US11004070B2 (en) | 2018-10-26 | 2021-05-11 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
US11258584B2 (en) | 2018-10-26 | 2022-02-22 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
US10922421B2 (en) | 2018-11-07 | 2021-02-16 | Advanced New Technologies Co., Ltd. | Regulating blockchain confidential transactions |
CN110073633A (zh) * | 2018-11-07 | 2019-07-30 | 阿里巴巴集团控股有限公司 | 使用同态加密的区块链数据保护 |
CN109493225B (zh) * | 2018-11-12 | 2022-02-18 | 夸克链科技(深圳)有限公司 | 一种区块链的分域验证机制 |
CN109493225A (zh) * | 2018-11-12 | 2019-03-19 | 夸克链科技(深圳)有限公司 | 一种区块链的分域验证机制 |
CN109727129A (zh) * | 2018-12-18 | 2019-05-07 | 杭州茂财网络技术有限公司 | 一种数据交易方法及其设备 |
US11416854B2 (en) | 2018-12-29 | 2022-08-16 | Advanced New Technologies Co., Ltd. | System and method for information protection |
US11341487B2 (en) | 2018-12-29 | 2022-05-24 | Advanced New Technologies Co., Ltd. | System and method for information protection |
JP2020526053A (ja) * | 2019-01-31 | 2020-08-27 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | ブロックチェーンネットワーク内の資産間取引 |
KR102194078B1 (ko) | 2019-01-31 | 2020-12-24 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 블록체인 네트워크 내 교차 자산 거래 |
RU2736447C1 (ru) * | 2019-01-31 | 2020-11-17 | Алибаба Груп Холдинг Лимитед | Перекрестная торговля активами в сетях блокчейнов |
AU2019202832B2 (en) * | 2019-01-31 | 2020-09-24 | Advanced New Technologies Co., Ltd. | Cross-asset trading within blockchain networks |
US10990963B2 (en) | 2019-01-31 | 2021-04-27 | Advanced New Technologies Co., Ltd. | Cross-asset trading within blockchain networks |
KR20200096722A (ko) * | 2019-01-31 | 2020-08-13 | 알리바바 그룹 홀딩 리미티드 | 블록체인 네트워크 내 교차 자산 거래 |
EP3602956A4 (en) * | 2019-01-31 | 2020-05-06 | Alibaba Group Holding Limited | CROSS-CLASS OBJECT TRADE IN BLOCKCHAIN NETWORKS |
CN109858281B (zh) * | 2019-02-01 | 2020-09-18 | 杭州云象网络技术有限公司 | 一种基于零知识证明的区块链账户模型隐私保护方法 |
CN109858281A (zh) * | 2019-02-01 | 2019-06-07 | 杭州云象网络技术有限公司 | 一种基于零知识证明的区块链账户模型隐私保护方法 |
CN110505046B (zh) * | 2019-07-29 | 2020-11-24 | 深圳壹账通智能科技有限公司 | 多数据提供方加密数据跨平台零知识校验方法、装置及介质 |
WO2021017338A1 (zh) * | 2019-07-29 | 2021-02-04 | 深圳壹账通智能科技有限公司 | 多数据提供方加密数据跨平台零知识校验方法及相关设备 |
CN110505046A (zh) * | 2019-07-29 | 2019-11-26 | 深圳壹账通智能科技有限公司 | 多数据提供方加密数据跨平台零知识校验方法、装置及介质 |
CN110473104B (zh) * | 2019-08-20 | 2023-11-17 | 深圳市迅雷网络技术有限公司 | 一种交易处理方法及相关设备 |
CN110473104A (zh) * | 2019-08-20 | 2019-11-19 | 深圳市网心科技有限公司 | 一种交易处理方法及相关设备 |
WO2021042737A1 (zh) * | 2019-09-05 | 2021-03-11 | 深圳壹账通智能科技有限公司 | 加密数据零知识校验方法、装置及介质 |
CN110717755A (zh) * | 2019-09-05 | 2020-01-21 | 深圳壹账通智能科技有限公司 | 加密数据零知识校验方法、装置及介质 |
CN111127020A (zh) * | 2019-12-31 | 2020-05-08 | 深圳市网心科技有限公司 | 基于区块链的交易数据混淆方法及相关设备 |
CN111127020B (zh) * | 2019-12-31 | 2023-09-15 | 深圳市迅雷网络技术有限公司 | 基于区块链的交易数据混淆方法及相关设备 |
CN111245626A (zh) * | 2020-01-19 | 2020-06-05 | 平安科技(深圳)有限公司 | 零知识证明方法、装置及存储介质 |
CN111178894B (zh) * | 2020-04-10 | 2020-09-11 | 支付宝(杭州)信息技术有限公司 | 资产类型注册、交易记录验证方法及系统 |
CN111178894A (zh) * | 2020-04-10 | 2020-05-19 | 支付宝(杭州)信息技术有限公司 | 资产类型注册、交易记录验证方法及系统 |
CN115242477A (zh) * | 2022-07-14 | 2022-10-25 | 武汉金融电子结算中心有限公司 | 同城票据影像交换系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2019144612A1 (zh) | 2019-08-01 |
US20200349563A1 (en) | 2020-11-05 |
EP3745335A4 (en) | 2021-03-03 |
EP3745335A1 (en) | 2020-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108335106A (zh) | 基于区块链的零知识多账本兑换转账方法、装置及存储介质 | |
CN108241979B (zh) | 基于区块链的多账本转账方法、电子装置及可读存储介质 | |
CN110419053B (zh) | 用于信息保护的系统和方法 | |
CN110473105B (zh) | 一种区块链交易结算方法、系统及相关设备 | |
CN108418689B (zh) | 一种适合区块链隐私保护的零知识证明方法和介质 | |
CN108418783B (zh) | 一种保护区块链智能合约隐私的方法、介质 | |
CN106559211B (zh) | 一种区块链中隐私保护智能合约方法 | |
CN112950367B (zh) | 生成和执行智能合约交易的方法及装置 | |
US11416854B2 (en) | System and method for information protection | |
US20200013026A1 (en) | Systems and methods for blockchain addresses and owner verification | |
US20230103038A1 (en) | Method for directly transferring electronic coin data sets between terminals, payment system, currency system and monitoring unit | |
CN110505046B (zh) | 多数据提供方加密数据跨平台零知识校验方法、装置及介质 | |
CN109325747B (zh) | 基于区块链的汇款方法及装置 | |
CN109903026A (zh) | 基于区块链的事件处理方法及装置、电子设备 | |
CN110089069A (zh) | 用于信息保护的系统和方法 | |
CN111340494B (zh) | 资产类型一致性证据生成、交易、交易验证方法及系统 | |
CN109903027A (zh) | 基于区块链的事件处理方法及装置、电子设备 | |
WO2020051710A1 (en) | System and process for managing digitized security tokens | |
JP2005513956A (ja) | グループ署名のための暗号システム | |
Singh et al. | A novel credential protocol for protecting personal attributes in blockchain | |
CN112118100B (zh) | 改进的可链接环签名方法、验证方法、装置、电子设备及介质 | |
EP3893178B1 (en) | Blind signature-based transaction method and device | |
CN111105235A (zh) | 基于区块链的供应链交易隐私保护系统、方法及相关设备 | |
CN109102286B (zh) | 跨账本交易方法及装置 | |
CN111768199A (zh) | 数字货币交易方法和本地钱包系统 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1251820 Country of ref document: HK |
|
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180727 |
|
RJ01 | Rejection of invention patent application after publication |