Service privacy data verification method and apparatus, and device and storage medium

By generating initial public parameters and equivalent arithmetic circuits in the blockchain system, and combining them with a multi-party data joint vector set to generate privacy data commitment values ​​and proof field values, the joint verification problem under multi-party data privacy protection in the blockchain system is solved, and the security and reliability of transaction proof data are improved.

WO2025255965A1PCT designated stage Publication Date: 2025-12-18LINGSHU TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/115389
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-06-14
Filing Date
2024-08-29
Publication Date
2025-12-18

AI Technical Summary

Technical Problem

In a blockchain system, how can we protect the privacy of data from multiple parties while achieving joint verification of data from multiple parties to meet business needs?

Method used

By generating initial public parameters, constructing equivalent arithmetic circuits and multi-party data joint vector sets, combining business privacy data to generate privacy data commitment values ​​and proof field values, using secure multi-party computation to generate transaction proof data, and then verifying it on the blockchain.

Benefits of technology

This approach enhances the security and reliability of transaction proof data generation for multi-party participants while protecting data privacy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024115389_18122025_PF_FP_ABST
    Figure CN2024115389_18122025_PF_FP_ABST
Patent Text Reader

Abstract

A service privacy data verification method and apparatus, and a device and a storage medium. The method comprises: acquiring initial public parameters generated by a blockchain system (S110); on the basis of service privacy data to be verified, generating a data relationship equation to be verified (S120); on the basis of said data relationship equation, generating an equivalent arithmetic circuit and a multi-party data joint vector set (S130); generating a first privacy data commitment value on the basis of a verification demander's own service privacy data, acquiring a second privacy data commitment value generated by a verification participant on the basis of associated service privacy data, and generating a target privacy data commitment value (S140); on the basis of the verification demander's own service privacy data, the initial public parameters, arithmetic circuit parameters of the equivalent arithmetic circuit, and the multi-party data joint vector set, in combination with the associated service privacy data, determining a proof field value (S150); on the basis of the proof field value, generating transaction proof data (S160); and uploading the transaction proof data and the target privacy data commitment value to a blockchain, such that on-chain nodes verify the service privacy data to be verified (S170).
Need to check novelty before this filing date? Find Prior Art

Description

Business privacy data verification method, device and equipment and storage medium

[0001] The present application claims priority to the Chinese patent application No. 202410764883.7, filed on June 14, 2024, with the Chinese Patent Office, the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD

[0002] The present application relates to the field of blockchain technology, for example, to a business privacy data verification method, device, equipment and storage medium. BACKGROUND

[0003] At present, the blockchain system mainly realizes the data chaining of independent subjects through encryption and evidence storage. However, data encryption and evidence storage and the process of generating related chaining data often require privacy data between multiple business subjects. Therefore, how to protect the privacy of multi-subject data in the blockchain system while realizing the joint verification of multi-party data between business requirements has become a problem to be solved.

[0004] SUMMARY

[0005] The present application provides a business privacy data verification method, device, equipment and storage medium to realize the generation and verification of business privacy data participated by multiple business subjects.

[0006] According to an aspect of the present application, a business privacy data verification method is provided, applied to a verification demand party, the method comprising:

[0007] obtaining initial public parameters generated by a blockchain system;

[0008] generating a to-be-verified data relationship equation according to to-be-verified business privacy data; the to-be-verified business privacy data comprising own business privacy data of the verification demand party and associated business privacy data of at least one verification participant associated with the verification demand party;

[0009] generating an equivalent arithmetic circuit and a multi-party data joint vector set according to the to-be-verified data relationship equation;

[0010] generating a first privacy data commitment value according to the own business privacy data, and obtaining a second privacy data commitment value generated by the verification participant based on the associated business privacy data, and generating a target privacy data commitment value comprising the first privacy data commitment value and the second privacy data commitment value;

[0011] determining a proof field value based on the multi-party data joint vector set, in combination with the associated business privacy data, according to the own business privacy data, the initial public parameters and the arithmetic circuit parameters of the equivalent arithmetic circuit;

[0012] generating transaction proof data according to the proof field value;

[0013] chaining the transaction proof data and the target privacy data commitment value, so that a node on a chain verifies the to-be-verified business privacy data according to the transaction proof data and the target privacy data commitment value.

[0014] According to another aspect of the present application, a business privacy data verification device configured at a verification demand side is provided, and the device comprises:

[0015] an initial public parameter acquisition module configured to acquire initial public parameters generated by a block chain system;

[0016] a relationship equation generation module configured to generate a to-be-verified data relationship equation according to to-be-verified business privacy data; the to-be-verified business privacy data comprises self business privacy data of the verification demand side and associated business privacy data of at least one verification participant associated with the verification demand side;

[0017] a joint vector set generation module configured to generate an equivalent arithmetic circuit and a multi-party data joint vector set according to the to-be-verified data relationship equation;

[0018] a target commitment value generation module configured to generate a first privacy data commitment value according to the self business privacy data, acquire a second privacy data commitment value generated by the verification participant based on the associated business privacy data, and generate a target privacy data commitment value comprising the first privacy data commitment value and the second privacy data commitment value;

[0019] a proof field value determination module configured to determine a proof field value based on the multi-party data joint vector set, in combination with the associated business privacy data, according to the self business privacy data, the initial public parameters, and arithmetic circuit parameters of the equivalent arithmetic circuit;

[0020] a transaction proof data generation module configured to generate transaction proof data according to the proof field value;

[0021] a privacy data chaining module configured to chain the transaction proof data and the target privacy data commitment value, so that a node on a chain verifies the to-be-verified business privacy data according to the transaction proof data and the target privacy data commitment value.

[0022] According to another aspect of the present application, an electronic device is provided, and the electronic device comprises:

[0023] at least one processor; and

[0024] a memory connected with the at least one processor in communication; wherein

[0025] The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to perform the business privacy data verification method according to any one of the embodiments of the present application.

[0026] According to another aspect of the present application, a computer readable storage medium is provided, which stores computer instructions for enabling a processor to perform the business privacy data verification method according to any one of the embodiments of the present application when executed by the processor. BRIEF DESCRIPTION OF DRAWINGS

[0027] In order to illustrate the embodiments of the present application, the drawings needed to be used in the following embodiment description will be introduced, and the drawings in the following description are some embodiments of the present application, and other drawings can also be obtained by those skilled in the art without creative labor on the basis of these drawings.

[0028] Fig. 1A is a flow chart of a business privacy data verification method according to an embodiment of the present application;

[0029] Fig. 1B is a circuit structure representation schematic diagram of an equivalent arithmetic circuit according to an embodiment of the present application;

[0030] Fig. 2 is a flow chart of a business privacy data verification method according to an embodiment of the present application;

[0031] Fig. 3 is a flow chart of a business privacy data verification device according to an embodiment of the present application;

[0032] Fig. 4 is a structural schematic diagram of an electronic device implementing the business privacy data verification method according to an embodiment of the present application. DETAILED DESCRIPTION

[0033] The embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application, and the described embodiments are some embodiments related to the present application. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor shall be within the scope of protection of the present application.

[0034] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and in the above drawings are used to distinguish similar objects, and do not necessarily have to be used to describe a specific order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device that includes a series of steps or units does not have to be limited to only those steps or units clearly listed, but can include other steps or units not clearly listed or inherent to these processes, methods, products or devices.

[0035] Embodiment one

[0036] FIG. 1A is a flowchart of a business privacy data verification method according to an embodiment of the present application. The present embodiment can be applied to the case of joint cross-verification of business privacy data involving multiple business subjects in the cross-border trade financing scenario. The application scenarios of the present embodiment also include data operation and verification in a ciphertext state, data operation and verification without data export, and breaking data silos to build a data element cross-regional circulation ecosystem. The method can be executed by a business privacy data verification device, which can be realized in the form of hardware and / or software. The business privacy data verification device can be configured in a verification demand party, which can be a blockchain node. As shown in FIG. 1A, the method comprises:

[0037] S110, obtaining initial public parameters generated by a blockchain system.

[0038] The initial public parameters can be written into the genesis block as special public transaction data; the genesis block is the first block in the blockchain system or blockchain network. The genesis block is usually generated by the creator or team of the blockchain and is used as the starting point of the blockchain network. The genesis block contains the initial state information of the blockchain network and can also contain some initial transaction information or other data. Starting from the genesis block, subsequent blocks are added to the blockchain according to the consensus mechanism of the blockchain.

[0039] The initial public parameters can include generation element parameters and generation element vectors, which are used to calculate intermediate parameters for joint cross-generation of transaction proof data between multiple business subjects.

[0040] S120, generating a to-be-verified data relationship equation according to to-be-verified business privacy data; the to-be-verified business privacy data includes self business privacy data of the verification demand party and associated business privacy data of at least one verification participant associated with the verification demand party.

[0041] The verification demand party can be a blockchain node or a blockchain user that has a demand for verifying transaction data of itself; the verification participant can be a blockchain node or a blockchain user that has a correlation with the verification demand party in transaction-related data when the verification demand party has a demand for verification. The number of the verification participants can be at least one.

