WO2024098589A1 - 事务监管方法、装置、电子设备及存储介质 - Google Patents

事务监管方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
WO2024098589A1
WO2024098589A1 PCT/CN2023/079195 CN2023079195W WO2024098589A1 WO 2024098589 A1 WO2024098589 A1 WO 2024098589A1 CN 2023079195 W CN2023079195 W CN 2023079195W WO 2024098589 A1 WO2024098589 A1 WO 2024098589A1
Authority
WO
WIPO (PCT)
Prior art keywords
transaction
data
random number
participants
abnormal
Prior art date
Application number
PCT/CN2023/079195
Other languages
English (en)
French (fr)
Inventor
马平
兰春嘉
Original Assignee
上海零数众合信息科技有限公司
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 上海零数众合信息科技有限公司 filed Critical 上海零数众合信息科技有限公司
Publication of WO2024098589A1 publication Critical patent/WO2024098589A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present application relates to the field of blockchain technology, and in particular to a transaction supervision method, device, electronic device and storage medium.
  • the transaction data on the blockchain is open and transparent. Using the transaction data identifier, the corresponding transaction data can be read from the blockchain.
  • transaction data on the blockchain is private data and will be encrypted before being uploaded to the chain to prevent private data leakage.
  • the encrypted transaction data cannot be effectively supervised.
  • the present application provides a transaction supervision method, device, electronic device and storage medium, which take into account the privacy and controllability of relevant data of the transaction to be supervised.
  • a transaction supervision method comprising:
  • the reference regulatory data includes a public key, a random number hidden ciphertext, and an amount random hidden ciphertext
  • the transaction participants include a transaction executor and a transaction obfuscator
  • the transaction executors include a transaction initiator and a transaction receiver
  • the ciphertext is randomly hidden according to the target transaction random number, each public key and each amount to determine the transaction initiator, transaction recipient and target resource transfer amount of the transaction to be regulated;
  • the current resource balances of the transaction initiator and the transaction recipient are updated respectively.
  • a transaction supervision device including:
  • a reference regulatory data acquisition module is used to obtain reference regulatory data of at least two transaction participants corresponding to the transaction to be regulated from the blockchain; wherein the reference regulatory data includes a public key, a random number hidden ciphertext, and an amount random hidden ciphertext; the transaction participants include a transaction executor and a transaction obfuscator; the transaction executor includes a transaction initiator and a transaction receiver;
  • a random number determination module configured to determine a target transaction random number according to the first preset private supervision data and the second preset private supervision data
  • a random number verification module used to verify the reference transaction random number used to generate the reference regulatory data based on the target transaction random number and the random number hidden ciphertext;
  • the transfer amount determination module is used to determine the target resource transfer amount of the transaction initiator, the transaction recipient and the transaction to be regulated based on the target transaction random number, each public key and each amount of randomly hidden ciphertext if the verification is passed;
  • the current balance update module is used to update the current resource balances of the transaction initiator and the transaction receiver respectively according to the target resource transfer amount.
  • an electronic device including:
  • processors one or more processors
  • a memory for storing one or more programs
  • the one or more processors implement the transaction supervision method as described in any embodiment of the present application.
  • a computer-readable storage medium which stores computer instructions, and the computer instructions are used to enable a processor to implement the transaction supervision method described in any embodiment of the present application when executed.
  • the technical solution of the embodiment of the present application obtains reference regulatory data of at least two transaction participants corresponding to the transaction to be regulated from the blockchain; determines the target transaction random number according to the first preset private regulatory data and the second preset private regulatory data; verifies the reference transaction random number used to generate the reference regulatory data according to the target transaction random number and the random number hidden ciphertext; if the verification is passed, determines the target resource transfer amount of the transaction initiator, the transaction recipient and the transaction to be regulated according to the target transaction random number, each public key and each amount randomly hidden ciphertext; updates the current resource balances of the transaction initiator and the transaction recipient respectively according to the target resource transfer amount; takes into account the privacy and controllability of the relevant data of the transaction to be regulated.
  • FIG1 is a flow chart of a transaction supervision method provided according to Embodiment 1 of the present application.
  • FIG2 is a flow chart of a transaction supervision method provided according to Embodiment 2 of the present application.
  • FIG3 is a flow chart of a transaction supervision method provided according to Embodiment 3 of the present application.
  • FIG4 is a flow chart of a transaction supervision method provided according to Embodiment 4 of the present application.
  • FIG5 is a schematic diagram of the structure of a transaction supervision device provided according to Embodiment 5 of the present application.
  • FIG6 is a schematic diagram of the structure of an electronic device that implements the transaction supervision method according to an embodiment of the present application.
  • Figure 1 is a flow chart of a transaction supervision method provided in Example 1 of the present application. This embodiment can be applicable to the situation of supervising executed transactions on the blockchain.
  • the method can be executed by a transaction supervision device.
  • the transaction supervision device can be implemented in the form of hardware and/or software.
  • the transaction supervision device can be configured in an electronic device.
  • the transaction supervision method shown in FIG1 is applied to the transaction supervisor, and includes:
  • S110 Obtain reference regulatory data of at least two transaction participants corresponding to the transaction to be regulated from the blockchain; wherein the reference regulatory data includes a public key, a random number hidden ciphertext, and an amount random hidden ciphertext; the transaction participants include a transaction executor and a transaction obfuscator; the transaction executors include a transaction initiator and a transaction receiver.
  • the reference regulatory data includes a public key, a random number hidden ciphertext, and an amount random hidden ciphertext
  • the transaction participants include a transaction executor and a transaction obfuscator
  • the transaction executors include a transaction initiator and a transaction receiver.
  • the pending regulatory transaction can be a resource transfer transaction executed by the transaction participants.
  • the pending regulatory transaction has been completed, and the transaction-related data such as reference regulatory data has been stored on the blockchain, but supervision has not yet been carried out.
  • the transaction participants may be all parties involved in the transaction to be regulated.
  • the transaction participants may include the transaction executor and the transaction obfuscator; the transaction executor is used to represent the executor who actually executes the transaction to be regulated, and may include the transaction initiator and the transaction receiver.
  • the transaction initiator may be the resource transferor
  • the transaction receiver may be the resource transferor.
  • the transaction obfuscator is used as a third party other than the transaction executor to confuse the categories of the transaction participants. In fact, the transaction obfuscator does not actually execute the transaction to be regulated.
  • the reference regulatory data may be the reference data required for supervising the regulatory affairs, wherein the reference regulatory data may include: a public key, a random number hidden ciphertext, and an amount random hidden ciphertext.
  • the public key can be used as an identity identifier to identify the transaction participants.
  • the public key can be obtained from a set of public keys of transaction participants pre-set on the blockchain.
  • the random number hidden ciphertext is the encryption result of the reference transaction random number used by the transaction initiator when generating reference regulatory data for the transaction to be regulated.
  • the random number hidden ciphertext is generated by the transaction initiator and stored in the blockchain.
  • the reference transaction random number can be generated by the transaction initiator by performing elliptic curve multiple point operations on the reference transaction random number generated by itself and the elliptic curve generator.
  • the reference transaction random number is generated based on a dual elliptic curve deterministic pseudo-random number generator using a first elliptic curve point and a second elliptic curve point.
  • the elliptic curve generator can be pre-set and adjusted based on the experience of the technician.
  • P is the first elliptic curve point
  • p is the first preset private supervision data
  • G is the elliptic curve generator
  • * is the elliptic curve multiple point operator.
  • Q is the second elliptic curve point
  • q is the second preset private supervision data
  • G is the elliptic curve generator
  • * is the elliptic curve multiple point operator.
  • seed is the first preset private random number
  • Z m ⁇ 0,1,2,...m-1 ⁇
  • m is a 128-bit large integer
  • P is the first elliptic curve point
  • Q is the second elliptic curve point
  • r is the reference transaction random number.
  • the random hidden ciphertext of the amount is the encryption result of the actual amount of transferred resources in the transaction to be regulated.
  • the random hidden ciphertext of the amount of different transaction participants is generated in different ways, so the category of different transaction participants can be determined through the random hidden ciphertext of the amount.
  • the transaction obfuscation party's amount is randomly hidden in the ciphertext, based only on the reference transaction random number and the transaction obfuscation.
  • the public key of the obfuscator is generated. Exemplarily, it can be generated by performing elliptic curve multiple point operations on the reference transaction random number and the public key of the transaction obfuscator.
  • Ci is the random hidden ciphertext of the amount of the i-th transaction obfuscator; r is the reference transaction random number; yi is the public key of the i-th transaction obfuscator; * is the elliptic curve multiple point operator; n is the total number of transaction participants; l0 is the transaction initiator; l1 is the transaction recipient.
  • the random hidden ciphertext of the transaction executor's amount is generated based on the reference transaction random number, the public key of the transaction executor and the actual resource transfer amount.
  • the reference transaction random number and the public key of the transaction executor can be subjected to elliptic curve multiple point operation to generate the first ciphertext reference data;
  • the resource transfer amount and the elliptic curve generator can be subjected to elliptic curve multiple point operation to generate the second ciphertext reference data; if the transaction executor is the transaction initiator, the difference between the first ciphertext reference data and the second ciphertext reference data is used as the random hidden ciphertext of the transaction initiator's amount; if the transaction executor is the transaction receiver, the sum of the first ciphertext reference data and the second ciphertext reference data is used as the random hidden ciphertext of the transaction executor's amount.
  • the following formula can be used to determine the random hidden ciphertext of the amount of the transaction recipient:
  • S120 Determine a target transaction random number according to the first preset private supervision data and the second preset private supervision data.
  • the first preset private supervision data and the second preset private supervision data can be pre-set by the transaction supervisor during the blockchain creation phase.
  • the target transaction random number is the transaction random number inferred by the transaction supervisor, which corresponds to the reference transaction random number used by the transaction initiator when generating the transaction to be supervised.
  • the transaction supervisor may generate a target transaction random number based on the first preset private supervision data and the second preset private supervision data through a dual elliptic curve deterministic pseudo-random number generator.
  • the reference transaction random number can be generated by the transaction initiator, and the private data used to generate the random number hidden ciphertext and the amount random hidden ciphertext is privately stored by the transaction initiator. Verifying the reference transaction random number can be equivalent to verifying the authenticity of the reference regulatory data of the transaction to be regulated.
  • the result of elliptic curve multiple point operation on the target transaction random number and the elliptic curve generator can be compared with the random number hidden ciphertext; if the two are the same, the reference transaction random number is verified, that is, the reference regulatory data is verified; if the two are different, the reference transaction random number verification fails, that is, the reference regulatory data verification fails.
  • the ciphertext is randomly hidden according to the target transaction random number, each public key and each amount to determine the target resource transfer amount of the transaction initiator, the transaction recipient and the transaction to be regulated.
  • the target resource transfer amount is the amount of resources actually transferred in the matters to be regulated.
  • the verification is successful, it means that the reference regulatory data of the transaction to be regulated is authentic.
  • the random hidden ciphertext of each amount can be calculated through the target transaction random number and each public key to obtain the category of each transaction participant and the target resource transfer amount of the transaction executor.
  • the category of each transaction participant corresponds to the transaction executor and the transaction obfuscator; among them, the transaction executor includes the transaction initiator and the transaction receiver.
  • the category of each transaction participant can be distinguished according to the target transaction random number, each public key and each amount randomly hidden ciphertext, and the transaction obfuscator and the transaction executor can be obtained; and through the public key and elliptic curve generator of the transaction executor, based on the random hidden ciphertext generation method of the amount of different categories of transaction executors, the target resource transfer amount is reversely enumerated, and according to the exhaustive results of the target resource transfer amount, the corresponding category of each transaction executor is auxiliary determined, that is, the transaction initiator and the transaction executor are determined.
  • the current resource balance may be the latest resource balance.
  • the current resource balance of each transaction executor can be determined, wherein the current resource balance of the transaction executor is determined based on the registered resource amount of the transaction executor obtained from the blockchain and the resource transfer amount of the historical supervised transaction. According to the target resource transfer amount, the current resource balance of the transaction recipient is increased, and the current resource balance of the transaction initiator is reduced.
  • the registered resource amount may be the initial resource amount when the transaction executor registers on the blockchain, and the registered resource amount is used as the initial value of the current resource amount; the historical supervised transactions of the transaction executor are traversed from the blockchain, and the actual resource amount of each historical supervised transaction is calculated based on the actual resource amount of each historical supervised transaction.
  • the source has transferred amount, and the current resource amount of the corresponding transaction executor is updated sequentially until the transaction to be regulated is traversed; according to the target resource transfer amount of the transaction to be regulated, the resource transfer amount of the corresponding transaction executor is updated.
  • This solution achieves dynamic update of the current resource balance of each transaction executor by determining the current resource balance of each transaction executor, increasing the current resource balance of the transaction recipient according to the target resource transfer amount, and reducing the current resource balance of the transaction initiator. It utilizes the registered resource amount of the transaction executor and the resource transfer amount of historical supervised transactions to gradually determine the current resource balance of each transaction executor, and updates the current balance according to the target resource transfer amount, thereby ensuring the accuracy of the updated current resource balance.
  • the current resource amount of each transaction executor can be pre-stored in the transaction regulator, and each time the transaction executor participates in the execution of a transaction and the executed transaction is passed as a transaction to be supervised, the current resource amount of the corresponding transaction executor is dynamically updated according to the actual resource transfer amount of the local transaction to be supervised.
  • updating the current resource balance of each transaction executor may be to increase the current resource balance of the transaction receiver by the target resource transfer amount to obtain the updated current resource balance of the transaction receiver, and to reduce the current resource balance of the transaction initiator by the target resource transfer amount to obtain the updated current resource balance of the transaction initiator.
  • the current resource amount of the corresponding transaction executor is dynamically updated according to the actual resource transfer amount of the local pending regulation transaction, thereby improving the efficiency of updating the current resource balance.
  • the technical solution of the embodiment of the present application realizes the prediction of the target transaction random number through the pre-set first preset private supervision data and the second preset private supervision data; based on the predicted target transaction random number and the random number hidden ciphertext obtained from the blockchain, the reference transaction random number used to generate the reference supervision data is verified, and the authenticity of the reference transaction random number obtained on the chain is effectively verified, thereby ensuring the authenticity of the transaction to be regulated.
  • the target resource transfer amount of the transaction initiator, the transaction recipient and the transaction to be regulated is determined according to the target transaction random number, each public key and each amount randomly hidden ciphertext, and the current resource balance of the transaction initiator and the transaction recipient is updated according to the target resource transfer amount, respectively, so as to realize the effective supervision of the identity category and target resource transfer amount of each transaction participant when the transaction to be regulated obtained on the chain is not transparent, thereby taking into account the privacy and controllability of the data related to the transaction to be regulated.
  • FIG. 2 is a flow chart of a transaction supervision method provided in Example 2 of the present application. Based on the above-mentioned embodiments, this embodiment refines the operation of "determining the transaction initiator, the transaction receiver and the target resource transfer amount of the transaction to be supervised according to the target transaction random number, each public key and each amount randomly hidden ciphertext" into "determining the first transaction ciphertext to be verified of each transaction participant according to the target transaction random number and each public key; using the transaction participant corresponding to the transaction ciphertext to be verified that is the same as the randomly hidden ciphertext of the corresponding amount as the transaction obfuscation party; determining the transaction executor according to the transaction obfuscation party; determining the transaction initiator, the transaction receiver and the target resource transfer amount according to the target transaction random number, the public key of the transaction executor and the second transaction reference ciphertext of the transaction executor" to improve the effective supervision of the transaction data itself of the transaction to be supervised. It should be noted that for the parts not described
  • the transaction supervision method includes:
  • S210 Obtain reference regulatory data of at least two transaction participants corresponding to the transaction to be regulated from the blockchain; wherein the reference regulatory data includes a public key, a random number hidden ciphertext, and an amount random hidden ciphertext; the transaction participants include a transaction executor and a transaction obfuscator; the transaction executors include a transaction initiator and a transaction receiver.
  • the reference regulatory data includes a public key, a random number hidden ciphertext, and an amount random hidden ciphertext
  • the transaction participants include a transaction executor and a transaction obfuscator
  • the transaction executors include a transaction initiator and a transaction receiver.
  • S220 Determine a target transaction random number according to the first preset private supervision data and the second preset private supervision data.
  • the first transaction ciphertext to be verified may be generated by performing elliptic curve multiple point operations on the target transaction random number and each public key.
  • Ciphertext1 i r'*y i ;
  • Ciphertext1 i is the first transaction ciphertext to be verified of the i-th transaction participant; r' is the target transaction random number; yi is the public key of the i-th transaction participant; * is the elliptic curve multiple point operator.
  • the transaction participant corresponding to the first transaction ciphertext to be verified that is identical to the randomly hidden ciphertext of the corresponding amount is regarded as the transaction obfuscating party.
  • Transaction obfuscator Where Ci is the random hidden ciphertext of the amount of the ith transaction participant, r' is the target transaction random number; yi is the public key of the ith transaction participant; * is the elliptic curve multiple point operator.
  • S260 Determine the transaction executor according to the transaction obfuscator.
  • transaction executors may be determined as the transaction executors.
  • S270 Determine the transaction initiator, the transaction recipient, and the target resource transfer amount according to the target transaction random number, the public key of the transaction executor, and the second transaction reference ciphertext of the transaction executor.
  • the second transaction ciphertext to be verified of each transaction executor can be determined based on at least one preset exhaustive amount, a target transaction random number and a public key of the transaction executor; the preset exhaustive amount corresponding to the second transaction ciphertext to be verified that is identical to the second transaction reference ciphertext of any transaction executor is used as the target resource transfer amount; the transaction executor in the second transaction ciphertext to be verified that corresponds to the target resource transfer amount and is identical to the corresponding second transaction reference ciphertext is used as the transaction initiator; and the transaction executor different from the corresponding second transaction reference ciphertext is used as the transaction receiver.
  • the preset exhaustive amount can be set and continuously adjusted based on the experience of the technical personnel.
  • an elliptic curve multiple-point operation can be performed on the target transaction random number and the public key of the transaction executor to obtain a first operation result; an elliptic curve multiple-point operation can be performed on at least one preset exhaustive amount and an elliptic curve generator to obtain a second operation result; and the difference between the first operation result and the second operation result is used as the second transaction ciphertext to be verified.
  • Ceum0 and Ceum1 are the second transaction ciphertexts to be verified of each transaction executor; b is at least one preset exhaustive amount; G is the elliptic curve generator; r' is the target transaction random number; y0 and y1 are the public keys of each transaction executor; * is the elliptic curve multiple point operator.
  • At least one preset exhaustive amount b can be exhaustively enumerated to determine the second transaction ciphertexts C eum0 and C eum1 corresponding to different preset exhaustive amounts b.
  • the second transaction ciphertexts C eum0 to be verified are respectively compared with the second transaction reference ciphertexts of each transaction executor. and and compare the second transaction ciphertext C eum1 to be verified with the second transaction reference ciphertext of each transaction executor. and For comparison; if or The corresponding preset exhaustive amount is used as the target resource transfer amount.
  • the transaction executor corresponding to the second transaction ciphertext C eum0 to be verified is the transaction initiator, and the transaction executor corresponding to the second transaction ciphertext C eum1 to be verified is the transaction receiver. It is determined that the transaction executor corresponding to the second transaction ciphertext C eum1 to be verified is the transaction initiator, and the transaction executor corresponding to the second transaction ciphertext C eum0 to be verified is the transaction receiver.
  • This scheme determines the second transaction ciphertext to be verified of each transaction executor according to at least one preset exhaustive amount, a target transaction random number and a public key of the transaction executor, takes the preset exhaustive amount corresponding to the second transaction ciphertext to be verified that is the same as the second transaction reference ciphertext of any transaction executor as the target resource transfer amount, takes the transaction executor whose target resource transfer amount corresponds to the second transaction ciphertext to be verified that is the same as the corresponding second transaction reference ciphertext as the transaction initiator, and takes the transaction executor who is different from the corresponding second transaction reference ciphertext as the transaction receiver, calculates the second transaction ciphertext to be verified using at least one preset exhaustive amount, and compares the obtained second-generation verification transaction ciphertext with the second transaction reference ciphertext of any transaction executor, thereby realizing the determination of the category of the transaction executor and the target resource transfer amount, and improving the calculation efficiency.
  • S280 Update the current resource balances of the transaction initiator and the transaction recipient respectively according to the target resource transfer amount.
  • the technical solution of the embodiment of the present application determines the first transaction ciphertext to be verified of each transaction participant based on the target transaction random number and each public key, and uses the transaction participant corresponding to the transaction ciphertext to be verified that is the same as the random hidden ciphertext of the corresponding amount as the transaction obfuscation party, and determines the transaction executor based on the transaction obfuscation party, thereby preliminarily determining the category to which the transaction participant belongs, thereby narrowing the screening range for further determining the transaction initiator and transaction receiver among the transaction executors; according to the target transaction random number, the public key of the transaction executor and the second transaction reference ciphertext of the transaction executor, the transaction initiator, transaction receiver and target resource transfer amount are determined, thereby improving the effective supervision of the transaction data itself of the regulated transaction, and laying the foundation for the effective update of the current resource balance based on the transaction data itself.
  • FIG3 is a flow chart of a transaction supervision method provided in the third embodiment of the present application.
  • the present embodiment refines the operation of determining the target transaction random number into "generating the inferred basic data according to the inverse of the first preset private supervision data and the second preset private supervision data; generating the target transaction random number according to the inferred basic data and the public elliptic curve point; wherein the public elliptic curve point is generated according to the first preset private random number and the second elliptic curve point generated based on the second preset private supervision data and the elliptic curve generator" to improve the generation mechanism of the target transaction random number.
  • the parts not described in detail in the embodiments of the present application, please refer to the relevant descriptions of other embodiments.
  • the transaction supervision method includes:
  • S310 Obtain reference regulatory data of at least two transaction participants corresponding to the transaction to be regulated from the blockchain; wherein the reference regulatory data includes a public key, a random number hidden ciphertext, and an amount random hidden ciphertext; the transaction participants include a transaction executor and a transaction obfuscator; the transaction executors include a transaction initiator and a transaction receiver.
  • the reference regulatory data includes a public key, a random number hidden ciphertext, and an amount random hidden ciphertext
  • the transaction participants include a transaction executor and a transaction obfuscator
  • the transaction executors include a transaction initiator and a transaction receiver.
  • S320 Generate an inference based on the first preset privacy supervision data and the inverse of the second preset privacy supervision data. Measure basic data.
  • the inferred basic data may be generated by performing an elliptic curve multiple point operation on the inverse of the first preset private supervision data and the second preset private supervision data.
  • e is the inferred basic data
  • p is the first preset private supervision data
  • q is the second preset private supervision data
  • * is the elliptic curve multiple point operator.
  • S330 Generate a target transaction random number based on the inferred basic data and the public elliptic curve point.
  • the public elliptic curve point can be generated by the transaction initiator in advance and specified in advance, which is used as an important basis for the random number reasoning process of the target transaction.
  • a second elliptic curve point may be generated based on the second preset private supervision data and the elliptic curve generator; and a public elliptic curve point may be generated according to the first preset private random number and the second elliptic curve point.
  • Q is the second elliptic curve point
  • q is the second preset private supervision data
  • G is the elliptic curve generator
  • * is the elliptic curve multiple point operator.
  • H is the public elliptic curve point of the transaction to be regulated stored on the blockchain; seed is the first preset private random number; Q is the second elliptic curve point; * is the elliptic curve multiple point operator.
  • the first preset private random number seed can be randomly and privately selected by the transaction initiator when initiating the transaction.
  • a first elliptic curve point can be generated according to the first preset private supervision data, and a target transaction random number can be inferred based on the first elliptic curve point, the inferred basic data and the public elliptic curve point based on a dual elliptic curve deterministic pseudo-random number generator.
  • P is the first elliptic curve point
  • p is the first preset private supervision data
  • G is the elliptic curve generator
  • * is the elliptic curve multiple point operator.
  • P is the first elliptic curve point; is the horizontal coordinate x of the point (x, y) on the elliptic curve G; Q is the second elliptic curve point; r' is the target transaction random number.
  • the public elliptic curve points are generated by the pre-specified logic of the transaction initiator and serve as an important basis for the random number reasoning process of the target transaction, when the generation logic of the public elliptic curve points is not established, it will lead to the inability to supervise the regulated affairs. Therefore, the public elliptic curve points can also be verified with the help of blockchain nodes in the blockchain network, that is, the pre-specified logic of the public elliptic curve points can be verified.
  • the elliptic curve auxiliary point and auxiliary random code sent by the transaction initiator can be obtained; wherein the elliptic curve auxiliary point is generated based on the second preset private random number and the second elliptic curve point; the auxiliary random code is generated based on the elliptic curve auxiliary point, the first preset private random number and the second preset private random number; based on the elliptic curve auxiliary point and the public elliptic curve point, first verification data is generated; based on the auxiliary random code and the second elliptic curve point, second verification data is generated; and based on the consistency of the first verification data and the second verification data, the public elliptic curve point is verified.
  • the elliptic curve auxiliary point and auxiliary random code are generated by the transaction initiator when executing the transaction to be regulated and generating reference supervision data.
  • is an elliptic curve auxiliary point
  • k is a second preset secret random number
  • Q is a second elliptic curve point
  • * is an elliptic curve multiple point operator.
  • the second preset secret random number is pre-set by the transaction initiator.
  • S seed is the auxiliary random code
  • k is the second preset private random number
  • is the elliptic curve auxiliary point
  • seed is the first preset private random number
  • * is the elliptic curve multiple point operator
  • Hash() is the preset hash function.
  • the transaction verifier obtains the elliptic curve auxiliary point and the auxiliary random code sent by the transaction initiator.
  • the hash value of the elliptic curve auxiliary point can be determined; the hash value and the public elliptic curve point are subjected to elliptic curve multiple point operation to obtain an operation result; and the sum of the aforementioned operation result and the elliptic curve auxiliary point is used as the first verification data.
  • quote 1 is the first verification data
  • is the elliptic curve auxiliary point
  • H is the public elliptic curve point
  • * is the elliptic curve multiple point operator.
  • quote 2 is the second verification data
  • S seed is the auxiliary random code
  • Q is the second elliptic curve point
  • * is the elliptic curve multiple point operator.
  • the public elliptic curve point verification passes; if the first verification data is inconsistent with the second verification data, the public elliptic curve point verification fails.
  • the verification process of the public elliptic curve point by the transaction verifier can be carried out after the execution of the transaction to be supervised is completed and before the transaction supervisor supervises the transaction to be supervised. It can be understood that the pre-verification of the public elliptic curve point by the blockchain node provides a guarantee for the effective supervision of the transaction supervisor on the supervised transaction.
  • the ciphertext is randomly hidden according to the target transaction random number, each public key and each amount to determine the target resource transfer amount of the transaction initiator, the transaction recipient and the transaction to be regulated.
  • S360 Update the current resource balances of the transaction initiator and the transaction recipient respectively according to the target resource transfer amount.
  • This solution generates inferred basic data based on the inverse of the first preset private supervision data and the second preset private supervision data, and generates a target transaction random number based on the inferred basic data and the public elliptic curve point, thereby improving the generation mechanism of the target transaction random number and improving the accuracy of the generated target transaction random number, laying a foundation for the subsequent verification of the reference transaction random number based on the target transaction random number, and providing a guarantee for the subsequent effective update of the current resource balance.
  • FIG4 is a flow chart of a transaction supervision method provided in Example 4 of the present application.
  • this embodiment adds “if the verification fails, obtain standard supervision data from the transaction participants, and determine abnormal participants among the transaction participants based on the standard supervision data and the random hidden ciphertext of each amount” after the operation of “verifying the reference transaction random number used to generate the reference supervision data according to the target transaction random number and the random number hidden ciphertext”, so as to improve the effective supervision of abnormal participants in the supervision affairs.
  • this embodiment adds “if the verification fails, obtain standard supervision data from the transaction participants, and determine abnormal participants among the transaction participants based on the standard supervision data and the random hidden ciphertext of each amount” after the operation of “verifying the reference transaction random number used to generate the reference supervision data according to the target transaction random number and the random number hidden ciphertext”, so as to improve the effective supervision of abnormal participants in the supervision affairs.
  • the transaction supervision method includes:
  • S410 Obtain reference regulatory data of at least two transaction participants corresponding to the transaction to be regulated from the blockchain; wherein the reference regulatory data includes a public key, a random number hidden ciphertext, and an amount random hidden ciphertext; the transaction participants include a transaction executor and a transaction obfuscator; the transaction executors include a transaction initiator and a transaction receiver.
  • the reference regulatory data includes a public key, a random number hidden ciphertext, and an amount random hidden ciphertext
  • the transaction participants include a transaction executor and a transaction obfuscator
  • the transaction executors include a transaction initiator and a transaction receiver.
  • S420 Determine a target transaction random number according to the first preset private supervision data and the second preset private supervision data.
  • S430 Verify the reference transaction random number used to generate the reference supervision data according to the target transaction random number and the random number hidden ciphertext. If the verification is successful, execute S440; if the verification is unsuccessful, execute S460.
  • standard regulatory data is used to verify the authenticity of the reference regulatory data of transaction participants on the blockchain.
  • the abnormal reference data can be obtained according to the standard regulatory data provided by the transaction participants and the method of generating the random hidden ciphertext of the amount; the abnormal reference data is compared with the random hidden ciphertext of the amount on the blockchain in sequence; the transaction participants with inconsistent comparison results are regarded as abnormal participants. After the abnormal participants are determined, they can be punished to achieve effective supervision of abnormal participants in regulatory affairs.
  • the technical solution of the embodiment of the present application determines abnormal participants among the transaction participants based on standard regulatory data obtained from the transaction participants and hidden ciphertexts of random numbers of each amount on the blockchain, and determines abnormal participants among the transaction participants by utilizing data from two different data sources, namely, the transaction participants and the blockchain, thereby achieving effective supervision over abnormal participants in regulatory transactions.
  • the random hidden ciphertext of the amount is generated in different ways.
  • the verification method used is also different.
  • the abnormal reference data of the transaction participants can be generated according to the standard supervision data;
  • the reference data and corresponding amounts are randomly hidden in ciphertext to identify abnormal parties among the transaction participants.
  • abnormal reference data corresponding to different verification methods can be generated for transaction participants respectively; the abnormal reference data corresponding to different verification methods are compared with the randomly hidden ciphertexts of the corresponding amounts, and the transaction participants with inconsistent comparison results are regarded as abnormal participants.
  • the above optional embodiment generates abnormal reference data of transaction participants based on the verification methods corresponding to the categories to which different transaction participants belong, respectively according to standard regulatory data, and randomly hides ciphertext according to each abnormal reference data and the corresponding amount to determine the abnormal participants among the transaction participants.
  • the above technical solution determines the abnormal reference data through different verification methods, improves the comprehensiveness of the abnormal reference data, avoids the omission of abnormal participants, and thus improves the accuracy of the abnormal participant determination results.
  • the standard regulatory data includes a public key, a standard resource transfer amount and a standard transaction random number; accordingly, the first abnormal reference data of the corresponding transaction participant can be determined based on the standard transaction random number and the public key of the transaction participant; the second abnormal reference data of the corresponding transaction participant can be determined based on the standard transaction random number, the public key of the transaction participant and the standard resource transfer amount, and the ciphertext is randomly hidden based on the first abnormal reference data, the second abnormal reference data and the corresponding amount to select the abnormal participant from the transaction participants.
  • the standard transaction random number and public key of each transaction participant can be subjected to elliptic curve multiple point operation to obtain the first abnormal reference data of each transaction participant; the standard transaction random number and public key of each transaction participant can be subjected to elliptic curve multiple point operation to obtain the first calculation result of each transaction participant, and then the standard resource transfer amount and elliptic curve generator of each transaction participant can be subjected to elliptic curve multiple point operation to obtain the second calculation result of each transaction participant; according to the verification method of the transaction initiator, the sum of the first calculation result and the second calculation result can be used as the second abnormal reference data of each transaction participant; according to the verification method of the transaction receiver, the difference between the first calculation result and the second calculation result can be used as the second abnormal reference data of each transaction participant.
  • the first abnormal reference data of each transaction participant and the second abnormal reference data of each transaction participant are compared with the corresponding amount random hidden ciphertext respectively, and the transaction participant with inconsistent comparison results is
  • the first abnormal reference data may be abnormal reference data generated according to the verification method of the transaction obfuscator.
  • elliptic curve multiple point operations can be performed on the standard transaction random number and the public key to generate the first abnormal reference data of each transaction participant that provides standard regulatory data.
  • Exception 1i r"*y i ;
  • Exception 1i is the first exception reference data of the i-th transaction participant; r” is the standard transaction random number; yi is the public key provided by the i-th transaction participant; * is the elliptic curve multiple point operator.
  • the second abnormal reference data may be abnormal reference data generated according to the verification method of the transaction executor.
  • the second abnormal reference data of each transaction participant providing standard supervision data can be generated according to the verification method of the transaction executor.
  • the verification method of the transaction executor may include: the verification method of the transaction initiator and the verification method of the transaction recipient.
  • Exception 2i is the second exception reference data of the i-th transaction participant; b” is the standard resource transfer amount; G is the elliptic curve generator; r” is the standard transaction random number; yi is the public key provided by each transaction participant; * is the elliptic curve multiple point operator.
  • Exception 2i is the second exception reference data; b” is the standard resource transfer amount; G is the elliptic curve generator; r” is the standard transaction random number; yi is the public key provided by each transaction participant; * is the elliptic curve multiple point operator.
  • the first abnormal reference data, the second abnormal reference data and the corresponding amount of randomly hidden ciphertext are compared. If the first abnormal reference data and the second abnormal reference data of the transaction participant do not have the same comparison result, the transaction participant is an abnormal participant.
  • a candidate participant can be selected from each transaction participant based on the consistency between the first abnormal reference data of the transaction participant and the random hidden ciphertext of the corresponding amount; the second abnormal reference data of the corresponding candidate participant can be determined based on the standard transaction random number, the public key of the candidate participant and the standard resource transfer amount; the abnormal participant can be selected from each candidate participant based on the consistency between the second abnormal reference data of the candidate participant and the random hidden ciphertext of the corresponding amount.
  • the abnormal participant can be directly selected from each transaction participant by directly selecting the candidate participant from each transaction participant and determining the second abnormal reference data of the corresponding candidate participant. This reduces the amount of calculation for the second abnormal reference data.
  • the first intermediate data can be determined based on the standard transaction random number and the public key of the candidate participant; the second intermediate data can be determined based on the standard resource transfer amount and the elliptic curve generator; the receiving reference value of the second abnormal reference data can be determined based on the sum of the first intermediate data and the second intermediate data; and the initiating reference value of the second abnormal reference data can be determined based on the difference between the first intermediate data and the second intermediate data.
  • the first intermediate data may be generated by performing an elliptic curve multiple-point operation on a standard transaction random number and a public key of a candidate participant.
  • Mid 1i is the first intermediate data of the i-th candidate participant; r” is the standard transaction random number; yi is the public key of each transaction participant; * is the elliptic curve multiple point operator.
  • the second intermediate data may be generated by performing elliptic curve multiple point operations on the standard resource transfer amount and the elliptic curve generator.
  • Mid 2i is the second intermediate data of the i-th candidate participant; b” is the standard resource transfer amount; G is the elliptic curve generator; * is the elliptic curve multiple point operator.
  • the received reference value may be the value of the second abnormal reference data generated according to the verification method of the transaction receiver.
  • the initiated reference value may be the value of the second abnormal reference data generated according to the verification method of the transaction initiator.
  • Ceum 1i ' Mid 1i +Mid 2i ;
  • Ceum 1i ' is the received reference value of the i-th candidate participant; Mid 1i is the first intermediate data of the i-th candidate participant; Mid 2i is the second intermediate data of the i-th candidate participant.
  • Ceum 0i ' is the initiating reference value of the i-th candidate participant; Mid 1i is the first intermediate data of the i-th candidate participant; Mid 2i is the second intermediate data of the i-th candidate participant.
  • the optional embodiment determines the first intermediate data according to the standard transaction random number and the public key of the candidate participant; determines the second intermediate data according to the standard resource transfer amount and the elliptic curve generator; According to the sum of the first intermediate data and the second intermediate data, the receiving reference value of the second abnormal reference data is determined; and according to the difference between the first intermediate data and the second intermediate data, the initiating reference value of the second abnormal reference data is determined, the second abnormal reference data is further refined, and the receiving reference value and the initiating reference value of the second abnormal reference data are determined, which provides data support for the subsequent determination of the category to which the abnormal participant belongs.
  • a transaction participant whose first abnormal reference data is consistent with a random hidden ciphertext of a corresponding amount may be regarded as a normal transaction obfuscating party, and transaction participants other than the normal transaction obfuscating party may be regarded as candidate participants; correspondingly, a candidate participant whose receiving reference value is consistent with a random hidden ciphertext of a corresponding amount may be regarded as a normal transaction receiver, and a candidate participant whose initiating reference value is consistent with a random hidden ciphertext of a corresponding amount may be regarded as a normal transaction initiator; transaction participants other than the normal transaction obfuscating party, the normal transaction receiver and the normal transaction initiator among the candidate participants may be regarded as abnormal participants.
  • the normal transaction obfuscating parties may be screened out and candidate participants may be determined using a process of elimination; normal transaction initiators and normal transaction receivers may be further screened out from the candidate participants; finally, transaction participants other than the normal transaction obfuscating parties, normal transaction receivers and normal transaction initiators may be identified as abnormal participants using a process of elimination.
  • the above optional embodiment regards the transaction participant whose first abnormal reference data is consistent with the random hidden ciphertext of the corresponding amount as the normal transaction obfuscator, and regards the transaction participants other than the normal transaction obfuscator as candidate participants, regards the candidate participant whose receiving reference value is consistent with the random hidden ciphertext of the corresponding amount as the normal transaction receiver, and regards the candidate participant whose initiating reference value is consistent with the random hidden ciphertext of the corresponding amount as the normal transaction initiator, and regards the transaction participants other than the normal transaction obfuscator, the normal transaction receiver and the normal transaction initiator among the candidate participants as abnormal participants, determines the candidate participants by excluding the normal transaction obfuscator from the transaction participants, and then determines the abnormal participants by excluding the normal transaction receiver and the normal transaction initiator from the candidate participants, determines the abnormal participants through gradual elimination, reduces the amount of data calculation, and improves the efficiency of determining the abnormal participants.
  • the abnormal participant if there is a normal transaction recipient and a normal transaction initiator, the abnormal participant is determined to be an abnormal transaction confusing party; if there are two candidate participants and there is a normal transaction recipient, the abnormal participant is determined to be an abnormal transaction initiator; if there are two candidate participants and there is a normal transaction initiator, the abnormal participant is determined to be an abnormal transaction recipient.
  • a normal transaction obfuscator is determined, and there is a normal transaction receiver among the candidate participants, and there is a normal transaction initiator, then the candidate participants other than the normal transaction receiver and the normal transaction initiator can be determined as abnormal participants, and the category of the abnormal participants can be determined as abnormal transaction obfuscators. If there are two candidate participants and it is determined that there is a normal transaction receiver, then the remaining candidate participant can be determined as an abnormal participant, and the category of the abnormal participant can be determined as an abnormal transaction initiator. If there are two candidate participants and it is determined that there is a normal transaction initiator, then the remaining candidate participant can be determined as an abnormal participant. The participant is an abnormal participant, and the category of the abnormal participant is determined to be an abnormal transaction receiver.
  • the above optional embodiments determine the abnormal participant as the abnormal transaction confusing party if there is a normal transaction receiver and a normal transaction initiator; determine the abnormal participant as the abnormal transaction initiator if there are two candidate participants and there is a normal transaction receiver; determine the abnormal participant as the abnormal transaction receiver if there are two candidate participants and there is a normal transaction initiator; determine the abnormal participant as the abnormal transaction receiver by elimination method using the determined normal transaction receiver and/or normal transaction initiator, and clarify the identity category of the abnormal participant so as to effectively punish different categories of abnormal participants.
  • the above optional embodiment selects a candidate participant from each transaction participant based on the consistency between the first abnormal reference data of the transaction participant and the random hidden ciphertext of the corresponding amount, determines the second abnormal reference data of the corresponding candidate participant based on the standard transaction random number, the standard resource transfer amount and the public key of the candidate participant, selects an abnormal participant from each candidate participant based on the consistency between the second abnormal reference data of the candidate participant and the random hidden ciphertext of the corresponding amount, performs a preliminary screening of the transaction participants, selects the candidate participants, and then selects the abnormal participant from the candidate participants, thereby reducing the amount of data calculation in the process of selecting the abnormal participant and improving the efficiency of determining the abnormal participant.
  • the above-mentioned optional embodiment provides effective data support for the determination of abnormal participants by concretizing the standard regulatory data into public keys, standard resource transfer amounts and standard transaction random numbers, and determining the first abnormal reference data and the second abnormal reference data according to different verification methods, thereby helping to improve the accuracy of the determination results of abnormal participants.
  • FIG. 5 is a schematic diagram of the structure of a transaction supervision device provided in Example 5 of the present application. This embodiment can be applied to supervise the executed transactions on the blockchain, the device can execute the transaction supervision method, the transaction supervision device can be implemented in the form of hardware and/or software, and the transaction supervision device can be configured in an electronic device that carries the transaction supervision function.
  • the device includes: a reference supervision data acquisition module 510, a random number determination module 520, a random number verification module 530, a transfer amount determination module 540 and a current balance update module 550.
  • the reference regulatory data acquisition module 510 is used to obtain reference regulatory data of at least two transaction participants corresponding to the transaction to be regulated from the blockchain; wherein the reference regulatory data includes a public key, a random number hidden ciphertext and an amount random hidden ciphertext; the transaction participants include a transaction executor and a transaction obfuscator; the transaction executors include a transaction initiator and a transaction receiver.
  • the random number determination module 520 is used to determine the target transaction random number according to the first preset private supervision data and the second preset private supervision data.
  • the random number verification module 530 is used to generate the random number of the target transaction and the random number hidden ciphertext. Verify with the reference transaction random number used by the reference regulatory data.
  • the transfer amount determination module 540 is used to determine the target resource transfer amount of the transaction initiator, the transaction recipient and the transaction to be supervised based on the target transaction random number, each public key and each amount randomly hidden ciphertext if the verification is passed.
  • the current balance updating module 550 is used to update the current resource balances of the transaction initiator and the transaction recipient respectively according to the target resource transfer amount.
  • the technical solution of the embodiment of the present application realizes the prediction of the target transaction random number through the pre-set first preset private supervision data and the second preset private supervision data; based on the predicted target transaction random number and the random number hidden ciphertext obtained from the blockchain, the reference transaction random number used to generate the reference supervision data is verified, and the authenticity of the reference transaction random number obtained on the chain is effectively verified, thereby ensuring the authenticity of the transaction to be regulated.
  • the target resource transfer amount of the transaction initiator, the transaction recipient and the transaction to be regulated is determined according to the target transaction random number, each public key and each amount randomly hidden ciphertext, and the current resource balance of the transaction initiator and the transaction recipient is updated according to the target resource transfer amount, respectively, so as to realize the effective supervision of the identity category and target resource transfer amount of each transaction participant when the transaction to be regulated obtained on the chain is not transparent, thereby taking into account the privacy and controllability of the data related to the transaction to be regulated.
  • the transfer amount determination module 540 includes: a first ciphertext determination unit, which is used to determine the first transaction ciphertext to be verified of each transaction participant based on the target transaction random number and each public key; a transaction obfuscation party determination unit, which is used to correspond to the transaction participant whose transaction ciphertext to be verified is the same as the random hidden ciphertext of the corresponding amount as the transaction obfuscation party; a transaction executor determination unit, which is used to determine the transaction executor based on the transaction obfuscation party; a transfer amount determination unit, which is used to determine the transaction initiator, the transaction execution recipient and the target resource transfer amount based on the target transaction random number, the public key of the transaction executor and the second transaction reference ciphertext of the transaction executor.
  • the transfer amount determination unit includes: a second ciphertext determination subunit, which is used to determine the second transaction ciphertext to be verified of each transaction executor based on at least one preset exhaustive amount, a target transaction random number and a public key of the transaction executor; a transfer amount determination subunit, which is used to take the preset exhaustive amount corresponding to the second transaction ciphertext to be verified that is the same as the second transaction reference ciphertext of any transaction executor as the target resource transfer amount; a transaction initiator determination subunit, which is used to take the transaction executor in the second transaction ciphertext corresponding to the target resource transfer amount that is the same as the corresponding second transaction reference ciphertext as the transaction initiator, and take the transaction executor that is different from the corresponding second transaction reference ciphertext as the transaction receiver.
  • a second ciphertext determination subunit which is used to determine the second transaction ciphertext to be verified of each transaction executor based on at least one preset exhaustive amount, a target transaction random number and a
  • the current balance updating module 550 includes: a current balance determining unit, configured to determine the current resource balance of each transaction executor; wherein the current resource balance of the transaction executor is based on the registered resource amount of the transaction executor obtained from the blockchain and the historical supervised transaction amount. The amount of resources transferred is determined; a current balance updating unit is used to increase the current resource balance of the transaction recipient according to the target resource transfer amount, and to reduce the current resource balance of the transaction initiator.
  • the random number determination module 520 includes: a basic data generation unit, used to generate inferred basic data based on the inverse of the first preset private supervision data and the second preset private supervision data; a random number generation unit, used to generate a target transaction random number based on the inferred basic data and the public elliptic curve point; wherein the public elliptic curve point is generated based on the first preset private random number and the second elliptic curve point generated based on the second preset private supervision data and the elliptic curve generator.
  • the public elliptic curve point is verified by the blockchain node based on the following devices: an auxiliary point acquisition module, used to obtain the elliptic curve auxiliary point and the auxiliary random code sent by the transaction initiator; wherein the elliptic curve auxiliary point is generated based on the second preset random number and the second elliptic curve point; the auxiliary random code is generated based on the elliptic curve auxiliary point, the first preset random number and the second preset random number; a first verification data generation module, used to generate first verification data based on the elliptic curve auxiliary point and the public elliptic curve point; a second verification data generation module, used to generate second verification data based on the auxiliary random code and the second elliptic curve point; a public curve point verification module, used to verify the public elliptic curve point based on the consistency of the first verification data and the second verification data.
  • an auxiliary point acquisition module used to obtain the elliptic curve auxiliary point and the auxiliary random code sent by the transaction initi
  • the device also includes: an abnormal participant determination module, which is used to obtain standard regulatory data from the transaction participants if the verification fails, and determine the abnormal participants among the transaction participants based on the standard regulatory data and randomly hidden ciphertexts of each amount.
  • an abnormal participant determination module which is used to obtain standard regulatory data from the transaction participants if the verification fails, and determine the abnormal participants among the transaction participants based on the standard regulatory data and randomly hidden ciphertexts of each amount.
  • the abnormal participant determination module includes: an abnormal participant determination unit, which is used to generate abnormal reference data of the transaction participants based on the verification method corresponding to the categories to which different transaction participants belong and according to standard regulatory data, and to determine the abnormal participants among the transaction participants based on the abnormal reference data of the transaction participants and the corresponding amount of randomly hidden ciphertext.
  • the standard regulatory data includes a public key, a standard resource transfer amount and a standard transaction random number; accordingly, the abnormal participant determination unit includes: a first abnormal data determination subunit, used to determine the first abnormal reference data of the corresponding transaction participant based on the standard transaction random number and the public key of the transaction participant; an abnormal participant determination subunit, used to determine the second abnormal reference data of the corresponding transaction participant based on the standard transaction random number, the public key of the transaction participant and the standard resource transfer amount, and randomly hide the ciphertext based on the first abnormal reference data, the second abnormal reference data and the corresponding amount, and select the abnormal participant from each transaction participant.
  • a first abnormal data determination subunit used to determine the first abnormal reference data of the corresponding transaction participant based on the standard transaction random number and the public key of the transaction participant
  • an abnormal participant determination subunit used to determine the second abnormal reference data of the corresponding transaction participant based on the standard transaction random number, the public key of the transaction participant and the standard resource transfer amount, and randomly hide the ciphertext based on the first abnormal
  • the abnormal participant determination subunit includes: a candidate participant selection subunit, which is used to select a candidate participant from each transaction participant according to the consistency between the first abnormal reference data of the transaction participant and the random hidden ciphertext of the corresponding amount; a second abnormal data determination subunit, which is used to determine the candidate participant according to the standard transaction random number, the public key of the candidate participant and the standard resource transfer amount.
  • the second abnormal reference data of the corresponding candidate participant; the abnormal participant selection slave unit is used to select the abnormal participant from the candidate participants according to the consistency between the second abnormal reference data of the candidate participant and the random hidden ciphertext of the corresponding amount.
  • the second abnormal data is determined from the unit, which is specifically used to: determine the first intermediate data based on the standard transaction random number and the public key of the candidate participant; determine the second intermediate data based on the standard resource transfer amount and the elliptic curve generator; determine the receiving reference value of the second abnormal reference data based on the sum of the first intermediate data and the second intermediate data; and determine the initiating reference value of the second abnormal reference data based on the difference between the first intermediate data and the second intermediate data.
  • the candidate participant selects a slave unit, which is specifically used to: regard the transaction participant whose first abnormal reference data is consistent with the random hidden ciphertext of the corresponding amount as the normal transaction confusing party, and regard the transaction participants other than the normal transaction confusing party as the candidate participants; accordingly, the abnormal participant selects a slave unit, which is specifically used to: regard the candidate participant whose receiving reference value is consistent with the random hidden ciphertext of the corresponding amount as the normal transaction receiver, and regard the candidate participant whose initiating reference value is consistent with the random hidden ciphertext of the corresponding amount as the normal transaction initiator; and regard the transaction participants other than the normal transaction confusing party, the normal transaction receiver and the normal transaction initiator among the candidate participants as abnormal participants.
  • the abnormal participant is selected from the unit, which is specifically used to: if there is a normal transaction receiver and a normal transaction initiator, determine the abnormal participant as an abnormal transaction confusing party; if there are two candidate participants and there is a normal transaction receiver, determine the abnormal participant as an abnormal transaction initiator; if there are two candidate participants and there is a normal transaction initiator, determine the abnormal participant as an abnormal transaction receiver.
  • the transaction supervision device provided in the embodiments of the present application can execute the transaction supervision method provided in any embodiment of the present application, and has the corresponding functional modules and beneficial effects for executing each transaction supervision method.
  • Fig. 6 shows a block diagram of an electronic device 600 that can be used to implement an embodiment of the present application.
  • the electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers.
  • the electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices.
  • the components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present application described and/or required herein.
  • the electronic device 600 includes at least one processor 601, and a memory connected to the at least one processor 601 in communication, such as a read-only memory (ROM) 602, a random access memory (RAM) 603, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 601 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 602 or the computer program loaded from the storage unit 608 to the random access memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the electronic device 600 can also be stored.
  • the processor 601, ROM 602, and RAM 603 are connected to each other via a bus 604.
  • An input/output (I/O) interface 605 is also connected to the bus 604.
  • the I/O interface 605 includes: an input unit 606, such as a keyboard, a mouse, etc.; an output unit 607, such as various types of displays, speakers, etc.; a storage unit 608, such as a disk, an optical disk, etc.; and a communication unit 609, such as a network card, a modem, a wireless communication transceiver, etc.
  • the communication unit 609 allows the electronic device 600 to exchange information/data with other devices through a computer network such as the Internet and/or various telecommunication networks.
  • Processor 601 may be a variety of general and/or special processing components with processing and computing capabilities. Some examples of processor 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. Processor 601 executes the various methods and processes described above, such as a transaction supervision method.
  • CPU central processing unit
  • GPU graphics processing unit
  • AI dedicated artificial intelligence
  • DSPs digital signal processors
  • Processor 601 executes the various methods and processes described above, such as a transaction supervision method.
  • the transaction supervision method may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 608.
  • part or all of the computer program may be loaded and/or installed on the electronic device 600 via the ROM 602 and/or the communication unit 609.
  • the processor 601 may be configured to perform the transaction supervision method in any other suitable manner (e.g., by means of firmware).
  • Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof.
  • FPGAs field programmable gate arrays
  • ASICs application specific integrated circuits
  • ASSPs application specific standard products
  • SOCs systems on chips
  • CPLDs load programmable logic devices
  • Various implementations can include: being implemented in one or more computer programs that can be executed and/or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
  • a programmable processor which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
  • the computer programs for implementing the methods of the present application can be written in any combination of one or more programming languages. These computer programs can be provided to general-purpose computers, special-purpose computers or other programmable The computer program may be executed entirely on the machine, partially on the machine, partially on the machine as a stand-alone software package and partially on a remote machine, or entirely on a remote machine or server.
  • a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, device, or equipment.
  • a computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or equipment, or any suitable combination of the foregoing.
  • a computer-readable storage medium may be a machine-readable signal medium.
  • a more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
  • RAM random access memory
  • ROM read-only memory
  • EPROM or flash memory erasable programmable read-only memory
  • CD-ROM portable compact disk read-only memory
  • CD-ROM compact disk read-only memory
  • magnetic storage device or any suitable combination of the foregoing.
  • the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device.
  • a display device e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor
  • a keyboard and a pointing device e.g., a mouse or trackball
  • Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
  • the systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components.
  • the components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
  • a computing system may include a client and a server.
  • the client and the server are generally remote from each other and usually interact through a communication network.
  • the client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other.
  • the server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本申请实施例的技术方案公开了一种事务监管方法、装置、电子设备及存储介质。该方法包括:从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;根据第一预设私密监管数据和第二预设私密监管数据,确定目标事务随机数;根据目标事务随机数和随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证;若验证通过,则根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额;根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额。本申请实施例的技术方案兼顾了待监管事务的相关数据的私密性和可监管性。

