CN112990928A - Monitorable anonymous legal digital currency issuing and circulating method - Google Patents

Monitorable anonymous legal digital currency issuing and circulating method Download PDF

Info

Publication number
CN112990928A
CN112990928A CN202110502915.2A CN202110502915A CN112990928A CN 112990928 A CN112990928 A CN 112990928A CN 202110502915 A CN202110502915 A CN 202110502915A CN 112990928 A CN112990928 A CN 112990928A
Authority
CN
China
Prior art keywords
transaction
amount
tracking
key
initiator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110502915.2A
Other languages
Chinese (zh)
Other versions
CN112990928B (en
Inventor
苏明
许佳佳
杨颖�
王刚
刘晓光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nankai University
Original Assignee
Nankai University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nankai University filed Critical Nankai University
Priority to CN202110502915.2A priority Critical patent/CN112990928B/en
Publication of CN112990928A publication Critical patent/CN112990928A/en
Application granted granted Critical
Publication of CN112990928B publication Critical patent/CN112990928B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, 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/401Transaction verification
    • G06Q20/4014Identity check for transactions

Abstract

The invention discloses a supervised anonymous legal digital currency issuing and circulating method, wherein the currency issuing transaction and circulating transaction are recorded in a table format distributed account book, each row of the account book represents a system participant, each row represents a transaction message, and the system participant comprises: the central bank, commercial bank, general user; when a transaction is initiated, the following is recorded in its corresponding column: pedersen commitments to transaction amounts, commitments to account balances, scope attestation, tracking keys, and tracking key attestation; and during transaction, verifying whether the sum of all transaction amounts which are promised to be hidden in each transaction is 0, and verifying whether the scope certification and the tracking key certification which are created by the transaction initiator are correct.

Description

Monitorable anonymous legal digital currency issuing and circulating method
Technical Field
The invention belongs to the technical field of digital currency, and particularly relates to a supervised anonymous legal digital currency issuing and circulating method.
Background
With the development of modern technology, electronic payment mode has gradually become an important payment means in people's life, and the use scene of traditional paper currency has gradually shriveled due to lack of portability. Secondly, the printing, issuing and circulating links of the paper money are high in cost. In addition, the traditional paper money is easy to forge, the identity of a currency owner cannot be confirmed, supervision is difficult, and the risk of being used for money laundering, terrorist financing and the like exists. Thus, in today's highly digital age, it has been a trend to implement monitorable anonymous digital currency.
Today, digital currencies are largely divided into three categories, centralized digital currency, decentralized digital currency, and legal digital currency. Among them, a typical representative of centralized digital currency is the E-Cash scheme proposed by Chaum, which is a trusted "bank-person-merchant" based cryptographic digital currency model proposed in 1982, which is considered to be the earliest cryptographic digital currency system. In the model, the transaction of the individual and the merchant depends on an authoritative centralized institution bank, and the bank cannot acquire the transaction information by using the blind signature technology, so that the anonymity and privacy of both transaction parties are ensured, but the scheme is difficult to realize currency tracking. Later, although the E-Cash scheme proposed by Jules realizes the tracking of anonymous currency by introducing a trusted authority, the scheme requires the bank to participate in the currency circulation, and cannot complete large-scale transactions.
A typical representation of decentralized digital currency is Bitcoin, the first fully decentralized encrypted digital currency system proposed by Satoshi Nakamoto in 2008. In the scheme, the issuing and circulation of the digital currency are independent of any centralized mechanism of a third party, transaction information is stored in a distributed account book called a block chain, and the account book is commonly maintained by nodes in a P2P network by means of technologies such as cryptography, distributed account book storage technology, P2P consensus and the like. Although bitjoin uses a pseudonym, it cannot be guaranteed that private information of the user is not leaked. A large number of decentralized encrypted digital currency systems such as Monero, Zerocoin and Zerocash are proposed later on the basis of the Bitcoin idea, but the schemes are difficult to realize currency supervision, the currency value fluctuates severely, and the currency is difficult to maintain stable.
Unlike the two kinds of digital currencies, the legal digital currency takes the national credit as endorsement, and the issuance of the currency is regulated by the central line, so the legal digital currency can maintain the stability of the currency economic system. Currently, many countries are taking active attitudes towards studying legal digital currency. Although the legal digital currency takes national credit as endorsement and the issuance of the currency is controlled by the central row, the client-server architecture of the public-to-central row is not suitable for the technical application, otherwise, a single point of failure occurs and the currency is easy to attack by an attacker, thereby causing disastrous results. The blockchain is used as a distributed storage technology, the distributed ledger is commonly maintained by each node in the P2P network, and has the characteristics of non-tampering, public verifiability and the like, so that compared with a client-server architecture, the blockchain has better transparency and stability. However, while the data is publicly verifiable, the privacy information of the user is difficult to be protected, so how to construct a block chain-based legal digital currency system which can protect the privacy of the user and realize supervision is necessary.
Disclosure of Invention
The invention aims to solve the following technical problems:
1. how to protect the privacy of the transaction of the system participants from being divulged, namely, the identity of the transaction participants and the transaction amount need to be hidden, and the transaction is guaranteed not to be tracked by other system participants at the center.
2. The method is used for verifying the validity of the transaction on line under the conditions that the identity of a transaction participant is hidden and the transaction amount is in a secret state.
3. When illegal criminal behaviors such as money laundering or terrorist financing occur, the central bank has a certain checking means to track related transaction information.
4. On the premise of realizing anonymous traceability, the throughput rate of the system is improved as much as possible, and the redundancy of the account book storage is reduced as much as possible.
Therefore, the invention provides a supervised anonymous legal digital currency issuing and circulating method.
The invention is realized by the following technical scheme:
a method for issuing and circulating monitorable anonymous legal digital currency,
the currency issuing transaction and the circulation transaction are recorded in a tabular distributed book, each column of the book represents a system participant, each row represents a transaction message, and the system participant comprises: the central bank, commercial bank, general user;
after initiating a transaction
Figure 504971DEST_PATH_IMAGE001
At first, the transaction initiator randomly selects a reservoir algorithm
Figure 422111DEST_PATH_IMAGE002
A non-trading participant forming a member set together with the trading participant
Figure 998586DEST_PATH_IMAGE003
(ii) a And then for each member
Figure 393795DEST_PATH_IMAGE004
The following is recorded in its corresponding column: (1) pedersen commitments to transaction amounts
Figure 208167DEST_PATH_IMAGE005
And (2) commitments to account balances
Figure 358526DEST_PATH_IMAGE006
(3) a range attestation, (4) a tracking key, and (5) a tracking key attestation; wherein the content of the first and second substances,
Figure 625559DEST_PATH_IMAGE007
is a member of
Figure 824460DEST_PATH_IMAGE008
One transaction of
Figure 493338DEST_PATH_IMAGE001
The amount of the transaction in (1) is,
Figure 549019DEST_PATH_IMAGE009
is a random value that is not disclosed, as is the Pedersen commitment to the transaction amount
Figure 303348DEST_PATH_IMAGE005
In
Figure 40360DEST_PATH_IMAGE007
Acceptance of account balance at > 0
Figure 626062DEST_PATH_IMAGE006
Is to use a new random value
Figure 55907DEST_PATH_IMAGE010
To pair
Figure 297532DEST_PATH_IMAGE007
Another Pedersen commitment is made, the amount parameter is
Figure 634973DEST_PATH_IMAGE011
(ii) a Pedersen commitments as transaction amount
Figure 278444DEST_PATH_IMAGE005
In
Figure 613610DEST_PATH_IMAGE007
Below 0, commitment of account balance
Figure 404848DEST_PATH_IMAGE006
Is to calculate
Figure 483663DEST_PATH_IMAGE008
Pedersen commitment sum of all current transactions of the column, this time the fundVolume parameter
Figure 981640DEST_PATH_IMAGE012
Figure 753287DEST_PATH_IMAGE013
TxID of the current transaction, wherein TxID represents transaction ID;
and (3) verifying the validity of the transaction during the transaction: (1) verifying whether the sum of all transaction amounts promised to be hidden in each transaction is 0; (2) and verifying whether the scope certificate and the tracking key certificate created by the transaction initiator are correct.
In the technical scheme, the transactions include three types, namely, a money transaction issued by a central bank to a commercial bank, a transaction in which the commercial bank exchanges digital money for common users, and a transfer transaction between the common users, wherein the three types of transactions are recorded in the table format distributed account book in the same format.
In the above technical solution, the Pedersen commitment to the transaction amount
Figure 766243DEST_PATH_IMAGE005
Is calculated as member of
Figure 648748DEST_PATH_IMAGE008
Is a transaction
Figure 1232DEST_PATH_IMAGE001
The sender of (2), the transaction amount
Figure 6097DEST_PATH_IMAGE007
Is a negative value; if member
Figure 444032DEST_PATH_IMAGE008
Is a transaction
Figure 864649DEST_PATH_IMAGE001
The recipient of (2), the transaction amount
Figure 399535DEST_PATH_IMAGE007
Is a positive value; if becomePersonnel
Figure 512985DEST_PATH_IMAGE008
Is not a transaction
Figure 438215DEST_PATH_IMAGE001
The participant of (2), the transaction amount
Figure 724840DEST_PATH_IMAGE007
Is 0.
In the above technical solution, the scope certification is a commitment to certify the balance of the account
Figure 786337DEST_PATH_IMAGE006
Amount of money parameter of
Figure 70688DEST_PATH_IMAGE014
If the value of (a) is within the set range, then proving that the participant in the transaction did not create or destroy an asset by default, the total amount of digital currency currently exchanged by the commercial bank is within the range of the amount specified by the central bank, and the balance of the digital currency exporter is sufficient to complete the transfer transaction.
In the technical scheme, when a central row serving as a supervisor supervises a transaction, a tracking key calculated by a Bit traceable Bulletprofo zero knowledge range proof cryptographic algorithm and a supervision trapdoor owned by the central row track a specific value of a transaction amount concealed by using Pedersen commitment, so that related transaction behaviors are tracked;
the Bit traceable Bulletprof zero knowledge range proof cryptographic algorithm comprises the following steps:
the method comprises the following steps:
generating parameters, performing at system initialization, inputting security parameters
Figure 545532DEST_PATH_IMAGE015
And supervisor generated supervision trapdoors
Figure 573530DEST_PATH_IMAGE016
Outputting public parameters
Figure 755113DEST_PATH_IMAGE017
The details are as follows:
(1) system randomly selecting generator
Figure 944786DEST_PATH_IMAGE018
…,
Figure 906926DEST_PATH_IMAGE019
(2) Supervisor-generated trapdoor (
Figure 473036DEST_PATH_IMAGE020
Figure 774705DEST_PATH_IMAGE021
Figure 197596DEST_PATH_IMAGE022
Calculating
Figure 584715DEST_PATH_IMAGE023
(3) System disclosure parameter
Figure 954516DEST_PATH_IMAGE024
Wherein
Figure 907429DEST_PATH_IMAGE025
Figure 704483DEST_PATH_IMAGE026
Is a large prime number, group
Figure 313319DEST_PATH_IMAGE027
The order of (1);
step two:
generating a certified algorithm, executed by a transaction initiator when creating a transaction, inputting a transaction amount and an amount range to be certified by the algorithm, and outputting a range certification, a tracking key and a tracking key certification; the transaction initiator performs the following steps to calculate the proof under each member correspondence column:
(1) for transaction amount
Figure 549129DEST_PATH_IMAGE028
The transaction initiator selects a random number
Figure 559810DEST_PATH_IMAGE029
Calculating the transaction amount
Figure 527766DEST_PATH_IMAGE030
Promise of (1)
Figure 686215DEST_PATH_IMAGE031
Figure 397819DEST_PATH_IMAGE032
(2) The transaction initiator will exchange the transaction amount
Figure 263007DEST_PATH_IMAGE030
Bit-by-bit partitioning:
Figure 464181DEST_PATH_IMAGE033
Figure 47609DEST_PATH_IMAGE034
,
Figure 297325DEST_PATH_IMAGE035
Figure 344915DEST_PATH_IMAGE036
indicating an amount of money
Figure 654674DEST_PATH_IMAGE030
Is represented by a binary vector of (a),
Figure 725398DEST_PATH_IMAGE037
vector is composed of
Figure 778805DEST_PATH_IMAGE036
Vector press upInducing generation of a rule defined by the formula;
(3) random number is randomly selected by transaction initiator
Figure 680901DEST_PATH_IMAGE038
For the amount of the transaction
Figure 161561DEST_PATH_IMAGE030
Is committed to
Figure 454002DEST_PATH_IMAGE039
Figure 373417DEST_PATH_IMAGE040
(4) Random number selection by transaction initiator
Figure 67703DEST_PATH_IMAGE041
To blind vector
Figure 719265DEST_PATH_IMAGE042
Make a commitment to obtain
Figure 826898DEST_PATH_IMAGE043
Figure 222107DEST_PATH_IMAGE044
(5) Random number for a challenge sent by a transaction verifier
Figure 770900DEST_PATH_IMAGE045
Making inner product proof for transaction initiator and transaction initiator to generate proof
Figure 921259DEST_PATH_IMAGE046
Wherein:
Figure 188292DEST_PATH_IMAGE047
,
Figure 387192DEST_PATH_IMAGE048
Figure 852809DEST_PATH_IMAGE049
Figure 111752DEST_PATH_IMAGE050
wherein
Figure 866081DEST_PATH_IMAGE051
Wherein
Figure 665410DEST_PATH_IMAGE052
Figure 188795DEST_PATH_IMAGE053
Figure 618639DEST_PATH_IMAGE054
Here, the
Figure 594686DEST_PATH_IMAGE055
,
Figure 197705DEST_PATH_IMAGE056
,
Figure 841176DEST_PATH_IMAGE057
The representation is defined in
Figure 176343DEST_PATH_IMAGE058
An n-dimensional vector of (a);
(6) random number selection by transaction initiator
Figure 967581DEST_PATH_IMAGE059
Generating a proof
Figure 46396DEST_PATH_IMAGE060
To a verifier, wherein:
Figure 544373DEST_PATH_IMAGE061
,
Figure 112758DEST_PATH_IMAGE062
Figure 328975DEST_PATH_IMAGE063
(7) the transaction initiator will commit
Figure 211481DEST_PATH_IMAGE064
And prove that
Figure 626281DEST_PATH_IMAGE065
Sending to a transaction verifier;
(8) transaction initiator adding tracking key to each bit of money
Figure 568830DEST_PATH_IMAGE066
And
Figure 6764DEST_PATH_IMAGE067
and giving a tracing key certificate for all tracing keys
Figure 427381DEST_PATH_IMAGE068
Tracking the key:
Figure 962268DEST_PATH_IMAGE069
tracing key certification:
Figure 810138DEST_PATH_IMAGE070
(9) transaction initiator in transaction
Figure 735369DEST_PATH_IMAGE001
Each of (1)Member
Figure 21994DEST_PATH_IMAGE004
Corresponding to the following write Range certificate
Figure 349070DEST_PATH_IMAGE071
Figure 633421DEST_PATH_IMAGE072
) Tracking a key
Figure 108264DEST_PATH_IMAGE073
And
Figure 870684DEST_PATH_IMAGE074
and tracing key attestation
Figure 52267DEST_PATH_IMAGE075
To build a transaction;
step three:
the algorithm of the verification certification is executed by the transaction verifier, and whether the range certification and the tracking key certification generated by the transaction initiator during the transaction creation are correct or not is verified; inputting public parameters
Figure 569836DEST_PATH_IMAGE076
And range certification and tracking key certification, wherein output 1 represents that certification verification is passed, and output 0 represents that certification verification is not passed; for transactions
Figure 469658DEST_PATH_IMAGE001
Each member of
Figure 35769DEST_PATH_IMAGE008
The following steps are performed by the transaction verifier:
(1) verifier computation
Figure 134175DEST_PATH_IMAGE077
(2) Verifier computation
Figure 760328DEST_PATH_IMAGE078
(3) Verifier computation
Figure 147447DEST_PATH_IMAGE079
(4) Verifier computation
Figure 313987DEST_PATH_IMAGE080
(5) The verifier verifies whether the following equation is true, if true, the verification is passed, otherwise the verification is not passed:
Figure 470161DEST_PATH_IMAGE081
Figure 267216DEST_PATH_IMAGE082
Figure 938369DEST_PATH_IMAGE083
(6) verifier verification tracking key attestation
Figure 111861DEST_PATH_IMAGE075
Judging the legitimacy of
Figure 122543DEST_PATH_IMAGE084
If the equation is true, the verification is passed, otherwise the verification is not passed, and the proof of the equation is as follows:
Figure 90499DEST_PATH_IMAGE085
Figure 272385DEST_PATH_IMAGE086
Figure 718410DEST_PATH_IMAGE087
Figure 849177DEST_PATH_IMAGE088
Figure 50351DEST_PATH_IMAGE089
Figure 633779DEST_PATH_IMAGE090
Figure 883495DEST_PATH_IMAGE091
=
Figure 931085DEST_PATH_IMAGE092
(7) after the verifier verifies the transaction, the range certificate, the tracking key and the tracking secret key certificate are recorded in the distributed account book;
step four:
the algorithm for tracking the transaction amount is executed by a transaction supervisor during transaction supervision, a supervision trap and a tracking key which are only mastered by the supervisor are input, the transaction amount which is promised to be hidden is output, and for the following columns of each member of each transaction, the transaction tracker executes the following steps to track the transaction amount of each member corresponding to each transaction:
(1) for each one
Figure 240844DEST_PATH_IMAGE093
The supervisor reads the transaction in the account book
Figure 311568DEST_PATH_IMAGE001
Each of (1)
Figure 427292DEST_PATH_IMAGE008
Tracking key for column records
Figure 267072DEST_PATH_IMAGE094
Using supervision trapdoors known only by themselves
Figure 747732DEST_PATH_IMAGE095
Calculating each transaction separately
Figure 102490DEST_PATH_IMAGE001
Each member of
Figure 959587DEST_PATH_IMAGE008
Of corresponding column
Figure 653874DEST_PATH_IMAGE096
(2) Supervisor use tracking key
Figure 367752DEST_PATH_IMAGE066
Figure 413068DEST_PATH_IMAGE067
And a supervisory trapdoor
Figure 808277DEST_PATH_IMAGE095
For each bit
Figure 419387DEST_PATH_IMAGE097
Performing a tracking calculation, in particular for each
Figure 507429DEST_PATH_IMAGE093
If it is
Figure 774462DEST_PATH_IMAGE096
=1, then output
Figure 770100DEST_PATH_IMAGE097
=0;
If it is
Figure 438979DEST_PATH_IMAGE096
=
Figure 697922DEST_PATH_IMAGE098
Then output
Figure 186672DEST_PATH_IMAGE097
=1;
(3) The supervisor calculates each member
Figure 251580DEST_PATH_IMAGE008
Amount of money of corresponding column
Figure 774965DEST_PATH_IMAGE099
The invention has the advantages and beneficial effects that:
(1) transaction details can be hidden: the invention provides a table format distributed account book, and the Pedersen promises with homomorphic property are used, so that the identity information and the transaction amount of transaction participants can be effectively hidden when a user initiates a transaction; moreover, the invention does not directly select the Pedersen commitment with the sum of 0 from the column record of all the non-trading participants, but randomly selects the petdersen commitment from all the non-trading participants by using the impounding reservoir algorithm
Figure 939230DEST_PATH_IMAGE002
The column in which the individual non-trading participant is located records the commitment to 0, specifically
Figure 243173DEST_PATH_IMAGE002
The value of (c) is determined by the user. Thus, the storage redundancy of the distributed account book is not large, and
Figure 783875DEST_PATH_IMAGE002
the larger the value, the more privacy of the transaction, but the slower the transaction speed.
(2) The digital currency is controlled to be transferred out: in the transaction content, the invention records a new commitment under the corresponding column of the transaction content of each system participant
Figure 161767DEST_PATH_IMAGE100
So that only one range proof need be used
Figure 762513DEST_PATH_IMAGE071
It may be determined whether the concealed transaction amount is within a specific range or not, and whether the sum of each column of the tabular ledger, i.e., the user account balance, is greater than 0. It is thus possible by this proof to check online whether the total amount of digital money currently exchanged by the commercial bank is within the total amount specified in the central bank and whether the balance of the digital money-transferor is sufficient to complete the transfer transaction.
(3) Supervision can be carried out: the invention provides a Bit traceable Bulletprofof zero knowledge range proof cryptographic algorithm (BTBURP), which can not only prove that a user uses the transaction amount concealed by Pedersen commitment in transaction
Figure 288172DEST_PATH_IMAGE030
In a certain specific range, the specific value of the transaction amount can be known, so that when the central bank needs to check the transaction behavior of the system participant, the traceable secret key of the transaction content and the supervision trap door mastered by the supervisor can be used for checking the historical transaction amount of a certain column in the tabular distributed account book, and the transaction behavior of the corresponding user of the column is checked.
(4) A malicious node cannot create or destroy an asset of a certain user by means of vacancy: when the verifier verifies the transaction, the invention can verify all the transactions
Figure 632566DEST_PATH_IMAGE101
Performing an accumulation calculation to prove
Figure 192860DEST_PATH_IMAGE001
The sum of the transaction amounts concealed by all commitments is 0. In addition, the invention introduces the scope to prove
Figure 698928DEST_PATH_IMAGE102
Hidden transaction amount
Figure 915145DEST_PATH_IMAGE007
Within a certain range, this means that a piece of assets is not created or destroyed by the system.
Drawings
FIG. 1 is a table format distributed ledger detail view of the present invention;
FIG. 2 is a transaction type and transaction example ledger diagram of the present invention;
FIG. 3 is a data diagram of generation time, verification time, and trace time for a traceable Bulletprof zero knowledge range proof of knowledge cryptographic algorithm used in the present invention;
FIG. 4 is a diagram of time data generated for each content included in a row in a transaction according to the present invention;
FIG. 5 is a diagram showing the relationship between the transaction creation time and the number of columns included in a transaction according to the present invention;
FIG. 6 is a graph of verification time data for each content included in a row in a transaction according to the present invention;
FIG. 7 is a diagram showing the relationship between the transaction verification time and the number of columns included in a transaction according to the present invention.
Detailed Description
In order to make the technical solution of the present invention better understood, the technical solution of the present invention is further described below with reference to specific examples.
A monitorable anonymous legal digital currency issuing and circulating method is characterized in that currency issuing transactions and circulating transactions are recorded in a tabular distributed account book, the content of the account book is designed into a tabular distributed account book, each column of the account book represents a system participant, and each row represents a transaction message; the system participants include: central bank, commercial bank, general user.
In the system, a double-layer operation system of a central bank to a commercial bank and the commercial bank to the public is formed. The central bank and the commercial bank respectively and independently maintain a distributed account book, and the account book ensures the consistency of storage by means of the consensus of the banks. The specific functions of the three system participants are described below:
(1) in the central row: there are two main functions in the central row: firstly, the system plays a role in issuing currencies and issues currencies of different limits to different commercial banks according to economic trends; and the second is to use the monitoring means as a monitor to monitor the transaction behaviors of the commercial bank and the common users.
(2) Commercial banks have two main functions: firstly, exchanging the same amount of digital currency for the user according to the assets owned by the user, namely initiating a currency exchange transaction; and secondly, when a transaction is initiated in the system, the validity of the transaction is verified, and the system is responsible for consistency consensus of the account book.
(3) The ordinary user has two main functions: firstly, the commercial bank is exchanged with cash or assets in the existing bank account for the same amount of digital currency, and the transaction is initiated by the commercial bank; secondly, the ordinary users initiate transfer transactions and submit the transactions to the network.
Fig. 1 shows the details of the ledger of the present invention. Different from the account book structure of the bitcoin and the ether house, the invention uses a unique table format distributed account book, and the table format account book structure can hide the identity of a transaction participant, hide the transaction amount and ensure that the transaction cannot be tracked. The central bank serves as a supervisor, and can track the transaction amount according to the tracking key when needing supervision. In the account, each row of the account represents one transaction, and the figure has 5 transactions (TxID is 0 to 4); each column of the ledger represents an attribute or a system participant, with the first two columns representing transaction ID (TxID) and transaction timestamp (Time), and each column (i.e., in the table) starting with the third column
Figure 859968DEST_PATH_IMAGE103
To
Figure 212452DEST_PATH_IMAGE104
) Represents a system participant, wherein
Figure 889421DEST_PATH_IMAGE105
A representative of the central row is,
Figure 389672DEST_PATH_IMAGE106
to
Figure 75868DEST_PATH_IMAGE107
Represents
Figure 282859DEST_PATH_IMAGE108
The home business bank is provided with a bank,
Figure 458625DEST_PATH_IMAGE109
to
Figure 383856DEST_PATH_IMAGE110
Represents
Figure 608164DEST_PATH_IMAGE111
The user can be identified as a normal user,
Figure 997557DEST_PATH_IMAGE111
is far greater than
Figure 281908DEST_PATH_IMAGE108
. When a transaction is initiated, the Pedersen commitments for the transaction amount are recorded under the column corresponding to the transaction participants, and a series of proofs are generated corresponding to each Pedersen commitment.
For each transaction
Figure 428855DEST_PATH_IMAGE001
System participants
Figure 519171DEST_PATH_IMAGE008
The transaction content in the corresponding column contains the following information, as shown in fig. 1:
1. pedersen commitments for transaction amounts
Figure 700754DEST_PATH_IMAGE005
The invention uses the Pedersen commitment to hide the transaction amount, and the Pedersen commitment algorithm is based on the elliptic curve cycle group
Figure 156006DEST_PATH_IMAGE027
Is realized by the following main forms
Figure 55829DEST_PATH_IMAGE112
Here, the
Figure 684256DEST_PATH_IMAGE030
Is the secret value promised to be concealed, i.e. the transaction amount;
Figure 720345DEST_PATH_IMAGE038
is an undisclosed random number;
Figure 346499DEST_PATH_IMAGE113
is that
Figure 530355DEST_PATH_IMAGE027
The random generator of (1). The commitment has the following characteristics: (1) perfect concealment: due to the fact that
Figure 900157DEST_PATH_IMAGE114
Is a random number, therefore
Figure 56332DEST_PATH_IMAGE115
And
Figure 915703DEST_PATH_IMAGE116
is computationally indistinguishable, so that the commitment value perfectly hides the secret value
Figure 524539DEST_PATH_IMAGE030
(ii) a (2) Calculating binding property: the prompter cannot change the secret value of the promption after making the promption
Figure 432452DEST_PATH_IMAGE030
I.e. the commitment cannot use a new secret value
Figure 505450DEST_PATH_IMAGE117
And generating the same commitment value to realize non-repudiation. Computing binding is based on the difficult assumption of discrete logarithms, i.e. the assumption exists
Figure 473406DEST_PATH_IMAGE118
So that
Figure 569538DEST_PATH_IMAGE119
Then there is
Figure 343459DEST_PATH_IMAGE120
This is not possible under the difficult assumption of discrete logarithms; (3) in addition to meeting the basic characteristics of the two commitments, the Pedersen commitment also has additive homomorphism, namely:
Figure 474226DEST_PATH_IMAGE121
Figure 613084DEST_PATH_IMAGE122
with the additive homomorphism of the Pedersen commitment, the verifier can calculate the linear combination of transaction amounts hidden by Pedersen commitments in different rows and columns in the distributed ledger.
Further, the invention does not directly select the Pedersen commitment with the sum of 0 from the column record of all the non-trading participants, but randomly selects the commitment from all the non-trading participants by using the water reservoir algorithm
Figure 993249DEST_PATH_IMAGE002
The column record of the individual non-trading participant is the Pedersen commitment to 0, the specific size of the retention reservoir
Figure 508544DEST_PATH_IMAGE002
Is determined by the user(s) ((
Figure 493818DEST_PATH_IMAGE002
The larger the value, the more private the user information is, but the slower the transaction speed). The impounding reservoir algorithm is mainly used for big data sampling and aims to extract big data from
Figure 865893DEST_PATH_IMAGE123
With non-repeating random selection of equal probability among system participants
Figure 671038DEST_PATH_IMAGE002
Each system participant records the commitment of the amount of 0, and the idea of the algorithm is as follows: (1) construct a size of
Figure 724445DEST_PATH_IMAGE002
The water reservoir; (2) will 0 to
Figure 626542DEST_PATH_IMAGE002
Sequentially putting the data (transaction participants) into a reservoir; (3) when it is calculated to the first
Figure 107202DEST_PATH_IMAGE124
A data, and
Figure 665222DEST_PATH_IMAGE125
when it is in the range
Figure 319057DEST_PATH_IMAGE126
Internally selecting random numbers
Figure 278923DEST_PATH_IMAGE127
(ii) a (4) If it is
Figure 930484DEST_PATH_IMAGE127
Fall on
Figure 772538DEST_PATH_IMAGE128
Within the range, use
Figure 167748DEST_PATH_IMAGE124
The first data in the replacement reservoir
Figure 982120DEST_PATH_IMAGE127
And (4) otherwise, repeating the step (3).
Here, the first and second liquid crystal display panels are,
Figure 804582DEST_PATH_IMAGE005
is to the transaction amount
Figure 133933DEST_PATH_IMAGE007
The petersen commitment of (a),
Figure 332833DEST_PATH_IMAGE009
is a random value. When a transaction is initiated, the amount of the transaction involved with the system participant
Figure 1712DEST_PATH_IMAGE007
Using Pedersen commitment encryption and writing the commitment value to the transaction participants in the ledger
Figure 57392DEST_PATH_IMAGE008
Below the corresponding column. For example, when a central row issues money of 500 credits to a commercial bank 1, the corresponding column at the central row records the commitment value made to "-500", the corresponding column at the commercial bank 1 records the commitment value made to "500", and then optionally
Figure 811722DEST_PATH_IMAGE002
The column in which each non-trading participant resides records the commitment value to "0". Thus, in one transaction, the column containing the transaction amount and the column with the transaction amount of 0 cannot be distinguished, so that other people cannot analyze the participant identity of the transaction and the transaction amount through the account.
2. Commitment of balance
Figure 814313DEST_PATH_IMAGE006
The invention records the Pedersen promise under the trade content of the corresponding column of each system participant
Figure 400015DEST_PATH_IMAGE005
And recording a balance commitment under the corresponding column of transaction contents of each system participant
Figure 564280DEST_PATH_IMAGE006
When in use
Figure 805905DEST_PATH_IMAGE005
In
Figure 408925DEST_PATH_IMAGE007
Acceptance of balance greater than or equal to 0 (i.e. receiving transaction amount)
Figure 786817DEST_PATH_IMAGE006
Is to use a new pair of random values
Figure 387562DEST_PATH_IMAGE007
Making another Pedersen commitment to obtain
Figure 913222DEST_PATH_IMAGE006
At this time
Figure 257615DEST_PATH_IMAGE011
When in use
Figure 490014DEST_PATH_IMAGE005
In
Figure 323977DEST_PATH_IMAGE007
Commitment of balance < 0 (i.e. roll-out transaction amount)
Figure 274616DEST_PATH_IMAGE006
Is to calculate
Figure 157121DEST_PATH_IMAGE008
The Pedersen commitment sum of all current transactions of the column, i.e.
Figure 509605DEST_PATH_IMAGE129
At this time
Figure 514470DEST_PATH_IMAGE012
Figure 952405DEST_PATH_IMAGE013
Is the TxID of the current transaction.
By using
Figure 638601DEST_PATH_IMAGE006
Only needs to use the range certification once
Figure 907908DEST_PATH_IMAGE130
Can both judge
Figure 21358DEST_PATH_IMAGE005
In (1)
Figure 946589DEST_PATH_IMAGE131
And can also judge
Figure 233213DEST_PATH_IMAGE008
The sum of the commitments listed, i.e., the account balance, is greater than 0.
3Demonstration of scope
Figure 560290DEST_PATH_IMAGE130
Demonstration of scope
Figure 579061DEST_PATH_IMAGE130
Is certified using a Bulletprof range-certified cryptographic algorithm
Figure 53905DEST_PATH_IMAGE006
Is/are as follows
Figure 81904DEST_PATH_IMAGE014
Is a value of
Figure 263486DEST_PATH_IMAGE132
. By checking this range proof, it is possible to check online:
(1) when in use
Figure 781055DEST_PATH_IMAGE005
In
Figure 415299DEST_PATH_IMAGE007
When the concentration of the carbon dioxide is more than 0,
Figure 981410DEST_PATH_IMAGE005
hidden transaction amount
Figure 345395DEST_PATH_IMAGE007
In that
Figure 971548DEST_PATH_IMAGE132
Within range, a participant in a transaction cannot create or destroy an asset by default;
(2) when in use
Figure 93088DEST_PATH_IMAGE005
In
Figure 525206DEST_PATH_IMAGE007
When the concentration of the carbon dioxide is less than 0,
Figure 681381DEST_PATH_IMAGE006
hidden transaction amount
Figure 478436DEST_PATH_IMAGE014
In that
Figure 87272DEST_PATH_IMAGE132
Within the range of because
Figure 57502DEST_PATH_IMAGE014
Is calculated as
Figure 68183DEST_PATH_IMAGE008
The sum of all historical transaction amounts of the participants of the column system, so that the proof can be used to check whether the total amount of digital currency currently exchanged by the commercial bank is within the total amount range specified by the central bank and whether the balance of the digital currency roll-out is sufficient to complete the transfer transaction.
4. Tracking keys
Figure 36139DEST_PATH_IMAGE073
&
Figure 194588DEST_PATH_IMAGE074
And tracking the proof of validity of the key
Figure 906192DEST_PATH_IMAGE133
Under the condition that the identity and the transaction amount of the transaction participant are hidden, illegal criminal phenomena can occur, so that the central bank is taken as a supervisor, and the identity and the transaction amount of the transaction participant need to be checked when illegal criminal behaviors such as money laundering or terrorist financing occur. Since the identity of the transaction participants in the tabular form book corresponds to each column, we only need to check the transaction amount of a certain column of users at the time of needing supervision in the central row, and for this reason we introduce a tracking key based on range certification
Figure 771380DEST_PATH_IMAGE073
&
Figure 972554DEST_PATH_IMAGE074
And corresponding proof of legitimacy
Figure 555982DEST_PATH_IMAGE133
Through the tracking key and the supervision trap door, the supervisor can check the range certification of the corresponding column of the transaction participant
Figure 133594DEST_PATH_IMAGE130
The specific amount of money.
Specifically, the present invention uses a Bit traceable Bulletprof zero knowledge Range proof of cryptography algorithm (hereinafter BTBuPR) that is correct, cryptic, and binding. Since the commitment value is in an elliptic curve cycle group, the commitment value depends on the order of the base point of the elliptic curve group
Figure 853288DEST_PATH_IMAGE134
Thus selecting the same random value
Figure 163047DEST_PATH_IMAGE114
Amount of transaction
Figure 296088DEST_PATH_IMAGE030
The commitment value of and
Figure 349495DEST_PATH_IMAGE135
are equal in their commitment values, i.e.
Figure 189275DEST_PATH_IMAGE136
In digital currency applications, this means that a system participant can create an asset by default. Therefore, in a transaction, the BTBurP algorithm can prove that the transaction amount concealed by the user using Pedersen in the transaction is within a certain specific range, and the BTBurP used by the supervisor at the central row only needs to generate the supervision trapdoor in advance, so that the specific amount concealed by the range proof can be calculated according to the tracking key under the condition of not interacting with the related system participants, and the transaction behaviors of the system participants are tracked. The BTBuRP algorithm is divided into four steps, and the implementation of the four steps is described below:
the method comprises the following steps:
Figure 466672DEST_PATH_IMAGE137
: algorithm for generating parameters, executed during system initialization, inputting safety parameters
Figure 24693DEST_PATH_IMAGE015
And supervisor trap door generated by supervisor (central row)
Figure 147369DEST_PATH_IMAGE016
Outputting public parameters
Figure 841656DEST_PATH_IMAGE017
The details are as follows:
(1) system randomly selecting generator
Figure 86692DEST_PATH_IMAGE018
…,
Figure 397588DEST_PATH_IMAGE019
(2) Supervisor (central row) generating trapdoors (
Figure 792797DEST_PATH_IMAGE020
Figure 872749DEST_PATH_IMAGE021
Figure 695211DEST_PATH_IMAGE022
Calculating
Figure 493403DEST_PATH_IMAGE023
(3) System disclosure parameter
Figure 692303DEST_PATH_IMAGE024
Wherein
Figure 689078DEST_PATH_IMAGE025
Figure 682442DEST_PATH_IMAGE026
Is a large prime number, group
Figure 967930DEST_PATH_IMAGE027
The order of (1);
step two:
Figure 704942DEST_PATH_IMAGE138
: an algorithm for generating proof, executed by the transaction initiator when creating the transaction, inputs the transaction amount
Figure 493906DEST_PATH_IMAGE030
And the amount range to be certified by the algorithm
Figure 923750DEST_PATH_IMAGE139
And outputting the range certification and the tracking key certification. For transactions
Figure 493272DEST_PATH_IMAGE001
Transaction initiator at each member
Figure 768395DEST_PATH_IMAGE008
The following steps are carried out for the calculation proof:
(1) for transaction amount
Figure 943025DEST_PATH_IMAGE028
The transaction initiator selects a random number
Figure 278191DEST_PATH_IMAGE029
Calculating the transaction amount
Figure 662905DEST_PATH_IMAGE030
Promise of (1)
Figure 7299DEST_PATH_IMAGE031
Figure 505276DEST_PATH_IMAGE032
(2) The transaction initiator will exchange the transaction amount
Figure 808082DEST_PATH_IMAGE030
Bit-by-bit partitioning:
Figure 758720DEST_PATH_IMAGE033
Figure 969121DEST_PATH_IMAGE034
,
Figure 321605DEST_PATH_IMAGE035
Figure 529733DEST_PATH_IMAGE036
indicating an amount of money
Figure 967667DEST_PATH_IMAGE030
Is represented by a binary vector of (a),
Figure 388284DEST_PATH_IMAGE037
vector is composed of
Figure 392013DEST_PATH_IMAGE036
The vector is induced and generated according to the rule defined by the formula;
(3) random number is randomly selected by transaction initiator
Figure 505462DEST_PATH_IMAGE038
For the amount of the transaction
Figure 758589DEST_PATH_IMAGE030
Is committed to
Figure 982897DEST_PATH_IMAGE039
Figure 575552DEST_PATH_IMAGE040
(4) Random number selection by transaction initiator
Figure 859903DEST_PATH_IMAGE041
To blind vector
Figure 538009DEST_PATH_IMAGE042
Make a commitment to obtain
Figure 566008DEST_PATH_IMAGE043
Figure 278749DEST_PATH_IMAGE044
(5) Random number for a challenge sent by a transaction verifier
Figure 468422DEST_PATH_IMAGE045
Making inner product proof for transaction initiator and transaction initiator to generate proof
Figure 368245DEST_PATH_IMAGE046
Wherein:
Figure 262251DEST_PATH_IMAGE047
,
Figure 563920DEST_PATH_IMAGE048
Figure 190073DEST_PATH_IMAGE049
Figure 577192DEST_PATH_IMAGE050
wherein
Figure 478152DEST_PATH_IMAGE051
Wherein
Figure 368748DEST_PATH_IMAGE052
Figure 493698DEST_PATH_IMAGE053
Figure 102534DEST_PATH_IMAGE054
Here, the
Figure 807185DEST_PATH_IMAGE055
,
Figure 817867DEST_PATH_IMAGE056
,
Figure 74839DEST_PATH_IMAGE057
The representation is defined in
Figure 170971DEST_PATH_IMAGE058
An n-dimensional vector of (a);
(6) random number selection by transaction initiator
Figure 413734DEST_PATH_IMAGE059
Generating a proof
Figure 278922DEST_PATH_IMAGE060
To a verifier, wherein:
Figure 745675DEST_PATH_IMAGE061
,
Figure 329103DEST_PATH_IMAGE062
Figure 109977DEST_PATH_IMAGE063
(7) the transaction initiator will commit
Figure 95251DEST_PATH_IMAGE064
And prove that
Figure 670589DEST_PATH_IMAGE065
And sending to the transaction verifier.
(8) Transaction initiator adding tracking key to each bit of money
Figure 741313DEST_PATH_IMAGE140
And a validity proof is given to all tracking keys:
tracking the key:
Figure 122616DEST_PATH_IMAGE069
tracing key attestation (i.e., proof of validity of a key):
Figure 962396DEST_PATH_IMAGE070
(9) transaction initiator in transaction
Figure 974214DEST_PATH_IMAGE001
Each of (1)A member
Figure 266655DEST_PATH_IMAGE004
Corresponding to the following write Range certificate
Figure 389332DEST_PATH_IMAGE071
Figure 83618DEST_PATH_IMAGE072
) Tracking a key
Figure 266338DEST_PATH_IMAGE073
And
Figure 311654DEST_PATH_IMAGE074
and tracing key attestation
Figure 34760DEST_PATH_IMAGE133
To build a transaction. Here, the
Figure 583553DEST_PATH_IMAGE073
Figure 202753DEST_PATH_IMAGE074
Refer to for
Figure 469786DEST_PATH_IMAGE001
Line of
Figure 934266DEST_PATH_IMAGE008
Tracking keys for all bits of the column transaction amount, i.e.
Figure 337565DEST_PATH_IMAGE141
,
Figure 596508DEST_PATH_IMAGE142
Step three:
Figure 881996DEST_PATH_IMAGE143
: authentication of certified algorithms verified by transactionsPerformed by a person (transaction acquaintance bank) verifying a scope certificate generated by the transaction initiator at the time of creating the transaction
Figure 619008DEST_PATH_IMAGE071
And tracing key attestation
Figure 470289DEST_PATH_IMAGE133
Whether it is correct. Inputting public parameters
Figure 900133DEST_PATH_IMAGE076
And scope certification and tracking key certification, output 1 representing certification verification passed and output 0 representing certification verification failed. For transactions
Figure 141759DEST_PATH_IMAGE001
Each member of
Figure 682462DEST_PATH_IMAGE008
The following steps are performed by the transaction verifier:
(1) verifier computation
Figure 857091DEST_PATH_IMAGE077
(2) Verifier computation
Figure 192258DEST_PATH_IMAGE078
(3) Verifier computation
Figure 249075DEST_PATH_IMAGE079
(4) Verifier computation
Figure 327890DEST_PATH_IMAGE080
(5) The verifier verifies whether the following equation is true, if true, the verification is passed, otherwise the verification is not passed:
Figure 357026DEST_PATH_IMAGE081
Figure 128672DEST_PATH_IMAGE144
Figure 344890DEST_PATH_IMAGE083
(6) verifier verification
Figure 758554DEST_PATH_IMAGE075
Judging the legitimacy of
Figure 111038DEST_PATH_IMAGE084
If the equation is true, the verification is passed, otherwise the verification is not passed, and the proof of the equation is as follows:
Figure 381482DEST_PATH_IMAGE085
Figure 819417DEST_PATH_IMAGE086
Figure 505613DEST_PATH_IMAGE145
Figure 978183DEST_PATH_IMAGE146
Figure 357211DEST_PATH_IMAGE147
Figure 282442DEST_PATH_IMAGE090
Figure 834646DEST_PATH_IMAGE091
=
Figure 161722DEST_PATH_IMAGE148
(7) after the verifier verifies the transaction, the range is proved
Figure 977232DEST_PATH_IMAGE071
Tracking a key
Figure 389758DEST_PATH_IMAGE149
And tracing key attestation
Figure 417757DEST_PATH_IMAGE133
And recording the data into the distributed account book.
Step four:
Figure 599340DEST_PATH_IMAGE150
: an algorithm for tracking transaction amount is executed by transaction supervisor while supervising transaction, and inputs supervision trap door only mastered by supervisor
Figure 585750DEST_PATH_IMAGE151
And tracking the key
Figure 485573DEST_PATH_IMAGE152
Outputting the transaction amount with hidden commitment
Figure 379580DEST_PATH_IMAGE030
For transactions
Figure 946828DEST_PATH_IMAGE001
Each member of
Figure 572981DEST_PATH_IMAGE008
The transaction tracker performs the following steps to track the transaction amount of each member of each transaction in the corresponding column:
(1)for each one
Figure 225679DEST_PATH_IMAGE093
The supervisor reads the transaction in the account book
Figure 329901DEST_PATH_IMAGE001
Each of (1)
Figure 813972DEST_PATH_IMAGE008
Tracking key for column records
Figure 611027DEST_PATH_IMAGE094
Using supervision trapdoors known only by themselves
Figure 219863DEST_PATH_IMAGE095
Calculating each transaction separately
Figure 658935DEST_PATH_IMAGE001
Each member of
Figure 669616DEST_PATH_IMAGE008
Of corresponding column
Figure 637572DEST_PATH_IMAGE096
(2) Supervisor use tracking key
Figure 592758DEST_PATH_IMAGE066
Figure 38783DEST_PATH_IMAGE067
And a supervisory trapdoor
Figure 169550DEST_PATH_IMAGE095
For each bit
Figure 573987DEST_PATH_IMAGE097
Performing a tracking calculation, in particular for each
Figure 157415DEST_PATH_IMAGE093
If it is
Figure 407131DEST_PATH_IMAGE096
=1, then output
Figure 392404DEST_PATH_IMAGE097
=0;
If it is
Figure 764480DEST_PATH_IMAGE096
=
Figure 835204DEST_PATH_IMAGE098
Then output
Figure 888611DEST_PATH_IMAGE097
=1;
(3) The supervisor calculates each member
Figure 587445DEST_PATH_IMAGE008
Amount of money of corresponding column
Figure 68105DEST_PATH_IMAGE099
For the (2) th step of the fourth step, the following steps can be also optimized: supervisor use tracking key
Figure 360546DEST_PATH_IMAGE066
Figure 483223DEST_PATH_IMAGE067
And a supervisory trapdoor (
Figure 177509DEST_PATH_IMAGE020
Figure 829071DEST_PATH_IMAGE021
) For each bit
Figure 874387DEST_PATH_IMAGE097
Performing tracking calculation: for each one
Figure 331913DEST_PATH_IMAGE093
If, if
Figure 880706DEST_PATH_IMAGE153
Figure 968748DEST_PATH_IMAGE067
=1, then output
Figure 298098DEST_PATH_IMAGE097
=0, otherwise output
Figure 231419DEST_PATH_IMAGE097
=1, the supervisor then calculates the amount
Figure 900298DEST_PATH_IMAGE099
Further, in the distribution of legal digital currency based on block chain, we need to guarantee: (1) the commercial bank can not freely stipulate the issuing amount without the authorization of the central bank; (2) ordinary users cannot add an amount under their own account at will. Therefore, our verifier will prove the transaction when verifying
Figure 221558DEST_PATH_IMAGE154
In
Figure 710308DEST_PATH_IMAGE155
That is to say prove
Figure 712899DEST_PATH_IMAGE001
The sum of the transaction amounts concealed by all commitments in the pen transaction is 0. Thus, the transaction initiator generates commitments at the option
Figure 236284DEST_PATH_IMAGE005
Random number of
Figure 259604DEST_PATH_IMAGE009
When it is needed to satisfy
Figure 501229DEST_PATH_IMAGE156
So that the verifier only needs to verify
Figure 41932DEST_PATH_IMAGE157
And (4) finishing.
The symbols referred to above correspond to the descriptions given in the following table:
Figure 685403DEST_PATH_IMAGE159
as shown in fig. 2, which is an example of a distributed ledger designed in the present invention, in the ledger, each column represents a system participant, each row represents a transaction, the ledger contents cannot be deleted and changed, and when a new transaction is verified, a new record is added to the ledger contents. There are three transactions in the account, a money issue transaction, a money exchange transaction and a public transfer transaction, and each transaction in the system includes a Pedersen commitment to the transaction amount
Figure 286149DEST_PATH_IMAGE160
The transaction proof and tracking key described in fig. 1 is generated for each commitment, and the functions exercised by the three transactions and examples of the three transactions are described below:
money issuance transactions
According to the practical scene, the currency issuing generally comprises two situations, namely, a central bank issues digital currency to a commercial bank, and the specific issuing time and the issuing total amount are dynamically determined according to the requirements of the commercial bank; the second is the central line issuing digital currency to a particular institution based on a particular use. The first type of currency issue is illustrated and discussed below, and for the second type of currency issue, the transaction is structured in the same manner as set forth below.
Shown in FIG. 2
Figure 749491DEST_PATH_IMAGE161
=0 transaction shows central bank 1A total of 500 digital currencies were set. In the transaction data, it can be seen that a promise of "-500" transaction amount is written in the column corresponding to the central row, a promise of "500" transaction amount is written in the column corresponding to the commercial bank 1, and then a water reservoir algorithm is used to arbitrarily select from all non-transaction participants
Figure 156202DEST_PATH_IMAGE162
A user and in its corresponding column
Figure 654179DEST_PATH_IMAGE163
A commitment to a transaction amount of "0" is written. From this transaction data, we cannot know the identity of the initiator and recipient of the transaction, nor the transaction amount.
Currency conversion transactions
The currency conversion transaction is initiated by the commercial bank, converting the cash of the ordinary user or assets in the bank account into digital currency. In FIG. 2
Figure 160247DEST_PATH_IMAGE161
=1 and
Figure 438781DEST_PATH_IMAGE161
the transaction of =2 is a currency conversion transaction, wherein
Figure 321287DEST_PATH_IMAGE161
A currency conversion transaction of =1 was successful,
Figure 673771DEST_PATH_IMAGE161
a currency conversion transaction failure of = 2.
In that
Figure 350740DEST_PATH_IMAGE161
In transaction of =1, user
Figure 850991DEST_PATH_IMAGE109
To commercial banks
Figure 537187DEST_PATH_IMAGE106
Exchange amount of 300 digital currency, commercial bank
Figure 744178DEST_PATH_IMAGE106
Writing a commitment of transaction amount of-300' in the corresponding column of the user
Figure 919944DEST_PATH_IMAGE109
The corresponding column writes a commitment to the transaction amount of "300" and optionally
Figure 845175DEST_PATH_IMAGE162
A non-trading participant
Figure 69483DEST_PATH_IMAGE164
The column writes a commitment to the transaction amount of "0". From this transaction data, we cannot know the identity of the initiator and recipient of the transaction, nor the transaction amount. However, the identity and scope certification cryptographic algorithm using Pedersen promises can be verified, commercial banks
Figure 458876DEST_PATH_IMAGE106
To the user
Figure 743227DEST_PATH_IMAGE109
The total 300 issued is less than the central bank to the commercial bank
Figure 890174DEST_PATH_IMAGE106
Figure 890174DEST_PATH_IMAGE106
500, i.e. commercial bank
Figure 980490DEST_PATH_IMAGE106
The transaction amount does not exceed that of the commercial bank
Figure 162073DEST_PATH_IMAGE106
The total amount of money held. Thus, the transaction can be verified, and the user
Figure 617325DEST_PATH_IMAGE109
To commercial banks
Figure 517148DEST_PATH_IMAGE106
The conversion of digital currency was successful.
In that
Figure 145575DEST_PATH_IMAGE161
In a transaction of =2, commercial bank
Figure 181664DEST_PATH_IMAGE106
Transfer of funds to three recipients in a transaction, wherein the user is presented with
Figure 807818DEST_PATH_IMAGE109
And
Figure 991674DEST_PATH_IMAGE165
the transfer of (2) is currency conversion, and the amount is 100; to commercial banks
Figure 361476DEST_PATH_IMAGE166
The transfer amount is 200. Commercial bank
Figure 517651DEST_PATH_IMAGE106
Writing a commitment of transaction amount-400' in its corresponding column, and making the user obtain the commitment
Figure 377022DEST_PATH_IMAGE109
And
Figure 985858DEST_PATH_IMAGE167
the corresponding column writes a commitment to the transaction amount of "100" at the commercial bank
Figure 893771DEST_PATH_IMAGE166
The corresponding column writes a commitment to the transaction amount of "200" and optionally
Figure 904453DEST_PATH_IMAGE162
The column in which the other non-trading participants are located writes a commitment to the trade amount of "0". From this transactionIn the data, the identities of the initiator and recipient of the transaction and the transaction amount cannot be known. However, the cryptographic algorithm can be verified using the Pedersen promised homomorphism and scope certification
Figure 934725DEST_PATH_IMAGE161
In a transaction of =2, commercial bank
Figure 30857DEST_PATH_IMAGE106
The amount 400 of the roll-out account is greater than the amount of the central bank to the commercial bank
Figure 742461DEST_PATH_IMAGE106
Is 200, exceeds the commercial bank
Figure 935545DEST_PATH_IMAGE106
The total amount of money currently held. Thus commercial bank
Figure 74403DEST_PATH_IMAGE106
The transaction verification of this time is not passed, and the distributed account book is not counted.
Public account transfer transaction
Public transfer transactions are transactions initiated by the public, for daily payment transfers, etc., as in fig. 2
Figure 392252DEST_PATH_IMAGE161
=3 and
Figure 969863DEST_PATH_IMAGE161
a transaction of =4 is a public transfer transaction, and in both transactions,
Figure 955137DEST_PATH_IMAGE161
a transaction transfer of =3 was successful,
Figure 264896DEST_PATH_IMAGE161
a transaction transfer of =4 fails (because the transaction amount exceeds the total amount of money held by the account). The specific transaction flow and verification process are the same as the above digital currency conversion transactionAnd will not be described herein.
Fig. 3 shows generation time (pro), verification time (Verify), and tracking time (Trace) of the traceable Bulletproof range algorithm (BTBuRP) based on the secret SM2 used in the present invention. The experiment is operated in the environment of Intel i7-8556U 1.80GHz processor, 8G memory and 64-bit Windows10 operating system, and the scheme is realized by using go language. During the experiment, the sum of money
Figure 70041DEST_PATH_IMAGE168
Respectively select
Figure 185764DEST_PATH_IMAGE169
And (6) testing. It can be seen that
Figure 25544DEST_PATH_IMAGE170
The larger the value (i.e., the larger the range verifiable by the BTBuRP algorithm), the larger the generation time, verification time, and tracking time of the supervisor tracking key are certified. When in use
Figure 506204DEST_PATH_IMAGE171
In the invention, the supportable maximum transaction amount reaches more than 42 hundred million, and the transfer transaction in the legal digital currency issuing and circulating process can be basically met, so the legal digital currency scheme of the invention recommends the provable range of the selection range certification to be
Figure 126541DEST_PATH_IMAGE172
. In the Bulletprofof range certification, multiple range certifications may be aggregated into one range certification, and thus, when the Bulletprofof range aggregation certification is used, the average time of the Prove and Verify of the above experiment may be shorter.
FIG. 4 shows the generation time of each content included in a row in a transaction. Each column in a transaction contains commitments
Figure 718060DEST_PATH_IMAGE173
Commitment of balance
Figure 677925DEST_PATH_IMAGE174
And a Bit traceable Bulletprof range attestation, wherein the Bit traceable Bulletprof range attestation comprises: (1) demonstration of scope
Figure 391803DEST_PATH_IMAGE175
(2) tracking the key
Figure 171541DEST_PATH_IMAGE176
(3) tracing key attestation
Figure 566750DEST_PATH_IMAGE177
. During the test, the selection is carried out
Figure 381122DEST_PATH_IMAGE170
=32 test the time to generate commitments, tracking keys, and tracking key certificates (Create). It can be seen that the generation time of the range certificate substantially determines the generation time of a single column in a transaction.
FIG. 5 shows the relationship between the transaction creation time and the number of columns included in a transaction. In the experiment, a plurality of BTBURP range proving times are created by single-thread testing and multi-thread testing respectively. As can be seen, the transaction is created in multiple threads faster than in a single thread, and as the number of columns included in a transaction increases, the transaction is created in a slower time.
FIG. 6 shows the verification time for each content included in a row in a transaction. During the test, the selection is carried out
Figure 265901DEST_PATH_IMAGE170
=32 test range certification and verification time of tracking key certification (Verify). It can be seen that the validation time of the range certificate substantially determines the validation time of a single column in a transaction.
FIG. 7 shows the relationship between the transaction verification time and the number of columns included in a transaction. In the experiment, the times proved by a plurality of BTBURP ranges are verified by single thread and multithreading respectively. As can be readily seen, the time for a multi-threaded verification transaction is faster than the time for a single threaded verification transaction, and as the number of columns included in a transaction increases, the verification time for the transaction becomes slower.
The invention has been described in an illustrative manner, and it is to be understood that any simple variations, modifications or other equivalent changes which can be made by one skilled in the art without departing from the spirit of the invention fall within the scope of the invention.

Claims (6)

1. A supervised anonymous legal digital currency issuing and circulating method is characterized in that:
the currency issuing transaction and the circulation transaction are recorded in a tabular distributed book, each column of the book represents a system participant, each row represents a transaction message, and the system participant comprises: the central bank, commercial bank, general user;
after initiating a transaction
Figure 860668DEST_PATH_IMAGE001
At first, the transaction initiator randomly selects a reservoir algorithm
Figure 813362DEST_PATH_IMAGE002
A non-trading participant forming a member set together with the trading participant
Figure 858678DEST_PATH_IMAGE003
(ii) a And then for each member
Figure 519467DEST_PATH_IMAGE004
The following is recorded in its corresponding column: (1) pedersen commitments to transaction amounts
Figure 864997DEST_PATH_IMAGE005
And (2) commitments to account balances
Figure 953039DEST_PATH_IMAGE006
(3) a range attestation, (4) a tracking key, and (5) a tracking key attestation; wherein the content of the first and second substances,
Figure 485652DEST_PATH_IMAGE007
is a member of
Figure 950131DEST_PATH_IMAGE008
One transaction of
Figure 884589DEST_PATH_IMAGE001
The amount of the transaction in (1) is,
Figure 409111DEST_PATH_IMAGE009
is a random value that is not disclosed, as is the Pedersen commitment to the transaction amount
Figure 429020DEST_PATH_IMAGE005
In
Figure 431611DEST_PATH_IMAGE007
Acceptance of account balance at > 0
Figure 486154DEST_PATH_IMAGE006
Is to use a new random value
Figure 181578DEST_PATH_IMAGE010
To pair
Figure 190248DEST_PATH_IMAGE007
Another Pedersen commitment is made, the amount parameter is
Figure 730950DEST_PATH_IMAGE011
(ii) a Pedersen commitments as transaction amount
Figure 905580DEST_PATH_IMAGE005
In
Figure 506325DEST_PATH_IMAGE007
Below 0, commitment of account balance
Figure 500826DEST_PATH_IMAGE006
Is to calculate
Figure 110799DEST_PATH_IMAGE008
Pedersen commitment sum of all current transactions of column, when amount parameter
Figure 874356DEST_PATH_IMAGE012
Figure 911582DEST_PATH_IMAGE013
TxID of the current transaction, wherein TxID represents transaction ID;
and (3) verifying the validity of the transaction during the transaction: (1) verifying whether the sum of all transaction amounts promised to be hidden in each transaction is 0; (2) and verifying whether the scope certificate and the tracking key certificate created by the transaction initiator are correct.
2. The administrable anonymous legal digital currency issuing and circulating method of claim 1, wherein: the transaction includes three types, namely, a money transaction issued by the central bank to a commercial bank, a digital money transaction exchanged by the commercial bank for common users, and a transfer transaction among the common users, wherein the three types of transactions are recorded in the table format distributed account book in the same format.
3. The administrable anonymous legal digital currency issuing and circulating method of claim 1, wherein: pedersen commitments for transaction amounts
Figure 127800DEST_PATH_IMAGE005
Is calculated as member of
Figure 275884DEST_PATH_IMAGE008
Is a transaction
Figure 159527DEST_PATH_IMAGE001
The sender of (2), the transaction amount
Figure 367654DEST_PATH_IMAGE007
Is a negative value; if member
Figure 71168DEST_PATH_IMAGE008
Is a transaction
Figure 521478DEST_PATH_IMAGE001
The recipient of (2), the transaction amount
Figure 259627DEST_PATH_IMAGE007
Is a positive value; if member
Figure 638656DEST_PATH_IMAGE008
Is not a transaction
Figure 829466DEST_PATH_IMAGE001
The participant of (2), the transaction amount
Figure 584932DEST_PATH_IMAGE007
Is 0.
4. The administrable anonymous legal digital currency issuing and circulating method of claim 1, wherein: scope certification is a commitment to certify an account balance
Figure 912008DEST_PATH_IMAGE006
Amount of money parameter of
Figure 461939DEST_PATH_IMAGE014
If the value of (A) is within the set range, the participant in the transaction is proved not to be emptyCreating or destroying an asset, the total amount of digital currency currently exchanged by the commercial bank being within the total amount specified by the central bank, and the balance of the digital currency transferor being sufficient to complete the transfer transaction.
5. The curatable anonymous legal digital currency issuance and circulation method according to claim 4, wherein: when the transaction is monitored by the central row as a supervisor, tracking keys calculated by a Bit traceable Bulletprofo zero knowledge range proof cryptographic algorithm and a supervision trap door owned by the central row track the specific value of the transaction amount concealed by using Pedersen commitment;
the Bit traceable Bulletprof zero knowledge range proof cryptographic algorithm comprises the following steps:
the method comprises the following steps:
generating parameters, performing at system initialization, inputting security parameters
Figure 140045DEST_PATH_IMAGE015
And supervisor generated supervision trapdoors
Figure 699202DEST_PATH_IMAGE016
Outputting public parameters
Figure 146364DEST_PATH_IMAGE017
The details are as follows:
(1) system randomly selecting generator
Figure 867195DEST_PATH_IMAGE018
…,
Figure 32597DEST_PATH_IMAGE019
(2) Supervisor-generated trapdoor (
Figure 365752DEST_PATH_IMAGE020
Figure 198579DEST_PATH_IMAGE021
Figure 824732DEST_PATH_IMAGE022
Calculating
Figure 477430DEST_PATH_IMAGE023
(3) System disclosure parameter
Figure 378390DEST_PATH_IMAGE024
Wherein
Figure 534565DEST_PATH_IMAGE025
Figure 597199DEST_PATH_IMAGE026
Is a large prime number, group
Figure 737193DEST_PATH_IMAGE027
The order of (1);
step two:
generating a certified algorithm, executed by a transaction initiator when creating a transaction, inputting a transaction amount and an amount range to be certified by the algorithm, and outputting a range certification, a tracking key and a tracking key certification; the transaction initiator performs the following steps to calculate the proof under each member correspondence column:
(1) for transaction amount
Figure 176265DEST_PATH_IMAGE028
The transaction initiator selects a random number
Figure 452525DEST_PATH_IMAGE029
Calculating the transaction amount
Figure 951640DEST_PATH_IMAGE030
Promise of (1)
Figure 313351DEST_PATH_IMAGE031
Figure 783210DEST_PATH_IMAGE032
(2) The transaction initiator will exchange the transaction amount
Figure 179556DEST_PATH_IMAGE030
Bit-by-bit partitioning:
Figure 583993DEST_PATH_IMAGE033
Figure 433000DEST_PATH_IMAGE034
,
Figure 213874DEST_PATH_IMAGE035
Figure 464727DEST_PATH_IMAGE036
indicating an amount of money
Figure 40065DEST_PATH_IMAGE030
Is represented by a binary vector of (a),
Figure 376368DEST_PATH_IMAGE037
vector is composed of
Figure 960933DEST_PATH_IMAGE036
The vector is induced and generated according to the rule defined by the formula;
(3) random number is randomly selected by transaction initiator
Figure 66293DEST_PATH_IMAGE038
For the amount of the transaction
Figure 812532DEST_PATH_IMAGE030
Is committed to
Figure 636131DEST_PATH_IMAGE039
Figure 260273DEST_PATH_IMAGE040
(4) Random number selection by transaction initiator
Figure 220139DEST_PATH_IMAGE041
To blind vector
Figure 137279DEST_PATH_IMAGE042
Make a commitment to obtain
Figure 713754DEST_PATH_IMAGE043
Figure 374542DEST_PATH_IMAGE044
(5) Random number for a challenge sent by a transaction verifier
Figure 188915DEST_PATH_IMAGE045
Making inner product proof for transaction initiator and transaction initiator to generate proof
Figure 808115DEST_PATH_IMAGE046
Wherein:
Figure 340727DEST_PATH_IMAGE047
,
Figure 805207DEST_PATH_IMAGE048
Figure 474086DEST_PATH_IMAGE049
Figure 264187DEST_PATH_IMAGE050
wherein
Figure 284096DEST_PATH_IMAGE051
Wherein
Figure 286687DEST_PATH_IMAGE052
Figure 839765DEST_PATH_IMAGE053
Figure 535189DEST_PATH_IMAGE054
Here, the
Figure 776815DEST_PATH_IMAGE055
,
Figure 583097DEST_PATH_IMAGE056
,
Figure 492147DEST_PATH_IMAGE057
The representation is defined in
Figure 358472DEST_PATH_IMAGE058
An n-dimensional vector of (a);
(6) random number selection by transaction initiator
Figure 352972DEST_PATH_IMAGE059
Generating a proof
Figure 697366DEST_PATH_IMAGE060
To a verifier, wherein:
Figure 460923DEST_PATH_IMAGE061
,
Figure 498149DEST_PATH_IMAGE062
Figure 979946DEST_PATH_IMAGE063
(7) the transaction initiator will commit
Figure 128030DEST_PATH_IMAGE064
And prove that
Figure 513138DEST_PATH_IMAGE065
Sending to a transaction verifier;
(8) transaction initiator adding tracking key to each bit of money
Figure 721265DEST_PATH_IMAGE066
And
Figure 424779DEST_PATH_IMAGE067
and giving a tracing key certificate for all tracing keys
Figure 110975DEST_PATH_IMAGE068
Tracking the key:
Figure 114703DEST_PATH_IMAGE069
tracing key certification:
Figure 228153DEST_PATH_IMAGE070
(9) transaction initiator in transaction
Figure 418963DEST_PATH_IMAGE001
Each member of
Figure 174429DEST_PATH_IMAGE004
Corresponding to the following write Range certificate
Figure 767084DEST_PATH_IMAGE071
Figure 317014DEST_PATH_IMAGE072
) Tracking a key
Figure 995120DEST_PATH_IMAGE073
And
Figure 288698DEST_PATH_IMAGE074
and tracing key attestation
Figure 735860DEST_PATH_IMAGE075
To build a transaction;
step three:
the algorithm of the verification certification is executed by the transaction verifier, and whether the range certification and the tracking key certification generated by the transaction initiator during the transaction creation are correct or not is verified; inputting public parameters
Figure 961086DEST_PATH_IMAGE076
And range certification and tracking key certification, wherein output 1 represents that certification verification is passed, and output 0 represents that certification verification is not passed; for transactions
Figure 392067DEST_PATH_IMAGE001
Each member of
Figure 223757DEST_PATH_IMAGE008
The following steps are performed by the transaction verifier:
(1) verifier computation
Figure 525426DEST_PATH_IMAGE077
(2) Verifier computation
Figure 417158DEST_PATH_IMAGE078
(3) Verifier computation
Figure 335436DEST_PATH_IMAGE079
(4) Verifier computation
Figure 705237DEST_PATH_IMAGE080
(5) The verifier verifies whether the following equation is true, if true, the verification is passed, otherwise the verification is not passed:
Figure 126991DEST_PATH_IMAGE081
Figure 189625DEST_PATH_IMAGE082
Figure 329619DEST_PATH_IMAGE083
(6) verifier verification tracking key attestation
Figure 768691DEST_PATH_IMAGE075
Judging the legitimacy of
Figure 44952DEST_PATH_IMAGE084
If the equation is true, the verification is passed, otherwise the verification is not passed, and the proof of the equation is as follows:
Figure 278487DEST_PATH_IMAGE085
Figure 407242DEST_PATH_IMAGE086
Figure 118846DEST_PATH_IMAGE087
Figure 515192DEST_PATH_IMAGE088
Figure 919629DEST_PATH_IMAGE089
Figure 34216DEST_PATH_IMAGE090
Figure 549510DEST_PATH_IMAGE091
=
Figure 800363DEST_PATH_IMAGE092
(7) after the verifier verifies the transaction, the range certificate, the tracking key and the tracking secret key certificate are recorded in the distributed account book;
step four:
the algorithm for tracking the transaction amount is executed by a transaction supervisor during transaction supervision, a supervision trap and a tracking key which are only mastered by the supervisor are input, the transaction amount which is promised to be hidden is output, and for the following columns of each member of each transaction, the transaction tracker executes the following steps to track the transaction amount of each member corresponding to each transaction:
(1) for theEach one of which is
Figure 641280DEST_PATH_IMAGE093
The supervisor reads the transaction in the account book
Figure 977584DEST_PATH_IMAGE001
Each of (1)
Figure 296570DEST_PATH_IMAGE008
Tracking key for column records
Figure 401929DEST_PATH_IMAGE094
Using supervision trapdoors known only by themselves
Figure 413747DEST_PATH_IMAGE095
Calculating each transaction separately
Figure 470303DEST_PATH_IMAGE001
Each member of
Figure 592979DEST_PATH_IMAGE008
Of corresponding column
Figure 552845DEST_PATH_IMAGE096
(2) Supervisor use tracking key
Figure 735565DEST_PATH_IMAGE066
Figure 46460DEST_PATH_IMAGE067
And a supervisory trapdoor
Figure 707249DEST_PATH_IMAGE095
For each bit
Figure 521621DEST_PATH_IMAGE097
Performing trace calculations, in particularTo each one
Figure 140821DEST_PATH_IMAGE093
If it is
Figure 673434DEST_PATH_IMAGE096
=1, then output
Figure 872334DEST_PATH_IMAGE097
=0;
If it is
Figure 806792DEST_PATH_IMAGE096
=
Figure 596893DEST_PATH_IMAGE098
Then output
Figure 351223DEST_PATH_IMAGE097
=1;
(3) The supervisor calculates each member
Figure 120858DEST_PATH_IMAGE008
Amount of money of corresponding column
Figure 175402DEST_PATH_IMAGE099
6. A computer-readable storage medium, characterized in that a computer program is stored which, when executed, implements the method of any of claims 1 to 5.
CN202110502915.2A 2021-05-10 2021-05-10 Safety protection method for digital currency transaction data Active CN112990928B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110502915.2A CN112990928B (en) 2021-05-10 2021-05-10 Safety protection method for digital currency transaction data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110502915.2A CN112990928B (en) 2021-05-10 2021-05-10 Safety protection method for digital currency transaction data

Publications (2)

Publication Number Publication Date
CN112990928A true CN112990928A (en) 2021-06-18
CN112990928B CN112990928B (en) 2021-08-24

Family

ID=76337343

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110502915.2A Active CN112990928B (en) 2021-05-10 2021-05-10 Safety protection method for digital currency transaction data

Country Status (1)

Country Link
CN (1) CN112990928B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115906183A (en) * 2023-01-06 2023-04-04 南京理工大学 Auditable and traceable block chain privacy protection system and method

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108628889A (en) * 2017-03-21 2018-10-09 北京京东尚科信息技术有限公司 Sampling of data mthods, systems and devices based on timeslice
CN109325747A (en) * 2018-08-30 2019-02-12 阿里巴巴集团控股有限公司 Money transfer method and device based on block chain
CN110009318A (en) * 2019-03-22 2019-07-12 陕西师范大学 A kind of digital cash method for tracing based on door sieve coin
US20200042994A1 (en) * 2018-08-06 2020-02-06 Alibaba Group Holding Limited Method, apparatus and electronic device for blockchain transactions
CN111079190A (en) * 2019-12-31 2020-04-28 深圳市网心科技有限公司 Block chain supply chain transaction hiding dynamic supervision system and method
CN111160909A (en) * 2019-12-31 2020-05-15 深圳市网心科技有限公司 Block chain supply chain transaction hiding static supervision system and method
CN111340488A (en) * 2020-02-21 2020-06-26 数据通信科学技术研究所 Method and device for generating monitorable secret transaction amount
CN111401875A (en) * 2020-05-29 2020-07-10 支付宝(杭州)信息技术有限公司 Block chain transfer method and device based on account model
CN111815322A (en) * 2020-06-08 2020-10-23 北京邮电大学 Distributed payment method with selectable privacy service based on Ether house
CN112771562A (en) * 2019-10-31 2021-05-07 深圳市网心科技有限公司 Account model-based transaction method, device, system and storage medium

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108628889A (en) * 2017-03-21 2018-10-09 北京京东尚科信息技术有限公司 Sampling of data mthods, systems and devices based on timeslice
US20200042994A1 (en) * 2018-08-06 2020-02-06 Alibaba Group Holding Limited Method, apparatus and electronic device for blockchain transactions
CN109325747A (en) * 2018-08-30 2019-02-12 阿里巴巴集团控股有限公司 Money transfer method and device based on block chain
CN110009318A (en) * 2019-03-22 2019-07-12 陕西师范大学 A kind of digital cash method for tracing based on door sieve coin
CN112771562A (en) * 2019-10-31 2021-05-07 深圳市网心科技有限公司 Account model-based transaction method, device, system and storage medium
CN111079190A (en) * 2019-12-31 2020-04-28 深圳市网心科技有限公司 Block chain supply chain transaction hiding dynamic supervision system and method
CN111160909A (en) * 2019-12-31 2020-05-15 深圳市网心科技有限公司 Block chain supply chain transaction hiding static supervision system and method
CN111340488A (en) * 2020-02-21 2020-06-26 数据通信科学技术研究所 Method and device for generating monitorable secret transaction amount
CN111401875A (en) * 2020-05-29 2020-07-10 支付宝(杭州)信息技术有限公司 Block chain transfer method and device based on account model
CN111815322A (en) * 2020-06-08 2020-10-23 北京邮电大学 Distributed payment method with selectable privacy service based on Ether house

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BENEDIKT BUNZ等: "Bulletproofs: Short Proofs for Confidential Transactions and More", 《IEEE XPLORE》 *
张凡等: "一种高效的范围证明方案", 《密码学报》 *
陈逸涛等: "基于隐私保护的央行数字货币监管审计架构", 《通信技术》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115906183A (en) * 2023-01-06 2023-04-04 南京理工大学 Auditable and traceable block chain privacy protection system and method

Also Published As

Publication number Publication date
CN112990928B (en) 2021-08-24

Similar Documents

Publication Publication Date Title
CN111008836B (en) Privacy security transfer payment method, device, system and storage medium
Franco Understanding Bitcoin: Cryptography, engineering and economics
CN109242675B (en) Asset publishing method and device based on block chain and electronic equipment
JP2023134800A (en) Smart contract execution using distributed coordination
CN110520881A (en) Method and system for secure data record distribution using blockchains
KR20200066260A (en) System and method for information protection
Lee et al. A Survey on Security and Privacy in Blockchain-based Central Bank Digital Currencies.
CN102170356B (en) Authentication system realizing method supporting exclusive control of digital signature key
Kumar et al. Decentralising finance using decentralised blockchain oracles
CN110784320A (en) Distributed key implementation method and system and user identity management method and system
US20230254299A1 (en) Apparatus and methods for credentialing users across user devices
Jain et al. A blockchain-based distributed network for secure credit scoring
US11424938B1 (en) Credentialed miners for a blockchain
Nica et al. Cryptocurrencies: Concept and current market structure
Naik et al. From portfolio optimization to quantum blockchain and security: A systematic review of quantum computing in finance
CN112990928B (en) Safety protection method for digital currency transaction data
Blanton Improved conditional e-payments
Islam A privacy-preserving transparent central bank digital currency system based on consortium blockchain and unspent transaction outputs
CN111523892B (en) Block chain cross-chain transaction method and device
Tomov Challenges of blockchain technologies in the future
Adam Blockchain Technology for Business Processes: Meaningful Use of the New Technology in Businesses
Meng et al. Themis: Towards decentralized escrow of cryptocurrencies without trusted third parties
Sorrell et al. Blockchain Technology: Opportunities and Risks
Shaikh et al. Applications of Blockchain Technology and Crypto Currencies: Current Practice and Future Trends
Thomas Blockchain technology: addressing the risk of digital assets exchange

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
OL01 Intention to license declared