[0042] In some embodiments, taking a cross-border trade financing scenario as an example, enterprise A, as an upstream purchaser, purchases original electronic components from enterprise B. Enterprise B produces electronic components and completes logistics delivery by financing from a bank. Before the financing application, the purchasing party enterprise A creates a purchase order, and the selling party enterprise B creates an invoice. To prove the authenticity of the invoice data of itself, enterprise B submits cross-verification proofs of the invoice, a customs declaration, and related data between the purchase order of enterprise A to the blockchain system. In this business scenario, the verification demand party is enterprise B, and the verification participant is enterprise A; wherein the purchase order includes two goods g1 and g2, and the unit prices are p1 and p2, respectively. The purchase quantity of good g1 in the customs declaration is n1, and the purchase quantity of good g2 in the customs declaration is n2, and the total amount in the invoice is a. The business privacy data of the verification demand party itself includes the purchase quantity n1 of good g1 and the purchase quantity n2 of good g2; and the associated business privacy data of the verification participant includes the unit price p1 of good g1 and the unit price p2 of good g2.

[0043] The to-be-verified data relationship equation can be a data correlation relationship equation between the business privacy data of the verification demand party itself and the associated business privacy data of the verification participant. Continuing the above example, the to-be-verified data relationship equation between the verification demand party enterprise B and the verification participant enterprise A is: p1*n1+p2*n2==a.

[0044] S130, generating an equivalent arithmetic circuit and a multi-party data joint vector set according to the to-be-verified data relationship equation.

[0045] Exemplarily, the equivalent arithmetic circuit and the multi-party data joint vector set can be generated by an automated tool deployed in the verification demand party.

[0046] Suppose the expression form of the equivalent arithmetic circuit AC is as follows:

[0047] wherein W L is the first matrix of the arithmetic circuit; W R is the second matrix of the arithmetic circuit; W O is the third matrix of the arithmetic circuit; W V is the privacy data commitment weight matrix; c is a preset constant matrix; Q, m, and n are matrix vector dimension coefficients; and p is an arithmetic circuit parameter of the equivalent arithmetic circuit.

[0048] Suppose the expression form of the multi-party data joint vector set JVS is as follows:

[0049] wherein v represents a multi-party privacy data vector, i.e., a privacy data vector of all verification participants. L is a first joint vector of multi-party privacy data, i.e., a first input vector of all multiplication gates; R is a second joint vector of multi-party privacy data, i.e., a second input vector of all multiplication gates; O is a third joint vector of multi-party privacy data, i.e., an output vector of all multiplication gates.

[0050] In some embodiments, taking the cross-border trade financing scenario described in S120 above as an example, for the convenience of description, the scenario is simplified, and it is assumed that the to-be-verified data relationship equation is: p1*n1+p2*n2==a. Assuming that n2 is equal to 1, the to-be-verified data relationship equation is: p1*n1+p2==a. The circuit structure representation diagram of the equivalent arithmetic circuit constructed based on the to-be-verified data relationship equation is shown in FIG. 1B. The equivalent arithmetic circuit can be described using the following set of equations:

[0051] a2=o1+p2;

[0052] o2=a2*b2;

[0053] o1=a1*b1;

[0054] According to the above set of equations, the complete description based on the matrix form is as follows:

[0055] According to the to-be-verified data relationship equation in the above matrix form, it can be determined that m=4, Q=1, n=2 in the above scenario.

[0056] The expression form of the equivalent arithmetic circuit AC in this trade scenario is as follows:

[0057] According to the set of equations of the equivalent arithmetic circuit, the equation relationship that should be satisfied in this trade scenario is as follows:

[0058] a1=p1, b1=n1, o1=p1*n1, a2=p1*n1+p2;

[0059] b2=1, o2=a;

[0060] That is, the expression form of the multi-party data joint vector set JVS in this trade scenario is as follows:

[0061] All parameters of the equivalent arithmetic circuit and the structure of the multi-party data joint vector set are on-chain and off-chain public data.

[0062] S140, generating a first privacy data commitment value according to the business privacy data of the verification demand party, and obtaining a second privacy data commitment value generated by the verification participant based on the associated business privacy data, and generating a target privacy data commitment value including the first privacy data commitment value and the second privacy data commitment value.

[0063] The verification demand party generates a first privacy data commitment value according to the business privacy data of the verification demand party in a local off-chain manner; and the verification participant generates a second privacy data commitment value according to the associated business privacy data of the verification participant in a local off-chain manner.

[0064] For example, for m privacy data of a multi-party privacy data vector v, each party can calculate a corresponding commitment value based on a Pedersen commitment (Pedersen commitment, cryptography commitment):

[0065] V1: commit(v1, γ1), V2: commit(v2, γ2),..., V m : commit(v m , γ m );

[0066] Wherein, the target privacy data commitment value V: (V1, V2,..., V m ); the blind factor vector Wherein, the blind factor can be pre-set by a related technical person. commit() is a Pedersen commitment calculation function.

[0067] In some embodiments, it is assumed that the initialization public parameter pp is as follows:

[0068] Wherein, g is a first generator, h is a second generator, G is a first generator vector, and H is a second generator vector.

[0069] If the business privacy data of the verification demand party includes n1, n2 and a, the verification demand party calculates the privacy data commitment values V n1 , V n2 and V a corresponding to n1, n2 and a respectively in a local off-chain manner:

[0070] If the business privacy data of the verification participant includes p1 and p2, the verification participant calculates the privacy data commitment values V p1 and V p2 corresponding to p1 and p2 respectively in a local off-chain manner:

[0071] The target privacy data commitment value V is as follows:

[0072] V: (V n1 , V n2 , V a , V p1 , V p2 );

[0073] wherein Y is a preset blind factor vector.

[0074] S150, according to the business privacy data of itself, the initial public parameter and the arithmetic circuit parameter of the equivalent arithmetic circuit, based on the multi-party data joint vector set, combined with the associated business privacy data, determine the proof field value.

[0075] The proof field value can be the field value in the proof π. When the verification demand party wants to verify the authenticity of its own transaction related data such as invoice data, it can generate proof information for proving related data, that is, transaction proof data. However, the verification demand party may need privacy data from multiple verification participants in the process of generating transaction proof data, and this privacy data is not disclosed in the respective off-chain privacy storage of the verification participants, so in the process of generating transaction proof data by the verification demand party, multiple parties are needed to jointly generate transaction proof data.