Description

事务监管方法、装置、电子设备及存储介质
本申请要求在2022年11月10日提交中国专利局、申请号为202211404263.X的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。
技术领域
本申请涉及区块链技术领域,尤其涉及一种事务监管方法、装置、电子设备及存储介质。
背景技术
区块链上的事务数据是公开透明的,利用事务数据标识,可以从区块链上读取相应事务数据。
然而,区块链上部分事务数据为私密数据,在上链前会进行加密处理,避免私密数据泄露。但是,对经加密处理的事务数据,无法进行有效监管。
因此,如何在保证事务的相关数据的私密性的同时,实现对事务的相关数据的有效监管,亟待解决。
发明内容
本申请提供了一种事务监管方法、装置、电子设备及存储介质,兼顾了待监管事务的相关数据的私密性和可监管性。
根据本申请的一方面,提供了一种事务监管方法,包括:
从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;其中,参考监管数据包括公钥、随机数隐藏密文和数额随机隐藏密文;事务参与方包括事务执行方和事务混淆方;事务执行方包括事务发起方和事务接收方;
根据第一预设私密监管数据和第二预设私密监管数据,确定目标事务随机数;
根据目标事务随机数和随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证;
若验证通过,则根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额;
根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额。
根据本申请的另一方面,提供了一种事务监管装置,包括:
参考监管数据获取模块,用于从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;其中,参考监管数据包括公钥、随机数隐藏密文和数额随机隐藏密文;事务参与方包括事务执行方和事务混淆方;事务执行方包括事务发起方和事务接收方;
随机数确定模块,用于根据第一预设私密监管数据和第二预设私密监管数据,确定目标事务随机数;
随机数验证模块,用于根据目标事务随机数和随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证;
转移数额确定模块,用于若验证通过,则根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额;
当前余额更新模块,用于根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额。
根据本申请的另一方面,提供了一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本申请任一实施例所述的事务监管方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令用于使处理器执行时实现本申请任一实施例所述的事务监管方法。
本申请实施例的技术方案,通过从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;根据第一预设私密监管数据和第二预设私密监管数据,确定目标事务随机数;根据目标事务随机数和随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证;若验证通过,则根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额;根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额;兼顾了待监管事务的相关数据的私密性和可监管性。
附图说明
图1是根据本申请实施例一提供的一种事务监管方法的流程图;
图2是根据本申请实施例二提供的一种事务监管方法的流程图;
图3是根据本申请实施例三提供的一种事务监管方法的流程图;
图4是根据本申请实施例四提供的一种事务监管方法的流程图;
图5是根据本申请实施例五提供的一种事务监管装置的结构示意图;
图6是实现本申请实施例的事务监管方法的电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请实施例,而非对本申请实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请实施例相关的部分而非全部结构。
实施例一
图1为本申请实施例一提供的一种事务监管方法的流程图,本实施例可适用于对区块链上的已执行事务进行监管的情况,该方法可以由事务监管装置来执行,该事务监管装置可以采用硬件和/或软件的形式实现,该事务监管装置可配置于电子设备中。
如图1所示的事务监管方法,应用于事务监管方,包括:
S110、从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;其中,参考监管数据包括公钥、随机数隐藏密文和数额随机隐藏密文;事务参与方包括事务执行方和事务混淆方;事务执行方包括事务发起方和事务接收方。
待监管事务可以是事务参与方执行的资源转移事务。待监管事务已执行完成,且在区块链上进行了参考监管数据等事务相关数据的存储,但尚未进行监管。
其中,事务参与方可以是参与待监管事务的各方。其中,事务参与方可以包括事务执行方和事务混淆方;事务执行方,用于表征实际执行待监管事务的执行方,可以包括事务发起方和事务接收方。以待监管事务为资源转移事务为例,事务发起方可以是资源转出方,事务接收方可以是资源转入方。事务混淆方用于作为事务执行方以外的第三方,混淆事务参与方的所属类别。实际上,事务混淆方并未实际执行待监管事务。通过事务混淆方参与待监管事务,可以与事务执行方的所属类别进行混淆,以使非待监管事务的事务参与方无法确认 事务执行方的所属类别,以实现待监管事务的私密性和安全性。
参考监管数据可以是对待监管事务进行监管时所需的参考数据。其中,参考监管数据可以包括:公钥、随机数隐藏密文和数额随机隐藏密文。
其中,公钥可以作为识别事务参与方的身份标识。可选的,公钥可以从区块链上预先设定的事务参与方的公钥集中获取。
其中,随机数隐藏密文为事务发起方在执行待监管事务生成参考监管数据时,所采用的参考事务随机数的加密结果。随机数隐藏密文由事务发起方生成并存储区块链中。
示例性的,参考事务随机数可以由事务发起方,通过对自身生成的参考事务随机数和椭圆曲线生成元,进行椭圆曲线多倍点运算生成。其中,参考事务随机数基于双椭圆曲线确定性伪随机数发生器,采用第一椭圆曲线点和第二椭圆曲线点生成。其中,椭圆曲线生成元可以根据技术人员的经验进行预先设定和调整。
示例性的,可以采用以下公式,用于事务监管方生成第一椭圆曲线点:
P=p*G;
式中,P为第一椭圆曲线点,p为第一预设私密监管数据,G为椭圆曲线生成元,*为椭圆曲线多倍点运算符。
示例性的,可以采用以下公式,用于事务监管方生成第二椭圆曲线点;
Q=q*G;
式中,Q为第二椭圆曲线点;q为第二预设私密监管数据;G为椭圆曲线生成元;*为椭圆曲线多倍点运算符。
相应的,可以采用以下公式,用于事务发起方生成参考事务随机数:
式中,seed为第一预设私密随机数;Zm={0,1,2,…m-1},m为128比特大整数;P为第一椭圆曲线点;为椭圆曲线G上的点(x,y)的横坐标x;Q为第二椭圆曲线点;r为参考事务随机数。
其中,数额随机隐藏密文为待监管事务中实际的转移资源数额的加密结果。不同事务参与方的数额随机隐藏密文的生成方式不同,从而通过数额随机隐藏密文,进行不同事务参与方的所属类别确定。
其中,事务混淆方的数额随机隐藏密文,仅基于参考事务随机数和事务混 淆方的公钥生成。示例性的,可以通过对参考事务随机数和事务混淆方的公钥,进行椭圆曲线多倍点运算生成。
具体的,采用以下公式,确定事务混淆方的数额随机隐藏密文:
Ci=r*yi其中,i=1,2,…,n;且i≠l0,l1
其中,Ci为第i个事务混淆方的数额随机隐藏密文;r为参考事务随机数;yi为第i个事务混淆方的公钥;*为椭圆曲线多倍点运算符;n为事务参与方的总数量;l0为事务发起方;l1为事务接收方。
其中,事务执行方的数额随机隐藏密文,基于参考事务随机数、事务执行方的公钥以及实际的资源转移数额生成。示例性的,可以对参考事务随机数和事务执行方的公钥,进行椭圆曲线多倍点运算,生成第一密文参考数据;对资源转移数额和椭圆曲线生成元,进行椭圆曲线多倍点运算,生成第二密文参考数据;若事务执行方为事务发起方,则将第一密文参考数据与第二密文参考数据的差值,作为事务发起方的数额随机隐藏密文;若事务执行方为事务接收方,则将第一密文参考数据与第二密文参考数据的和值,作为事务执行方的数额随机隐藏密文。
具体的,可以采用以下公式,确定事务发起方的数额随机隐藏密文:
式中,为事务发起方的数额随机隐藏密文;b*为实际的资源转移数额;G为椭圆曲线生成元;r为参考事务随机数;为事务发起方的公钥;*为椭圆曲线多倍点运算符,l0为事务发起方。
具体的,可以采用以下公式,确定事务接收方的数额随机隐藏密文:
式中,为事务接收方的数额随机隐藏密文;b*为实际的资源转移数额;G为椭圆曲线生成元;r为参考事务随机数;为事务接收方的公钥;*为椭圆曲线多倍点运算符;l1为事务接收方。
S120、根据第一预设私密监管数据和第二预设私密监管数据,确定目标事务随机数。
其中,第一预设私密监管数据和第二预设私密监管数据,可以由事务监管方在区块链创建阶段预先设定。目标事务随机数为事务监管方推测得到的事务随机数,与事务发起方生成待监管事务时所使用的参考事务随机数相对应。
具体的,事务监管方可以根据第一预设私密监管数据和第二预设私密监管数据,通过双椭圆曲线确定性伪随机数发生器,生成目标事务随机数。
S130、根据目标事务随机数和随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证。
参考事务随机数可以是事务发起方生成的,自身私密保存用于生成随机数隐藏密文和数额随机隐藏密文的私密数据。对参考事务随机数进行验证,可以等效验证待监管事务的参考监管数据的真实性。示例性的,可以将目标事务随机数和椭圆曲线生成元进行椭圆曲线多倍点运算的结果,与随机数隐藏密文进行比较;若两者相同,则对参考事务随机数验证通过,也即对参考监管数据验证通过;若两者不同,则参考事务随机数验证不通过,也即对参考监管数据验证不通过。
S140、若验证通过,则根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额。
其中,目标资源转移数额为待监管事务中实际进行资源转移的数额。
若验证通过,则表明待监管事务的参考监管数据是真实可信的。此时,可以通过目标事务随机数和各公钥,反算各数额随机隐藏密文,得到各事务参与方的所属类别,以及事务执行方的目标资源转移数额。其中,各事务参与方的所属类别对应事务执行方和事务混淆方;其中,事务执行方包括事务发起方和事务接收方。
具体的,若参考事务随机数验证通过,则可以根据目标事务随机数、各公钥和各数额随机隐藏密文,对各事务参与方所属类别进行区分,得到事务混淆方和事务执行方;并通过事务执行方的公钥和椭圆曲线生成元,基于不同类别的事务执行方的数额随机隐藏密文生成方式,反向穷举目标资源转移数额,并根据目标资源转移数额的穷举结果,辅助确定各事务执行方的对应类别,也即确定事务发起方和事务执行方。
S150、根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额。
其中,当前资源余额可以是最新资源余额。
示例性的,可以确定各事务执行方的当前资源余额;其中,事务执行方的当前资源余额基于从区块链中获取的事务执行方的注册资源数额和历史已监管事务的资源已转移数额确定。根据目标资源转移数额,增加事务接收方的当前资源余额,以及,减少事务发起方的当前资源余额。
在一个可选实施例中,注册资源数额可以是事务执行方在区块链上注册时的初始资源数额,并将该注册资源数额作为当前资源数额的初始值;从区块链上遍历事务执行方的各历史已监管事务,并根据各历史已监管事务的实际的资 源已转移数额,顺序更新相应事务执行方的当前资源数额,直至遍历到本次待监管事务;根据本次待监管事务的目标资源转移数额,更新相应事务执行方的资源转移数额。
本方案通过确定各事务执行方的当前资源余额,根据目标资源转移数额,增加事务接收方的当前资源余额,以及,减少事务发起方的当前资源余额,实现了对各事务执行方的当前资源余额的动态更新,利用了事务执行方的注册资源数额和历史已监管事务的资源已转移数额,逐步确定了各事务执行方的当前资源余额,并根据目标资源转移数额对当前余额进行更新,保证了更新后的当前资源余额的准确性。
为了避免事务监管方在每次进行当前资源数额确定时,均需从事务执行方参与区块链网络的时刻,进行历史已监管事务的遍历,还可以在事务监管方中预先存储各事务执行方的当前资源数额,并在每次事务执行方参与执行事务,且所执行事务作为待监管事务监管通过后,根据本地待监管事务的实际资源转移数额,动态更新相应事务执行方的当前资源数额。
具体的,更新各事务执行方的当前资源余额,可以是将事务接收方的当前资源余额增加目标资源转移数额,得到更新后的事务接收方的当前资源余额。以及,将事务发起方的当前资源余额减少目标资源转移数额,得到更新后的事务发起方的当前资源余额。
通过预先存储各事务执行方的当前资源数额,并在每次事务执行方参与执行事务,且所执行事务作为待监管事务被监管通过后,根据本地待监管事务的实际资源转移数额,动态更新相应事务执行方的当前资源数额,提高了当前资源余额更新的效率。
本申请实施例的技术方案通过预先设定的第一预设私密监管数据和第二预设私密监管数据,实现了对目标事务随机数的预测;根据预测得到的目标事务随机数和从区块链上获取的随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证,有效验证了链上获取的参考事务随机数的真实性,从而保证了待监管事务的真实性。在验证通过的情况下,根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额,根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额,实现了在链上获取的待监管事务不透明的情况下,对各事务参与方的身份类别和目标资源转移数额的有效监管,从而兼顾了待监管事务相关数据的私密性和可监管性。
实施例二
图2为本申请实施例二提供的一种事务监管方法的流程图,本实施例在上述各实施例的基础上,将“根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额”操作,细化为“根据目标事务随机数和各公钥,确定各事务参与方的第一待验证事务密文;将与相应数额随机隐藏密文相同的待验证事务密文对应事务参与方作为事务混淆方;根据事务混淆方,确定事务执行方;根据目标事务随机数、事务执行方的公钥和事务执行方的第二事务参考密文,确定事务发起方、事务接收方和目标资源转移数额”,以完善对待监管事务的事务自身数据的有效监管。需要说明的是,在本申请实施例中未详述部分,可参见其他实施例的相关表述。
参见图2所示的事务监管方法,包括:
S210、从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;其中,参考监管数据包括公钥、随机数隐藏密文和数额随机隐藏密文;事务参与方包括事务执行方和事务混淆方;事务执行方包括事务发起方和事务接收方。
S220、根据第一预设私密监管数据和第二预设私密监管数据,确定目标事务随机数。
S230、根据目标事务随机数和随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证。
S240、若验证通过,则根据目标事务随机数和各公钥,确定各事务参与方的第一待验证事务密文。
示例性的,第一待验证事务密文可以通过对目标事务随机数与各公钥进行椭圆曲线多倍点运算生成。
具体的,可以采用以下公式,生成第一待事务验证密文:
Ciphertext1i=r'*yi
式中,Ciphertext1i为第i个事务参与方的第一待验证事务密文;r'为目标事务随机数;yi为第i个事务参与方的公钥;*为椭圆曲线多倍点运算符。
S250、将与相应数额随机隐藏密文相同的第一待验证事务密文对应事务参与方作为事务混淆方。
示例性的,可以将第i个事务参与方的第一待验证事务密文Ciphertext1i与第i个事务参与方的数额随机隐藏密文Ci进行比较,若Ciphertext1i=Ci,则可以将第i个事务参与方的第一待验证事务密文对应的第i个事务参与方作为事务混淆方;否则,第i个事务参与方的第一待验证事务密文对应的第i个事务参与方不作为 事务混淆方。其中,Ci为第i个事务参与方的数额随机隐藏密文,r'为目标事务随机数;yi为第i个事务参与的公钥;*为椭圆曲线多倍点运算符。
S260、根据事务混淆方,确定事务执行方。
具体的,可以将除事务混淆方之外的其他事务参与方,确定为事务执行方。
S270、根据目标事务随机数、事务执行方的公钥和事务执行方的第二事务参考密文,确定事务发起方、事务接收方和目标资源转移数额。
在一个可选实施例中,可以根据至少一个预设穷举数额、目标事务随机数和事务执行方的公钥,确定各事务执行方的第二待验证事务密文;将与任一事务执行方的第二事务参考密文相同的第二待验证事务密文,所对应预设穷举数额作为目标资源转移数额;将目标资源转移数额对应第二待验证事务密文中,与相应第二事务参考密文相同的事务执行方作为事务发起方;以及,将与相应第二事务参考密文不同的事务执行方作为事务接收方。
其中,预设穷举数额可以根据技术人员的经验进行设定并不断调整。
示例性的,可以对目标事务随机数和事务执行方的公钥,进行椭圆曲线多倍点运算,得到第一运算结果;对至少一个预设穷举数额与椭圆曲线生成元,进行椭圆多倍点运算,得到第二运算结果;将第一运算结果和第二运算结果的差值,作为第二待验证事务密文。
具体的,可以采用以下公式,生成第二待验证事务密文:
其中,Ceum0和Ceum1为各事务执行方的第二待验证事务密文;b为至少一个预设穷举数额;G为椭圆曲线生成元;r'为目标事务随机数;y0和yl为各事务执行方的公钥;*为椭圆曲线多倍点运算符。
可以穷举至少一个预设穷举数额b,确定不同预设穷举数额b对应的第二待验证事务密文Ceum0和Ceum1。将各第二待验证事务密文Ceum0分别与各事务执行方的第二事务参考密文进行对比;以及,将第二待验证事务密文Ceum1分别与各事务执行方的第二事务参考密文进行对比;若则将相应的预设穷举数额作为目标资源转移数额。若则确定第二待验证事务密文Ceum0对应的事务执行方为事务发起方,第二待验证事务密文Ceum1对应的事务执行方为事务接收方。若则确定第二待验证事务密文Ceum1对应的事务执行方为事务发起方,第二待验证事务密文Ceum0对应的事务执行方为事务接收方。
本方案通过根据至少一个预设穷举数额、目标事务随机数和事务执行方的公钥,确定各事务执行方的第二待验证事务密文,将与任一事务执行方的第二事务参考密文相同的第二待验证事务密文所对应预设穷举数额作为目标资源转移数额,将目标资源转移数额对应第二待验证事务密文中与相应第二事务参考密文相同的事务执行方作为事务发起方,以及,将与相应第二事务参考密文不同的事务执行方作为事务接收方,利用至少一个预设穷举数额计算第二待验证事务密文,并将得到的第二代验证事务密文与任一事务执行方的第二事务参考密文进行比较,实现了事务执行方的所属类别和目标资源转移数额的确定,提高了计算效率。
S280、根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额。
本申请实施例的技术方案通过根据目标事务随机数和各公钥,确定各事务参与方的第一待验证事务密文,将与相应数额随机隐藏密文相同的待验证事务密文对应事务参与方作为事务混淆方,根据事务混淆方,确定事务执行方,初步确定了事务参与方的所属类别,为进一步确定事务执行方中的事务发起方和事务接收方缩小了筛选范围;根据目标事务随机数、事务执行方的公钥和事务执行方的第二事务参考密文,确定了事务发起方、事务接收方和目标资源转移数额,完善了对待监管事务的事务自身数据的有效监管,为基于事务自身数据对当前资源余额的有效更新奠定了基础。
实施例三
图3为本申请实施例三提供的一种事务监管方法的流程图,本实施例在上述各实施例的基础上,将确定目标事务随机数的操作,细化为“根据第一预设私密监管数据和第二预设私密监管数据的逆,生成推测基础数据;根据推测基础数据和公开椭圆曲线点,生成目标事务随机数;其中,公开椭圆曲线点根据第一预设私密随机数,以及基于第二预设私密监管数据和椭圆曲线生成元所生成的第二椭圆曲线点生成”,以完善目标事务随机数的生成机制。需要说明的是,在本申请实施例中未详述部分,可参见其他实施例的相关表述。
参见图3所示的事务监管方法,包括:
S310、从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;其中,参考监管数据包括公钥、随机数隐藏密文和数额随机隐藏密文;事务参与方包括事务执行方和事务混淆方;事务执行方包括事务发起方和事务接收方。
S320、根据第一预设私密监管数据和第二预设私密监管数据的逆,生成推 测基础数据。
示例性的,推测基础数据可以通过对第一预设私密监管数据和第二预设私密监管数据的逆,进行椭圆曲线多倍点运算生成。
具体的,可以采用以下公式,确定推测基础数据:
e=p*q-1
式中,e为推测基础数据;p为第一预设私密监管数据;q为第二预设私密监管数据;*为椭圆曲线多倍点运算符。
S330、根据推测基础数据和公开椭圆曲线点,生成目标事务随机数。
其中,公开椭圆曲线点可以由事务发起方预先指定生成逻辑,用于作为目标事务随机数推理过程的重要基础。
示例性的,可以基于第二预设私密监管数据和椭圆曲线生成元,生成第二椭圆曲线点;根据第一预设私密随机数和第二椭圆曲线点,生成公开椭圆曲线点。
示例性的,可以采用以下公式,用于事务监管方确定第二椭圆曲线点;
Q=q*G;
式中,Q为第二椭圆曲线点;q为第二预设私密监管数据;G为椭圆曲线生成元;*为椭圆曲线多倍点运算符。
示例性的,可以采用以下公式,用于事务发起方生成公开椭圆曲线点:
H=seed*Q;
式中,H为存储在区块链上待监管事务的公开椭圆曲线点;seed为第一预设私密随机数;Q为第二椭圆曲线点;*为椭圆曲线多倍点运算符。第一预设私密随机数seed可以由事务发起方在发起事务时随机私密选取的。
在一个可选实施例中,可以根据第一预设私密监管数据,生成第一椭圆曲线点,并根据第一椭圆曲线点、推测基础数据和公开椭圆曲线点,基于双椭圆曲线确定性伪随机数发生器,推测目标事务随机数。
示例性的,可以采用以下公式,用于事务监管方生成第一椭圆曲线点:
P=p*G;
式中,P为第一椭圆曲线点,p为第一预设私密监管数据,G为椭圆曲线生成元,*为椭圆曲线多倍点运算符。
示例性的,可以采用以下公式,用于事务监管方推测目标事务随机数:
式中,P为第一椭圆曲线点;为椭圆曲线G上的点(x,y)的横坐标x;Q为第二椭圆曲线点;r'为目标事务随机数。
由于公开椭圆曲线点由事务发起方预先指定逻辑生成,且作为目标事务随机数推理过程的重要基础,当公开椭圆曲线点的生成逻辑不成立,将会导致无法对待监管事务进行监管的情况发生,因此,还可以借助区块链网络中的区块链节点,对公开椭圆曲线点进行验证,也即对公开椭圆曲线点的预先指定逻辑进行验证。
示例性的,可以获取事务发起方发送的椭圆曲线辅助点和辅助随机码;其中,椭圆曲线辅助点基于第二预设私密随机数和第二椭圆曲线点生成;辅助随机码基于椭圆曲线辅助点、第一预设私密随机数和第二预设私密随机数生成;根据椭圆曲线辅助点和公开椭圆曲线点,生成第一验证数据;根据辅助随机码和第二椭圆曲线点,生成第二验证数据;根据第一验证数据和第二验证数据的一致性,对公开椭圆曲线点进行验证。
其中,椭圆曲线辅助点和辅助随机码由事务发起方,在执行待监管事务,生成参考监管数据时生成。
示例性的,可以采用以下方式,生成椭圆曲线辅助点:
Λ=k*Q;
式中,Λ为椭圆曲线辅助点;k为第二预设私密随机数;Q为第二椭圆曲线点;*为椭圆曲线多倍点运算符。其中,第二预设私密随机数由事务发起方进行预先设定。
示例性的,可以采用以下方式,生成辅助随机码:
Sseed=k+Hash(Λ)*seed;
式中,Sseed为辅助随机码;k为第二预设私密随机数;Λ为椭圆曲线辅助点;seed为第一预设私密随机数;*为椭圆曲线多倍点运算符;Hash()为预设哈希函数。
具体的,在对公开椭圆曲线点的验证过程中,事务验证方获取事务发起方发送的椭圆曲线辅助点和辅助随机码。
示例性的,可以确定椭圆曲线辅助点的哈希值;将哈希值与公开椭圆曲线点进行椭圆曲线多倍点运算,得到运算结果;将前述运算结果与椭圆曲线辅助点的和值,作为第一验证数据。
具体的,可以采用以下公式,生成第一验证数据:
quote1=Λ+Hash(Λ)*H;
式中,quote1为第一验证数据;Λ为椭圆曲线辅助点;H为公开椭圆曲线点;*为椭圆曲线多倍点运算符。
示例性的,可以采用以下方式,第二验证数据的生成过程如下:
quote2=Sseed*Q;
式中,quote2为第二验证数据;Sseed为辅助随机码;Q为第二椭圆曲线点;*为椭圆曲线多倍点运算符。
相应的,若第一验证数据与第二验证数据一致,则公开椭圆曲线点验证通过;若第一验证数据与第二验证数据不一致,则公开椭圆曲线点验证不通过。
需要说明的是,事务验证方对公开椭圆曲线点的验证过程,可以在待监管事务执行完成之后,在事务监管方对待监管事务进行监管之前进行。可以理解为,由区块链节点对公开椭圆曲线点进行预先验证,为事务监管方对待监管事务的有效监管,提供了保障。
S340、根据目标事务随机数和随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证。
S350、若验证通过,则根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额。
S360、根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额。
本方案通过根据第一预设私密监管数据和第二预设私密监管数据的逆,生成推测基础数据,根据推测基础数据和公开椭圆曲线点,生成目标事务随机数,完善了目标事务随机数的生成机制,提高了所生成目标事务随机数的准确度,为后续基于目标事务随机数验证参考事务随机数奠定了基础,为后续进行当前资源余额的有效更新提供了保障。
实施例四
图4为本申请实施例四提供的一种事务监管方法的流程图,本实施例在上述各实施例的基础上,在“根据目标事务随机数和随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证”操作之后,增加了“若验证不通过,则从事务参与方获取标准监管数据,并根据标准监管数据和各数额随机隐藏密文,确定事务参与方中的异常参与方”,以完善对待监管事务中的异常参与方的有效监管。需要说明的是,在本申请实施例中未详述部分,可参见其他实施例的相关表述。
参见图4所示的事务监管方法,包括:
S410、从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;其中,参考监管数据包括公钥、随机数隐藏密文和数额随机隐藏密文;事务参与方包括事务执行方和事务混淆方;事务执行方包括事务发起方和事务接收方。
S420、根据第一预设私密监管数据和第二预设私密监管数据,确定目标事务随机数。
S430、根据目标事务随机数和随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证。若验证通过,则执行S440;若验证不通过,则执行S460。
S440、根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额。
S450、根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额。
S460、从事务参与方获取标准监管数据,并根据标准监管数据和各数额随机隐藏密文,确定事务参与方中的异常参与方。
其中,标准监管数据用于验证事务参与方在区块链上的参考监管数据的真实性。
示例性的,可以根据事务参与方提供的标准监管数据,按照数额随机隐藏密文的生成方式得到异常参考数据;将异常参考数据与区块链上的数额随机隐藏密文依次进行比较;将比较结果不一致的事务参与方作为异常参与方。在确定异常参与方之后,可以对异常参与方进行惩罚,以实现对待监管事务中异常参与方的有效监管。
本申请实施例的技术方案通过根据从事务参与方获取的标准监管数据与区块链上的各数额随机数隐藏密文,确定事务参与方中的异常参与方,利用事务参与方和区块链两个不同数据来源的数据,确定了事务参与方中的异常参与方,实现了对待监管事务中的异常参与方的有效监管。
由于不同事务参与方所属类别不同,数额随机隐藏密文的生成方式不同。根据标准参考数据验证事务参与方中的异常参与方时,所采用的验证方式也不相同。
在一个可选实施例中,可以基于不同事务参与方所属类别对应的验证方式,根据标准监管数据,生成事务参与方的异常参考数据;根据事务参与方的异常 参考数据和相应数额随机隐藏密文,确定事务参与方中的异常参与方。
示例性的,可以基于不同事物参与方所属类别对应的验证方式,根据标准监管数据,分别生成事务参与方对应于不同验证方式的异常参考数据;将对应于不同验证方式的异常参考数据,分别与相应数额随机隐藏密文进行比较,将不一致的比较结果的事务参与方作为异常参与方。
上述可选实施例通过基于不同事务参与方所属类别对应的验证方式,分别根据标准监管数据,生成事务参与方的异常参考数据,并根据各异常参考数据和相应数额随机隐藏密文,确定事务参与方中的异常参与方。上述技术方案通过不同验证方式进行异常参考数据的确定,提高了异常参考数据的全面性,避免出现异常参与方遗漏的情况发生,从而提高了异常参与方确定结果的准确度。
在一个可选实施例中,标准监管数据包括公钥、标准资源转移数额和标准事务随机数;相应的,可以根据标准事务随机数和事务参与方的公钥,确定相应事务参与方的第一异常参考数据;根据标准事务随机数、事务参与方的公钥和标准资源转移数额,确定相应事务参与方的第二异常参考数据,并根据第一异常参考数据、第二异常参考数据和相应数额随机隐藏密文,从各事务参与方中选取异常参与方。
示例性的,可以根据事务混淆方的验证方式,对各事务参与方的标准事务随机数和公钥进行椭圆曲线多倍点运算,得到各事务参与方的第一异常参考数据;可以对各事务参与方的标准事务随机数和公钥进行椭圆曲线多倍点运算,得到各事务参与方的第一计算结果,再对各事务参与方的标准资源转移数额和椭圆曲线生成元进行椭圆曲线多倍点运算,得到各事务参与方的第二计算结果;可以按照事务发起方的验证方式,将第一计算结果和第二计算结果的和值,作为各事务参与方的第二异常参考数据;可以按照事务接收方的验证方式,将第一计算结果和第二计算结果的差值,作为各事务参与方的第二异常参考数据。并将各事务参与方的第一异常参考数据和各事务参与方的第二异常参考数据,分别与相应数额随机隐藏密文进行比较,将不一致的比较结果的事务参与方作为异常参与方。
其中,第一异常参考数据可以是按照事务混淆方的验证方式,生成的异常参考数据。
示例性的,可以根据事务混淆方的验证方式,对标准事务随机数和公钥进行椭圆曲线多倍点运算,生成提供标准监管数据的各事务参与方的第一异常参考数据。
具体的,可以采用以下公式,生成第一异常参考数据:
Exception1i=r”*yi
式中,Exception1i为第i个事务参与方的第一异常参考数据;r”为标准事务随机数;yi为第i个事务参与方提供的公钥;*为椭圆曲线多倍点运算符。
其中,第二异常参考数据可以是按照事务执行方的验证方式,生成的异常参考数据。
示例性的,可以根据事务执行方的验证方式,生成提供标准监管数据的各事务参与方的第二异常参考数据。其中,事务执行方的验证方式可以包括:事务发起方的验证方式和事务接收方的验证方式。
具体的,若按照事务发起方的验证方式,可以采用以下公式,生成第二异常参考数据:
Exception2i=-b”*G+r”*yi
式中,Exception2i为第i个事务参与方的第二异常参考数据;b”为标准资源转移数额;G为椭圆曲线生成元;r”为标准事务随机数;yi为各事务参与方提供的公钥;*为椭圆曲线多倍点运算符。
具体的,若按照事务接收方的验证方式,可以采用以下公式,生成第二异常参考数据:
Exception2i=b”*G+r”*yi
式中,Exception2i为第二异常参考数据;b”为标准资源转移数额;G为椭圆曲线生成元;r”为标准事务随机数;yi为各事务参与方提供的公钥;*为椭圆曲线多倍点运算符。
将第一异常参考数据、第二异常参考数据和相应数额随机隐藏密文进行比较,若事务参与方的第一异常参考数据和第二异常参考数据均不存在相同的比较结果,则该事务参与方为异常参与方。
由于同时计算不同的验证方式,对计算资源的要求较高,因此,可以按照事务参与方所属类别,依次排除部分类别的正常参与方,进行后续计算。在一个可选实施例中,可以根据事务参与方的第一异常参考数据与相应数额随机隐藏密文的一致性,从各事务参与方中选取候选参与方;根据标准事务随机数、候选参与方的公钥和标准资源转移数额,确定相应候选参与方的第二异常参考数据;根据候选参与方的第二异常参考数据与相应数额随机隐藏密文的一致性,从各候选参与方中选取异常参与方。
示例性的,可以通过从各事务参与方中直接选取候选参与方,并确定相应的候选参与方的第二异常参考数据,实现从各候选参与方中直接选取异常参与 方,减少了第二异常参考数据的计算量。
在一个可选实施例中,可以根据标准事务随机数和候选参与方的公钥,确定第一中间数据;根据标准资源转移数额和椭圆曲线生成元,确定第二中间数据;根据第一中间数据和第二中间数据的和值,确定第二异常参考数据的接收参考值;以及,根据第一中间数据和第二中间数据的差值,确定第二异常参考数据的发起参考值。
示例性的,可以通过对标准事务随机数和候选参与方的公钥进行椭圆曲线多倍点运算生成第一中间数据。
具体的,可以采用以下公式,生成第一中间数据:
Mid1i=r”*yi
式中,Mid1i为第i个候选参与方的第一中间数据;r”为标准事务随机数;yi为各事务参与方的公钥;*为椭圆曲线多倍点运算符。
示例性的,可以通过对标准资源转移数额和椭圆曲线生成元进行椭圆曲线多倍点运算生成第二中间数据。
具体的,可以采用以下公式,生成第二中间数据:
Mid2i=b”*G;
式中,Mid2i为第i个候选参与方的第二中间数据;b”为标准资源转移数额;G为椭圆曲线生成元;*为椭圆曲线多倍点运算符。
其中,接收参考值可以是按照事务接收方的验证方式生成的第二异常参考数据的值。发起参考值可以是按照事务发起方的验证方式生成的第二异常参考数据的值。
示例性的,可以采用以下公式,生成接收参考值:
Ceum1i'=Mid1i+Mid2i
式中,Ceum1i'为第i个候选参与方的接收参考值;Mid1i为第i个候选参与方的第一中间数据;Mid2i为第i个候选参与方的第二中间数据。
示例性的,可以采用以下公式,生成发起参考值:
Ceum0i'=Mid1i-Mid2i
式中,Ceum0i'为第i个候选参与方的发起参考值;Mid1i为第i个候选参与方的第一中间数据;Mid2i为第i个候选参与方的第二中间数据。
上述可选实施例通过根据标准事务随机数和候选参与方的公钥,确定第一中间数据;根据标准资源转移数额和椭圆曲线生成元,确定第二中间数据;根 据第一中间数据和第二中间数据的和值,确定第二异常参考数据的接收参考值;以及,根据第一中间数据和第二中间数据的差值,确定第二异常参考数据的发起参考值,进一步细化了第二异常参考数据,确定了第二异常参考数据的接收参考值和发起参考值,为后续确定异常参与方的所属类别提供了数据支撑。
在一个可选实施例中,可以将第一异常参考数据与相应数额随机隐藏密文相一致的事务参与方作为正常事务混淆方,并将除正常事务混淆方之外的事务参与方作为候选参与方;相应的,可以将接收参考值与相应数额随机隐藏密文相一致的候选参与方作为正常事务接收方,以及,将发起参考值与相应数额随机隐藏密文相一致的候选参与方作为正常事务发起方;将候选参与方中除正常事务混淆方、正常事务接收方和正常事务发起方之外的事务参与方作为异常参与方。
示例性的,可以通过筛选出正常事务混淆方,利用排除法,确定候选参与方;在候选参与方中进一步筛选出正常事务参发起方和正常事务接收方;最后,利用排除法,将除正常事务混淆方、正常事务接收方和正常事务发起方之外的事务参与方作为异常参与方。
上述可选实施例通过将第一异常参考数据与相应数额随机隐藏密文相一致的事务参与方作为正常事务混淆方,并将除正常事务混淆方之外的事务参与方作为候选参与方,将接收参考值与相应数额随机隐藏密文相一致的候选参与方作为正常事务接收方,以及,将发起参考值与相应数额随机隐藏密文相一致的候选参与方作为正常事务发起方,将候选参与方中除正常事务混淆方、正常事务接收方和正常事务发起方之外的事务参与方作为异常参与方,通过在事务参与方中排除正常事务混淆方确定候选参与方,再通过在候选参与方中排除正常事务接收方和正常事务发起方确定异常参与方,通过逐步排除,确定了异常参与方,减少了数据运算量,提高了异常参与方的确定效率。
在一个可选实施例中,若存在正常事务接收方,且存在正常事务发起方,则确定异常参与方为异常事务混淆方;若候选参与方为两个,且存在正常事务接收方,则确定异常参与方为异常事务发起方;若候选参与方为两个,且存在正常事务发起方,则确定异常参与方为异常事务接收方。
具体的,若确定了正常事务混淆方,在候选参与方中存在正常事务接收方,且存在正常事务发起方,则可以确定除正常事务接收方和正常事务发起方之外的候选参与方为异常参与方,并确定异常参与方的所属类别为异常事务混淆方。若候选参与方为两个,已确定存在正常事务接收方,则可以确定剩余的一个候选参与方为异常参与方,并确定异常参与方的所属类别为异常事务发起方。若候选参与方为两个,已确定存在正常事务发起方,则可以确定剩余的一个候选 参与方为异常参与方,并确定异常参与方的所属类别为异常事务接收方。
上述可选实施例通过若存在正常事务接收方,且存在正常事务发起方,则确定异常参与方为异常事务混淆方;若候选参与方为两个,且存在正常事务接收方,则确定异常参与方为异常事务发起方;若候选参与方为两个,且存在正常事务发起方,则确定异常参与方为异常事务接收方;利用已确定的正常事务接收方和/或正常事务发起方,按照排除法从候选参与方中确定异常参与方,并明确了异常参与方的身份类别,以便对不同类别的异常参与方进行有效惩戒。
上述可选实施例通过根据事务参与方的第一异常参考数据与相应数额随机隐藏密文的一致性,从各事务参与方中选取候选参与方,根据标准事务随机数、标准资源转移数额和候选参与方的公钥,确定相应候选参与方的第二异常参考数据,根据候选参与方的第二异常参考数据与相应数额随机隐藏密文的一致性,从各候选参与方中选取异常参与方,通过先对事务参与方进行初步筛选,选取了候选参与方,再从候选参与方中选取异常参与方,减少了选取异常参与方过程中的数据计算量,提高了确定异常参与方的效率。
上述可选实施例通过将标准监管数据具体化为公钥、标准资源转移数额和标准事务随机数,并根据不同验证方式,分别确定第一异常参考数据和第二异常参考数据,为异常参与方的确定,提供了有效的数据支撑,从而有助于提高异常参与方确定结果的准确性。
实施例五
图5为本申请实施例五提供的一种事务监管装置的结构示意图。本实施例可适用于对区块链上的已执行事务进行监管情况,该装置可以执行事务监管方法,该事务监管装置可以采用硬件和/或软件的形式实现,该事务监管装置可配置于承载事务监管功能的电子设备中。
如图5所示,该装置包括:参考监管数据获取模块510、随机数确定模块520、随机数验证模块530、转移数额确定模块540和当前余额更新模块550。其中,
参考监管数据获取模块510,用于从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;其中,参考监管数据包括公钥、随机数隐藏密文和数额随机隐藏密文;事务参与方包括事务执行方和事务混淆方;事务执行方包括事务发起方和事务接收方。
随机数确定模块520,用于根据第一预设私密监管数据和第二预设私密监管数据,确定目标事务随机数。
随机数验证模块530,用于根据目标事务随机数和随机数隐藏密文,对生成 参考监管数据所使用的参考事务随机数进行验证。
转移数额确定模块540,用于若验证通过,则根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额。
当前余额更新模块550,用于根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额。
本申请实施例的技术方案通过预先设定的第一预设私密监管数据和第二预设私密监管数据,实现了对目标事务随机数的预测;根据预测得到的目标事务随机数和从区块链上获取的随机数隐藏密文,对生成参考监管数据所使用的参考事务随机数进行验证,有效验证了链上获取的参考事务随机数的真实性,从而保证了待监管事务的真实性。在验证通过的情况下,根据目标事务随机数、各公钥和各数额随机隐藏密文,确定事务发起方、事务接收方和待监管事务的目标资源转移数额,根据目标资源转移数额,分别更新事务发起方和事务接收方的当前资源余额,实现了在链上获取的待监管事务不透明的情况下,对各事务参与方的身份类别和目标资源转移数额的有效监管,从而兼顾了待监管事务相关数据的私密性和可监管性。
在本申请的一个可选的实施例中,转移数额确定模块540,包括:第一密文确定单元,用于根据目标事务随机数和各公钥,确定各事务参与方的第一待验证事务密文;事务混淆方确定单元,用于将与相应数额随机隐藏密文相同的待验证事务密文对应事务参与方作为事务混淆方;事务执行方确定单元,用于根据事务混淆方,确定事务执行方;转移数额确定单元,用于根据目标事务随机数、事务执行方的公钥和事务执行方的第二事务参考密文,确定事务发起方、事务执行接收方和目标资源转移数额。
在本申请的一个可选的实施例中,转移数额确定单元,包括:第二密文确定子单元,用于根据至少一个预设穷举数额、目标事务随机数和事务执行方的公钥,确定各事务执行方的第二待验证事务密文;转移数额确定子单元,用于将与任一事务执行方的第二事务参考密文相同的第二待验证事务密文所对应预设穷举数额作为目标资源转移数额;事务发起方确定子单元,用于将目标资源转移数额对应第二待验证事务密文中与相应第二事务参考密文相同的事务执行方作为事务发起方,以及,将与相应第二事务参考密文不同的事务执行方作为事务接收方。
在本申请的一个可选的实施例中,当前余额更新模块550,包括:当前余额确定单元,用于确定各事务执行方的当前资源余额;其中,事务执行方的当前资源余额基于从区块链中获取的事务执行方的注册资源数额和历史已监管事务 的资源已转移数额确定;当前余额更新单元,用于根据目标资源转移数额,增加事务接收方的当前资源余额,以及,减少事务发起方的当前资源余额。
在本申请的一个可选的实施例中,随机数确定模块520,包括:基础数据生成单元,用于根据第一预设私密监管数据和第二预设私密监管数据的逆,生成推测基础数据;随机数生成单元,用于根据推测基础数据和公开椭圆曲线点,生成目标事务随机数;其中,公开椭圆曲线点根据第一预设私密随机数,以及基于第二预设私密监管数据和椭圆曲线生成元所生成的第二椭圆曲线点生成。
在本申请的一个可选的实施例中,在本申请的一个可选的实施例中,公开椭圆曲线点由区块链节点基于以下装置进行验证:辅助点获取模块,用于获取事务发起方发送的椭圆曲线辅助点和辅助随机码;其中,椭圆曲线辅助点基于第二预设随机数和第二椭圆曲线点生成;辅助随机码基于椭圆曲线辅助点、第一预设随机数和第二预设随机数生成;第一验证数据生成模块,用于根据椭圆曲线辅助点和公开椭圆曲线点,生成第一验证数据;第二验证数据生成模块,用于根据辅助随机码和第二椭圆曲线点,生成第二验证数据;公开曲线点验证模块,用于根据第一验证数据和第二验证数据的一致性,对公开椭圆曲线点进行验证。
在本申请的一个可选的实施例中,该装置还包括:异常参与方确定模块,用于若验证不通过,则从事务参与方获取标准监管数据,并根据标准监管数据和各数额随机隐藏密文,确定事务参与方中的异常参与方。
在本申请的一个可选的实施例中,异常参与方确定模块,包括:异常参与方确定单元,用于基于不同事务参与方所属类别对应的验证方式,根据标准监管数据,生成事务参与方的异常参考数据,并根据事务参与方的异常参考数据和相应数额随机隐藏密文,确定事务参与方中的异常参与方。
在本申请的一个可选的实施例中,标准监管数据包括公钥、标准资源转移数额和标准事务随机数;相应的,异常参与方确定单元,包括:第一异常数据确定子单元,用于根据标准事务随机数和事务参与方的公钥,确定相应事务参与方的第一异常参考数据;异常参与方确定子单元,用于根据标准事务随机数、事务参与方的公钥和标准资源转移数额,确定相应事务参与方的第二异常参考数据,并根据第一异常参考数据、第二异常参考数据和相应数额随机隐藏密文,从各事务参与方中选取异常参与方。
在本申请的一个可选的实施例中,异常参与方确定子单元,包括:候选参与方选取从单元,用于根据事务参与方的第一异常参考数据与相应数额随机隐藏密文的一致性,从各事务参与方中选取候选参与方;第二异常数据确定从单元,用于根据标准事务随机数、候选参与方的公钥和标准资源转移数额,确定 相应候选参与方的第二异常参考数据;异常参与方选取从单元,用于根据候选参与方的第二异常参考数据与相应数额随机隐藏密文的一致性,从各候选参与方中选取异常参与方。
在本申请的一个可选的实施例中,第二异常数据确定从单元,具体用于:根据标准事务随机数和候选参与方的公钥,确定第一中间数据;根据标准资源转移数额和椭圆曲线生成元,确定第二中间数据;根据第一中间数据和第二中间数据的和值,确定第二异常参考数据的接收参考值;以及,根据第一中间数据和第二中间数据的差值,确定第二异常参考数据的发起参考值。
在本申请的一个可选的实施例中,候选参与方选取从单元,具体用于:将第一异常参考数据与相应数额随机隐藏密文相一致的事务参与方作为正常事务混淆方,并将除正常事务混淆方之外的事务参与方作为候选参与方;相应的,异常参与方选取从单元,具体用于:将接收参考值与相应数额随机隐藏密文相一致的候选参与方作为正常事务接收方,以及,将发起参考值与相应数额随机隐藏密文相一致的候选参与方作为正常事务发起方;将候选参与方中除正常事务混淆方、正常事务接收方和正常事务发起方之外的事务参与方作为异常参与方。
在本申请的一个可选的实施例中,异常参与方选取从单元,具体用于:若存在正常事务接收方,且存在正常事务发起方,则确定异常参与方为异常事务混淆方;若候选参与方为两个,且存在正常事务接收方,则确定异常参与方为异常事务发起方;若候选参与方为两个,且存在正常事务发起方,则确定异常参与方为异常事务接收方。
本申请实施例所提供的事务监管装置可执行本申请任意实施例所提供的事务监管方法,具备执行各事务监管方法相应的功能模块和有益效果。
实施例六
图6示出了可以用来实施本申请的实施例的电子设备600的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图6所示,电子设备600包括至少一个处理器601,以及与至少一个处理器601通信连接的存储器,如只读存储器(ROM)602、随机访问存储器(RAM) 603等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器601可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储电子设备600操作所需的各种程序和数据。处理器601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
电子设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许电子设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器601可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器601执行上文所描述的各个方法和处理,例如事务监管方法。
在一些实施例中,事务监管方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到电子设备600上。当计算机程序加载到RAM 603并由处理器601执行时,可以执行上文描述的事务监管方法的一个或多个步骤。备选地,在其他实施例中,处理器601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行事务监管方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本申请的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编 程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本申请的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除 步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请的技术方案所期望的结果,本文在此不进行限制。

