Background
Abbreviations and key term definitions:
UTXO: unused Transaction Output.
Ring signature: ring signatures are a digital signature scheme, originally proposed by Rivest et al, which is a simplified group signature in which only ring members have no administrator and no cooperation between ring members is required.
Homomorphic encryption: homomorphic encryption is a cryptographic technique based on the theory of computational complexity of mathematical problems. The homomorphic encrypted data is processed to produce an output, which is decrypted, the result being the same as the output obtained by processing the unencrypted original data in the same way.
The following detailed description of the background art is provided:
1. background of the related Art (background of the invention)
With the development of the internet, the life style of people is greatly influenced, and most commodity transactions are carried out in a mode of network transfer payment. In conventional transfer payment transaction systems, when a transaction is made, the transaction is confirmed by a third party institution, and the asset is also stored in a database of the third party institution. This storage and transaction approach places high demands on the stability and security of third party institutions. On one hand, since the system is completely centralized and has only one central mechanism, the system needs to confirm all transactions in the system, and once a fault occurs, the whole system is paralyzed and cannot operate normally. On the other hand, an attacker and a manager can modify the database data, and the data recovery difficulty and the cost of the database are high. Therefore, the traditional transfer payment system depends on the trust and the safety of a third party, and certain potential safety hazards exist.
In 2008, NakamotoS published a paper about electronic cash systems, and the paper proposed bitcoin network. With the advent and development of cryptocurrency such as Bingpene, blockchain technology is slowly known, and more experts and scholars are beginning to research and explore blockchain related technologies and applications. The blockchain technique is generated by combining database techniques and various cryptographic techniques, including elliptic curve encryption, asymmetric key encryption mechanisms, hash algorithms, consensus algorithms, and the like. The blockchain may be regarded as a Distributed Shared Ledger (Distributed Shared Ledger), and the recording and storing of transaction information are jointly performed by all nodes in the blockchain network. That is, any node in the blockchain network can record the transaction information in the transaction block and write the transaction information into the blockchain after the transaction information passes the verification, instead of a completely centralized third-party organization completing the confirmation and recording of the transaction information; any node in the blockchain network may store all transaction information after the self-created block, rather than being centrally stored by a fully centralized third party. The transaction data of the block chain is stored according to the time sequence, and the adjacent transaction blocks are mutually connected through the cryptography technology, so that the formed block chain is credible and cannot be tampered.
The blockchain fundamentally solves the problem of relying on a third party in the transfer payment transaction, and modern cryptography which is proved to be safe by theory and practice is used. The method has higher safety and can protect the privacy of the identity of the user transaction to a certain extent. The distributed account book reduces the pressure of storing asset transaction information in the traditional database, and the stability of a block chain system is ensured through multi-node combined maintenance.
In the blockchain, accounts of the blockchain are commonly maintained by all nodes in the network, any node can participate in the generation of the block and connect the block to the blockchain, and even nodes which are not trusted mutually can verify transaction data in the block and achieve the agreement through a consensus mechanism. The account balance of the user can be checked in the blockchain, and the plaintext information is not encrypted, so that all nodes in the blockchain can obtain the public information. Meanwhile, when the user conducts the transfer payment transaction, the verification of the transaction needs to be participated by other nodes on the chain, so that the information such as the transaction amount in the block main body is also in the clear text. This results in the user's transaction privacy data being exposed on the blockchain, and it is clear that no one wishes to have his own privacy information revealed. For example, from the generation of the BiBingche System founded blocks to date, all transaction data in the system was roughly 190G. If the attacker analyzes and integrates the historical transaction data, all transaction information of any one designated account can be acquired. Even if the same user has a plurality of account addresses, the adversary can analyze which addresses belong to the same user with high probability through technologies such as clustering-based behavior analysis and the like. And since all transactions conducted with the corresponding account addresses can be found in the blockchain, if the transactions are associated with real identities, the identity information of the transactants in the transactions and the related transaction records can be revealed.
Therefore, on the basis of the blockchain technology, the characteristics of anonymity, distrust removal, non-tampering and the like of the blockchain are researched, and privacy protection is carried out on transaction data through a technical means, so that the blockchain technology can be more reasonably applied to the aspect of transfer payment transaction. Due to the fully decentralized nature of blockchain, which results in illegal transactions on the chain not being effectively supervised, the supervision of blockchain technology also needs to be studied from a technical level.
2. Prior art relating to the invention
2.1) technical solution of the prior art
Payment is the fundamental link in the circulation of funds. In the cross-border transfer and clearing field, the transaction has the problems of high cost, time consumption, safety and the like. With the development of the blockchain technology, underlying technology developers and traditional financial institutions pay attention to the blockchain, and whether the blockchain can play advantages in aspects of reducing settlement risks, improving payment efficiency, saving bank resources and the like is achieved, so that the existing transfer payment mode is improved. The characteristics of decentralization, distrust, collective maintenance, data transparency and the like of the block chain can be well combined with the financial field, particularly in the aspect of transfer payment transaction. The data of fund transfer is completely recorded on a digital classification book, and each transaction can be traced, so that the safety and reliability of the transaction are ensured; by using the block chain and distributed account book technology, an intermediate mechanism does not exist, the step of manual processing by bank staff does not exist, the transfer payment becomes point-to-point, and the processing time is directly reduced; canceling an intermediate mechanism to ensure that the transaction flows and the transaction information of payment and collection are transparent to both transaction parties; and no intermediate mechanism participates, so that the cost is reduced, and the operating efficiency of the system is improved.
2.2) evaluation of the disadvantages of the prior art
Existing blockchain techniques do not provide privacy protection well for users. Androuaki E et al evaluate the ability of traditional blockchain techniques to protect user privacy by simulating the trading of bitcoin, and experimental results show that 40% of users' true identities can be exposed through a behavior-based clustering method. There are two main reasons why user privacy is compromised. One is open transaction amount, transaction metadata and a whole network ledger, which allows an attacker to acquire a large amount of identity information about a user, and the other is obvious correlation characteristics between an account of a transaction initiator and an account of a transaction receiver in a transaction, so that the attacker can trace corresponding historical transactions.
Disclosure of Invention
The invention provides a private safe transfer payment method based on a manageable block chain, which comprises the following steps:
privacy protection of transaction amount: privacy protection is carried out on the transaction amount in the transaction;
transaction address protection: protecting the addresses of both parties of the transaction;
transaction supervision steps: the system comprises a central bank, three roles of an mintette and a user, wherein the mintette is authorized by the central bank to record transactions, a central bank can generate a public key for each mintette and regularly issues an authorized mintettes list to the whole system, each mintette maintains a low-level account book, direct or indirect communication is realized among the mintettes, the mintettes can send the low-level account books to the central bank in the process of regulation, so that a global account book is generated, and the global account book has visibility to the outside.
As a further improvement of the invention, in the privacy protection step of the transaction amount, a privacy protection algorithm based on homomorphic encryption is adopted: let x be1,y1,x2,y2Each represents P1Pre-transaction balance, P2Pre-transaction balance, P1Post-transaction balance and P2Post-transaction balance of), P)1And P2Respectively representing two institutions participating in the transfer transaction, there being currently two pairs of cryptograms (E)pk(x1),Epk(y1)),(Epk(x2),Epk(y2) The goal is to guarantee x1,y1,x2,y2While privacy is obtainedpk(x1+y1),Epk(x2+y2) And judges whether the two are equal.
As a further improvement of the invention, the transaction address protection step adopts a mixed currency algorithm based on a one-time hidden address, P
1Initiating a transaction to P
2Payment, P
1By analysis of P
2Wallet address of P
2The public key (a, B) of (a), wherein a ═ aG, B ═ bG; p
1Generating a random number r e [1, l-1 ∈ ]]And calculates a one-time public key P ═ H
s(rA)G+B;P
1Using P as the output destination address public key, and writing R-rG into the transaction block, and aiming at the same address, P
1Different one-time public key addresses, P, can be generated by selecting different random numbers r
1Will be provided with
And
writing the result into the transaction block; p
1Broadcasting the transaction all over the network; p
2Calculate P' ═ H using his private key (a, b)
s(aR) G + B when P is detected
1The transaction issued to him, P' ═ P since aR arG rA; p
2Calculating a disposable private key x H corresponding to the disposable public key P xG according to the private keys (a, b)
s(aR)+b;P
2Received P using its one-time public key
1Payment of (2); for other users in the system, the one-time public key address of the transaction is not related to the true identity of the user;
and
for supervision by a third-party supervision authority, the supervision party uses the sk when the current transaction needs to be reviewed
BCPCan be decrypted to obtain r and rA, combined with P ═ H
s(rA) G + B to obtain (A, B), namely the real address of the receiver;
g represents a base point of the elliptic curve, l represents a prime order of the base point, HsRepresenting an encrypted hash function 0,1*→FqAnd E represents an elliptic curve expression.
As a further improvement of the present invention, the transaction address protection step adopts a mixed currency algorithm based on revocable anonymity ring signature, which includes: (x, P) ← Gen (1)k) Gen is a polynomial time algorithm, k is a security parameter, a pair of keys (x, P) is output, x is a private key, P is a public key, and a key image I is obtained through calculation according to (x, P);
σ←Sig(1kx, L, m), Sig is a polynomial time algorithm, k is a security parameter, x is a private key, L is n user public key sets participating in ring signature, the user public key sets comprise public keys corresponding to x, m is a signed message, and the output is signature sigma;
1/0←Ver(1kl, m, σ), Ver is a polynomial time algorithm, k is a security parameter, L is a set of n user public keys participating in ring signature, m is a signed message, σ is a signature, output 1 indicates that the verification is passed, and output 0 indicates that the verification is not passed;
1/0←Lnk(1kk, σ), Lnk is a polynomial time algorithm, K is a security parameter, K is the set of all I generated by the history, σ is a signature, output 1 indicates that the signature is linked, and output 0 indicates that the signature is not linked;
1/0←Rev(1kσ, sk), Rev is a polynomial time algorithm, k is a security parameter, σ is a signature, sk is a private key in the hands of the supervisor, output 1 indicates that the signature is valid and the identity of the signer is confirmed, and output 0 indicates that the signature is invalid.
As a further improvement of the invention, in the transaction supervision step, the minsites are firstly divided into a plurality of groups, and the minsites of each group only maintain the account book content in the jurisdiction area; when a user initiates a transaction, the system delivers corresponding mintes to process according to corresponding rules; the information exchange between the end user and the central bank does not take place directly, but the transaction records are summarized through this mintettes middle layer; the central bank plays a vital role in the system, and has unique supervision and audit authority on the global account book when transaction disputes or illegal transactions occur; in the transaction in each mintette jurisdiction range, if the transaction flow is according to a previously designed transfer payment transaction scheme, the verification and confirmation of the user transfer payment transaction are completed by other users in the system, the mintette does not independently verify and record the transaction, but plays a role in bottom layer supervision, and sends a low-layer ledger to a central bank in a specific time period; the transactions in different mintette areas are not interfered with each other, each mintette can only decrypt the transaction data in the jurisdiction area, and the central bank has the highest supervision right and can decrypt any transaction data.
The invention also provides a private safe transfer payment system based on the supervisor block chain, which comprises:
privacy protection module of transaction amount: the system is used for privacy protection of transaction amount in the transaction;
the transaction address protection module: the system is used for protecting the addresses of both transaction parties;
the transaction supervision module: the system comprises a central bank, three roles of an mintette and a user, wherein the mintette is authorized by the central bank to record transactions, a central bank can generate a public key for each mintette and regularly issues an authorized mintettes list to the whole system, each mintette maintains a low-level account book, direct or indirect communication is realized among the mintettes, the mintettes can send the low-level account books to the central bank in the process of regulation, so that a global account book is generated, and the global account book has visibility to the outside.
As a further improvement of the invention, in the privacy protection module of the transaction amount, a privacy protection algorithm based on homomorphic encryption is adopted: let x be1,y1,x2,y2Each represents P1Pre-transaction balance, P2Pre-transaction balance, P1Post-transaction balance and P2Post-transaction balance of), P)1And P2Respectively representing two institutions participating in the transfer transaction, there being currently two pairs of cryptograms (E)pk(x1),Epk(y1)),(Epk(x2),Epk(y2) The goal is to guarantee x1,y1,x2,y2While privacy is obtainedpk(x1+y1),Epk(x2+y2) And judges whether the two are equal.
As a further improvement of the invention, in the transaction supervision module, the minutes are firstly divided into a plurality of groups, and the minutes of each group only maintain the account book content in the jurisdiction area; when a user initiates a transaction, the system delivers corresponding mintes to process according to corresponding rules; the information exchange between the end user and the central bank does not take place directly, but the transaction records are summarized through this mintettes middle layer; the central bank plays a vital role in the system, and has unique supervision and audit authority on the global account book when transaction disputes or illegal transactions occur; in the transaction in each mintette jurisdiction range, if the transaction flow is according to a previously designed transfer payment transaction scheme, the verification and confirmation of the user transfer payment transaction are completed by other users in the system, the mintette does not independently verify and record the transaction, but plays a role in bottom layer supervision, and sends a low-layer ledger to a central bank in a specific time period; the transactions in different mintette areas are not interfered with each other, each mintette can only decrypt the transaction data in the jurisdiction area, and the central bank has the highest supervision right and can decrypt any transaction data.
The invention also provides a private safe transfer payment device based on the supervisor block chain, which comprises: memory, a processor, and a computer program stored on the memory, the computer program configured to implement the steps of the private secure transfer payment method of the present invention when invoked by the processor.
The present invention also provides a computer readable storage medium having stored thereon a computer program configured to, when invoked by a processor, perform the steps of the private secure transfer payment method of the present invention.
The invention has the beneficial effects that: the invention solves the problem that the traditional transfer payment scheme excessively depends on a third party mechanism; defining privacy information to be protected in the transaction, and designing a corresponding privacy protection scheme aiming at the transaction amount in a transaction block, the transaction balance of both transaction parties, the address information of a transaction initiator and the address information of a transaction receiver; a block chain user supervision system is established, and a supervisor can reserve the responsibility of researching both parties of buying and selling on the block chain.
Detailed Description
The invention discloses a private safe transfer payment method based on a monitorable block chain, which is specifically explained as follows:
brief description of the technical principles:
in the transfer payment transaction scenario, assume that the participant has P1,P2,P3Three institutions and a supervisor S, as shown in fig. 1. When P is present1To P2A transaction is made with a transfer amount x, then the account T ═ P1,P2X) will be broadcast in the network, P1,P2,P3T transactions are received. However, the transaction is only P1,P2Transaction between, and P3Has no relation, therefore P3The actual content of the transaction should not be known. But P is3It is still necessary to record the transaction, ensure the ledger record and P1,P2The account book is consistent.
(1) At the moment of unknown P1,P2In the case of address information and transaction contents, P3The legitimacy of the transfer may be confirmed. Here, legitimacy has two implications: p1The method can prove that the user owns one asset, the asset is abstracted to an asset identifier corresponding to a certain specific and globally unique ID, and the asset identifier is still invisible and hidden for others; p1The assets can be proved to be legal in the network, namely, the assets have uniqueness and are not used, P1A proof needs to be provided.
(2) At the moment of unknown P1,P2In the case of inter-transaction amounts, P3The fund transaction settlement of the account book can be carried out, and the accounting balance is confirmed. According to accounting rules, P1And P2After the transaction, the balance totals of the assets (e.g., deposits) in hand are equal. That is, the following equation holds:
P1(Pre-transaction balance) + P2(Pre-trade balance) P1(post-transaction balance) + P2(post-transaction balance)
(3) And the supervisor party S can decrypt all encrypted transaction data and perform supervision and audit on each transaction.
1. The invention is directed to transaction amountsThe disclosed problem is to provide a privacy protection algorithm based on homomorphic encryption, and the validity of the transaction can be verified under the condition of protecting transaction data by utilizing homomorphic characteristics of the algorithm. Specifically, assume x1,y1,x2,y2Each represents P1(Pre-transaction balance), P2(Pre-transaction balance), P1(post-transaction balance) and P2(post-transaction balance). There are currently two pairs of ciphertext (E)pk(x1),Epk(y1)),(Epk(x2),Epk(y2) The goal is to guarantee x1,y1,x2,y2While privacy is obtainedpk(x1+y1),Epk(x2+y2) And judges whether the two are equal.
2. Aiming at the problem of address disclosure of two parties of a transaction, the invention provides a mixed currency algorithm based on a one-time hidden address and a mixed currency algorithm based on a revocable anonymous ring signature on the basis of a CryptoNote protocol, and the address of a transaction initiator can be effectively protected by utilizing the characteristic of the ring signature, and meanwhile, a signer needs to encrypt a private key to participate in the construction of the signature, thereby guaranteeing the revocation of the anonymity under special conditions.
Based on the mixed currency algorithm of the one-time hidden address, in the process of generating the one-time public key, EdDSA is selected as the digital signature algorithm of the scheme, and the meanings of relevant parameters are shown in Table 1.
TABLE 1 EdDSA related parameters and meanings
1)P1Initiating a transaction to P2And (6) payment. P1By analysis of P2Wallet address of P2The public key (a, B) of (a), wherein a ═ aG, B ═ bG;
2)P1generating a random number r e [1, l-1 ∈ ]]And calculates a one-time public key P ═ Hs(rA)G+B;
3)P
1Using P as outputAnd writing R-rG into the transaction block. Here, P is for the same address
1Different one-time public key addresses can be generated by choosing different random numbers r. Furthermore, to ensure effective supervision of the transaction, P
1Need to be provided with
And
writing the result into the transaction block;
4)P1broadcasting the transaction all over the network;
5)P2calculate P' ═ H using his private key (a, b)s(aR) G + B when P is detected1The transaction issued to him, P' ═ P since aR arG rA;
6)P2the private key (a, b) may be used to calculate a private key x ═ H corresponding to public one-time key P ═ xGs(aR) + b, which also means that he has the right to own and use the money.
FIG. 2 is a diagram of a standard transaction structure, to which, P
2Received P using its one-time public key
1The payment of (2). The one-time public key address of the transaction is not associated with the user's true identity to other users in the system.
And
for supervision by a third-party supervision authority, the supervision party uses the sk when the current transaction needs to be reviewed
BCPCan be decrypted to obtain r and rA, combined with P ═ H
s(rA) G + B in turn gets (A, B), the real address of the recipient.
The use of ring signatures is to hide the connection between user input and output addresses (untraceability). With ring signatures, a user can sign a message anonymously, and others can verify the signature without knowing which member of the ring the signature was signed by. Although ring signatures guarantee the anonymity of the users, they present another problem, how to prevent "double spending", which prevents the sender from sending the same money to different recipients. We can improve the traditional ring signature to have linkability, that is, if the user creates multiple ring signatures using the same private key of the user (the public keys of other users in the ring signatures can be arbitrarily selected), the signatures will be linked together, which represents that the user has double cost for an asset.
To make ring signatures linkable, we introduce the concept of key mirroring, which is a special label that the user generates when creating ring signatures. The private key and the public key of the user are subjected to one-way hash operation by a certain rule to obtain a value, namely the key image. Unidirectional here means that an attacker cannot reverse derive the user's private key simply by key mirroring and other public information. The key image can be regarded as an anonymous mark of the private key of the signer, all users keep the key images generated in all historical transactions in the system, and when the validity of the ring signature is verified, if the key images are already present in the historical key image library, the new ring signature is rejected whether the new ring signature is verified or not.
In the following, a mixed currency scheme is designed by using the characteristic of the ring signature, and the anonymity of the block chain is enhanced by hiding the transaction address of the user. The safety model of the scheme comprises the following five algorithms:
1)(x,P)←Gen(1k) Gen is a polynomial time algorithm, k is a security parameter; and outputting a pair of secret keys (x, P), wherein x is a private key, P is a public key, and I is obtained by calculation according to (x, P).
2)σ←Sig(1kX, L, m) Sig is a polynomial time algorithm, k is a security parameter, x is a private key, L is n user public key sets (including public keys corresponding to x) participating in ring signature, and m is a signed message; the output is the signature σ.
3)1/0←Ver(1kL, m, σ) Ver is a polynomial time algorithm, k is a security parameter, L is a set of n user public keys participating in ring signature, m is a signed message, and σ is a signature; output 1 represents verificationAn output of 0 indicates that the verification failed.
4)1/0←Lnk(1kK, σ) Lnk is a polynomial time algorithm, K is a security parameter, K is the set of all I generated historically, σ is a signature; output 1 indicates that the signature is linked and output 0 indicates that the signature is not linked.
5)1/0←Rev(1kσ, sk) Rev is a polynomial time algorithm, k is a security parameter, σ is a signature, sk is a private key in the hands of a supervisor; an output of 1 indicates that the signature is valid and the identity of the signer is confirmed, and an output of 0 indicates that the signature is invalid.
3. The invention provides a scheme of a two-stage supervision architecture aiming at the problem of transaction supervision on a block chain, and a supervisor can reserve the responsibility of pursuing buyers and sellers on the block chain.
The system comprises three roles, namely a central bank, a mintette and a user. At first sight mintette and miners look like they are both to confirm the occurrence of the transaction and then to bill. However, the most critical point is that mintette does not solve the computational difficulty problem, but is authorized by the central bank to record the transaction. The authorization is completed by PK public key encryption, and the central bank generates a public key for each mintette and periodically issues an authorized mintettes list to the whole system. Each mintette maintains a low-level ledger, with direct or indirect communication between mintettes. At a specific time, minsites can send the low-level accounts to a central bank, so that a global account is generated, and the global account has visibility to the outside.
FIG. 3 is a diagram of a two-level supervisory architecture, wherein the system utilizes multi-thread design to improve the processing power of the system. Firstly, the mintettes are divided into a plurality of groups, and the mintettes of each group only maintain the account book content in the jurisdiction area. When a user initiates a transaction, the system is processed by corresponding minutes according to corresponding rules, so that the operating efficiency of the system can be greatly improved. The exchange of information between the end user and the central bank does not take place directly, but the transaction records are aggregated through this mintettes middle layer. The central bank plays a vital role in the system, and has unique supervision and audit authority on the global account book when transaction disputes or illegal transactions occur.
In the transaction in each mintette jurisdiction, if the transaction flow is according to the previously designed transfer payment transaction scheme, the verification and confirmation of the user transfer payment transaction are completed by other users in the system, the mintette does not verify and record the transaction independently, but plays a bottom layer supervision role, and sends a low-layer ledger to a central bank in a specific time period. The transactions in different mintette areas are not interfered with each other, each mintette can only decrypt the transaction data in the jurisdiction area, and the central bank has the highest supervision right and can decrypt any transaction data.
For the privacy protection step of the transaction amount, a zero-knowledge proof scheme with better privacy protection effect can be used for privacy protection of the transaction amount in the transaction, but the performance of the system can be reduced.
For the transaction address protection step of the present invention, other mixed currency schemes, such as a Mixcoin protocol, a coin shuffle protocol, a coin protocol, etc., may also be adopted for the protection of the addresses of both parties to the transaction.
The invention also discloses a private safe transfer payment system based on the supervisor block chain, which comprises:
privacy protection module of transaction amount: the system is used for privacy protection of transaction amount in the transaction;
the transaction address protection module: the system is used for protecting the addresses of both transaction parties;
the transaction supervision module: the system comprises a central bank, three roles of an mintette and a user, wherein the mintette is authorized by the central bank to record transactions, a central bank can generate a public key for each mintette and regularly issues an authorized mintettes list to the whole system, each mintette maintains a low-level account book, direct or indirect communication is realized among the mintettes, the mintettes can send the low-level account books to the central bank in the process of regulation, so that a global account book is generated, and the global account book has visibility to the outside.
In the amount of the transactionIn the privacy protection module, a privacy protection algorithm based on homomorphic encryption is adopted: let x be1,y1,x2,y2Each represents P1Pre-transaction balance, P2Pre-transaction balance, P1Post-transaction balance and P2Post-transaction balance of), P)1And P2Respectively representing two institutions participating in the transfer transaction, there being currently two pairs of cryptograms (E)pk(x1),Epk(y1)),(Epk(x2),Epk(y2) The goal is to guarantee x1,y1,x2,y2While privacy is obtainedpk(x1+y1),Epk(x2+y2) And judges whether the two are equal.
The transaction address protection module adopts a mixed currency algorithm based on a one-time hidden address, P
1Initiating a transaction to P
2Payment, P
1By analysis of P
2Wallet address of P
2The public key (a, B) of (a), wherein a ═ aG, B ═ bG; p
1Generating a random number r e [1, l-1 ∈ ]]And calculates a one-time public key P ═ H
s(rA)G+B;P
1Using P as the output destination address public key, and writing R-rG into the transaction block, and aiming at the same address, P
1By selecting different random numbers
rGenerating different one-time public key addresses, P
1Will be provided with
And
writing the result into the transaction block; p
1Broadcasting the transaction all over the network; p
2Calculate P' ═ H using his private key (a, b)
s(aR) G + B when P is detected
1The transaction issued to him, P' ═ P since aR arG rA; p
2Calculating a disposable private key x H corresponding to the disposable public key P xG according to the private keys (a, b)
s(aR)+b;P
2Received P using its one-time public key
1Payment of (2); for in the systemFor other users, the one-time public key address of the transaction is not related to the real identity of the user;
and
for supervision by a third-party supervision authority, the supervision party uses the sk when the current transaction needs to be reviewed
BCPCan be decrypted to obtain r and rA, combined with P ═ H
s(rA) G + B to obtain (A, B), namely the real address of the receiver;
g represents a base point of the elliptic curve, l represents a prime order of the base point, HsRepresenting an encrypted hash function 0,1*→FqAnd E represents an elliptic curve expression.
The transaction address protection module adopts a mixed currency algorithm based on a revocable anonymity ring signature, and comprises the following steps: (x, P) ← Gen (1)k) Gen is a polynomial time algorithm, k is a security parameter, a pair of keys (x, P) is output, x is a private key, P is a public key, and a key image I is obtained through calculation according to (x, P);
σ←Sig(1kx, L, m), Sig is a polynomial time algorithm, k is a security parameter, x is a private key, L is n user public key sets participating in ring signature, the user public key sets comprise public keys corresponding to x, m is a signed message, and the output is signature sigma;
1/0←Ver(1kl, m, σ), Ver is a polynomial time algorithm, k is a security parameter, L is a set of n user public keys participating in ring signature, m is a signed message, σ is a signature, output 1 indicates that the verification is passed, and output 0 indicates that the verification is not passed;
1/0←Lnk(1kk, σ), Lnk is a polynomial time algorithm, K is a security parameter, K is the set of all I generated by the history, σ is a signature, output 1 indicates that the signature is linked, and output 0 indicates that the signature is not linked;
1/0←Rev(1kσ, sk), Rev is a polynomial time algorithm, k is a security parameter, σ is a signature, sk is a supervisorThe private key in the hand, output 1 indicates that the signature is valid and the identity of the signer is confirmed, and output 0 indicates that the signature is invalid.
In the transaction supervision module, firstly, minutes are divided into a plurality of groups, and the minutes of each group only maintain the account book content in the jurisdiction area of the group; when a user initiates a transaction, the system delivers corresponding mintes to process according to corresponding rules; the information exchange between the end user and the central bank does not take place directly, but the transaction records are summarized through this mintettes middle layer; the central bank plays a vital role in the system, and has unique supervision and audit authority on the global account book when transaction disputes or illegal transactions occur; in the transaction in each mintette jurisdiction range, if the transaction flow is according to a previously designed transfer payment transaction scheme, the verification and confirmation of the user transfer payment transaction are completed by other users in the system, the mintette does not independently verify and record the transaction, but plays a role in bottom layer supervision, and sends a low-layer ledger to a central bank in a specific time period; the transactions in different mintette areas are not interfered with each other, each mintette can only decrypt the transaction data in the jurisdiction area, and the central bank has the highest supervision right and can decrypt any transaction data.
The invention also discloses a private safe transfer payment device based on the supervisor block chain, which comprises: memory, a processor, and a computer program stored on the memory, the computer program configured to, when invoked by the processor, perform the steps of the private secure transfer payment method of the present invention.
The invention also discloses a computer readable storage medium storing a computer program configured to, when invoked by a processor, perform the steps of the private secure transfer payment method of the invention.
The invention has the beneficial effects that: the invention solves the problem that the traditional transfer payment scheme excessively depends on a third party mechanism; defining privacy information to be protected in the transaction, and designing a corresponding privacy protection scheme aiming at the transaction amount in a transaction block, the transaction balance of both transaction parties, the address information of a transaction initiator and the address information of a transaction receiver; a block chain user supervision system is established, and a supervisor can reserve the responsibility of researching both parties of buying and selling on the block chain.
The foregoing is a more detailed description of the invention in connection with specific preferred embodiments and it is not intended that the invention be limited to these specific details. For those skilled in the art to which the invention pertains, several simple deductions or substitutions can be made without departing from the spirit of the invention, and all shall be considered as belonging to the protection scope of the invention.