[0076] Illustratively, the proof field value is the field value in the proof π, which is a nine-element data composed of nine fields. In the process of determining the nine field values respectively, there are some fields that need to be generated by the verification demand party based on its own business privacy data and other related data such as initial public parameters and arithmetic circuit parameters of equivalent arithmetic circuits in its local off-chain, while there are another part of the fields that need to be jointly generated by the verification demand party and the verification participants based on their respective business privacy data. For example, for the fields that need to be jointly generated, the corresponding field values can be jointly generated based on the pre-set adaptive MPC (Multi-Party Computation) protocol, such as the three-element / ABY (A stands for Arithmetic sharing, B stands for Boolean sharing, and Y stands for Yao's garbled circuits) secret sharing two-party multiplication protocol, secret sharing / homomorphic encryption two-party addition protocol, etc.

[0077] S160, generating transaction proof data according to the proof field value.

[0078] Illustratively, proof information can be generated according to the proof field value, and transaction proof data can be generated according to the proof information.

[0079] S170, chain the transaction proof data and the target privacy data commitment value, so that the on-chain node verifies the to-be-verified business privacy data according to the transaction proof data and the target privacy data commitment value.

[0080] For example, the on-chain node verifies the transaction proof data based on the pre-deployed smart contract cross-verification algorithm, in combination with the target privacy data commitment value required by the algorithm, so as to determine the authenticity and reliability of the to-be-verified business privacy data according to the verification result.

[0081] The technical scheme of the embodiments of the present application generates equivalent arithmetic circuits and multi-party data joint vector sets according to the to-be-verified data relationship equation and the verification demand; generates a first privacy data commitment value according to the business privacy data, and obtains a second privacy data commitment value generated by the verification participant based on the associated business privacy data, and generates a target privacy data commitment value including the first privacy data commitment value and the second privacy data commitment value; determines a proof field value based on the multi-party data joint vector set, in combination with the associated business privacy data, according to the business privacy data, the initial public parameter and the arithmetic circuit parameter of the equivalent arithmetic circuit, and generates transaction proof data according to the proof field value, thereby realizing the generation and verification of business privacy data with the participation of multiple business subjects, and realizing the generation of transaction proof data with the participation of multiple parties based on the cross-proof method of block chain multi-party privacy data based on secure multi-party computation, thereby improving the security and reliability of transaction proof data generation.

[0082] Embodiment two

[0083] FIG. 2 is a flowchart of a business privacy data verification method provided by the second embodiment of the present application. The present embodiment is improved on the basis of the above-mentioned embodiments.

[0084] The step of "generating transaction proof data according to the proof field value" can be "generating privacy data proof according to the proof field value; and generating transaction proof data associated with the to-be-verified business privacy data according to the arithmetic circuit parameter of the equivalent arithmetic circuit and the privacy data proof", so as to improve the generation method of transaction proof data.

[0085] The parts not described in the embodiments of the present application can be referred to the descriptions of other embodiments. As shown in FIG. 2, the method includes the following steps:

[0086] S210, obtaining the initial public parameter generated by the block chain system.

[0087] S220, generating a to-be-verified data relationship equation according to to-be-verified business privacy data; the to-be-verified business privacy data comprises self business privacy data of a verification demand party and associated business privacy data of at least one verification participant associated with the verification demand party.

[0088] S230, generating an equivalent arithmetic circuit and a multi-party data joint vector set according to the to-be-verified data relationship equation.

[0089] S240, generating a first privacy data commitment value according to the self business privacy data, and obtaining a second privacy data commitment value generated by a verification participant based on the associated business privacy data, and generating a target privacy data commitment value comprising the first privacy data commitment value and the second privacy data commitment value.

[0090] S250, determining a proof field value based on the multi-party data joint vector set, in combination with the associated business privacy data, according to the self business privacy data, initial common parameters and arithmetic circuit parameters of the equivalent arithmetic circuit.

[0091] S260, generating a privacy data proof according to the proof field value.

[0092] S270, generating transaction proof data associated with the to-be-verified business privacy data according to the arithmetic circuit parameters of the equivalent arithmetic circuit and the privacy data proof.

[0093] S280, chaining the transaction proof data and the target privacy data commitment value, so as to verify the to-be-verified business privacy data according to the transaction proof data and the target privacy data commitment value by a chain node.

[0094] It should be noted that the transaction proof data can be composed of multiple fields, and the generation process of different fields can be independently completed by the verification demand party, or can be jointly generated by the verification demand party and the verification participant.

[0095] In an optional embodiment, the proof field value comprises an input vector commitment value; accordingly, the proof field value is determined based on the multi-party data joint vector set, in combination with the associated business privacy data, according to the self business privacy data, the initial common parameter and the arithmetic circuit parameter of the equivalent arithmetic circuit, comprising: constructing an input commitment value function for determining the input vector commitment value according to the first joint vector and the second joint vector in the multi-party data joint vector set, based on the preset first security random number; determining a first input commitment value sub-function associated with the self business privacy data, determining a second input commitment value sub-function associated with the associated business privacy data, and determining a third input commitment value sub-function associated with the self business privacy data and the associated business privacy data according to the input commitment value function; generating a first input commitment value based on the first input commitment value sub-function according to the self business privacy data; and sending the second input commitment value sub-function to the verification participant, so that the verification participant generates a second input commitment value based on the second input commitment value sub-function according to the associated business privacy data; and sending the third input commitment value sub-function to the verification participant, generating a third input commitment value based on the preset multi-party cooperative encryption mode, in combination with the self business privacy data and the associated business privacy data of the verification participant; and determining the input vector commitment value according to the first input commitment value, the second input commitment value and the third input commitment value.

[0096] The input vector commitment value needs to be jointly generated by the verification demander and the verification participant. For example, the verification demander constructs an input commitment value function for determining the input vector commitment value according to the first joint vector and the second joint vector in the multi-party data joint vector set, based on the preset first security random number. The constructed input commitment value function A I is as follows.

[0097] Wherein, a L is the first joint vector; a R is the second joint vector; and a is the first security random number, which can be preset by the relevant technical personnel. G is the first generator vector in the initial common parameter; and H is the second generator vector in the initial common parameter.

[0098] According to the constructed input commitment value function A IThe input commitment value function is split to obtain a first input commitment value sub-function associated with the verification demand party's own business privacy data. For example, if the verification demand party's own business privacy data includes a data and b data, the function input value of the first input commitment value sub-function is only a data and b data. The second input commitment value sub-function is a sub-function associated with the verification participant's associated business privacy data. For example, if the verification participant's associated business privacy data includes c data and d data, the function input value of the second input commitment value sub-function is only c data and d data. The third input commitment value sub-function is a sub-function associated with both the verification demand party's own business privacy data and the verification participant's associated business privacy data. The function input value of the third input commitment value sub-function is from both the verification demand party and the verification participant, for example, the input value of the third input commitment value sub-function is a data and c data.

[0099] In some embodiments, if the verification demand party's own business privacy data is n1, and the verification participant's associated business privacy data is p1 and p2, the input commitment value function A I is split to obtain the following function expression form:

[0100] wherein f 11 (α, n1) is a first input commitment value sub-function associated with only the verification demand party's own business privacy data; f 12 (p1, p2) is a second input commitment value sub-function associated with only the verification participant's associated business privacy data; f 13 (p1, n1) is a third input commitment value sub-function associated with both the verification demand party's own business privacy data and the verification participant's associated business privacy data.

[0101] For example, the verification demand party determines a first input commitment value based on a first secure random number and the own business privacy data based on the first input commitment value sub-function. The verification demand party sends the second input commitment value sub-function to the verification participant, and the verification participant determines a second input commitment value based on the associated business privacy data based on the second input commitment value sub-function. The third input commitment value sub-function is sent to the verification participant, and both parties generate a third input commitment value based on their own privacy data and a pre-set multi-party cooperation encryption mode. The multi-party cooperation encryption mode can be a multi-party multiplication protocol such as a three tuple / ABY secret sharing or a multi-party encryption technology such as secret sharing / homomorphic encryption.

[0102] In the process of generating the input vector commitment value by the two parties, since the two parties generate the corresponding results based on their own local nodes, private data and functions, the two parties will not know the private data and private calculation process of the other party. The verification demand party can only obtain a final result fed back after the verification participant completes the calculation, so in the entire cross calculation process, the private data of each party will not be disclosed, and the security is high.

[0103] The verification demand party can determine the input vector commitment value based on the first input commitment value obtained by itself, the second input commitment value sent by the verification participant, and the third input commitment value generated by the verification demand party and the verification participant jointly, based on the input commitment value function.

[0104] The above embodiment improves the security of the calculation process by function splitting of the input commitment value function to obtain input commitment value sub-functions associated with the verification demand party and the verification participant respectively, and performing private calculation based on their own private data in their respective nodes, thereby protecting the private data of each party and realizing the determination of the input vector commitment value by multiple participants.

[0105] In an optional embodiment, the proof field value further includes an output vector commitment value; accordingly, the proof field value is determined based on the multi-party data joint vector set in combination with the associated business private data according to the business private data, the initial common parameter and the arithmetic circuit parameter of the equivalent arithmetic circuit, including: constructing an output commitment value function for determining the output vector commitment value based on a preset second secure random number according to the third joint vector in the multi-party data joint vector set; determining a first output commitment value sub-function associated with the business private data and a second output commitment value sub-function associated with the business private data and the associated business private data according to the output commitment value function; generating a first output commitment value based on the first output commitment value sub-function according to the initial common parameter and the business private data; sending the second output commitment value sub-function to the verification participant, generating a second output commitment value based on the preset multi-party cooperation encryption mode in combination with the business private data and the associated business private data of the verification participant according to the initial common parameter; and determining the output vector commitment value according to the first output commitment value and the second output commitment value.

[0106] The output vector commitment value needs to be generated by the verification demand party and the verification participant jointly. For example, the verification demand party constructs an output commitment value function for determining the output vector commitment value based on a preset second secure random number according to the third joint vector in the multi-party data joint vector set. The output commitment value function A O As follows.

[0107] Wherein, aO is a third joint vector; β is a second security random number; h is a second generator in initial public parameters; and G is a first generator vector in initial public parameters.

[0108] According to the constructed output commitment value function A O The output commitment value function is split to obtain a first output commitment value sub-function associated with the verification demand party's own business privacy data and a second output commitment value sub-function associated with the own business privacy data and the associated business privacy data of the verification demand party. It should be noted that the commitment value sub-function calculated by the verification participant based on the associated business privacy data cannot be split out in the splitting process of the output commitment value function.

[0109] In some embodiments, if the own business privacy data of the verification demand party is n1 and the associated business privacy data of the verification participant is p1 and p2, the output commitment value function A O is split to obtain the following function expression form:

[0110] wherein f 21 (β, α) is a first output commitment value sub-function associated with only the own business privacy data of the verification demand party; f 23 (p1, n1) is a second output commitment value sub-function associated with both the own business privacy data of the verification demand party and the associated business privacy data of the verification participant.

[0111] For example, the first output commitment value of the verification demand party is determined based on the first output commitment value sub-function based on the first security random number, the second security random function and the own business privacy data of the verification demand party. If other parameters such as initial public parameters are also required in the calculation process of the first output commitment value sub-function, the other parameters are also taken as input parameters of the calculation process. The second output commitment value sub-function is sent to the verification participant, and the two parties generate the second output commitment value based on their own privacy data and the pre-set multi-party cooperative encryption mode. The multi-party cooperative encryption mode can be a three tuple / ABY secret sharing multi-party multiplication protocol or a secret sharing / homomorphic encryption multi-party encryption technology.

[0112] The above embodiments split the output commitment value function to obtain the output commitment value sub-functions associated with the verification demand party and the verification participant respectively, and the two parties calculate the own privacy data part under their respective nodes, which improves the security of the calculation process, realizes the protection of the privacy data of each party, and realizes the determination of the output vector commitment value participated by multiple participants.

[0113] In an optional embodiment, the proof field value further comprises a blind vector pair commitment value, the first random vector and the second random vector are generated according to a preset random vector generation length, and the blind vector pair commitment value is determined based on the initial public parameter according to the first random vector, the second random vector and a preset third secure random number.

[0114] The blind vector pair commitment value can be determined only by the verification demand side. For example, the verification demand side generates the first random vector and the second random vector according to a preset random vector generation length. The random vector generation length can be preset by a relevant technical person according to actual needs, and the generated first random vector and the second random vector are vectors conforming to the preset random vector generation length.

[0115] For example, the blind vector pair commitment function S' for determining the blind vector pair commitment value S is constructed according to the first random vector, the second random vector and a preset third secure random number, and the construction method is as follows:

[0116] wherein s L is the first random vector; sR is the second random vector; p is the third secure random number; G is the first generator vector in the initial public parameter; H is the second generator vector in the initial public parameter; and h is the second generator in the initial public parameter.

[0117] After the blind vector pair commitment function S' is split, it is determined that the function input parameters are only related to the self-business privacy data of the verification demand side, and therefore, the blind vector pair commitment value can be determined based on the blind vector pair commitment function according to the self-business privacy data.

[0118] In some embodiments, the proof field value further comprises a coefficient commitment vector, and correspondingly, the proof field value is determined based on the multi-party data joint vector set in combination with the associated business privacy data according to the self-business privacy data, the initial public parameter and the arithmetic circuit parameters of the equivalent arithmetic circuit, including: determining a first random challenge intermediate parameter according to the input vector commitment value, the output vector commitment value and the blind vector pair commitment value; generating a first random challenge vector based on the arithmetic circuit parameters of the equivalent arithmetic circuit according to the first random challenge intermediate parameter; generating a second random challenge intermediate parameter according to the first random challenge intermediate parameter; generating a second random challenge vector based on the arithmetic circuit parameters of the equivalent arithmetic circuit according to the second random challenge intermediate parameter; determining a multiplication gate independent coefficient based on the arithmetic circuit parameters of the equivalent arithmetic circuit according to the first random challenge vector and the second random challenge vector; determining a joint coefficient based on the multi-party data joint vector set according to the first random challenge vector, the second random challenge vector, the multiplication gate independent coefficient and the arithmetic circuit parameters; and determining the coefficient commitment vector according to the joint coefficient and the initial public parameter.

[0119] For example, the intermediate parameter y of the first random challenge is determined based on the input vector commitment value, the output vector commitment value, and the blind vector pair commitment value as follows:

[0120] y = hash(A I A O ,S);

[0121] Among them, A I A is the commitment value of the input vector; O S is the commitment value of the output vector; S is the commitment value of the blind vector pair; hash() is the hash calculation function.

[0122] For example, the first random challenge vector Y is generated based on the intermediate parameters of the first random challenge and the arithmetic circuit parameters of the equivalent arithmetic circuit as follows:

[0123] Where y is the intermediate parameter of the first random challenge, and n and p are the arithmetic circuit parameters of the equivalent arithmetic circuit.

[0124] For example, the method for generating the second random challenge intermediate parameter z based on the first random challenge intermediate parameter is as follows:

[0125] z = hash(y);

[0126] Based on the intermediate parameters of the second random challenge and the arithmetic circuit parameters of the equivalent arithmetic circuit, the second random challenge vector Z is generated as follows:

[0127] Where z is the intermediate parameter of the second random challenge, and Q and p are the arithmetic circuit parameters of the equivalent arithmetic circuit.

[0128] Based on the first and second random challenge vectors, and using the arithmetic circuit parameters of the equivalent arithmetic circuit, the independent coefficients δ of the multiplication gates are determined as follows:

[0129] Where Y is the first random challenge vector; Z is the second random challenge vector; W R W is the second matrix of the arithmetic circuit in the equivalent arithmetic circuit. L This is the first matrix of the arithmetic circuit. The symbol "·" represents the binary vector operator; "·" represents the binary matrix multiplication operator; and "<·>" represents the binary vector inner product operator.

[0130] According to the first random challenge vector, the second random challenge vector, the multiplication gate independent coefficient and the arithmetic circuit parameter, a joint coefficient is determined based on the multi-party data joint vector set. The joint coefficient includes a first joint coefficient, a second joint coefficient, a third joint coefficient, a fourth joint coefficient and a fifth joint coefficient. Different joint coefficients are determined in different ways, and part of the joint coefficient generation process requires the cooperation of the verification demand party and the verification participating party.

[0131] Optionally, according to the first random challenge vector, the second random challenge vector, the multiplication gate independent coefficient and the arithmetic circuit parameter, a joint coefficient is determined based on the multi-party data joint vector set, including:

[0132] According to the first random challenge vector, the second random challenge vector, the arithmetic circuit parameter, the first joint vector in the multi-party data joint vector set, a first joint coefficient is generated based on a preset multi-party cooperation encryption mode, combined with the business privacy data of the verification demand party and the associated business privacy data of the verification participating party. For example, the determination method of the first joint coefficient t1 is as follows:

[0133] Wherein, a L represents the first joint vector in the multi-party data joint vector set; Y represents the first random challenge vector; Z represents the second random challenge vector; W R represents the second matrix of the arithmetic circuit in the arithmetic circuit parameter; W O represents the third matrix of the arithmetic circuit in the arithmetic circuit parameter.

[0134] The function for determining the first joint coefficient t1 can be split into a part function calculated only by the verification participating party based on the associated business privacy data, and a part function calculated jointly by the verification participating party and the verification demand party. The result of the function for determining the first joint coefficient t1 after splitting is as follows:

[0135] Wherein, F 11 (p1, p2) is a function with the associated business privacy data p1 and p2 of the verification participating party as input data; F 12 (p1, n1) is a function with the associated business privacy data p1 of the verification participating party and the business privacy data n1 of the verification demand party as input data. In the process of calculating F 12 (p1, n1), the verification participating party and the verification demand party can obtain the output value of the function F 12 (p1, n1) based on the preset multi-party cooperation encryption mode, combined with the business privacy data of the verification demand party and the associated business privacy data of the verification participating party.

[0136] According to the first random challenge vector, the second random challenge vector, the multiplication gate independent coefficient, the arithmetic circuit parameter, the first joint vector, the second joint vector and the third joint vector in the multi-party data joint vector set, a second joint coefficient is generated based on a preset multi-party cooperative encryption mode, in combination with the business privacy data of the verification demand party and the associated business privacy data of the verification participant.

[0137] wherein a L represents the first joint vector in the multi-party data joint vector set; a R represents the second joint vector in the multi-party data joint vector set; a O represents the third joint vector in the multi-party data joint vector set; Y represents the first random challenge vector; Z represents the second random challenge vector; W L represents the first matrix of the arithmetic circuit in the arithmetic circuit parameter; W R represents the second matrix of the arithmetic circuit in the arithmetic circuit parameter; W O represents the third matrix of the arithmetic circuit in the arithmetic circuit parameter; and δ represents the multiplication gate independent coefficient.

[0138] The function for determining the second joint coefficient t2 can be split to obtain a partial function calculated only by the verification demand party based on the business privacy data thereof, a partial function calculated only by the verification participant based on the associated business privacy data, and a partial function calculated jointly by the verification participant and the verification demand party. The result of splitting the function for determining the second joint coefficient t2 is as follows:

[0139] wherein F 22 (n1, a) is a function with the business privacy data n1 of the verification demand party and the first security random number a as input data; F 21 (p1, p2) is a function with the associated business privacy data p1 and p2 of the verification participant as input data; F 23 (p1, n1a) and F 23 (p1, n1) are functions with the associated business privacy data p1 of the verification participant, the first security random number a and the business privacy data n1 of the verification demand party as input data. In the process of calculating F 23 (p1, n1a) and F 23 (p1, n1), the verification participant and the verification demand party can obtain the output values of the functions F 23 (p1, n1a) and F 23 (p1, n1) based on the preset multi-party cooperative encryption mode, in combination with the business privacy data of the verification demand party and the associated business privacy data of the verification participant.

[0140] According to the first random challenge vector, the second random challenge vector, the arithmetic circuit parameter, the first joint vector and the second joint vector in the multi-party data joint vector set, and the first random vector, a third joint coefficient is generated based on a preset multi-party cooperative encryption manner, in combination with the business privacy data of the verification demand party and the associated business privacy data of the verification participant. For example, the determination manner of the third joint coefficient t3 is as follows:

[0141] Wherein, a O represents the third joint vector in the multi-party data joint vector set; a R represents the second joint vector in the multi-party data joint vector set; Y represents the first random challenge vector; Z represents the second random challenge vector; W L represents the first matrix of the arithmetic circuit in the arithmetic circuit parameter; W O represents the third matrix of the arithmetic circuit in the arithmetic circuit parameter; s L represents the first random vector.

[0142] The function for determining the third joint coefficient t3 is split to obtain a partial function calculated by the verification demand party based on the business privacy data of the verification demand party, and a partial function calculated by the verification participant and the verification demand party in combination. The result of the function for determining the second joint coefficient t3 after splitting is as follows:

[0143] Wherein, F 33 (a, s L ) is a function of the input data of the verification demand party based on the first security random number a and the first random vector s L ; F 31 (p1, n1) and F(p1, n1a) are functions of the input data of the associated business privacy data p1 of the verification participant and the business privacy data n1 of the verification demand party. In the process of calculating F 31 (p1, n1) and , the verification participant and the verification demand party can obtain the output values of the functions F 23 (p1, n1a) and F 23 (p1, n1) based on the preset multi-party cooperative encryption manner in combination with the business privacy data of the verification demand party and the associated business privacy data of the verification participant.

[0144] According to the first random challenge vector, the second random challenge vector, the arithmetic circuit parameter, the first joint vector and the second joint vector in the multi-party data joint vector set, the first random vector and the second random vector, a fourth joint coefficient is generated based on a preset multi-party cooperation encryption mode, in combination with the business privacy data of the verification demand party and the associated business privacy data of the verification participant. For example, the determination mode of the fourth joint coefficient t4 is as follows:

[0145] Wherein, a L represents the first joint vector in the multi-party data joint vector set; a R represents the second joint vector in the multi-party data joint vector set; Y represents the first random challenge vector; Z represents the second random challenge vector; W L represents the first matrix of the arithmetic circuit in the arithmetic circuit parameter; W R represents the second matrix of the arithmetic circuit in the arithmetic circuit parameter; s L represents the first random vector; and sR represents the second random vector.

[0146] The function for determining the fourth joint coefficient t4 is split to obtain a partial function calculated by the verification demand party based on the business privacy data of the verification demand party, and a partial function calculated by the verification participant and the verification demand party in combination. The result of the function for determining the fourth joint coefficient t4 after splitting is as follows:

[0147] Wherein, F 44 (n1, s L , s R ) is a function with the business privacy data n1 of the verification demand party, the first random variable s L and the second random vector s R as input data; F 41 (p1, n1, s R,2 ), F 42 (p1, s R,1 ) and F 43 (p2, s R,2 ) are functions with the associated business privacy data p1 and p2 of the verification participant, the first random vector s R,1 , s R,2 and the business privacy data n1 of the verification demand party as input data. Wherein, S R,1 represents the first data of the vector s R , and s R,2 represents the second data of the vector s R , i.e. s R =(s R,1 , s R,2 ). In the calculation of F 41 (p1, n1, sR,2 ), F 42 (p1, s R,1 ) and F 43 (p2, s R,2 ) in the process, the verification participants and the verification demand party can obtain the output values of the functions F 41 (p1, n1, s R,2 ), F 42 (p1, s R,1 ) and F 43 (p2, s R,2 ) based on the preset multi-party cooperation encryption mode in combination with the business privacy data of the verification participants and the associated business privacy data of the verification demand party.

[0148] According to the first random challenge vector, the third joint vector in the multi-party data joint vector set and the first random vector, the fifth joint coefficient is generated based on the preset multi-party cooperation encryption mode in combination with the business privacy data of the verification participants and the associated business privacy data of the verification demand party. For example, the determination method of the fifth joint coefficient t5 is as follows:

[0149] Wherein, a O represents the third joint vector in the multi-party data joint vector set; Y represents the first random challenge vector; s R represents the second random vector.

[0150] The function for determining the fifth joint coefficient t5 is split to obtain a part function calculated only by the verification demand party based on the business privacy data of the verification participants and a part function calculated jointly by the verification participants and the verification demand party. The function after splitting the fifth joint coefficient t5 is as follows:

[0151] Wherein, F 52 (α, s R ) is a function with the first secure random number α and the second random vector s R as input data; F 51 (p1, n1) is a function with the associated business privacy data p1 of the verification participants and the business privacy data n1 of the verification demand party as input data. In the process of calculating F 51 (p1, n1), the verification participants and the verification demand party can obtain the output values of the function F 51 (p1, n1) based on the preset multi-party cooperation encryption mode in combination with the business privacy data of the verification participants and the associated business privacy data of the verification demand party.

[0152] generate the joint coefficient including the first joint coefficient t1, the second joint coefficient t2, the third joint coefficient t3, the fourth joint coefficient t4 and the fifth joint coefficient t5. Exemplarily, the coefficient commitment vector T is determined according to the joint coefficient and the initial common parameter in the following manner:

[0153] wherein g represents the first generator in the initial common parameter; h represents the second generator in the initial common parameter. τ1, τ2, τ3, τ4 and τ5 represent preset secure random numbers.

[0154] In an optional embodiment, the proof field value further includes the first polynomial challenge vector; correspondingly, the proof field value is determined according to the own business privacy data, the initial common parameter and the arithmetic circuit parameter of the equivalent arithmetic circuit, based on the multi-party data joint vector set and in combination with the associated business privacy data, including: generating the coefficient sampling value according to the coefficient commitment vector; constructing the first polynomial challenge function for determining the first polynomial challenge vector according to the first joint vector and the third joint vector in the multi-party data joint vector set, based on the first random challenge vector, the second random challenge vector, the first random vector, the arithmetic circuit parameter and the coefficient sampling value; determining the first own polynomial challenge sub-function associated with the own business privacy data and determining the first associated polynomial challenge sub-function associated with the associated business privacy data according to the first polynomial challenge function; generating the first own polynomial challenge vector based on the first own polynomial challenge sub-function according to the initial common parameter and the own business privacy data; sending the first associated polynomial challenge sub-function to the verification participant, so that the verification participant generates the first associated polynomial challenge vector based on the first associated polynomial challenge sub-function according to the associated business privacy data; determining the first polynomial challenge vector according to the first own polynomial challenge vector and the first associated polynomial challenge vector.

[0155] Exemplarily, the coefficient sampling value x can be determined in the following manner:

[0156] x = hash(T);

[0157] wherein T represents the coefficient commitment vector.

[0158] According to the first joint vector a L and the third joint vector a O in the multi-party data joint vector set, based on the first random challenge vector Y, the second random challenge vector Z, the first random vector s L , the arithmetic circuit second matrix W R in the arithmetic circuit parameter and the coefficient sampling value x, a first polynomial challenge function l for determining the first polynomial challenge vector l' is constructed:

[0159] The first polynomial challenge function is split to obtain sub-functions calculated by the verification demand party and the verification participant based on their own business privacy data and associated business privacy data respectively, and a sub-function calculated jointly by the verification demand party and the verification participant. Based on the first polynomial challenge function, the splitting is as follows:

[0160] wherein H 13 (s L,1 , x 3 ) and H 16 (a, x, s L,2 ) are first self-polynomial challenge sub-functions associated with the own business privacy data of the verification demand party; H 15 (p2, x) is a first associated-polynomial challenge sub-function associated with the associated business privacy data of the verification participant; H 11 (p1, x), H 12 (p1x 2 , n1) and H 14 (p1x, n1) are related sub-functions calculated jointly by the verification demand party and the verification participant.

[0161] In the local off-chain of the verification demand party, a first self-polynomial challenge vector is generated based on the first self-polynomial challenge sub-function according to the initial public parameter and the own business privacy data. In the local off-chain of the verification participant, a first associated-polynomial challenge vector is generated based on the first associated-polynomial challenge sub-function according to the associated business privacy data. A joint-polynomial challenge vector is generated based on the related sub-functions calculated jointly by the verification demand party and the verification participant according to a pre-set multi-party cooperation encryption mode. The first polynomial challenge vector is determined by the verification demand party according to the first self-polynomial challenge vector, the first associated-polynomial challenge vector and the joint-polynomial challenge vector.

[0162] In an optional embodiment, the proof field value further includes a second polynomial challenge vector; accordingly, the proof field value is determined based on the multi-party data joint vector set in combination with the associated business privacy data according to the own business privacy data, the initial public parameter and the arithmetic circuit parameter of the equivalent arithmetic circuit, including: a second polynomial challenge function for determining the second polynomial challenge vector is constructed based on the first random challenge vector, the second random challenge vector, the second random vector, the arithmetic circuit parameter and the coefficient sample value according to the second joint vector in the multi-party data joint vector set; and the second polynomial challenge vector is determined based on the second polynomial challenge function according to the initial public parameter and the own business privacy data.

[0163] The second joint vector a R, a second random challenge vector Z, a second random vector s R , a first matrix W of the arithmetic circuit parameter L , a third matrix W of the arithmetic circuit O , and a coefficient sample value x, a second polynomial challenge function r for determining a second polynomial challenge vector r' is constructed:

[0164] The function splitting is performed on the above-mentioned second polynomial challenge function r, and a function only requiring the local off-chain calculation based on the business privacy data of the verification demand side can be obtained. The splitting of the above-mentioned second polynomial challenge function r is as follows:

[0165] Wherein, H2(n1, s R ) is calculated by the verification demand side based on the business privacy data n1 and the second random vector s R .

[0166] In an optional embodiment, the proof field value further includes an inner product polynomial challenge value, which is determined according to the first polynomial challenge vector l' and the second polynomial challenge vector r' in the following manner:

[0167] In an optional embodiment, the proof field value further includes an inner product polynomial blinding value τ x , and the determination manner of the inner product polynomial blinding value τ x is as follows:

[0168] Wherein, x represents the coefficient sample value; Z represents the second random challenge vector; γ represents a preset blinding factor vector.

[0169] The function obtained by decomposition can be calculated by the verification demand side in its local off-chain; H3(γ1, γ3) can be calculated by the verification participant in its local off-chain.

[0170] In an optional embodiment, the proof field value further includes a blinding factor random combination value, which is determined according to the coefficient sample value, the first secure random number, the second secure random number and the third secure random number.

[0171] For example, the determination manner of the blinding factor random combination value μ can be as follows:

[0172] μ = αx + βx 2 + ρx 3 ;

[0173] ​Wherein, x represents the coefficient sample value; a represents the first security random number; b represents the second security random number; p represents the third security random number.

[0174] Generate the proof field value including the input vector commitment value A I , the output vector commitment value A O , the blind vector pair commitment value S, the coefficient commitment vector T, the first polynomial challenge vector l', the second polynomial challenge vector r', the inner product polynomial challenge value The inner product polynomial blinding value t x And the blind factor random combination value m. According to each proof field value, generate the privacy data proof p:

[0175] According to the arithmetic circuit parameters of the equivalent arithmetic circuit and the privacy data proof, the transaction proof data Tx associated with the business privacy data to be verified is generated in the following way:

[0176] Tx=W L ||W R ||W O ||W V ||p;

[0177] Wherein, W L is the first matrix of the arithmetic circuit in the arithmetic circuit parameters; W R is the second matrix of the arithmetic circuit in the arithmetic circuit parameters; W O is the third matrix of the arithmetic circuit in the arithmetic circuit parameters; W V is the privacy data commitment weight matrix in the arithmetic circuit parameters; p is the privacy data proof.

[0178] The embodiment realizes the privacy joint cross generation of the proof field value under the premise of protecting the privacy data of the verification demand party and the verification participant in the process of generating the nine proof field values of the privacy data proof, ensures the security of the data of each party, and realizes the generation of the privacy data proof of multi-party participation.

[0179] Embodiment three

[0180] Figure 3 is a structural schematic diagram of a business privacy data verification device provided in Embodiment Three of the present application. The business privacy data verification device provided in the present application can be applied to the case of joint cross-verification of business privacy data involving multiple business subjects in the cross-border trade financing scenario. The business privacy data verification device can be realized in the form of hardware and / or software. The business privacy data verification device can be configured in a verification demand party, for example, a blockchain node. As shown in Figure 3, the device includes an initial public parameter acquisition module 301, a relationship equation generation module 302, a joint vector set generation module 303, a target commitment value generation module 304, a proof field value determination module 305, a transaction proof data generation module 306, and a privacy data on-chain module 307. Among them,

[0181] The initial public parameter acquisition module 301 is configured to acquire the initial public parameters generated by the blockchain system.

[0182] The relationship equation generation module 302 is configured to generate a to-be-verified data relationship equation according to to-be-verified business privacy data. The to-be-verified business privacy data includes self business privacy data of the verification demand party and associated business privacy data of at least one verification participant associated with the verification demand party.

[0183] The joint vector set generation module 303 is configured to generate an equivalent arithmetic circuit and a multi-party data joint vector set according to the to-be-verified data relationship equation.

[0184] The target commitment value generation module 304 is configured to generate a first privacy data commitment value according to the self business privacy data, acquire a second privacy data commitment value generated by the verification participant based on the associated business privacy data, and generate a target privacy data commitment value including the first privacy data commitment value and the second privacy data commitment value.

[0185] The proof field value determination module 305 is configured to determine a proof field value based on the multi-party data joint vector set, in combination with the associated business privacy data, according to the self business privacy data, the initial public parameters, and the arithmetic circuit parameters of the equivalent arithmetic circuit.

[0186] The transaction proof data generation module 306 is configured to generate transaction proof data according to the proof field value.

[0187] The privacy data on-chain module 307 is configured to chain the transaction proof data and the target privacy data commitment value, so that the to-be-verified business privacy data is verified by the on-chain node according to the transaction proof data and the target privacy data commitment value.

[0188] Optionally, the proof field value includes an input vector commitment value; correspondingly, the proof field value determination module 305 includes:

[0189] The input commitment value construction unit is configured to construct, according to a first joint vector and a second joint vector in the joint vector set of the multi-party data, an input commitment value function for determining an input vector commitment value based on a preset first secure random number;

[0190] The input commitment value sub-function determination unit is configured to determine, according to the input commitment value function, a first input commitment value sub-function associated with the own business privacy data, determine a second input commitment value sub-function associated with the associated business privacy data, and determine a third input commitment value sub-function associated with the own business privacy data and the associated business privacy data;

[0191] The first input commitment value determination unit is configured to generate a first input commitment value based on the first input commitment value sub-function according to the own business privacy data; and

[0192] The second input commitment value acquisition unit is configured to send a second input commitment value sub-function to the verification participant, so that the verification participant generates a second input commitment value based on the second input commitment value sub-function according to the associated business privacy data; and

[0193] The third input commitment value sub-function sending unit is configured to send a third input commitment value sub-function to the verification participant, and generate a third input commitment value based on a preset multi-party cooperative encryption mode in combination with the own business privacy data and the associated business privacy data of the verification participant;

[0194] The input vector commitment value determination unit is configured to determine an input vector commitment value according to the first input commitment value, the second input commitment value and the third input commitment value.

[0195] Optionally, the proof field value further includes an output vector commitment value; correspondingly, the proof field value determination module 305 includes:

[0196] The output commitment value function construction unit is configured to construct, according to a third joint vector in the joint vector set of the multi-party data, an output commitment value function for determining an output vector commitment value based on a preset second secure random number;

[0197] The output commitment value sub-function determination unit is configured to determine, according to the output commitment value function, a first output commitment value sub-function associated with the own business privacy data, and determine a second output commitment value sub-function associated with the own business privacy data and the associated business privacy data;

[0198] The first output commitment value generating unit is configured to generate a first output commitment value based on the first output commitment value sub-function according to the initial common parameter and the own business privacy data;

[0199] The second output commitment value generating unit is configured to send a second output commitment value sub-function to the verification participant, and generate a second output commitment value based on a preset multi-party cooperation encryption mode in combination with the own business privacy data and the associated business privacy data of the verification participant according to the initial common parameter;

[0200] The output vector commitment value determining unit is configured to determine an output vector commitment value according to the first output commitment value and the second output commitment value.

[0201] Optionally, the proof field value further includes a blind vector pair commitment value, and the proof field value determining module 305 further includes:

[0202] The random vector generating unit is configured to generate a first random vector and a second random vector according to a preset random vector generation length;

[0203] The blind vector pair commitment value determining unit is configured to determine a blind vector pair commitment value based on the initial common parameter according to the first random vector, the second random vector and a preset third secure random number.

[0204] Optionally, the proof field value further includes a coefficient commitment vector; correspondingly, the proof field value determining module 305 includes:

[0205] The first random challenge parameter determining unit is configured to determine a first random challenge intermediate parameter according to the input vector commitment value, the output vector commitment value and the blind vector pair commitment value;

[0206] The first random challenge vector generating unit is configured to generate a first random challenge vector based on the arithmetic circuit parameter of the equivalent arithmetic circuit according to the first random challenge intermediate parameter;

[0207] The second random challenge parameter determining unit is configured to generate a second random challenge intermediate parameter according to the first random challenge intermediate parameter;

[0208] The second random challenge vector generating unit is configured to generate a second random challenge vector based on the arithmetic circuit parameter of the equivalent arithmetic circuit according to the second random challenge intermediate parameter;

[0209] The multiplication gate independent coefficient determining unit is configured to determine a multiplication gate independent coefficient based on the arithmetic circuit parameter of the equivalent arithmetic circuit according to the first random challenge vector and the second random challenge vector;

[0210] a joint coefficient determination unit configured to determine a joint coefficient based on the set of joint vectors of the plurality of parties according to the first random challenge vector, the second random challenge vector, the multiplication gate independent coefficient and the arithmetic circuit parameter;

[0211] a coefficient commitment vector determination unit configured to determine a coefficient commitment vector according to the joint coefficient and the initial common parameter.

[0212] Optionally, the joint coefficient determination unit comprises:

[0213] a first joint coefficient generation sub-unit configured to generate a first joint coefficient based on a preset multi-party cooperative encryption manner in combination with the business privacy data of the first party and the associated business privacy data of the verification participating party according to the first random challenge vector, the second random challenge vector, the arithmetic circuit parameter, and a first joint vector in the set of joint vectors of the plurality of parties;

[0214] a second joint coefficient generation sub-unit configured to generate a second joint coefficient based on a preset multi-party cooperative encryption manner in combination with the business privacy data of the first party and the associated business privacy data of the verification participating party according to the first random challenge vector, the second random challenge vector, the multiplication gate independent coefficient, the arithmetic circuit parameter, the first joint vector, the second joint vector and the third joint vector in the set of joint vectors of the plurality of parties;

[0215] a third joint coefficient generation sub-unit configured to generate a third joint coefficient based on a preset multi-party cooperative encryption manner in combination with the business privacy data of the first party and the associated business privacy data of the verification participating party according to the first random challenge vector, the second random challenge vector, the arithmetic circuit parameter, the first joint vector, the second joint vector and the first random vector in the set of joint vectors of the plurality of parties;

[0216] a fourth joint coefficient generation sub-unit configured to generate a fourth joint coefficient based on a preset multi-party cooperative encryption manner in combination with the business privacy data of the first party and the associated business privacy data of the verification participating party according to the first random challenge vector, the second random challenge vector, the arithmetic circuit parameter, the first joint vector, the second joint vector, the first random vector and the second random vector in the set of joint vectors of the plurality of parties;

[0217] a fifth joint coefficient generation sub-unit configured to generate a fifth joint coefficient based on a preset multi-party cooperative encryption manner in combination with the business privacy data of the first party and the associated business privacy data of the verification participating party according to the first random challenge vector, the third joint vector in the set of joint vectors of the plurality of parties and the first random vector;

[0218] The joint coefficient generating subunit is configured to generate joint coefficients including a first joint coefficient, a second joint coefficient, a third joint coefficient, a fourth joint coefficient and a fifth joint coefficient.

[0219] The proof field value further includes a second polynomial challenge vector; accordingly, the proof field value determining module 305 includes:

[0220] The second polynomial function constructing unit is configured to construct, according to a second joint vector in the joint vector set of the multi-party data, a second polynomial challenge function for determining a second polynomial challenge vector based on the first random challenge vector, the second random challenge vector, the second random vector, an arithmetic circuit parameter and a coefficient sampling value;

[0221] The second polynomial challenge vector determining unit is configured to determine, according to the initial common parameter and the own business privacy data, the second polynomial challenge vector based on the second polynomial challenge function.

[0222] Optionally, the proof field value further includes an inner product polynomial challenge value, and the proof field value determining module 305 further includes:

[0223] The inner product polynomial challenge value determining unit is configured to determine the inner product polynomial challenge value according to the first polynomial challenge vector and the second polynomial challenge vector.

[0224] Optionally, the proof field value further includes a blind factor random combination value, and the proof field value determining module 305 further includes:

[0225] The blind factor random combination value determining unit is configured to determine the blind factor random combination value according to the coefficient sampling value, the first security random number, the second security random number and the third security random number.

[0226] Optionally, the transaction proof data generating module 306 includes:

[0227] The privacy data proof generating unit is configured to generate a privacy data proof according to the proof field value.

[0228] The transaction proof data generating unit is configured to generate transaction proof data associated with the to-be-verified business privacy data according to the arithmetic circuit parameter of the equivalent arithmetic circuit and the privacy data proof.

[0229] The business privacy data verification apparatus provided in the embodiments of the present application can execute the business privacy data verification method provided in any of the embodiments of the present application, and has the corresponding function modules and beneficial effects of the execution method.

[0230] Embodiment four

[0231] FIG. 4 shows a structural schematic diagram of an electronic device 40 that can be used to implement embodiments of the present application. The electronic device can represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular telephones, smart phones, wearable devices (e.g., headsets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples.

[0232] As shown in FIG. 4, the electronic device 40 includes at least one processor 41, and a memory, such as a Read Only Memory (ROM) 42, a Random Access Memory (RAM) 43, etc., connected to the at least one processor 41 in communication, wherein the memory stores computer programs executable by the at least one processor. The processor 41 can perform various appropriate actions and processes according to the computer programs stored in the Read Only Memory (ROM) 42 or loaded into the Random Access Memory (RAM) 43 from the storage unit 48. In the RAM 43, various programs and data required for the operation of the electronic device 40 can also be stored. The processor 41, the ROM 42, and the RAM 43 are connected to each other through a bus 44. An Input / Output (I / O) interface 45 is also connected to the bus 44.

[0233] Various components in the electronic device 40 are connected to the I / O interface 45, including an input unit 46, such as a keyboard, a mouse, etc.; an output unit 47, such as various types of displays, a speaker, etc.; a storage unit 48, such as a magnetic disk, an optical disk, etc.; and a communication unit 49, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 49 allows the electronic device 40 to exchange information / data with other devices through a computer network, such as the Internet, and / or various telecommunications networks.

[0234] The processor 41 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the processor 41 include a central processing unit (CPU), a graphic processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, and the like. The processor 41 performs various methods and processes described above, such as the business privacy data verification method.

[0235] In some embodiments, the business privacy data verification method can be implemented as a computer program tangibly embodied in a computer readable storage medium, such as the storage unit 48. In some embodiments, part or all of the computer program can be loaded and / or installed onto the electronic device 40 via the ROM 42 and / or the communication unit 49. When the computer program is loaded onto the RAM 43 and executed by the processor 41, one or more steps of the business privacy data verification method described above can be performed. Alternatively, in other embodiments, the processor 41 can be configured to perform the business privacy data verification method by any other appropriate means, such as by means of firmware.

[0236] Various implementations of the systems and techniques described above can be realized in digital electronic circuitry, integrated circuitry, a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on chip (SOC), a complex programmable logic device (CPLD), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include implementation in one or more computer programs that are executable and / or interpretable on a programmable system including at least one programmable processor, which can be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.

[0237] 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 a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the computer program

[0238] In the context of the present application, a computer-readable storage medium can be a tangible medium that can contain or store computer programs for use by or in connection with an instruction execution system, apparatus, or device. The computer-readable storage medium can include an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, the computer-readable storage medium can be a machine-readable signal medium. Examples of a machine-readable storage medium include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, RAM, ROM, erasable programmable read only memory (EPROM), flash memory, an optical fiber, a portable compact disc read only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0239] To provide for interaction with a user, the systems and techniques described here can be implemented on an electronic device having a display device (e.g., a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), or a monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the electronic device. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.

[0240] The systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a user computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back end, middleware, or front end components. The components of the system can 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), blockchain networks, and the Internet.