Claims (16)

  1. 一种事务监管方法,包括:
    从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;其中,所述参考监管数据包括公钥、随机数隐藏密文和数额随机隐藏密文;所述事务参与方包括事务执行方和事务混淆方;所述事务执行方包括事务发起方和事务接收方;
    根据第一预设私密监管数据和第二预设私密监管数据,确定目标事务随机数;
    根据所述目标事务随机数和所述随机数隐藏密文,对生成所述参考监管数据所使用的参考事务随机数进行验证;
    若验证通过,则根据所述目标事务随机数、各所述公钥和各所述数额随机隐藏密文,确定所述事务发起方、所述事务接收方和所述待监管事务的目标资源转移数额;
    根据所述目标资源转移数额,分别更新所述事务发起方和所述事务接收方的当前资源余额。
  2. 根据权利要求1所述的方法,其中,所述根据所述目标事务随机数、各所述公钥和各所述数额随机隐藏密文,确定所述事务发起方、所述事务接收方和所述待监管事务的目标资源转移数额,包括:
    根据所述目标事务随机数和各所述公钥,确定各所述事务参与方的第一待验证事务密文;
    将与相应所述数额随机隐藏密文相同的第一待验证事务密文对应事务参与方作为事务混淆方;
    根据所述事务混淆方,确定所述事务执行方;
    根据所述目标事务随机数、所述事务执行方的公钥和所述事务执行方的第二事务参考密文,确定所述事务发起方、所述事务接收方和所述目标资源转移数额。
  3. 根据权利要求2所述的方法,其中,所述根据所述目标事务随机数、所述事务执行方的公钥和所述事务执行方的第二事务参考密文,确定所述事务发起方、所述事务接收方和所述目标资源转移数额,包括:
    根据至少一个预设穷举数额、所述目标事务随机数和所述事务执行方的公钥,确定各所述事务执行方的第二待验证事务密文;
    将与任一事务执行方的第二事务参考密文相同的所述第二待验证事务密文 所对应预设穷举数额作为所述目标资源转移数额;
    将所述目标资源转移数额对应第二待验证事务密文中与相应第二事务参考密文相同的事务执行方作为事务发起方,以及,将与相应第二事务参考密文不同的事务执行方作为事务接收方。
  4. 根据权利要求1所述的方法,其中,所述根据所述目标资源转移数额,分别更新所述事务发起方和所述事务接收方的当前资源余额,包括:
    确定各所述事务执行方的当前资源余额;其中,所述事务执行方的当前资源余额基于从区块链中获取的所述事务执行方的注册资源数额和历史已监管事务的资源已转移数额确定;
    根据所述目标资源转移数额,增加所述事务接收方的当前资源余额,以及,减少所述事务发起方的当前资源余额。
  5. 根据权利要求1所述的方法,其中,所述根据第一预设私密监管数据和第二预设私密监管数据,确定目标事务随机数,包括:
    根据所述第一预设私密监管数据和所述第二预设私密监管数据的逆,生成推测基础数据;
    根据所述推测基础数据和公开椭圆曲线点,生成所述目标事务随机数;其中,所述公开椭圆曲线点根据第一预设私密随机数和第二椭圆曲线点生成,所述第二椭圆曲线点基于所述第二预设私密监管数据和椭圆曲线生成元生成。
  6. 根据权利要求5所述的方法,其中,所述公开椭圆曲线点由区块链节点基于以下方式进行验证:
    获取事务发起方发送的椭圆曲线辅助点和辅助随机码;其中,所述椭圆曲线辅助点基于第二预设私密随机数和所述第二椭圆曲线点生成;所述辅助随机码基于所述椭圆曲线辅助点、所述第一预设私密随机数和所述第二预设私密随机数生成;
    根据所述椭圆曲线辅助点和所述公开椭圆曲线点,生成第一验证数据;
    根据所述辅助随机码和所述第二椭圆曲线点,生成第二验证数据;
    根据所述第一验证数据和所述第二验证数据的一致性,对所述公开椭圆曲线点进行验证。
  7. 根据权利要求1-6任一项所述的方法,还包括:
    若验证不通过,则从所述事务参与方获取标准监管数据,并根据所述标准监管数据和各所述数额随机隐藏密文,确定所述事务参与方中的异常参与方。
  8. 根据权利要求7所述的方法,其中,所述根据所述标准监管数据和各所述数额随机隐藏密文,确定所述事务参与方中的异常参与方,包括:
    基于不同事务参与方所属类别对应的验证方式,根据所述标准监管数据,生成所述事务参与方的异常参考数据,并根据所述事务参与方的异常参考数据和相应所述数额随机隐藏密文,确定所述事务参与方中的异常参与方。
  9. 根据权利要求8所述的方法,其中,所述标准监管数据包括公钥、标准资源转移数额和标准事务随机数;
    相应的,所述基于不同事务参与方所属类别对应的验证方式,根据所述标准监管数据,生成所述事务参与方的异常参考数据,并根据所述事务参与方的异常参考数据和相应所述数额随机隐藏密文,确定所述事务参与方中的异常参与方,包括:
    根据所述标准事务随机数和所述事务参与方的公钥,确定相应事务参与方的第一异常参考数据;
    根据所述标准事务随机数、所述事务参与方的公钥和所述标准资源转移数额,确定相应事务参与方的第二异常参考数据,并根据所述第一异常参考数据、所述第二异常参考数据和相应所述数额随机隐藏密文,从各所述事务参与方中选取异常参与方。
  10. 根据权利要求9所述的方法,其中,所述根据所述标准事务随机数、所述事务参与方的公钥和所述标准资源转移数额,确定相应事务参与方的第二异常参考数据,并根据所述第一异常参考数据、所述第二异常参考数据和相应所述数额随机隐藏密文,从各所述事务参与方中选取异常参与方,包括:
    根据所述事务参与方的第一异常参考数据与相应数额随机隐藏密文的一致性,从各所述事务参与方中选取候选参与方;
    根据所述标准事务随机数、所述候选参与方的公钥和所述标准资源转移数额,确定相应候选参与方的第二异常参考数据;
    根据候选参与方的第二异常参考数据与相应数额随机隐藏密文的一致性,从各所述候选参与方中选取异常参与方。
  11. 根据权利要求10所述的方法,其中,所述根据所述标准事务随机数、所述候选参与方的公钥和所述标准资源转移数额,确定相应候选参与方的第二异常参考数据,包括:
    根据所述标准事务随机数和所述候选参与方的公钥,确定第一中间数据;
    根据所述标准资源转移数额和椭圆曲线生成元,确定第二中间数据;
    根据所述第一中间数据和所述第二中间数据的和值,确定所述第二异常参考数据的接收参考值;以及,
    根据所述第一中间数据和所述第二中间数据的差值,确定所述第二异常参考数据的发起参考值。
  12. 根据权利要求11所述的方法,其中,所述根据所述事务参与方的第一异常参考数据与相应数额随机隐藏密文的一致性,从各所述事务参与方中选取候选参与方,包括:
    将第一异常参考数据与相应数额随机隐藏密文相一致的事务参与方作为正常事务混淆方,并将除正常事务混淆方之外的事务参与方作为所述候选参与方;
    相应的,所述根据候选参与方的第二异常参考数据与相应数额随机隐藏密文的一致性,从各所述候选参与方中选取异常参与方,包括:
    将接收参考值与相应数额随机隐藏密文相一致的候选参与方作为正常事务接收方,以及,将发起参考值与相应数额随机隐藏密文相一致的候选参与方作为正常事务发起方;
    将所述候选参与方中除正常事务混淆方、正常事务接收方和正常事务发起方之外的事务参与方作为异常参与方。
  13. 根据权利要求12所述的方法,其中,所述将所述候选参与方中除正常事务混淆方、正常事务接收方和正常事务发起方之外的事务参与方作为异常参与方,包括:
    若存在所述正常事务接收方,且存在所述正常事务发起方,则确定所述异常参与方为异常事务混淆方;
    若所述候选参与方为两个,且存在正常事务接收方,则确定所述异常参与方为异常事务发起方;
    若所述候选参与方为两个,且存在正常事务发起方,则确定所述异常参与方为异常事务接收方。
  14. 一种事务监管装置,包括:
    参考监管数据获取模块,用于从区块链中获取待监管事务对应的至少两个事务参与方的参考监管数据;其中,所述参考监管数据包括公钥、随机数隐藏密文和数额随机隐藏密文;所述事务参与方包括事务执行方和事务混淆方;所述事务执行方包括事务发起方和事务接收方;
    随机数确定模块,用于根据第一预设私密监管数据和第二预设私密监管数 据,确定目标事务随机数;
    随机数验证模块,用于根据所述目标事务随机数和所述随机数隐藏密文,对生成所述参考监管数据所使用的参考事务随机数进行验证;
    转移数额确定模块,用于若验证通过,则根据所述目标事务随机数、各所述公钥和各所述数额随机隐藏密文,确定所述事务发起方、所述事务接收方和所述待监管事务的目标资源转移数额;
    当前余额更新模块,用于根据所述目标资源转移数额,分别更新所述事务发起方和所述事务接收方的当前资源余额。
  15. 一种电子设备,包括:
    一个或多个处理器;
    存储器,用于存储一个或多个程序;
    当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-13任一项所述的事务监管方法。
  16. 一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-13任一项所述的事务监管方法。
