CN107392603A - Use the method for commerce and device of digital cash - Google Patents
Use the method for commerce and device of digital cash Download PDFInfo
- Publication number
- CN107392603A CN107392603A CN201710495156.5A CN201710495156A CN107392603A CN 107392603 A CN107392603 A CN 107392603A CN 201710495156 A CN201710495156 A CN 201710495156A CN 107392603 A CN107392603 A CN 107392603A
- Authority
- CN
- China
- Prior art keywords
- currency
- ciphertext
- transaction
- money
- plaintext
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/363—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes with the personal data of a user
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了使用数字货币的交易方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:在基于分布式账本技术的收付款交易的过程中,付款端对交易中涉及的明文金额进行加密以得到密文金额,并生成相应的验证消息,用以对密文金额进行验证或者解密。该实施方式解决了现有的分布式账本技术中资金难以保密的技术问题,达到了保障合作共享且保护交易隐私的技术效果。
The invention discloses a transaction method and device using digital currency, and relates to the field of computer technology. A specific implementation of the method includes: in the process of receiving and payment transactions based on distributed ledger technology, the payer encrypts the plaintext amount involved in the transaction to obtain the ciphertext amount, and generates a corresponding verification message to verify The ciphertext amount is verified or decrypted. This implementation method solves the technical problem that funds are difficult to keep secret in the existing distributed ledger technology, and achieves the technical effect of ensuring cooperation and sharing and protecting transaction privacy.
Description
技术领域technical field
本发明涉及计算机技术领域,尤其涉及使用数字货币的交易方法和装置。The invention relates to the field of computer technology, in particular to a transaction method and device using digital currency.
背景技术Background technique
区块链是一种新型的分布式技术,由协议制定者在系统运行之前制定并公布规则,并开发出遵循该协议的客户端,之后由多家机构或个人作为节点,相互连接并运行该客户端,由恶意节点产生的不符合协议的数据会被其他的诚实节点抛弃,采用这种对抗性共识的方法共同维护一个总账本,达到没有一个中心化的权利机构或个人可以篡改初始协议的设想。Blockchain is a new type of distributed technology. Protocol makers formulate and publish rules before the system runs, and develop clients that follow the protocol. Afterwards, multiple institutions or individuals act as nodes to connect and run the system. On the client side, the data generated by malicious nodes that do not conform to the agreement will be discarded by other honest nodes. This method of confrontational consensus is used to jointly maintain a general ledger, so that no centralized authority or individual can tamper with the initial agreement. imagine.
第一个区块链的应用场景是比特币,实现了一种事先规定发行规则和转账逻辑的货币体系,货币发行的来源是记账节点的出块奖励Coinbase,货币转账逻辑被称为未花费交易输出(Unspent Transaction Output:UTXO)模型。假设用户A目前有货币A1(¥5)、A2(¥4)、A3(¥1),这些货币的源头都来自于出块奖励,用户A希望给用户B转账7元,则用户A收集自己手中的货币,找到大于等于7的组合,发起一个以A1和A2为输入(input),以找零货币A4(¥2)和新生货币B1(¥7)为输出(output)的交易,即A1(¥5)+A2(¥4)=>A4(¥2)+B1(¥7),这个等式关系需要由记账节点首先进行验证,通过并写入区块链后,A1和A2就变为已花费货币,A4和B1就变成了新的未花费货币,可以作为以后UTXO结构的输入。The first blockchain application scenario is Bitcoin, which implements a currency system that stipulates issuance rules and transfer logic in advance. The source of currency issuance is the block reward Coinbase of the bookkeeping node, and the currency transfer logic is called unspent. Transaction output (Unspent Transaction Output: UTXO) model. Assuming that user A currently has currencies A1(¥5), A2(¥4), and A3(¥1), the sources of these currencies all come from block rewards, and user A wants to transfer 7 yuan to user B, then user A collects For the currency in hand, find a combination greater than or equal to 7, initiate a transaction with A1 and A2 as input (input), and change currency A4 (¥2) and nascent currency B1 (¥7) as output (output), that is, A1 (¥5)+A2(¥4)=>A4(¥2)+B1(¥7), this equation needs to be verified by the accounting node first, after passing and writing into the blockchain, A1 and A2 will be Become spent currency, A4 and B1 become new unspent currency, which can be used as input for future UTXO structures.
由于记账节点需要验证每一笔交易是否有负值货币、是否出现超额转账、是否有货币创造等,以比特币为代表的区块链系统选择将所有用户的未花费货币信息进行明文存储,并且交易中新生成的货币信息也需要明文声明,节点才能对所有UTXO进行输入和输出相当关系的验证。Since the bookkeeping node needs to verify whether each transaction has negative currency, whether there is an excess transfer, whether there is currency creation, etc., the blockchain system represented by Bitcoin chooses to store all users’ unspent currency information in plain text. Moreover, the newly generated currency information in the transaction also needs to be clearly stated, so that nodes can verify the relationship between input and output of all UTXOs.
然而,在实现本发明的过程中,发明人发现现有技术中至少存在如下问题:现实生活中,用户(企业或个人)间点对点的交易金额一般有保密需求,用户在系统内的总余额也有保密需求。传统的中心化方案由于无需合作记账,也就可以方便地设置数据访问权限,可以很好地解决隐私的问题,但用户还是希望借助区块链等分布式技术合作记账的优势来存储多方合作的其他文档和数据,然而完整的业务闭环又需要资金参与实时清结算,从而导致合作共享与交易隐私无法共存的问题。However, in the process of realizing the present invention, the inventor found that there are at least the following problems in the prior art: in real life, the point-to-point transaction amount between users (enterprises or individuals) generally has confidentiality requirements, and the total balance of users in the system also has Confidentiality needs. Traditional centralized solutions can easily set data access rights without cooperative bookkeeping, which can solve the privacy problem well, but users still hope to use the advantages of distributed technology such as blockchain to store multi-party data. Other documents and data of cooperation, however, a complete business closed loop requires funds to participate in real-time clearing and settlement, which leads to the problem that cooperation sharing and transaction privacy cannot coexist.
发明内容Contents of the invention
有鉴于此,本发明实施例提供使用数字货币的交易方法和装置,能够在使用数字货币进行交易的过程中实现交易金额的加密,以保护用户的隐私权益。In view of this, the embodiments of the present invention provide a transaction method and device using digital currency, which can realize the encryption of the transaction amount during the transaction process using digital currency, so as to protect the privacy rights of users.
为实现上述目的,根据本发明实施例的一个方面,提供了使用数字货币的交易方法,包括:In order to achieve the above purpose, according to an aspect of the embodiment of the present invention, a transaction method using digital currency is provided, including:
付款端对收到的明文交易金额进行加密以得到密文交易金额,以及生成用于验证所述密文交易金额的第一验证信息;The payment end encrypts the received plaintext transaction amount to obtain the ciphertext transaction amount, and generates first verification information for verifying the ciphertext transaction amount;
付款端根据所述明文交易金额和货币列表计算明文找零金额,以及对所述明文找零金额进行加密以得到密文找零金额,然后生成用于验证所述密文找零金额的第二验证信息;The payment end calculates the plaintext change amount according to the plaintext transaction amount and the currency list, and encrypts the plaintext change amount to obtain the ciphertext change amount, and then generates a second password for verifying the ciphertext change amount. verify message;
付款端生成付款请求以及广播该付款请求;所述付款请求中包括所述密文交易金额、所述第一验证信息、所述密文找零金额和所述第二验证信息;The payment terminal generates a payment request and broadcasts the payment request; the payment request includes the ciphertext transaction amount, the first verification information, the ciphertext change amount and the second verification information;
节点在接收到所述付款请求后,根据所述第一验证信息确认所述密文交易金额符合规则,以及根据所述第二验证信息确认所述密文找零金额符合规则,然后将所述付款请求存储到区块链。After receiving the payment request, the node confirms that the ciphertext transaction amount complies with the rules according to the first verification information, and confirms that the ciphertext change amount complies with the rules according to the second verification information, and then sends the Payment requests are stored to the blockchain.
在一些可选的实施例中,付款端对收到的明文交易金额进行加密以得到密文交易金额的步骤包括:In some optional embodiments, the step of the payment terminal encrypting the received plaintext transaction amount to obtain the ciphertext transaction amount includes:
付款端生成本次付款使用的交易私钥;The payment terminal generates the transaction private key used for this payment;
付款端存储基点值,以及使用基点加密算法对所述基点值进行加密计算然后得到基点校验值;The payment end stores the base point value, and uses the base point encryption algorithm to encrypt and calculate the base point value to obtain the base point check value;
付款端根据公式q=xG+mH计算所述密文交易金额;其中,q为所述密文交易金额,x为所述交易私钥,m为收到的所述明文交易金额,G为所述基点值,H为所述基点校验值。The payer calculates the ciphertext transaction amount according to the formula q=xG+mH; where, q is the ciphertext transaction amount, x is the transaction private key, m is the received plaintext transaction amount, and G is the The base point value, H is the check value of the base point.
在一些可选的实施例中,In some optional embodiments,
所述第一验证信息包括第一交易证明;The first verification information includes a first transaction certificate;
付款端生成用于验证所述密文交易金额的第一验证信息的步骤包括:The step for the payment terminal to generate the first verification information for verifying the ciphertext transaction amount includes:
付款端将所述明文交易金额m按照预设位数n进行二进制拆分,以得到其中mi=2i或mi=0,i表示索引位,并且0≤i<n;The payment side performs binary splitting of the plaintext transaction amount m according to the preset number of digits n to obtain Where m i =2 i or m i =0, i represents an index bit, and 0≤i<n;
付款端将所述交易私钥x按照预设位数n进行随机拆分,以得到其中x0至xn-2均随机生成, The payment side randomly splits the transaction private key x according to the preset number of digits n to obtain Among them, x 0 to x n-2 are randomly generated,
付款端对于每一个索引位,根据P(xi,mi)=xiG+miH和P(xi,mi-ki)=xiG+(mi-ki)H计算P(xi,mi)和P(xi,mi-ki);其中ki=2i;For each index bit, the payer calculates according to P(x i ,m i )=x i G+m i H and P(x i ,m i -k i )=x i G+(m i -k i )H P(x i , m i ) and P(x i , m i -k i ); where k i =2 i ;
付款端对于每一个所述索引位,使用所述xi、所述P(xi,mi)和所述P(xi,mi-ki)生成该索引位的环签名Si;For each index bit, the payer uses the x i , the P( xi ,m i ) and the P( xi ,m i -k i ) to generate the ring signature S i of the index bit;
付款端将全部的所述索引位、所述P(xi,mi)、所述P(xi,mi-ki)和所述Si进行拼接以得到所述第一交易证明。The payer concatenates all the index bits, the P( xi ,m i ), the P( xi ,m i - ki ) and the S i to obtain the first transaction proof.
在一些可选的实施例中,节点根据所述第一验证信息确认所述密文交易金额符合规则的步骤包括:In some optional embodiments, the step of the node confirming that the encrypted transaction amount complies with the rules according to the first verification information includes:
节点拆解所述第一交易证明,以得到全部的所述索引位、所述P(xi,mi)、所述P(xi,mi-ki)和所述Si;The node disassembles the first transaction proof to obtain all the index bits, the P( xi ,m i ), the P( xi ,m i -ki ) and the S i ;
节点确认对于每一个所述索引位,所述Si为所述P(xi,mi)和所述P(xi,mi-ki)的环签名,以及确认对于每一个所述索引位,满足P(xi,mi)-P(xi,mi-ki)=kiH,然后确认满足以确认所述密文交易金额符合规则;其中ki=2i。The node confirms that for each of the index bits, the S i is the ring signature of the P( xi ,m i ) and the P( xi ,m i -ki ) , and confirms that for each of the Index bit, satisfy P( xi ,m i )-P( xi ,m i -k i )=k i H, and then confirm that To confirm that the ciphertext transaction amount complies with the rules; where k i =2 i .
在一些可选的实施例中,In some optional embodiments,
所述第一验证信息包括第一通信消息;The first verification information includes a first communication message;
付款端生成用于验证所述密文交易金额的第一验证信息的步骤包括:The step for the payment terminal to generate the first verification information for verifying the ciphertext transaction amount includes:
付款端生成付款端固定私钥,获取收款端固定公钥,以及使用所述基点加密算法对所述付款端固定私钥与所述收款端固定公钥的乘积进行加密计算以得到共享密钥,然后将所述明文交易金额与所述交易私钥进行拼接,再使用所述共享密钥对拼接后的结果进行加密计算以生成所述第一通信消息。The payer generates the fixed private key of the payer, obtains the fixed public key of the payee, and uses the base point encryption algorithm to encrypt and calculate the product of the fixed private key of the payer and the fixed public key of the payee to obtain a shared secret key, and then concatenate the plaintext transaction amount with the transaction private key, and then use the shared key to encrypt and calculate the concatenated result to generate the first communication message.
在一些可选的实施例中,付款端根据所述明文交易金额和货币列表计算明文找零金额的步骤包括:In some optional embodiments, the step of calculating the clear text change amount according to the plain text transaction amount and the currency list at the payment end includes:
付款端从货币列表中选择收款方为所述付款端、且明文总金额大于或等于所述明文交易金额的数字货币然后组成货币子集,再用所述明文总金额减去所述明文交易金额以得到明文找零金额。The payer selects the digital currency whose payee is the payer and the total plaintext amount is greater than or equal to the plaintext transaction amount from the currency list to form a currency subset, and then subtracts the plaintext transaction from the plaintext total amount Amount to get the change amount in plain text.
在一些可选的实施例中,所述付款请求中包括交易货币和找零货币,所述交易货币中包含所述密文交易金额和所述第一验证信息,所述找零货币中包含所述密文找零金额和所述第二验证信息;In some optional embodiments, the payment request includes transaction currency and change currency, the transaction currency includes the encrypted transaction amount and the first verification information, and the change currency includes the The ciphertext change amount and the second verification information;
所述付款请求还包括转账数据结构;The payment request also includes a transfer data structure;
付款端生成付款请求的步骤前,还包括:Before the steps of generating a payment request on the payment side, it also includes:
付款端生成包含所述交易货币的哈希值、所述找零货币的哈希值和所述货币子集中各数字货币的哈希值的转账数据结构。The payment terminal generates a transfer data structure including the hash value of the transaction currency, the hash value of the change currency, and the hash values of each digital currency in the currency subset.
在一些可选的实施例中,In some optional embodiments,
节点根据所述付款请求更新货币列表的步骤前,还包括:节点建立用于存储货币、货币哈希值及二者对应关系的货币列表;所述货币列表包括未花费货币列表、确认中货币列表和已花费货币列表;Before the step of the node updating the currency list according to the payment request, it also includes: the node establishes a currency list for storing currency, currency hash value and the corresponding relationship between the two; the currency list includes an unspent currency list and a confirmed currency list and a list of spent currencies;
节点将所述付款请求存储到所述区块链的步骤前,还包括:节点根据所述货币子集内数字货币的哈希值查找并确认所述货币子集内的数字货币存储在所述未花费货币列表,以及确认所述密文交易金额与所述密文找零金额的和等于所述货币子集内数字货币的密文总金额。Before the node stores the payment request in the block chain, it also includes: the node searches and confirms that the digital currency in the currency subset is stored in the currency subset according to the hash value of the digital currency in the currency subset A list of unspent currencies, and confirming that the sum of the ciphertext transaction amount and the ciphertext change amount is equal to the total ciphertext amount of digital currencies in the currency subset.
为实现上述目的,根据本发明实施例的另一个方面,提供了使用数字货币的交易装置,包括:In order to achieve the above purpose, according to another aspect of the embodiments of the present invention, a transaction device using digital currency is provided, including:
交易金额加密模块,用于对收到的明文交易金额进行加密以得到密文交易金额;The transaction amount encryption module is used to encrypt the received plaintext transaction amount to obtain the ciphertext transaction amount;
第一验证信息生成模块,用于生成用于验证所述密文交易金额的第一验证信息;A first verification information generating module, configured to generate first verification information for verifying the encrypted transaction amount;
找零金额计算模块,用于根据所述明文交易金额和货币列表计算明文找零金额;A change amount calculation module, configured to calculate the plaintext change amount according to the plaintext transaction amount and currency list;
找零金额加密模块,用于对所述明文找零金额进行加密以得到密文找零金额;The change amount encryption module is used to encrypt the plaintext change amount to obtain the ciphertext change amount;
第二验证信息生成模块,用于生成用于验证所述密文找零金额的第二验证信息;A second verification information generating module, configured to generate second verification information for verifying the ciphertext change amount;
付款请求发送模块,用于生成付款请求以及广播该付款请求;所述付款请求中包括所述密文交易金额、所述第一验证信息、所述密文找零金额和所述第二验证信息。A payment request sending module, configured to generate a payment request and broadcast the payment request; the payment request includes the ciphertext transaction amount, the first verification information, the ciphertext change amount and the second verification information .
在一些可选的实施例中,所述交易金额加密模块还用于:生成本次付款使用的交易私钥;存储基点值,以及使用基点加密算法对所述基点值进行加密计算以得到基点校验值;根据公式q=xG+mH计算所述密文交易金额;其中,q为所述密文交易金额,x为所述交易私钥,m为收到的所述明文交易金额,G为所述基点值,H为所述基点校验值。In some optional embodiments, the transaction amount encryption module is also used to: generate the transaction private key used in this payment; store the base point value, and use the base point encryption algorithm to encrypt and calculate the base point value to obtain the base point calibration check value; calculate the ciphertext transaction amount according to the formula q=xG+mH; wherein, q is the ciphertext transaction amount, x is the transaction private key, m is the received plaintext transaction amount, and G is The base point value, H is the base point check value.
在一些可选的实施例中,In some optional embodiments,
所述第一验证信息包括第一交易证明;The first verification information includes a first transaction certificate;
所述第一验证信息生成模块还用于:将所述明文交易金额m按照预设位数n进行二进制拆分,以得到其中mi=2i或mi=0,i表示索引位,并且0≤i<n;将所述交易私钥x按照预设位数n进行随机拆分,以得到其中x0至xn-2均随机生成,对于每一个索引位,根据P(xi,mi)=xiG+miH和P(xi,mi-ki)=xiG+(mi-ki)H计算P(xi,mi)和P(xi,mi-ki);其中ki=2i;对于每一个所述索引位,使用所述xi、所述P(xi,mi)和所述P(xi,mi-ki)生成该索引位的环签名Si;将全部的所述索引位、所述P(xi,mi)、所述P(xi,mi-ki)和所述Si进行拼接以得到所述第一交易证明。The first verification information generation module is also used to: perform binary splitting of the plaintext transaction amount m according to the preset number of digits n, to obtain Where m i =2 i or m i =0, i represents the index bit, and 0≤i<n; randomly split the transaction private key x according to the preset number of bits n to obtain Among them, x 0 to x n-2 are randomly generated, For each index bit , calculate P ( _ _ xi , m i ) and P( xi , m i -ki ); where ki =2 i ; for each index bit, use the xi , the P( xi ,m i ) and the P( xi ,m i -ki ) to generate the ring signature S i of the index bit; combine all the index bits, the P( xi ,m i ), the P( xi , m i -ki ) and the S i are spliced to obtain the first transaction proof.
在一些可选的实施例中,In some optional embodiments,
所述第一验证信息包括第一通信消息;The first verification information includes a first communication message;
所述第一验证信息生成模块还用于:生成付款端固定私钥,获取收款端固定公钥,以及使用所述基点加密算法对所述付款端固定私钥与所述收款端固定公钥的乘积进行加密计算以得到共享密钥,然后将所述明文交易金额与所述交易私钥进行拼接,再使用所述共享密钥对拼接后的结果进行加密计算以生成所述第一通信消息。The first verification information generation module is also used to: generate a fixed private key of the payment terminal, obtain a fixed public key of the payment terminal, and use the base point encryption algorithm to compare the fixed private key of the payment terminal with the fixed public key of the payment terminal. key product to obtain a shared key, then concatenate the plaintext transaction amount with the transaction private key, and then use the shared key to encrypt the concatenated result to generate the first communication information.
在一些可选的实施例中,所述找零金额计算模块还用于:从货币列表中选择收款方为所述付款端、且明文总金额大于或等于所述明文交易金额的数字货币然后组成货币子集,再用所述明文总金额减去所述明文交易金额以得到明文找零金额。In some optional embodiments, the change amount calculation module is further configured to: select a digital currency whose payee is the payment terminal from the currency list and whose total plaintext amount is greater than or equal to the plaintext transaction amount, and then A currency subset is formed, and then the plaintext transaction amount is subtracted from the plaintext total amount to obtain the plaintext change amount.
在一些可选的实施例中,所述付款请求中包括交易货币和找零货币,所述交易货币中包含所述密文交易金额和所述第一验证信息,所述找零货币中包含所述密文找零金额和所述第二验证信息;In some optional embodiments, the payment request includes transaction currency and change currency, the transaction currency includes the encrypted transaction amount and the first verification information, and the change currency includes the The ciphertext change amount and the second verification information;
所述付款请求还包括转账数据结构;The payment request also includes a transfer data structure;
所述装置还包括:The device also includes:
转账数据结构生成模块,用于生成包含所述交易货币的哈希值、所述找零货币的哈希值和所述货币子集中各数字货币的哈希值的转账数据结构。A transfer data structure generation module, configured to generate a transfer data structure including the hash value of the transaction currency, the hash value of the change currency, and the hash values of each digital currency in the currency subset.
为实现上述目的,根据本发明实施例的又一个方面,提供了使用数字货币的交易装置,包括:In order to achieve the above purpose, according to another aspect of the embodiment of the present invention, a transaction device using digital currency is provided, including:
付款请求接收模块,用于接收付款请求;所述付款请求包括密文交易金额、第一验证信息、密文找零金额和第二验证信息;A payment request receiving module, configured to receive a payment request; the payment request includes encrypted transaction amount, first verification information, encrypted change amount and second verification information;
交易金额验证模块,用于根据所述第一验证信息确认所述密文交易金额符合规则;A transaction amount verification module, configured to confirm that the ciphertext transaction amount complies with the rules according to the first verification information;
找零金额验证模块,用于根据所述第二验证信息确认所述密文找零金额符合规则;A change amount verification module, configured to confirm that the ciphertext change amount complies with the rules according to the second verification information;
付款请求入链模块,用于将所述付款请求存储到区块链。The payment request chain entry module is used to store the payment request into the block chain.
在一些可选的实施例中,In some optional embodiments,
所述第一验证信息包括第一交易证明;The first verification information includes a first transaction certificate;
所述交易金额验证模块还用于:拆解所述第一交易证明,以得到全部的索引位i、P(xi,mi)、P(xi,mi-ki)和Si;确认对于每一个所述索引位,所述Si为所述P(xi,mi)和所述P(xi,mi-ki)的环签名,以及确认对于每一个所述索引位,满足P(xi,mi)-P(xi,mi-ki)=kiH,然后确认满足以确认所述密文交易金额符合规则;其中q为所述密文交易金额,ki=2i。The transaction amount verification module is also used to: disassemble the first transaction certificate to obtain all index bits i, P( xi ,m i ), P( xi ,m i -k i ) and S i ; Confirm that for each of the index bits, the S i is the ring signature of the P( xi ,m i ) and the P( xi ,m i -ki ) , and confirm that for each of the Index bit, satisfy P( xi ,m i )-P( xi ,m i -k i )=k i H, and then confirm that To confirm that the ciphertext transaction amount complies with the rules; where q is the ciphertext transaction amount, k i =2 i .
在一些可选的实施例中,所述装置还包括货币列表建立模块和货币列表验证模块,其中,In some optional embodiments, the device further includes a currency list establishment module and a currency list verification module, wherein,
所述货币列表建立模块用于建立用来存储货币、货币哈希值及二者对应关系的货币列表;所述货币列表包括未花费货币列表、确认中货币列表和已花费货币列表;The currency list establishment module is used to establish a currency list for storing currency, currency hash value and the corresponding relationship between the two; the currency list includes an unspent currency list, a confirmed currency list and a spent currency list;
所述付款请求中包括交易货币和找零货币,所述交易货币中包含所述密文交易金额和所述第一验证信息,所述找零货币中包含所述密文找零金额和所述第二验证信息;The payment request includes transaction currency and change currency, the transaction currency includes the ciphertext transaction amount and the first verification information, and the change currency includes the ciphertext change amount and the Second authentication information;
所述转账数据结构包括所述交易货币的哈希值、所述转账数据结构还包括找零货币的哈希值和所述货币子集内数字货币的哈希值;The transfer data structure includes the hash value of the transaction currency, and the transfer data structure further includes the hash value of the change currency and the hash value of the digital currency in the currency subset;
所述货币列表验证模块用于:根据所述交易货币的哈希值查找并确认所述交易货币存储在所述确认中货币列表,再根据所述货币子集内数字货币的哈希值查找并确认所述货币子集内的货币存储在所述未花费货币列表,以及确认所述密文交易金额与所述密文找零金额的和等于所述货币子集内数字货币的密文总金额。The currency list verification module is used to: search and confirm that the transaction currency is stored in the currency list in the confirmation according to the hash value of the transaction currency, and then search and confirm according to the hash value of the digital currency in the currency subset Confirming that the currency in the currency subset is stored in the unspent currency list, and confirming that the sum of the encrypted transaction amount and the encrypted change amount is equal to the total encrypted amount of the digital currency in the currency subset .
为实现上述目的,根据本发明实施例的再一个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,其特征在于,所述计算机指令能够被计算机或计算机系统运行,从而使该计算机或计算机系统能够执行所述的使用数字货币的交易方法。In order to achieve the above object, according to still another aspect of the embodiments of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium stores computer instructions, which is characterized in that the computer instructions can be read by a computer or The computer system operates so that the computer or computer system can execute the described transaction method using digital currency.
上述发明中的一个实施例具有如下优点或有益效果:因为采用基于分布式账本技术的付款交易的过程中,付款端对交易中涉及的明文金额进行加密以得到密文金额,并生成相应的验证消息,用以对密文金额进行验证或者解密的技术手段,所以克服了现有的分布式账本技术中资金难以保密的技术问题,进而达到保障合作共享且保护交易隐私的技术效果。An embodiment of the above invention has the following advantages or beneficial effects: Because in the process of using the payment transaction based on distributed ledger technology, the payment end encrypts the plaintext amount involved in the transaction to obtain the ciphertext amount, and generates the corresponding verification The message is a technical means for verifying or decrypting the ciphertext amount, so it overcomes the technical problem that the funds in the existing distributed ledger technology are difficult to keep secret, and then achieves the technical effect of ensuring cooperation and sharing and protecting transaction privacy.
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。The further effects of the above-mentioned non-conventional alternatives will be described below in conjunction with specific embodiments.
附图说明Description of drawings
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:The accompanying drawings are used to better understand the present invention, and do not constitute improper limitations to the present invention. in:
图1是根据本发明实施例的使用数字货币的交易方法的主要步骤的示意图;FIG. 1 is a schematic diagram of the main steps of a transaction method using digital currency according to an embodiment of the present invention;
图2是根据本发明实施例的使用数字货币的交易装置的主要模块的示意图;Fig. 2 is a schematic diagram of main modules of a transaction device using digital currency according to an embodiment of the present invention;
图3是根据本发明另一实施例的使用数字货币的交易装置的主要模块的示意图。Fig. 3 is a schematic diagram of main modules of a transaction device using digital currency according to another embodiment of the present invention.
具体实施方式detailed description
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。Exemplary embodiments of the present invention are described below in conjunction with the accompanying drawings, which include various details of the embodiments of the present invention to facilitate understanding, and they should be regarded as exemplary only. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the invention. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
图1是根据本发明实施例的使用数字货币的交易方法的主要步骤的示意图。Fig. 1 is a schematic diagram of main steps of a transaction method using digital currency according to an embodiment of the present invention.
如图1所示,根据本发明实施例提供的使用数字货币的交易方法,包括:As shown in Figure 1, the transaction method using digital currency provided according to the embodiment of the present invention includes:
S10,付款端对收到的明文交易金额进行加密以得到密文交易金额,以及生成用于验证所述密文交易金额的第一验证信息。S10. The payer encrypts the received plaintext transaction amount to obtain a ciphertext transaction amount, and generates first verification information for verifying the ciphertext transaction amount.
S11,付款端根据所述明文交易金额和货币列表计算明文找零金额,以及对所述明文找零金额进行加密以得到密文找零金额,然后生成用于验证所述密文找零金额的第二验证信息。S11, the payer calculates the plaintext change amount according to the plaintext transaction amount and the currency list, and encrypts the plaintext change amount to obtain the ciphertext change amount, and then generates a password for verifying the ciphertext change amount Second authentication information.
S12,付款端生成付款请求以及广播该付款请求;所述付款请求中包括所述密文交易金额、所述第一验证信息、所述密文找零金额和所述第二验证信息。S12. The payer generates a payment request and broadcasts the payment request; the payment request includes the ciphertext transaction amount, the first verification information, the ciphertext change amount, and the second verification information.
S13,节点在接收到所述付款请求后,根据所述第一验证信息确认所述密文交易金额符合规则,以及根据所述第二验证信息确认所述密文找零金额符合规则,然后将所述付款请求存储到区块链。S13. After receiving the payment request, the node confirms that the ciphertext transaction amount complies with the rules according to the first verification information, and confirms that the ciphertext change amount complies with the rules according to the second verification information, and then sends Said payment request is stored to the blockchain.
在一些可选的实施例中,所述付款请求中还包括付款时间戳。为了便于发送和接收以及记录,所述付款请求中还包括收款方地址和付款方地址。为了便于识别,所述付款请求在广播前,由所述付款端使用付款端固定私钥对其进行签名。In some optional embodiments, the payment request further includes a payment time stamp. In order to facilitate sending, receiving and recording, the payment request also includes the address of the payee and the address of the payer. In order to facilitate identification, the payment request is signed by the payer using the fixed private key of the payer before broadcasting.
从上面所述可以看出,本发明实施例因为采用基于分布式账本技术的付款交易的过程中,付款端对交易中涉及的明文金额进行加密以得到密文金额,并生成相应的验证消息,用以对密文金额进行验证或者解密的技术手段,所以克服了现有的分布式账本技术中资金难以保密的技术问题,进而达到保障合作共享且保护交易隐私的技术效果。It can be seen from the above that, in the embodiment of the present invention, during the payment transaction based on distributed ledger technology, the payer encrypts the plaintext amount involved in the transaction to obtain the ciphertext amount, and generates a corresponding verification message, It is a technical means to verify or decrypt the amount of ciphertext, so it overcomes the technical problem that the funds in the existing distributed ledger technology are difficult to keep secret, and then achieves the technical effect of ensuring cooperation and sharing and protecting transaction privacy.
在一些可选的实施例中,付款端对收到的明文交易金额进行加密以得到密文交易金额的步骤包括:In some optional embodiments, the step of the payment terminal encrypting the received plaintext transaction amount to obtain the ciphertext transaction amount includes:
付款端生成本次付款使用的交易私钥;The payment terminal generates the transaction private key used for this payment;
付款端存储基点值,以及使用基点加密算法对所述基点值进行加密计算然后得到基点校验值;The payment end stores the base point value, and uses the base point encryption algorithm to encrypt and calculate the base point value to obtain the base point check value;
付款端根据公式q=xG+mH计算所述密文交易金额;其中,q为所述密文交易金额,x为所述交易私钥,m为收到的所述明文交易金额,G为所述基点值,H为所述基点校验值。The payer calculates the ciphertext transaction amount according to the formula q=xG+mH; where, q is the ciphertext transaction amount, x is the transaction private key, m is the received plaintext transaction amount, and G is the The base point value, H is the check value of the base point.
所述基点加密算法可以是例如SHA256算法、RIPEMD-160算法或Base58编码等。基点加密算法的目的是通过预设的基点值G计算得到一个无人知晓私钥的公开公钥,即基点校验值H;而使用例如SHA256这类哈希算法得出的基点校验值H比较有公信力,当然也可以采用其他能够达到相同或相似效果的算法。基点加密算法需要保证计算得到的H与G之间没有类似与H=kG这种简单地对应关系,从而使得q=xG+mH在q、G、H均已知的时候,x和m的值有唯一解。The base point encryption algorithm may be, for example, SHA256 algorithm, RIPEMD-160 algorithm, or Base58 encoding. The purpose of the base point encryption algorithm is to calculate a public public key that no one knows the private key through the preset base point value G, that is, the base point check value H; and the base point check value H obtained by using a hash algorithm such as SHA256 It is more credible, and of course other algorithms that can achieve the same or similar effects can also be used. The base point encryption algorithm needs to ensure that there is no simple correspondence between the calculated H and G, such as H=kG, so that q=xG+mH when q, G, and H are all known, the values of x and m has a unique solution.
在一些可选的实施例中,所述第一验证信息包括第一交易证明;In some optional embodiments, the first verification information includes a first transaction certificate;
付款端生成用于验证所述密文交易金额的第一验证信息的步骤包括:The step for the payment terminal to generate the first verification information for verifying the ciphertext transaction amount includes:
付款端将所述明文交易金额m按照预设位数n进行二进制拆分,以得到其中mi=2i或mi=0,i表示索引位,并且0≤i<n;The payment side performs binary splitting of the plaintext transaction amount m according to the preset number of digits n to obtain Where m i =2 i or m i =0, i represents an index bit, and 0≤i<n;
付款端将所述交易私钥x按照预设位数n进行随机拆分,以得到其中x0至xn-2均随机生成,在拆分时,预设位数n越大则加密程度越高,但是也会提高计算成本,并且多余的位数并不具备实际适用性,所以n的取值通常在64比较合适,根据情况也可以选择32或者128;The payment side randomly splits the transaction private key x according to the preset number of digits n to obtain Among them, x 0 to x n-2 are randomly generated, When splitting, the larger the preset number of bits n, the higher the degree of encryption, but it will also increase the calculation cost, and the extra number of bits does not have practical applicability, so the value of n is usually 64 is more appropriate, depending on the situation You can also choose 32 or 128;
付款端对于每一个索引位,根据P(xi,mi)=xiG+miH和P(xi,mi-ki)=xiG+(mi-ki)H计算P(xi,mi)和P(xi,mi-ki);其中ki=2i;For each index bit, the payer calculates according to P(x i ,m i )=x i G+m i H and P(x i ,m i -k i )=x i G+(m i -k i )H P(x i , m i ) and P(x i , m i -k i ); where k i =2 i ;
付款端对于每一个所述索引位,使用所述xi、所述P(xi,mi)和所述P(xi,mi-ki)生成该索引位的环签名Si;For each index bit, the payer uses the x i , the P( xi ,m i ) and the P( xi ,m i -k i ) to generate the ring signature S i of the index bit;
付款端将全部的所述索引位、所述P(xi,mi)、所述P(xi,mi-ki)和所述Si进行拼接以得到所述第一交易证明。The payer concatenates all the index bits, the P( xi ,m i ), the P( xi ,m i - ki ) and the S i to obtain the first transaction proof.
在一些可选的实施例中,节点根据所述第一验证信息确认所述密文交易金额符合规则的步骤包括:In some optional embodiments, the step of the node confirming that the encrypted transaction amount complies with the rules according to the first verification information includes:
节点拆解所述第一交易证明,以得到全部的所述索引位、所述P(xi,mi)、所述P(xi,mi-ki)和所述Si;The node disassembles the first transaction proof to obtain all the index bits, the P( xi ,m i ), the P( xi ,m i -ki ) and the S i ;
节点确认对于每一个所述索引位,所述Si为所述P(xi,mi)和所述P(xi,mi-ki)的环签名,以及确认对于每一个所述索引位,满足P(xi,mi)-P(xi,mi-ki)=kiH,然后确认满足以确认所述密文交易金额符合规则;其中ki=2i。The node confirms that for each of the index bits, the S i is the ring signature of the P( xi ,m i ) and the P( xi ,m i -ki ) , and confirms that for each of the Index bit, satisfy P( xi ,m i )-P( xi ,m i -k i )=k i H, and then confirm that To confirm that the ciphertext transaction amount complies with the rules; where k i =2 i .
在一些可选的实施例中,所述第一验证信息包括第一通信消息;In some optional embodiments, the first verification information includes a first communication message;
付款端生成用于验证所述密文交易金额的第一验证信息的步骤包括:The step for the payment terminal to generate the first verification information for verifying the ciphertext transaction amount includes:
付款端生成付款端固定私钥,获取收款端固定公钥,以及使用所述基点加密算法对所述付款端固定私钥与所述收款端固定公钥的乘积进行加密计算以得到共享密钥,然后将所述明文交易金额与所述交易私钥进行拼接,再使用所述共享密钥对拼接后的结果进行加密计算以生成所述第一通信消息。The payer generates the fixed private key of the payer, obtains the fixed public key of the payee, and uses the base point encryption algorithm to encrypt and calculate the product of the fixed private key of the payer and the fixed public key of the payee to obtain a shared secret key, and then concatenate the plaintext transaction amount with the transaction private key, and then use the shared key to encrypt and calculate the concatenated result to generate the first communication message.
在收款端需要根据所述第一验证信息对所述密文交易金额进行解密时,存储所述基点值,以及使用所述基点加密算法对所述基点值进行加密计算得到所述基点校验值;生成收款端固定私钥,获取付款端固定公钥,以及使用所述基点加密算法对所述收款端固定私钥与所述付款端固定公钥的乘积进行加密计算以得到共享密钥,然后拆分使用所述共享密钥对所述第一通信消息进行解密计算的结果以得到所述明文交易金额。When the payment terminal needs to decrypt the ciphertext transaction amount according to the first verification information, store the base point value, and use the base point encryption algorithm to encrypt and calculate the base point value to obtain the base point check value; generate a fixed private key at the receiving end, obtain a fixed public key at the paying end, and use the base point encryption algorithm to encrypt and calculate the product of the fixed private key at the receiving end and the fixed public key at the paying end to obtain a shared secret key, and then split the result of decrypting and computing the first communication message using the shared key to obtain the plaintext transaction amount.
在一些可选的实施例中,付款端根据所述明文交易金额和货币列表计算明文找零金额的步骤包括:In some optional embodiments, the step of calculating the clear text change amount according to the plain text transaction amount and the currency list at the payment end includes:
付款端从货币列表中选择收款方为所述付款端、且明文总金额大于或等于所述明文交易金额的数字货币然后组成货币子集,再用所述明文总金额减去所述明文交易金额以得到明文找零金额。需要说明的是,如果所述货币子集中数字货币的明文总金额等于所述明文交易金额,则计算得到的所述明文找零金额为零;在这种情况下,可以依旧按照明文找零金额不为0的方法进行后续处理,也可以设置单独的判断条件,不再处理后续出现明文找零金额及与其相关的内容。如果按照明文找零金额不为0的方法进行后续处理,则可以与后续步骤中节点对密文交易金额、密文找零金额以及货币子集中数字货币的明文总金额的验证保持一致,能够提高方法的整体性和安全性。The payer selects the digital currency whose payee is the payer and the total plaintext amount is greater than or equal to the plaintext transaction amount from the currency list to form a currency subset, and then subtracts the plaintext transaction from the plaintext total amount Amount to get the change amount in plaintext. It should be noted that if the total plaintext amount of the digital currency in the currency subset is equal to the plaintext transaction amount, the calculated plaintext change amount is zero; in this case, the plaintext change amount can still be used The method that is not 0 is used for subsequent processing, and a separate judgment condition can also be set, so that the amount of change in plain text and related content that appear later will not be processed. If the follow-up processing is carried out according to the method that the plaintext change amount is not 0, it can be consistent with the node’s verification of the ciphertext transaction amount, ciphertext change amount, and the total plaintext amount of the digital currency in the currency subset in the subsequent steps, which can improve Integrity and security of the method.
在一些可选的实施例中,所述付款请求中包括交易货币和找零货币,所述交易货币中包含所述密文交易金额和所述第一验证信息,所述找零货币中包含所述密文找零金额和所述第二验证信息;In some optional embodiments, the payment request includes transaction currency and change currency, the transaction currency includes the encrypted transaction amount and the first verification information, and the change currency includes the The ciphertext change amount and the second verification information;
所述付款请求还包括转账数据结构;The payment request also includes a transfer data structure;
付款端生成付款请求的步骤前,还包括:Before the steps of generating a payment request on the payment side, it also includes:
付款端生成包含所述交易货币的哈希值、所述找零货币的哈希值和所述货币子集中各数字货币的哈希值的转账数据结构。The payment terminal generates a transfer data structure including the hash value of the transaction currency, the hash value of the change currency, and the hash values of each digital currency in the currency subset.
第二验证信息的生成和使用参考所述第一验证信息。需要说明的是,在生成第二验证信息时,由付款端生成本次付款使用的付款交易私钥,在另外一些实施例中,为了满足验证条件,所述付款交易私钥还要满足一定条件,在后续实施例中进行说明;如果需要生成第二通信消息,则付款端根据付款单固定私钥和付款端固定公钥,参照所述第一验证消息的生成方式进行加密生成。The generation and use of the second verification information refers to the first verification information. It should be noted that when generating the second verification information, the payment transaction private key used for this payment is generated by the payer. In some other embodiments, in order to meet the verification conditions, the payment transaction private key must also meet certain conditions , which will be described in subsequent embodiments; if the second communication message needs to be generated, the payer will encrypt and generate it according to the fixed private key of the payment slip and the fixed public key of the payer, referring to the generation method of the first verification message.
在一些可选的实施例中,In some optional embodiments,
节点根据所述付款请求更新货币列表的步骤前,还包括:节点建立用于存储货币、货币哈希值及二者对应关系的货币列表;所述货币列表包括未花费货币列表、确认中货币列表和已花费货币列表;Before the step of the node updating the currency list according to the payment request, it also includes: the node establishes a currency list for storing currency, currency hash value and the corresponding relationship between the two; the currency list includes an unspent currency list and a confirmed currency list and a list of spent currencies;
节点将所述付款请求存储到所述区块链的步骤前,还包括:节点根据所述交易货币的哈希值查找并确认所述交易货币存储在所述确认中货币列表,再根据所述货币子集内数字货币的哈希值查找并确认所述货币子集内的数字货币存储在所述未花费货币列表,以及确认所述密文交易金额与所述密文找零金额的和等于所述货币子集内数字货币的密文总金额。Before the node stores the payment request in the block chain, it also includes: the node searches and confirms that the transaction currency is stored in the currency list in the confirmation according to the hash value of the transaction currency, and then according to the The hash value of the digital currency in the currency subset looks up and confirms that the digital currency in the currency subset is stored in the unspent currency list, and confirms that the sum of the ciphertext transaction amount and the ciphertext change amount is equal to The total amount of ciphertext of digital currency in the currency subset.
本实施例中,因为要确认所述密文交易金额与所述密文找零金额的和等于所述货币子集内数字货币的密文总金额,所以当所述货币子集中数字货币的明文总金额等于所述明文交易金额,即所述明文找零金额的值为0时,仍然要参照对明文交易金额进行加密的方法对明文找零金额进行加密;此外,在对明文找零金额进行加密时,由付款端生成付款交易私钥,这里的付款交易私钥的生成方式与收款端生成交易私钥的方式不同,并非随机生成,而是以所述货币子集中数字货币的交易私钥之和减去所述付款端的交易私钥得到的结果作为所述付款端的付款交易私钥,这样才能够在明文找零金额为0时,仍然满足密文交易金额与密文找零金额的和等于货币子集内数字货币的密文总金额,从而完成验证过程。In this embodiment, because it is confirmed that the sum of the ciphertext transaction amount and the ciphertext change amount is equal to the total ciphertext amount of the digital currency in the currency subset, when the plaintext of the digital currency in the currency subset The total amount is equal to the plaintext transaction amount, that is, when the value of the plaintext change amount is 0, it is still necessary to encrypt the plaintext change amount by referring to the method for encrypting the plaintext transaction amount; When encrypting, the payment transaction private key is generated by the payer. The generation method of the payment transaction private key here is different from that of the payee. It is not randomly generated, but the transaction private key of the digital currency in the currency subset. The result obtained by subtracting the transaction private key of the payment terminal from the sum of the private keys of the payment terminal is used as the payment transaction private key of the payment terminal, so that when the plaintext change amount is 0, the relationship between the ciphertext transaction amount and the ciphertext change amount can still be satisfied. The sum is equal to the total amount of ciphertext of the digital currency in the currency subset, thus completing the verification process.
在一些可选的实施例中,节点将所述付款请求存储到区块链的步骤后,还包括:节点将所述交易货币及其哈希值存储到所述未花费货币列表,再根据所述货币子集内数字货币的哈希值查找到所述货币子集内的货币后,将所述货币子集内的货币及其哈希值从所述未花费货币列表移至所述已花费货币列表,以及将所述找零货币及其哈希值存储到所述未花费货币列表。In some optional embodiments, after the node stores the payment request in the block chain, it also includes: the node stores the transaction currency and its hash value in the unspent currency list, and then according to the After finding the currency in the currency subset by the hash value of the digital currency in the currency subset, move the currency in the currency subset and its hash value from the unspent currency list to the spent currency list a list of currencies, and storing the change currency and its hash value in the list of unspent currencies.
需要说明的是,任意用户端如果需要查询自身的账户余额,则可以收集货币列表的未花费货币列表中,收款方地址为自身地址的货币,根据这些货币付款端的公钥逐个计算每个货币的共享密钥,并使用所述共享密钥分别解密这些货币中的密文金额,以得到每个货币的明文金额,将这些明文金额相加即可得到自身的账户余额。It should be noted that if any client needs to query its own account balance, it can collect the currencies whose payee address is its own address in the unspent currency list of the currency list, and calculate each currency one by one according to the public key of the payment terminal of these currencies and use the shared key to decrypt the ciphertext amounts in these currencies respectively to obtain the plaintext amounts of each currency, and add these plaintext amounts to obtain their own account balances.
在一些可选的实施例中,所述交易货币、找零货币和数字货币的数据结构如表1所示:In some optional embodiments, the data structures of the transaction currency, change currency and digital currency are shown in Table 1:
表1货币数据结构表Table 1 Currency data structure table
在一些可选的实施例中,所述交易证明的数据结构如表2所示:In some optional embodiments, the data structure of the transaction proof is shown in Table 2:
表2交易证明数据结构表Table 2 Transaction proof data structure table
在一些可选的实施例中,所述转账数据结构的可选数据结构如表3所示:In some optional embodiments, the optional data structure of the transfer data structure is shown in Table 3:
表3转账数据结构表Table 3 transfer data structure table
其中,所述输入货币哈希列表中包括货币子集中数字货币的哈希值;所述输出货币哈希列表中包括所述交易货币的哈希值,以及在存在找零时,还包括所述找零货币的哈希值。Wherein, the input currency hash list includes the hash value of the digital currency in the currency subset; the output currency hash list includes the transaction currency hash value, and when there is change, it also includes the The hash value of the change currency.
图2是根据本发明实施例的使用数字货币的交易装置的主要模块的示意图。Fig. 2 is a schematic diagram of main modules of a transaction device using digital currency according to an embodiment of the present invention.
如图2所示,本发明实施例提供使用数字货币的交易装置200,主要应用于具备付款功能的用户端,包括:As shown in Figure 2, the embodiment of the present invention provides a transaction device 200 using digital currency, which is mainly applied to a client terminal with a payment function, including:
交易金额加密模块201,用于对收到的明文交易金额进行加密以得到密文交易金额;The transaction amount encryption module 201 is used to encrypt the received plaintext transaction amount to obtain the ciphertext transaction amount;
第一验证信息生成模块202,用于生成用于验证所述密文交易金额的第一验证信息;A first verification information generating module 202, configured to generate first verification information for verifying the encrypted transaction amount;
找零金额计算模块203,用于根据所述明文交易金额和货币列表计算明文找零金额;A change amount calculation module 203, configured to calculate the clear text change amount according to the plain text transaction amount and currency list;
找零金额加密模块204,用于对所述明文找零金额进行加密以得到密文找零金额;A change amount encryption module 204, configured to encrypt the plaintext change amount to obtain a ciphertext change amount;
第二验证信息生成模块205,用于生成用于验证所述密文找零金额的第二验证信息;A second verification information generating module 205, configured to generate second verification information for verifying the ciphertext change amount;
付款请求发送模块206,用于生成付款请求以及广播该付款请求;所述付款请求中包括所述密文交易金额、所述第一验证信息、所述密文找零金额和所述第二验证信息。A payment request sending module 206, configured to generate a payment request and broadcast the payment request; the payment request includes the ciphertext transaction amount, the first verification information, the ciphertext change amount and the second verification information.
在一些可选的实施例中,所述交易金额加密模块201还用于:In some optional embodiments, the transaction amount encryption module 201 is also used for:
生成本次付款使用的交易私钥;存储基点值,以及使用基点加密算法对所述基点值进行加密计算以得到基点校验值;根据公式q=xG+mH计算所述密文交易金额;其中,q为所述密文交易金额,x为所述交易私钥,m为收到的所述明文交易金额,G为所述基点值,H为所述基点校验值。Generate the transaction private key used for this payment; store the base point value, and use the base point encryption algorithm to encrypt and calculate the base point value to obtain the base point check value; calculate the ciphertext transaction amount according to the formula q=xG+mH; where , q is the ciphertext transaction amount, x is the transaction private key, m is the received plaintext transaction amount, G is the base point value, and H is the base point check value.
在一些可选的实施例中,所述第一验证信息包括第一交易证明;In some optional embodiments, the first verification information includes a first transaction certificate;
所述第一验证信息生成模块202还用于:将所述明文交易金额m按照预设位数n进行二进制拆分,以得到其中mi=2i或mi=0,i表示索引位,并且0≤i<n;将所述交易私钥x按照预设位数n进行随机拆分,以得到其中x0至xn-2均随机生成,对于每一个索引位,根据P(xi,mi)=xiG+miH和P(xi,mi-ki)=xiG+(mi-ki)H计算P(xi,mi)和P(xi,mi-ki);其中ki=2i;对于每一个所述索引位,使用所述xi、所述P(xi,mi)和所述P(xi,mi-ki)生成该索引位的环签名Si;将全部的所述索引位、所述P(xi,mi)、所述P(xi,mi-ki)和所述Si进行拼接以得到所述第一交易证明。The first verification information generating module 202 is further configured to: perform binary splitting of the plaintext transaction amount m according to a preset number of digits n, to obtain Where m i =2 i or m i =0, i represents the index bit, and 0≤i<n; randomly split the transaction private key x according to the preset number of bits n to obtain Among them, x 0 to x n-2 are randomly generated, For each index bit , calculate P ( _ _ xi , m i ) and P( xi , m i -ki ); where ki =2 i ; for each index bit, use the xi , the P( xi ,m i ) and the P( xi ,m i -ki ) to generate the ring signature S i of the index bit; combine all the index bits, the P( xi ,m i ), the P( xi , m i -ki ) and the S i are spliced to obtain the first transaction proof.
在一些可选的实施例中,所述第一验证信息包括第一通信消息;In some optional embodiments, the first verification information includes a first communication message;
所述第一验证信息生成模块202还用于:生成付款端固定私钥,获取收款端固定公钥,以及使用所述基点加密算法对所述付款端固定私钥与所述收款端固定公钥的乘积进行加密计算以得到共享密钥,然后将所述明文交易金额与所述交易私钥进行拼接,再使用所述共享密钥对拼接后的结果进行加密计算以生成所述第一通信消息。The first verification information generation module 202 is further configured to: generate a fixed private key of the payment terminal, obtain a fixed public key of the payment terminal, and use the base point encryption algorithm to perform a fixed private key connection between the fixed private key of the payment terminal and the fixed public key of the payment terminal. The product of the public key is encrypted and calculated to obtain a shared key, and then the plaintext transaction amount is spliced with the transaction private key, and then the result after splicing is encrypted and calculated using the shared key to generate the first communication message.
在一些可选的实施例中,所述找零金额计算模块203还用于:从货币列表中选择收款方为所述付款端、且明文总金额大于或等于所述明文交易金额的数字货币然后组成货币子集,再用所述明文总金额减去所述明文交易金额以得到明文找零金额。In some optional embodiments, the change amount calculation module 203 is further configured to: select a digital currency whose payee is the payment terminal and whose total plaintext amount is greater than or equal to the plaintext transaction amount from the currency list Then a currency subset is formed, and the plaintext transaction amount is subtracted from the plaintext total amount to obtain the plaintext change amount.
在一些可选的实施例中,所述付款请求中包括交易货币和找零货币,所述交易货币中包含所述密文交易金额和所述第一验证信息,所述找零货币中包含所述密文找零金额和所述第二验证信息;In some optional embodiments, the payment request includes transaction currency and change currency, the transaction currency includes the encrypted transaction amount and the first verification information, and the change currency includes the The ciphertext change amount and the second verification information;
所述付款请求还包括转账数据结构;The payment request also includes a transfer data structure;
所述装置还包括:The device also includes:
转账数据结构生成模块207,用于生成包含所述交易货币的哈希值、所述找零货币的哈希值和所述货币子集中各数字货币的哈希值的转账数据结构。A transfer data structure generation module 207, configured to generate a transfer data structure including the hash value of the transaction currency, the hash value of the change currency, and the hash values of each digital currency in the currency subset.
图3是根据本发明另一实施例的使用数字货币的交易装置的主要模块的示意图。Fig. 3 is a schematic diagram of main modules of a transaction device using digital currency according to another embodiment of the present invention.
如图3所示,本发明另一实施例提供使用数字货币的交易装置300,主要应用于具备验证功能的节点,包括:As shown in Figure 3, another embodiment of the present invention provides a transaction device 300 using digital currency, which is mainly applied to nodes with verification functions, including:
付款请求接收模块301,用于接收付款请求;所述付款请求包括密文交易金额、第一验证信息、密文找零金额和第二验证信息;A payment request receiving module 301, configured to receive a payment request; the payment request includes encrypted text transaction amount, first verification information, encrypted text change amount and second verification information;
交易金额验证模块302,用于根据所述第一验证信息确认所述密文交易金额符合规则;A transaction amount verification module 302, configured to confirm that the ciphertext transaction amount complies with the rules according to the first verification information;
找零金额验证模块303,用于根据所述第二验证信息确认所述密文找零金额符合规则;A change amount verification module 303, configured to confirm that the ciphertext change amount complies with the rules according to the second verification information;
付款请求入链模块304,用于将所述付款请求存储到区块链。The payment request chaining module 304 is configured to store the payment request in the block chain.
在一些可选的实施例中,所述第一验证信息包括第一交易证明;In some optional embodiments, the first verification information includes a first transaction certificate;
所述交易金额验证模块302还用于:拆解所述第一交易证明,以得到全部的索引位i、P(xi,mi)、P(xi,mi-ki)和Si;确认对于每一个所述索引位,所述Si为所述P(xi,mi)和所述P(xi,mi-ki)的环签名,以及确认对于每一个所述索引位,满足P(xi,mi)-P(xi,mi-ki)=kiH,然后确认满足以确认所述密文交易金额符合规则;其中q为所述密文交易金额,ki=2i。The transaction amount verification module 302 is also used to: disassemble the first transaction certificate to obtain all index bits i, P( xi ,m i ), P( xi ,m i -ki ) and S i ; Confirm that for each of the index bits, the S i is the ring signature of the P( xi ,m i ) and the P( xi ,m i -ki ) , and confirm that for each of the The index bit, satisfy P( xi ,m i )-P( xi ,m i -k i )=k i H, and then confirm that To confirm that the ciphertext transaction amount complies with the rules; where q is the ciphertext transaction amount, k i =2 i .
在一些可选的实施例中,所述装置还包括货币列表建立模块305和货币列表验证模块306,其中,In some optional embodiments, the device further includes a currency list establishment module 305 and a currency list verification module 306, wherein,
所述货币列表建立模块305用于建立用来存储货币、货币哈希值及二者对应关系的货币列表;所述货币列表包括未花费货币列表、确认中货币列表和已花费货币列表;The currency list establishment module 305 is used to establish a currency list for storing currency, currency hash value and the corresponding relationship between the two; the currency list includes an unspent currency list, a confirmed currency list and a spent currency list;
所述付款请求中包括交易货币和找零货币,所述交易货币中包含所述密文交易金额和所述第一验证信息,所述找零货币中包含所述密文找零金额和所述第二验证信息;The payment request includes transaction currency and change currency, the transaction currency includes the ciphertext transaction amount and the first verification information, and the change currency includes the ciphertext change amount and the Second authentication information;
所述转账数据结构包括所述交易货币的哈希值、所述转账数据结构还包括找零货币的哈希值和所述货币子集内数字货币的哈希值;The transfer data structure includes the hash value of the transaction currency, and the transfer data structure further includes the hash value of the change currency and the hash value of the digital currency in the currency subset;
所述货币列表验证模块306用于:根据所述货币子集内数字货币的哈希值查找并确认所述货币子集内的货币存储在所述未花费货币列表,以及确认所述密文交易金额与所述密文找零金额的和等于所述货币子集内数字货币的密文总金额。The currency list verification module 306 is configured to: find and confirm that the currency in the currency subset is stored in the unspent currency list according to the hash value of the digital currency in the currency subset, and confirm the encrypted transaction The sum of the amount and the ciphertext change amount is equal to the total ciphertext amount of the digital currency in the currency subset.
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。The above specific implementation methods do not constitute a limitation to the protection scope of the present invention. It should be apparent to those skilled in the art that various modifications, combinations, sub-combinations and substitutions may occur depending on design requirements and other factors. Any modifications, equivalent replacements and improvements made within the spirit and principles of the present invention shall be included within the protection scope of the present invention.
Claims (18)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201710495156.5A CN107392603B (en) | 2017-06-26 | 2017-06-26 | Transaction method and device using digital currency |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201710495156.5A CN107392603B (en) | 2017-06-26 | 2017-06-26 | Transaction method and device using digital currency |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN107392603A true CN107392603A (en) | 2017-11-24 |
| CN107392603B CN107392603B (en) | 2021-03-16 |
Family
ID=60333170
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201710495156.5A Active CN107392603B (en) | 2017-06-26 | 2017-06-26 | Transaction method and device using digital currency |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN107392603B (en) |
Cited By (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108256999A (en) * | 2018-01-19 | 2018-07-06 | 阿里巴巴集团控股有限公司 | Fund transfer method and device, electronic equipment |
| CN108335106A (en) * | 2018-01-24 | 2018-07-27 | 深圳壹账通智能科技有限公司 | The more account books of Zero Knowledge based on block chain exchange transfer account method, device and storage medium |
| CN108648077A (en) * | 2018-04-24 | 2018-10-12 | 东莞市波动赢机器人科技有限公司 | Information digitalization processing method, electronic device and computer storage medium |
| CN108805574A (en) * | 2018-05-19 | 2018-11-13 | 深圳市图灵奇点智能科技有限公司 | Method of commerce based on secret protection and system |
| CN108985760A (en) * | 2018-06-15 | 2018-12-11 | 杭州复杂美科技有限公司 | Method of payment and system, equipment and storage medium |
| CN109377224A (en) * | 2018-10-25 | 2019-02-22 | 阿里巴巴集团控股有限公司 | Block chain method of commerce and device, electronic equipment |
| CN109658216A (en) * | 2018-12-14 | 2019-04-19 | 深圳美图创新科技有限公司 | Block chain moneytary operations method and device |
| WO2019118123A1 (en) * | 2017-12-13 | 2019-06-20 | Mastercard International Incorporated | Method and system for consumer-initiated transactions using encrypted tokens |
| CN110766400A (en) * | 2019-10-22 | 2020-02-07 | 全链通有限公司 | Transaction record processing method based on block chain, accounting node and medium |
| CN110992028A (en) * | 2019-10-14 | 2020-04-10 | 腾讯科技(深圳)有限公司 | Data processing method and device of sink-changing platform based on block chain network |
| RU2721008C1 (en) * | 2018-12-29 | 2020-05-15 | Алибаба Груп Холдинг Лимитед | System and method for protecting information |
| US11032077B2 (en) | 2018-09-20 | 2021-06-08 | Advanced New Technologies Co., Ltd. | Blockchain-based transaction method and apparatus, and remitter device |
| 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 |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103548044A (en) * | 2011-03-07 | 2014-01-29 | R·吉奥瑞 | System and method for providing and transferring alternative electronic money |
| US20160260093A1 (en) * | 2015-03-04 | 2016-09-08 | Sizhe Tan | Micro trusted network |
| CN106548330A (en) * | 2016-10-27 | 2017-03-29 | 上海亿账通区块链科技有限公司 | Transaction verification method and system based on block chain |
| CN106651331A (en) * | 2016-12-22 | 2017-05-10 | 飞天诚信科技股份有限公司 | Digital currency-based electronic transaction method and system |
| CN106779707A (en) * | 2016-12-23 | 2017-05-31 | 中钞信用卡产业发展有限公司北京智能卡技术研究院 | Monitoring and managing method, the apparatus and system of the digital cash Transaction Information based on block chain |
| CN106779704A (en) * | 2016-12-06 | 2017-05-31 | 杭州趣链科技有限公司 | A kind of block chain anonymous deal method based on ring signatures |
| CN106790303A (en) * | 2017-03-23 | 2017-05-31 | 西安电子科技大学 | The data integrity verification method completed by third party in cloud storage |
-
2017
- 2017-06-26 CN CN201710495156.5A patent/CN107392603B/en active Active
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103548044A (en) * | 2011-03-07 | 2014-01-29 | R·吉奥瑞 | System and method for providing and transferring alternative electronic money |
| US20160260093A1 (en) * | 2015-03-04 | 2016-09-08 | Sizhe Tan | Micro trusted network |
| CN106548330A (en) * | 2016-10-27 | 2017-03-29 | 上海亿账通区块链科技有限公司 | Transaction verification method and system based on block chain |
| CN106779704A (en) * | 2016-12-06 | 2017-05-31 | 杭州趣链科技有限公司 | A kind of block chain anonymous deal method based on ring signatures |
| CN106651331A (en) * | 2016-12-22 | 2017-05-10 | 飞天诚信科技股份有限公司 | Digital currency-based electronic transaction method and system |
| CN106779707A (en) * | 2016-12-23 | 2017-05-31 | 中钞信用卡产业发展有限公司北京智能卡技术研究院 | Monitoring and managing method, the apparatus and system of the digital cash Transaction Information based on block chain |
| CN106790303A (en) * | 2017-03-23 | 2017-05-31 | 西安电子科技大学 | The data integrity verification method completed by third party in cloud storage |
Cited By (27)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2019118123A1 (en) * | 2017-12-13 | 2019-06-20 | Mastercard International Incorporated | Method and system for consumer-initiated transactions using encrypted tokens |
| US12093936B2 (en) | 2017-12-13 | 2024-09-17 | Mastercard International Incorporated | Method and system for consumer-initiated transactions using encrypted tokens |
| US11227284B2 (en) | 2017-12-13 | 2022-01-18 | Mastercard International Incorporated | Method and system for consumer-initiated transactions using encrypted tokens |
| CN108256999A (en) * | 2018-01-19 | 2018-07-06 | 阿里巴巴集团控股有限公司 | Fund transfer method and device, electronic equipment |
| CN108335106A (en) * | 2018-01-24 | 2018-07-27 | 深圳壹账通智能科技有限公司 | The more account books of Zero Knowledge based on block chain exchange transfer account method, device and storage medium |
| CN108648077B (en) * | 2018-04-24 | 2021-04-13 | 东莞市波动赢机器人科技有限公司 | Information digitalization processing method, electronic device and computer storage medium |
| CN108648077A (en) * | 2018-04-24 | 2018-10-12 | 东莞市波动赢机器人科技有限公司 | Information digitalization processing method, electronic device and computer storage medium |
| CN108805574B (en) * | 2018-05-19 | 2021-01-26 | 深圳市图灵奇点智能科技有限公司 | Transaction method and system based on privacy protection |
| CN108805574A (en) * | 2018-05-19 | 2018-11-13 | 深圳市图灵奇点智能科技有限公司 | Method of commerce based on secret protection and system |
| CN108985760B (en) * | 2018-06-15 | 2021-07-06 | 杭州复杂美科技有限公司 | Payment method and system, device and storage medium |
| CN108985760A (en) * | 2018-06-15 | 2018-12-11 | 杭州复杂美科技有限公司 | Method of payment and system, equipment and storage medium |
| US11379826B2 (en) | 2018-08-06 | 2022-07-05 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
| 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 |
| US11392942B2 (en) | 2018-08-30 | 2022-07-19 | 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 |
| US11050549B2 (en) | 2018-09-30 | 2021-06-29 | Advanced New Technologies Co., Ltd. | Blockchain-based transaction method and apparatus, and remitter device |
| US11481775B2 (en) | 2018-10-25 | 2022-10-25 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
| CN109377224A (en) * | 2018-10-25 | 2019-02-22 | 阿里巴巴集团控股有限公司 | Block chain method of commerce and device, electronic equipment |
| US11170374B2 (en) | 2018-10-25 | 2021-11-09 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
| CN109658216A (en) * | 2018-12-14 | 2019-04-19 | 深圳美图创新科技有限公司 | Block chain moneytary operations method and device |
| RU2721008C1 (en) * | 2018-12-29 | 2020-05-15 | Алибаба Груп Холдинг Лимитед | System and method for protecting information |
| US11416854B2 (en) | 2018-12-29 | 2022-08-16 | Advanced New Technologies Co., Ltd. | System and method for information protection |
| CN110992028A (en) * | 2019-10-14 | 2020-04-10 | 腾讯科技(深圳)有限公司 | Data processing method and device of sink-changing platform based on block chain network |
| CN110992028B (en) * | 2019-10-14 | 2021-08-10 | 腾讯科技(深圳)有限公司 | Data processing method and device of sink-changing platform based on block chain network |
| CN110766400A (en) * | 2019-10-22 | 2020-02-07 | 全链通有限公司 | Transaction record processing method based on block chain, accounting node and medium |
Also Published As
| Publication number | Publication date |
|---|---|
| CN107392603B (en) | 2021-03-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107358424A (en) | A kind of method of commerce and device based on digital cash | |
| CN107392603A (en) | Use the method for commerce and device of digital cash | |
| US12211037B2 (en) | Cryptocurrency infrastructure system | |
| CN110582793B (en) | Anonymity and traceability of digital property transactions on a distributed transaction consensus network | |
| TWI725124B (en) | Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys | |
| KR101964254B1 (en) | Person to person trading method and apparatus by using blockchain and distributed hash table | |
| US20190295069A1 (en) | Systems and methods for integrating cryptocurrency wallet identifiers with digital certificates | |
| TW202020710A (en) | System and method for information protection | |
| US20190108517A1 (en) | Digital currency for performing cash-equivalent transactions | |
| CN106779707A (en) | Monitoring and managing method, the apparatus and system of the digital cash Transaction Information based on block chain | |
| CN108352008A (en) | Secure Digital Data Operations | |
| JP2019511855A (en) | Personal Device Security Using Elliptic Curve Cryptography for Secret Sharing | |
| CN106897879A (en) | Block chain encryption method based on the PKI CLC close algorithms of isomerization polymerization label | |
| CN110599164B (en) | Supervision-capable quick payment method for any payee under chain | |
| Hashim | Blockchain technology, methodology behind it, and its most extensively used encryption techniques. | |
| CN113516462A (en) | Quantum cash settlement system and method based on block chain | |
| CN114565382B (en) | A transaction account anonymous payment method and system | |
| Kaushal | Bitcoin: first decentralized payment system | |
| Asmitha et al. | Decentralized User Wallet: Transforming Digital Banking with Blockchain | |
| US20230143356A1 (en) | Method and system for performing cryptocurrency asset transaction | |
| Faridi et al. | Improving spv-based cryptocurrency wallet | |
| Maram | Bitcoin generation using Blockchain technology | |
| Kowalski et al. | Bitcoin: cryptographic algorithms, security vulnerabilities and mitigations | |
| CN115689559A (en) | Digital wallet device and its dual offline transaction method | |
| US20240420126A1 (en) | System and method for providing secure transaction data access to trusted third parties |
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 |