[0241] The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can 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 large management difficulty and weak business scalability in traditional physical host and virtual private server (VPS) services.

[0242] The steps shown above in various forms of flow can be reordered, added to, or deleted from. For example, the steps described in the present application can be executed in parallel, can be executed sequentially, or can be executed in different orders, as long as the desired results of the present application can be achieved.

Claims

1. A business privacy data verification method applied to a verification demander, comprising: obtaining initial public parameters generated by a blockchain system; generating a to-be-verified data relationship equation according to to-be-verified business privacy data; the to-be-verified business privacy data comprising self business privacy data of the verification demander and associated business privacy data of at least one verification participant associated with the verification demander; generating an equivalent arithmetic circuit and a multi-party data joint vector set according to the to-be-verified data relationship equation; generating a first privacy data commitment value according to the self business privacy data, and obtaining a second privacy data commitment value generated by the verification participant based on the associated business privacy data, and generating a target privacy data commitment value comprising the first privacy data commitment value and the second privacy data commitment value; determining a proof field value based on the multi-party data joint vector set in combination with the associated business privacy data according to the self business privacy data, the initial public parameters and arithmetic circuit parameters of the equivalent arithmetic circuit; generating transaction proof data according to the proof field value; uploading the transaction proof data and the target privacy data commitment value to a chain for a node on the chain to verify the to-be-verified business privacy data according to the transaction proof data and the target privacy data commitment value.