PCT/CN2023/079195 2022-11-10 2023-03-02 事务监管方法、装置、电子设备及存储介质 WO2024098589A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202211404263.XA CN115801259B (zh) 2022-11-10 2022-11-10 事务监管方法、装置、电子设备及存储介质
CN202211404263.X 2022-11-10

Publications (1)

Publication Number Publication Date
WO2024098589A1 true WO2024098589A1 (zh) 2024-05-16

Family

ID=85436578

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/079195 WO2024098589A1 (zh) 2022-11-10 2023-03-02 事务监管方法、装置、电子设备及存储介质

Country Status (2)

Country Link
CN (1) CN115801259B (zh)
WO (1) WO2024098589A1 (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109472601A (zh) * 2018-11-21 2019-03-15 北京蓝石环球区块链科技有限公司 可监管隐私交易的区块链架构
CN110933045A (zh) * 2019-11-08 2020-03-27 中国电子科技网络信息安全有限公司 一种基于承诺的区块链数字资产隐私保护方法
CN111127020A (zh) * 2019-12-31 2020-05-08 深圳市网心科技有限公司 基于区块链的交易数据混淆方法及相关设备
CN112532656A (zh) * 2021-02-07 2021-03-19 腾讯科技(深圳)有限公司 基于区块链的数据加解密方法、装置及相关设备
CN113159774A (zh) * 2021-04-28 2021-07-23 中国互联网络信息中心 一种区块链中可监管零知识证明验证方法及系统
CN113222758A (zh) * 2021-05-08 2021-08-06 华中科技大学 以隐私为前提的联盟链交易信息监管方法、系统、终端
CN113761582A (zh) * 2021-09-29 2021-12-07 山东省计算中心(国家超级计算济南中心) 基于群签名的可监管区块链交易隐私保护方法及系统
US20220103453A1 (en) * 2020-09-27 2022-03-31 International Business Machines Corporation Compliance mechanisms in blockchain networks

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200311695A1 (en) * 2019-03-27 2020-10-01 International Business Machines Corporation Privacy-preserving gridlock resolution
US11081219B1 (en) * 2020-01-15 2021-08-03 Ledgerdomain Inc. Secure messaging in a machine learning blockchain network
CN111988290B (zh) * 2020-08-05 2022-10-14 上海交通大学 用户余额隐私保护和授权监管下的交易删除方法及系统
CN113141344B (zh) * 2021-03-11 2022-11-18 江苏大学 一种基于真随机数的车联网隐私保护通信方法
CN114580029A (zh) * 2022-04-28 2022-06-03 浙江甲骨文超级码科技股份有限公司 一种区块链数字资产隐私保护方法、装置、设备及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109472601A (zh) * 2018-11-21 2019-03-15 北京蓝石环球区块链科技有限公司 可监管隐私交易的区块链架构
CN110933045A (zh) * 2019-11-08 2020-03-27 中国电子科技网络信息安全有限公司 一种基于承诺的区块链数字资产隐私保护方法
CN111127020A (zh) * 2019-12-31 2020-05-08 深圳市网心科技有限公司 基于区块链的交易数据混淆方法及相关设备
US20220103453A1 (en) * 2020-09-27 2022-03-31 International Business Machines Corporation Compliance mechanisms in blockchain networks
CN112532656A (zh) * 2021-02-07 2021-03-19 腾讯科技(深圳)有限公司 基于区块链的数据加解密方法、装置及相关设备
CN113159774A (zh) * 2021-04-28 2021-07-23 中国互联网络信息中心 一种区块链中可监管零知识证明验证方法及系统
CN113222758A (zh) * 2021-05-08 2021-08-06 华中科技大学 以隐私为前提的联盟链交易信息监管方法、系统、终端
CN113761582A (zh) * 2021-09-29 2021-12-07 山东省计算中心(国家超级计算济南中心) 基于群签名的可监管区块链交易隐私保护方法及系统

Also Published As

Publication number Publication date
CN115801259A (zh) 2023-03-14
CN115801259B (zh) 2023-06-09

Similar Documents

Publication Publication Date Title
JP6686209B2 (ja) ネットワーク内の分散データベースのための方法及び装置
WO2021082633A1 (zh) 实现安全防御的多方联合训练神经网络的方法及装置
CN108322304B (zh) 工作量证明的计算方法和装置、电子设备、程序和介质
KR102699409B1 (ko) 블록체인 기반 데이터 저장 방법, 시스템 및 장치
WO2020181822A1 (zh) 加密数据一致性校验方法、装置、计算机设备及存储介质
JP2020504927A (ja) イベントの削除を可能にする分散データベースのための方法および装置
US11418320B2 (en) Blockchain-based data processing methods, devices, and media
US20220100777A1 (en) Transaction request construction method and apparatus, transaction request processing method and apparatus, device and storage medium
WO2020253106A1 (zh) 加密数据大小关系证明方法、装置、设备及存储介质
US20210312743A1 (en) Block chain-based asset processing method, device, apparatus and storage medium
WO2023040429A1 (zh) 用于联邦特征工程的数据处理方法、装置、设备以及介质
CN114186256B (zh) 神经网络模型的训练方法、装置、设备和存储介质
JP7317084B2 (ja) トラステッド環境の遠隔検証方法、装置、機器、システムおよび媒体
US20230195940A1 (en) Blockchain-based data processing method and apparatus, device, and storage medium
EP4187882A1 (en) Data transmission method and apparatus, device, storage medium, and computer program product
CN112765642A (zh) 数据处理方法、数据处理装置、电子设备及介质
EP3970048A1 (en) Systems and methods for non-parallelised mining on a proof-of-work blockchain network
CN113032817B (zh) 基于区块链的数据对齐方法、装置、设备和介质
WO2024098589A1 (zh) 事务监管方法、装置、电子设备及存储介质
CN116633688B (zh) 一种aigc服务隐私保护方法和设备
US20230316241A1 (en) Partitioning a request into transactions for a blockchain
CN115964755B (zh) 数据授权及验证方法、装置、设备和存储介质
TWI694402B (zh) 業務校驗方法和設備
US20240160505A1 (en) Method of processing agreement task
CN115858914A (zh) 一种匿踪查询方法、装置、系统、终端设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23887299

Country of ref document: EP

Kind code of ref document: A1