2. The method of claim 1, wherein, the proof field value comprising an input vector commitment value; the determining of the proof field value based on the multi-party data joint vector set in combination with the associated business privacy data according to the self business privacy data, the initial public parameters and the arithmetic circuit parameters of the equivalent arithmetic circuit comprises: constructing an input commitment value function for determining the input vector commitment value based on a preset first secure random number according to a first joint vector and a second joint vector in the multi-party data joint vector set; determining a first input commitment value sub-function associated with the self business privacy data, determining a second input commitment value sub-function associated with the associated business privacy data and determining a third input commitment value sub-function associated with the self business privacy data and the associated business privacy data according to the input commitment value function; generating a first input commitment value based on the first input commitment value sub-function according to the self business privacy data; and sending a second input commitment value sub-function to the verification participant for the verification participant to generate a second input commitment value based on the second input commitment value sub-function according to the associated business privacy data; and sending a third input commitment value sub-function to the verification participant to generate a third input commitment value based on a preset multi-party cooperative encryption mode in combination with the self business privacy data and the associated business privacy data; determining the input vector commitment value according to the first input commitment value, the second input commitment value and the third input commitment value. the proof field value further comprises an output vector commitment value; ​ 3. The method of claim 2, wherein, ​ The arithmetic circuit parameter of the equivalent arithmetic circuit is determined according to the self-service private data, the initial common parameter and the arithmetic circuit parameter, the proof field value is determined based on the multi-party data joint vector set and in combination with the associated service private data. According to the third joint vector in the multi-party data joint vector set, an output commitment value function for determining the output vector commitment value is constructed based on a preset second security random number; According to the output commitment value function, a first output commitment value sub-function associated with the self-service private data is determined, and a second output commitment value sub-function associated with the self-service private data and the associated service private data is determined; According to the initial common parameter and the self-service private data, a first output commitment value is generated based on the first output commitment value sub-function; The second output commitment value sub-function is sent to the verification participant, and a second output commitment value is generated based on a preset multi-party cooperation encryption mode in combination with the self-service private data and the associated service private data according to the initial common parameter; The output vector commitment value is determined according to the first output commitment value and the second output commitment value.

4. The method of claim 3, wherein, The proof field value also includes a blind vector pair commitment value, and the method further comprises: According to a preset random vector generation length, a first random vector and a second random vector are generated; According to the first random vector, the second random vector and a preset third security random number, the blind vector pair commitment value is determined based on the initial common parameter.

5. The method of claim 4, wherein, The proof field value also includes a coefficient commitment vector; The arithmetic circuit parameter of the equivalent arithmetic circuit is determined according to the self-service private data, the initial common parameter and the arithmetic circuit parameter, the proof field value is determined based on the multi-party data joint vector set and in combination with the associated service private data. A first random challenge intermediate parameter is determined according to the input vector commitment value, the output vector commitment value and the blind vector pair commitment value; A first random challenge vector is generated according to the first random challenge intermediate parameter and based on the arithmetic circuit parameter of the equivalent arithmetic circuit; A second random challenge intermediate parameter is generated according to the first random challenge intermediate parameter; A second random challenge vector is generated according to the second random challenge intermediate parameter and based on the arithmetic circuit parameter of the equivalent arithmetic circuit; A multiplication gate independent coefficient is determined according to the first random challenge vector and the second random challenge vector and based on the arithmetic circuit parameter of the equivalent arithmetic circuit; A joint coefficient is determined according to the first random challenge vector, the second random challenge vector, the multiplication gate independent coefficient and the arithmetic circuit parameter and based on the multi-party data joint vector set; The coefficient commitment vector is determined according to the joint coefficient and the initial common parameter.

6. The method of claim 5, wherein, The joint coefficient is determined according to the first random challenge vector, the second random challenge vector, the multiplication gate independent coefficient and the arithmetic circuit parameter and based on the multi-party data joint vector set, comprising: According to the first random challenge vector, the second random challenge vector, the arithmetic circuit parameter, a first joint vector in the set of joint vectors of multi-party data, based on a preset multi-party cooperation encryption mode, combining the business privacy data and the associated business privacy data of the verification participant, a first joint coefficient is generated; According to the first random challenge vector, the second random challenge vector, the multiplication gate independent coefficient, the arithmetic circuit parameter, a first joint vector and a second joint vector in the set of joint vectors of multi-party data, based on a preset multi-party cooperation encryption mode, combining the business privacy data and the associated business privacy data, a second joint coefficient is generated; According to the first random challenge vector, the second random challenge vector, the arithmetic circuit parameter, a first joint vector and a second joint vector in the set of joint vectors of multi-party data, and the first random vector, based on a preset multi-party cooperation encryption mode, combining the business privacy data and the associated business privacy data, a third joint coefficient is generated; According to the first random challenge vector, the second random challenge vector, the arithmetic circuit parameter, a first joint vector, a second joint vector in the set of joint vectors of multi-party data, the first random vector and the second random vector, based on a preset multi-party cooperation encryption mode, combining the business privacy data and the associated business privacy data, a fourth joint coefficient is generated; According to the first random challenge vector, a third joint vector in the set of joint vectors of multi-party data and the first random vector, based on a preset multi-party cooperation encryption mode, combining the business privacy data and the associated business privacy data, a fifth joint coefficient is generated; The joint coefficient includes the first joint coefficient, the second joint coefficient, the third joint coefficient, the fourth joint coefficient and the fifth joint coefficient.

7. The method of claim 5, wherein, The proof field value further includes a first polynomial challenge vector; According to the business privacy data, the initial common parameter and the arithmetic circuit parameter of the equivalent arithmetic circuit, based on the set of joint vectors of multi-party data, combining the associated business privacy data, the proof field value is determined, including: According to the coefficient commitment vector, a coefficient sample value is generated; According to a first joint vector and a third joint vector in the set of joint vectors of multi-party data, based on the first random challenge vector, the second random challenge vector, the first random vector, the arithmetic circuit parameter and the coefficient sample value, a first polynomial challenge function for determining the first polynomial challenge vector is constructed; According to the first polynomial challenge function, a first self-polynomial challenge sub-function associated with the business privacy data and a first associated polynomial challenge sub-function associated with the associated business privacy data are determined; According to the initial common parameter and the business privacy data, based on the first self-polynomial challenge sub-function, a first self-polynomial challenge vector is generated; sending the first associated polynomial challenge sub-function to the verification participant, so that the verification participant generates a first associated polynomial challenge vector based on the first associated polynomial challenge sub-function according to the associated business privacy data; determining the first polynomial challenge vector according to the first self polynomial challenge vector and the first associated polynomial challenge vector.

8. The method of claim 7, wherein, The proof field value further includes a second polynomial challenge vector; The proof field value further includes a second polynomial challenge vector; The method further includes: constructing a second polynomial challenge function for determining a second polynomial challenge vector according to a second joint vector in the set of joint vectors, based on the first random challenge vector, the second random challenge vector, the second random vector, the arithmetic circuit parameter, and the coefficient sample value; 9. The method of claim 8, wherein, determining a second polynomial challenge vector according to the initial common parameter and the self business privacy data, based on the second polynomial challenge function. The proof field value further includes an inner product polynomial challenge value, and the method further includes:

10. The method of claim 8, wherein, determining the inner product polynomial challenge value according to the first polynomial challenge vector and the second polynomial challenge vector. The proof field value further includes a blind factor random combination value, and the method further includes:

11. The method of claim 1, wherein, determining the blind factor random combination value according to the coefficient sample value, the first secure random number, the second secure random number, and the third secure random number. The method further includes: generating a privacy data proof according to the proof field value; generating transaction proof data associated with the to-be-verified business privacy data according to the arithmetic circuit parameter of the equivalent arithmetic circuit and the privacy data proof.

12. A business privacy data verification apparatus configured in a verification demander, comprising: an initial common parameter acquisition module configured to acquire an initial common parameter generated by a block chain system; a relationship equation generation module configured to generate a to-be-verified data relationship equation according to to-be-verified business privacy data; the to-be-verified business privacy data includes self business privacy data of the verification demander and associated business privacy data of at least one verification participant associated with the verification demander; a joint vector set generation module configured to generate a set of joint vectors of an equivalent arithmetic circuit and multi-party data according to the to-be-verified data relationship equation; a target commitment value generation module configured to generate a first privacy data commitment value according to the self business privacy data, and acquire a second privacy data commitment value generated by the verification participant based on the associated business privacy data, and generate a target privacy data commitment value including the first privacy data commitment value and the second privacy data commitment value; a target commitment value generation module configured to generate a first privacy data commitment value according to the self business privacy data, and acquire a second privacy data commitment value generated by the verification participant based on the associated business privacy data, and generate a target privacy data commitment value including the first privacy data commitment value and the second privacy data commitment value; A proof field value determination module is configured to determine a proof field value based on the multi-party data joint vector set, in combination with the associated business privacy data, according to the own business privacy data, the initial common parameter and the arithmetic circuit parameter of the equivalent arithmetic circuit. A transaction proof data generation module is configured to generate transaction proof data according to the proof field value. A privacy data on-chain module is configured to chain the transaction proof data and the target privacy data commitment value, so that a node on the chain verifies the to-be-verified business privacy data according to the transaction proof data and the target privacy data commitment value.

13. An electronic device, comprising: at least one processor; and a memory connected to the at least one processor in communication; wherein the memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to execute the business privacy data verification method in any one of claims 1-11.

14. A computer readable storage medium, storing computer instructions for causing a processor to execute when implemented to achieve the business privacy data verification method in any one of claims 1-11.

Citation Information

Patent Citations

  • Supply chain transaction privacy protection system and method based on block chain and related equipment

    CN111160908A

  • Private data processing method, medium and electronic equipment

    CN116545773A

  • Data sharing method and device, electronic equipment and storage medium

    CN117035776A

  • Business privacy data verification method and device, equipment and storage medium

    CN118332611A

  • Zero knowledge proof-based privacy protection method and system for authenticated data in smart contract

    US20210297255A1