Disclosure of Invention
The invention aims to provide a blockchain information processing method which can solve the technical problem of how to improve the functionality of privacy protection blockchains to a certain extent. The application also provides a blockchain system, an information processing device and a computer readable storage medium.
In order to achieve the above object, the present application provides a blockchain information processing method applied to a target blockchain node in a blockchain system, the blockchain system further including a blockchain verification node, the method including:
acquiring discrete cipher group information of the blockchain application;
acquiring a first promise value obtained by calculating a first numerical value based on the discrete password group information;
acquiring a second promise value obtained by calculating a second numerical value based on the discrete password group information;
dividing the first value and the second value to obtain a third value, and operating the third value based on the discrete code group information to obtain a third promise value;
taking the reciprocal of the second value as a fourth value, and calculating the fourth value based on the discrete code group information to obtain a fourth promise value;
Calculating a numerical value 1 based on the discrete code group information to obtain a fifth promise value;
generating division relation proving information for proving that the third numerical value is the quotient of the first numerical value and the second numerical value through a zero knowledge proving method and the first commitment value, the second commitment value, the third commitment value, the fourth commitment value and the fifth commitment value;
and issuing the third commitment value and the division relation proving information to the blockchain verification node so that the blockchain verification node verifies whether the third numerical value is the quotient value of the first numerical value and the second numerical value based on the division relation proving information.
Preferably, the generating the division relationship proving information for proving that the third numerical value is the quotient of the first numerical value and the second numerical value by the zero knowledge proving method and the first commitment value, the second commitment value, the third commitment value, the fourth commitment value, and the fifth commitment value includes:
generating first proving information for proving that the product of the second numerical value and the fourth numerical value is a numerical value 1 through the zero knowledge proving method, the second commitment value, the fourth commitment value and the fifth commitment value;
Generating second proving information for proving that the product of the first numerical value and the fourth numerical value is the third numerical value through the zero knowledge proving method, the first promise value, the third promise value and the fourth promise value;
and taking the first proving information and the second proving information as the division relation proving information.
Preferably, the step of using the first proof information and the second proof information as the division relationship proof information includes:
generating third proving information for proving that the fifth promise value is legal through the zero knowledge proving method and the fifth promise value;
and taking the first proving information, the second proving information and the third proving information as the division relation proving information.
Preferably, the calculating the third value based on the discrete code group information to obtain a third promise value includes:
calculating the third numerical value based on the discrete code group information through a first operation formula to obtain the third promise value;
the first operation formula includes:
c 3 =g z h d ;
the calculating the fourth value based on the discrete code group information to obtain a fourth promise value includes:
Calculating the fourth numerical value based on the discrete code group information through a second operation formula to obtain the fourth promise value;
the second operation formula includes:
the calculating the value 1 based on the discrete code group information to obtain a fifth promise value includes:
calculating a value 1 based on the discrete code group information through a third operation formula to obtain the fifth promise value;
the third operation formula includes:
c 5 =g v h 1 ;
wherein c 3 Representing the third commitment value; z represents a random number generated by the target block chain link point and hiding the third numerical value; d represents the third numberA value; g represents a first discrete code group generator in the discrete code group information, and h represents a second discrete code group generator in the discrete code group information; c 4 Representing the fourth commitment value; w represents a random number generated by the target block chain link point and used for hiding the fourth numerical value; b -1 Representing the fourth value, b representing the second value; c 5 Representing the fifth commitment value; v represents the random number generated by the target block chain link point and hiding the numerical value 1.
Preferably, the generating, by the zero-knowledge proof method and the second commitment value, the fourth commitment value, and the fifth commitment value, the first proof information that the product of the second value and the fourth value is 1 includes:
Generating five random numbers, and generating the first proving information through the five random numbers, the zero knowledge proving method, the second promise value, the fourth promise value and the fifth promise value based on a fourth operation formula;
the fourth operation formula includes:
z 1 =r 1 +e 1 y,z 2 =r 2 +e 1 b,z 3 =r 3 +e 1 w,z 4 =r 4 +e 1 b -1 ,z 5 =r 5 +e 1 (v-yb -1 );
the generating, by the zero-knowledge proof method and the first commitment value, the third commitment value, and the fourth commitment value, second proof information that proves that a product of the first value and the fourth value is the third value includes:
generating another five random numbers, and generating the second proving information through the another five random numbers, the zero knowledge proving method, the first promise value, the third promise value and the fourth promise value based on a fifth operation formula;
the fifth operation formula includes:
z 7 =s 1 +f 1 x,z 8 =s 2 +f 1 a,z 9 =s 3 +f 1 w,z 10 =s 4 +f 1 b -1 ,z 11 =s 5 +f 1 (z-xb -1 );
wherein e 1 、z 1 、z 2 、z 3 、z 4 、z 5 Representing the first attestation information; r is (r) 1 、r 2 、r 3 、r 4 、r 5 Representing the five random numbers generated by the target block chain link points; h represents a hash algorithm; c 1 =g x h a ,c 1 Representing the first commitment value; a represents the first value; x represents a random number generated by the target block chain link point and used for hiding the first numerical value; c 2 =g y h b ,c 2 Representing the first commitment value; y represents a random number generated by the target block chain link point and used for hiding the second numerical value; f (f) 1 、z 7 、z 8 、z 9 、z 10 、z 11 Representing the second attestation information; s is(s) 1 、s 2 、s 3 、s 4 、s 5 Representing the other five random numbers generated by the target block link points;
wherein the blockchain verification node verifies whether the product of the second value and the fourth value is a value 1 by verifying whether a first equation is established based on the first certification information; verifying whether the product of the first value and the fourth value is the third value by verifying whether a second equation is established based on the second certification information;
the first equation includes:
the second equation includes:
preferably, the generating, by the zero-knowledge proof method and the second commitment value, the fourth commitment value, and the fifth commitment value, the first proof information that the product of the second value and the fourth value is 1 includes:
generating three random numbers, and generating the first proving information through the three random numbers, the zero knowledge proving method, the second promise value, the fourth promise value and the fifth promise value based on a sixth operation formula;
the sixth operational formula includes:
u 1 =m 1 +e 2 w,u 2 =m 2 +e 2 b -1 ,u 3 =m 3 +e 2 (v-yb -1 );
the generating, by the zero-knowledge proof method and the first commitment value, the third commitment value, and the fourth commitment value, second proof information that proves that a product of the first value and the fourth value is the third value includes:
Generating another three random numbers, and generating the second proving information through the another three random numbers, the zero knowledge proving method, the first promise value, the third promise value and the fourth promise value based on a seventh operation formula;
the seventh operational formula includes:
u 5 =n 1 +f 2 w,u 6 =n 2 +f 2 b -1 ,u 7 =n 3 +f 2 (z-xb -1 );
wherein e 2 、u 1 、u 2 、u 3 Representing the first attestation information; m is m 1 、m 2 、m 3 Representing the three random numbers generated by the target block link points; h represents a hash algorithm; c 1 =g x h a ,c 1 Representing the first commitment value; a represents the first value; x represents a random number generated by the target block chain link point and used for hiding the first numerical value; c 2 =g y h b ,c 2 Representing the first commitment value; y represents a random number generated by the target block chain link point and used for hiding the second numerical value; f (f) 2 、u 5 、u 6 、u 7 Representing the second attestation information; n is n 1 、n 2 、n 3 Representing the three further random numbers generated by the target block link points;
wherein the blockchain verification node verifies whether a product of the second value and the fourth value is a value 1 by verifying whether a third equation is established based on the first certification information; verifying whether a product of the first value and the fourth value is the third value by verifying whether a fourth equation is satisfied based on the second certification information;
The first equation includes:
the second equation includes:
preferably, the generating, by the zero-knowledge proving method and the fifth promise value, third proving information for proving that the fifth promise value is legal includes:
generating a random number, generating third proving information for proving that the fifth promise value is legal through the zero knowledge proving method, the random number and the fifth promise value based on an eighth operation formula, and issuing the third proving information;
the eighth operational formula includes:
z 6 =r 6 +e'v;
wherein e', z 6 Representing the third certification information; r is (r) 6 Representing the one random number;
wherein the blockchain verification node verifies whether the fifth commitment value is legal by verifying whether a fifth equation is established based on the third certification information;
the fifth equation includes:
the block chain information processing method is applied to a block chain verification node of a block chain system, wherein the block chain system further comprises a target block chain node, and the method comprises the following steps:
receiving a third promise value and division relation verification information issued by the target block chain node, wherein the third promise value is obtained by calculating a third numerical value by the target block chain node based on the discrete password group information applied by the block chain; the division relationship proving information is zero knowledge proving information which is generated by the target block chain link point through a zero knowledge proving method, a first promise value, a second promise value, a third promise value, a fourth promise value and a fifth promise value, and the generated zero knowledge proving information is used for proving that the third numerical value is the quotient value of the first numerical value and the second numerical value;
Verifying whether the third numerical value is a quotient value of the first numerical value and the second numerical value based on the division relation proving information, and correspondingly processing the third promised value based on a verification result;
the first promise value is obtained by calculating the first value by the target block chain link point based on the discrete code group information; the second promise value is obtained by calculating the second numerical value based on the discrete code group information by the target block chain link point; the fourth promise value is a value obtained by calculating a fourth value of the target block chain link point based on the discrete code group information, and the fourth value is the reciprocal of the second value; and the fifth promise value is obtained by calculating a value 1 of the target block chain link point based on the discrete code group information.
To achieve the above object, the present application further provides a blockchain information processing system applied to a target blockchain node in a blockchain system, the blockchain system further including a blockchain verification node, the system including:
the first acquisition module is used for acquiring the discrete password group information of the blockchain application;
The second acquisition module is used for acquiring a first promise value obtained by calculating a first numerical value based on the discrete password group information;
the third acquisition module is used for acquiring a second promise value obtained by calculating a second numerical value based on the discrete password group information;
the first operation module is used for dividing the first value and the second value to obtain a third value, and operating the third value based on the discrete code group information to obtain a third promise value;
the second operation module is used for taking the reciprocal of the second numerical value as a fourth numerical value, and operating the fourth numerical value based on the discrete code group information to obtain a fourth promise value;
the third operation module is used for carrying out operation on the numerical value 1 based on the discrete password group information to obtain a fifth promise value;
the first generation module is used for generating division relation proving information for proving that the third numerical value is the quotient of the first numerical value and the second numerical value through a zero knowledge proving method and the first commitment value, the second commitment value, the third commitment value, the fourth commitment value and the fifth commitment value;
and the first issuing module is used for issuing the third commitment value and the division relation proving information to the blockchain verification node so that the blockchain verification node verifies whether the third numerical value is a quotient value blockchain verification node of the first numerical value and the second numerical value based on the division relation proving information.
To achieve the above object, the present application further provides a blockchain information processing device, the device including a memory and a processor, the memory having stored thereon a blockchain information processing program executable on the processor, the blockchain information processing program implementing the method as any one of the above when executed by the processor.
To achieve the above object, the present application further provides a computer-readable storage medium having stored thereon a blockchain information processing program executable by one or more processors to implement the blockchain information processing method as described in any of the above.
To achieve the above object, the present application further provides a blockchain system including a target blockchain node and a blockchain verification node;
the target blockchain node is used to perform a method as described in any of the above as applied to the target blockchain node;
the blockchain verification node is configured to perform the method as described above as applied to the blockchain verification node.
The block chain information processing method is applied to a target block chain node and used for obtaining discrete password group information of block chain application; acquiring a first promise value obtained by calculating a first numerical value based on discrete password group information; acquiring a second promise value obtained by calculating a second numerical value based on the discrete password group information; dividing the first value by the second value to obtain a third value, and operating the third value based on the discrete password group information to obtain a third promise value; taking the reciprocal of the second value as a fourth value, and calculating the fourth value based on the discrete code group information to obtain a fourth promise value; calculating the value 1 based on the discrete password group information to obtain a fifth promise value; generating division relation proving information for proving that a third numerical value is a quotient value of the first numerical value and the second numerical value through a zero knowledge proving method and a first promise value, a second promise value, a third promise value, a fourth promise value and a fifth promise value; and issuing third commitment value and division relation proving information to the blockchain verifying node so that the blockchain verifying node verifies whether the third numerical value is a quotient value of the first numerical value and the second numerical value based on the division relation proving information. According to the blockchain information processing method, the target blockchain node takes the reciprocal of the second value as the fourth value, calculates corresponding commitment values of the first value, the second value, the third value, the fourth value and the value 1, achieves hidden protection of the values, generates division relation proving information for proving that the third value is the quotient value of the first value and the second value based on the calculated commitment values and a zero knowledge proving method, and issues the third commitment value and the division relation proving information to the blockchain verifying node, so that the blockchain verifying node can complete verification that the third value is the quotient value of the first value and the second value on the premise that specific information of the values cannot be obtained, division proving in a privacy protection blockchain is achieved, functions of the privacy protection blockchain are perfected, and functions of the privacy protection blockchain are improved. The block chain system, the information processing device and the computer readable storage medium also solve the corresponding technical problems.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all, of the embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present disclosure.
The terms "first," "second," "third," "fourth" and the like in the description and in the claims of this application and in the above-described figures, if any, are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments described herein may be implemented in other sequences than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
It should be noted that the description of "first", "second", etc. in this disclosure is for descriptive purposes only and is not to be construed as indicating or implying a relative importance or implying an indication of the number of technical features being indicated. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include at least one such feature. In addition, the technical solutions of the embodiments may be combined with each other, but it is necessary to base that the technical solutions can be realized by those skilled in the art, and when the technical solutions are contradictory or cannot be realized, the combination of the technical solutions should be considered to be absent and not within the scope of protection claimed in the present invention.
The application provides a block chain information processing method.
Referring to fig. 1, fig. 1 is a schematic diagram of a blockchain system 10 according to an embodiment of the present disclosure. In the present application, the blockchain system 10 includes a supervisory node 101, a blockchain verification node 102, and a common blockchain node 103; the respective numbers of the supervisory node 101, the blockchain verification node 102 and the ordinary blockchain nodes 103 can be determined according to actual needs. And the generic blockchain node 103, when sending information, becomes the target blockchain node described herein.
It should be noted that the blockchain information processing method provided by the application relates to three processes of processing information by a target blockchain node, correspondingly verifying the information by a blockchain verification node, and determining whether to uplink the information or to monitor and track the uplink information by a monitoring node. Next, the blockchain supervision method provided in the present application is described from two angles of the target blockchain node and the blockchain verification node, respectively.
The blockchain supervision method provided by the application is first described from the perspective of the target blockchain node.
Referring to fig. 2, fig. 2 is a flow chart of a first embodiment of the present application.
In a first embodiment, a blockchain information processing method provided in the present application, applied to a target blockchain node, may include the following steps:
step S101: discrete cipher group information for a blockchain application is obtained.
In practical application, the target blockchain node may first obtain the discrete code group information of the blockchain application, so as to perform subsequent hidden protection on the value required to be transmitted based on the discrete code group information. The discrete code group information may include a discrete code group generator and an encryption group element, and the types thereof may be determined according to specific application scenarios, for example, the type of the discrete code group information may be elliptic discrete code group information, and specifically, may be elliptic discrete code group generator, elliptic encryption group element, and the like.
Step S102: and obtaining a first promise value obtained by calculating the first numerical value based on the discrete password group information.
In practical applications, after obtaining the discrete code group information of the blockchain application, the target blockchain node may obtain a first promise value obtained by calculating a first value based on the discrete code group information, where the first value is the value information required to be transmitted by the target blockchain itself. In addition, the promise value related to the application is the same as the principle and function of the monetary promise in the existing systems such as the door coin, and a mature Pedersen privacy promise system is used, and is not repeated here.
In a specific application scenario, the first promise value obtained by the target block link point may be a promise value generated by the target block link point in real time, or may be a promise value generated by the target block link point in history, and the obtaining manner of the first promise value may be determined according to actual needs. In this process, the target blockchain node may generate a random number for hiding the first numerical value information, and calculate the discrete cryptographic group information, the first numerical value information, and the random number according to a preset format to obtain a first commitment value, where the preset format may be α β Alpha represents a discrete code group generator or an encryption group element, and beta represents a numerical value or a random number.
Step S103: and obtaining a second promise value obtained by calculating the second numerical value based on the discrete password group information.
In practical applications, after obtaining a first promise value obtained by calculating a first value based on discrete password group information, the target blockchain node may obtain a second promise value obtained by calculating a second value based on discrete password group information, where the second value is the numerical information that needs to be transmitted by the target blockchain node itself. The principle and function of the promise value related to the present application are the same as those of the prior promise of the amount, and are not repeated here.
In a specific application scenario, the second promise value obtained by the target block link point may be a promise value generated by the target block link point in real time, or may be a promise value generated by the target block link point in history, where the obtaining manner of the second promise value may be determined according to actual needs. In this process, the target blockchain node may generate a random number that conceals the second numerical value information, and calculate the discrete cryptographic group information, the second numerical value information, and the random number according to a preset format to obtain a second commitment value.
Step S104: dividing the first value by the second value to obtain a third value, and operating the third value based on the discrete password group information to obtain a third promise value.
In practical application, when division operation is needed to be performed on the first value and the second value, for example, under the condition that the total wages, the total number of people and the average wages are known by the target block chain link point, how to enable the block chain verification node to prove that division relation is satisfied between the three under the premise that the total wages, the total number of people and the average wages are not known. The third promise value is generated by referring to the first promise value and the second promise value, and is not described herein.
Step S105: and taking the reciprocal of the second value as a fourth value, and calculating the fourth value based on the discrete code group information to obtain a fourth promise value.
Step S106: and calculating the value 1 based on the discrete password group information to obtain a fifth promise value.
In practical applications, in order to facilitate the blockchain verification node to verify whether the third value is a quotient of the first value and the second value, the target blockchain node may use the inverse of the second value as the fourth value, operate on the fourth value based on the discrete code group information to obtain a fourth promised value, and operate on the value 1 based on the discrete code group information to obtain a fifth promised value.
It should be noted that, when transmitting the value in the blockchain, in order to verify the validity of the privacy value, the interval certification of the value needs to be transmitted, so the target blockchain node may also apply the interval certification of the corresponding value, such as the traceable interval certification of the corresponding value, when applying the first promise value, the second promise value, the third promise value, the fourth promise value, and the fifth promise value.
Step S107: and generating division relation proving information for proving that the third numerical value is the quotient value of the first numerical value and the second numerical value through a zero knowledge proving method and the first commitment value, the second commitment value, the third commitment value, the fourth commitment value and the fifth commitment value.
In practical application, the target blockchain node can accurately acquire the relation among the first value, the second value, the third value, the fourth value and the value 1, however, other blockchain nodes such as a blockchain verification node in the privacy protection blockchain cannot acquire the specific value and the relation, so that the blockchain verification node cannot determine whether the first value, the second value and the third value issued by the target blockchain node meet the division relation, and therefore, the target blockchain node can generate division relation verification information for verifying that the third value is the quotient value of the first value and the second value through a zero knowledge verification method and the first commitment value, the second commitment value, the third commitment value and the fourth commitment value and the fifth commitment value, and because the zero knowledge verification method cannot acquire the specific value information, the verification information generated by the zero knowledge verification method can realize that the blockchain verification node can verify whether the third value is the quotient value of the first value and the second value under the condition of hiding the value information of the target blockchain node.
Step S108: and issuing third commitment value and division relation proving information to the blockchain verifying node so that the blockchain verifying node verifies whether the third numerical value is a quotient value of the first numerical value and the second numerical value based on the division relation proving information. In practical application, after the division relation proving information is generated by the target block chain link point, the third commitment value and the division relation proving information can be issued to the block chain verifying node, so that the block chain verifying node verifies whether the third value is the quotient value of the first value and the second value or not through the division relation proving information under the condition that the specific value cannot be known, and the block chain verifying node can correspondingly process the third commitment value based on the verification result; for example, the blockchain verification node may uplink the third commitment value to the blockchain after verifying that the third value is a quotient of the first value and the second value.
It will be appreciated by those skilled in the art that in one embodiment, instead of directly sending the third commitment value, division relationship proof information to the blockchain verification node, the target blockchain node may issue the third commitment value, division relationship proof information on the blockchain, and based on characteristics of the blockchain, the blockchain verification node may obtain the third commitment value, division relationship proof information from the blockchain for verification.
The block chain information processing method is applied to a target block chain node and used for obtaining discrete password group information of block chain application; acquiring a first promise value obtained by calculating a first numerical value based on discrete password group information; acquiring a second promise value obtained by calculating a second numerical value based on the discrete password group information; dividing the first value by the second value to obtain a third value, and operating the third value based on the discrete password group information to obtain a third promise value; taking the reciprocal of the second value as a fourth value, and calculating the fourth value based on the discrete code group information to obtain a fourth promise value; calculating the value 1 based on the discrete password group information to obtain a fifth promise value; generating division relation proving information for proving that a third numerical value is a quotient value of the first numerical value and the second numerical value through a zero knowledge proving method and a first promise value, a second promise value, a third promise value, a fourth promise value and a fifth promise value; and issuing third commitment value and division relation proving information to the blockchain verifying node so that the blockchain verifying node verifies whether the third numerical value is a quotient value of the first numerical value and the second numerical value based on the division relation proving information. According to the blockchain information processing method, the target blockchain node takes the reciprocal of the second value as the fourth value, calculates corresponding promise values of the first value, the second value, the third value, the fourth value and the value 1, achieves hidden protection of the values, generates division relation proving information for proving that the third value is the quotient value of the first value and the second value based on the promise values obtained through calculation and a zero knowledge proving method, and issues division relation proving information to the blockchain verifying node, so that the blockchain verifying node can complete verification that the third value is the quotient value of the first value and the second value on the premise that specific information of the values cannot be obtained.
In the first embodiment, since the fourth value is the inverse of the second value, the first value is multiplied by the fourth value to obtain the third value, and the second value is multiplied by the fourth value to obtain the value 1, the process of generating division relationship proving information for proving that the third value is the quotient of the first value and the second value by the target block link point through the zero knowledge proving method and the first promise value, the second promise value, the third promise value, the fourth promise value, and the fifth promise value may specifically be:
generating first proving information for proving that the product of the second numerical value and the fourth numerical value is 1 through a zero knowledge proving method, a second promise value, a fourth promise value and a fifth promise value;
generating second proving information for proving that the product of the first value and the fourth value is a third value through a zero knowledge proving method and the first promise value, the third promise value and the fourth promise value;
the first certification information and the second certification information are used as division relation certification information.
In the first embodiment, in order to avoid forging the division relationship proof by the user and improve the security of the blockchain information processing method provided by the application, when the target blockchain node uses the first proof information and the second proof information as the division relationship proof information, the target blockchain node can generate third proof information for proving that the fifth promise value is legal through a zero knowledge proof method and the fifth promise value; the first certification information, the second certification information and the third certification information are used as division relation certification information. The blockchain verification node can verify the safety and the validity of the division relationship verification information through the first verification information, the second verification information and the third verification information.
In the first embodiment, in order to improve the operation efficiency, the process of calculating the third value by the target block link point based on the discrete password group information to obtain the third commitment value may specifically be:
calculating a third numerical value based on the discrete password group information through a first operation formula to obtain a third promise value;
the first operation formula includes:
c 3 =g z h d ;
calculating the fourth value based on the discrete code group information to obtain a fourth commitment value, including:
calculating a fourth numerical value based on the discrete code group information through a second operation formula to obtain a fourth promise value;
the second operation formula includes:
calculating the value 1 based on the discrete cipher group information to obtain a fifth promise value, including:
calculating the value 1 based on the discrete password group information through a third operation formula to obtain a fifth promise value;
the third operational formula includes:
c 5 =g v h 1 ;
wherein c 3 Representing a third commitment value; z represents a random number generated by the target blockchain node that conceals the third value; d represents a third value; g represents a first discrete code group generator in the discrete code group information, h represents a second discrete code group generator in the discrete code group information; c 4 Representing a fourth commitment value; w represents a random number generated by the target blockchain node and hiding the fourth value; b -1 A fourth value, b a second value; c 5 Representing a fifth commitment value; v represents the random number generated by the target block link point that conceals the value 1.
On this basis, assuming that the sixth value is the product of the first value and the second value, the existing multiplication proving process is as follows: the target block chain link point generates five random numbers, and generates multiplication proving information through the five random numbers, the zero knowledge proving method, the first promise value, the second promise value and the sixth promise value based on a multiplication operation formula;
the multiplication formula includes:
z 1 '=r 1 '+e 3 y,z' 2 =r 2 '+e 3 a,z' 3 =r 3 '+e 3 y,z' 4 =r 4 '+e 3 b,z' 5 =r 5 '+e 3 (ε-xb);
wherein the blockchain verification node verifies whether the sixth value is a product of the first value and the second value by verifying whether a multiplication verification equation is established based on the multiplication proof information;
the multiplication verification equation includes:
e 3 、z 1 '、z' 2 、z' 3 、z' 4 、z' 5 representing multiplication proof information; r is (r) 1 '、r 2 '、r 3 '、r 4 '、r 5 ' five random numbers generated by the link points of the target block; h represents a hash algorithm; c 1 =g x h a ,c 1 Representing a first commitment value; a represents a first numerical value; x represents the random number which is generated by the link point of the target block and is used for hiding the first numerical value; c 2 =g y h b ,c 2 Representing a second commitment value; y represents the random number which is generated by the link point of the target block and is used for hiding the second numerical value; c 6 =g ε h η ,c 6 A sixth commitment value representing a sixth value, η represents the sixth value, and ε represents a random number generated by the link points of the target block that conceals the sixth value.
It should be noted that the division proof provided in the present application, in combination with the existing addition, subtraction, multiplication proof, can implement addition, subtraction, multiplication, and division operations of data in the blockchain, and improve the functionality of the blockchain.
In the first embodiment, the first promise value and the second promise value are both theoretically generated according to a preset format, however, in an actual process, the generation process of the first promise value and the second promise value may not be the same, so in order to ensure the security of the values, it may be necessary to perform security certification on the first promise value and the second promise value, and the process of generating the first certification information for certifying that the product of the second value and the fourth value is the value 1 by the target block link point through the zero knowledge certification method, the second promise value, the fourth promise value and the fifth promise value may be specifically:
judging whether the block chain has validity proof of the first promise value and the second promise value, if not, generating five random numbers, and generating first proving information through the five random numbers, a zero knowledge proving method, the second promise value, the fourth promise value and the fifth promise value based on a fourth operation formula;
The fourth operational formula includes:
z 1 =r 1 +e 1 y,z 2 =r 2 +e 1 b,z 3 =r 3 +e 1 w,z 4 =r 4 +e 1 b -1 ,z 5 =r 5 +e 1 (v-yb -1 );
generating second proving information for proving that the product of the first value and the fourth value is a third value by a zero knowledge proving method and the first promise value, the third promise value and the fourth promise value, wherein the second proving information comprises the following components:
generating another five random numbers, and generating second proving information through the another five random numbers, the zero knowledge proving method, the first promise value, the third promise value and the fourth promise value based on a fifth operation formula;
the fifth operational formula includes:
z 7 =s 1 +f 1 x,z 8 =s 2 +f 1 a,z 9 =s 3 +f 1 w,z 10 =s 4 +f 1 b -1 ,z 11 =s 5 +f 1 (z-xb -1 );
wherein e 1 、z 1 、z 2 、z 3 、z 4 、z 5 Representing first certification information; r is (r) 1 、r 2 、r 3 、r 4 、r 5 Five random numbers generated by the chain link points of the target block are represented; h represents a hash algorithm; c 1 =g x h a ,c 1 Representing a first commitment value; a represents a first numerical value; x represents the random number which is generated by the link point of the target block and is used for hiding the first numerical value; c 2 =g y h b ,c 2 Representing a second commitment value; y represents the random number which is generated by the link point of the target block and is used for hiding the second numerical value; f (f) 1 、z 7 、z 8 、z 9 、z 10 、z 11 Representing second certification information; s is(s) 1 、s 2 、s 3 、s 4 、s 5 Representing another five random numbers generated by the target blockchain node;
the division relation proving information comprises first proving information and second proving information;
the block chain verification node verifies whether the product of the second numerical value and the fourth numerical value is a numerical value 1 by verifying whether the first equation is established based on the first proving information; verifying whether the product of the first value and the fourth value is the third value by verifying whether the second equation is true based on the second certification information;
The first equation includes:
the second equation includes:
it should be noted that, in this process,
proof of promise of g, h at the bottom of the second promise value, so r
1 、r
2 、z
1 、z
2 A legality proof of the second promise value is achieved, whereas +.>
Proof of promise of g, h at the bottom of the first promise value, so s
1 、s
2 、z
7 、z
8 Implementing legality proof of first promise value when first promise value and second promise value exist in blockchainWhen the legitimacy is proved, r can be omitted
1 、r
2 、z
1 、z
2 、s
1 、s
2 、z
7 Z
8 And the parameters and the related operation process reduce the proof quantity and the proof quantity of whether the third numerical value is the quotient of the first numerical value and the second numerical value, and improve the operation efficiency. In the first embodiment, after the validity proof of the first promise value and the second promise value already exists in the blockchain, when the target blockchain link point generates the first proof information that the product of the second numerical value and the fourth numerical value is 1 through the zero knowledge proof method and the second promise value, the fourth promise value and the fifth promise value, the method can:
judging whether the block chain has legal evidence of the first promise value and the second promise value, if so, generating three random numbers, and generating first proving information through the three random numbers, a zero knowledge proving method, the second promise value, the fourth promise value and the fifth promise value based on a sixth operation formula;
The sixth operational formula includes:
u 1 =m 1 +e 2 w,u 2 =m 2 +e 2 b -1 ,u 3 =m 3 +e 2 (v-yb -1 );
when generating the second proving information for proving that the product of the first value and the fourth value is the third value through the zero-knowledge proving method and the first promise value, the third promise value and the fourth promise value, another three random numbers can be generated, and based on a seventh operation formula, the second proving information is generated through the other three random numbers, the zero-knowledge proving method, the first promise value, the third promise value and the fourth promise value;
the seventh operational formula includes:
u 5 =n 1 +f 2 w,u 6 =n 2 +f 2 b -1 ,u 7 =n 3 +f 2 (z-xb -1 );
wherein e 2 、u 1 、u 2 、u 3 Representing first certification information; m is m 1 、m 2 、m 3 Three random numbers generated by the chain link points of the target block are represented; h represents a hash algorithm; c 1 =g x h a ,c 1 Representing a first commitment value; a represents a first numerical value; x represents the random number which is generated by the link point of the target block and is used for hiding the first numerical value; c 2 =g y h b ,c 2 Representing a second commitment value; y represents the random number which is generated by the link point of the target block and is used for hiding the second numerical value; f (f) 2 、u 5 、u 6 、u 7 Representing second certification information; n is n 1 、n 2 、n 3 Three other random numbers representing target block link point generation;
the block chain verification node verifies whether the product of the second numerical value and the fourth numerical value is a numerical value 1 by verifying whether the third equation is established based on the first proving information; verifying whether the product of the first value and the fourth value is the third value by verifying whether the fourth equation is satisfied based on the second certification information;
The first equation includes:
the second equation includes:
it should be noted that when there is a proof of validity of the first promise value and the second promise value in the blockchain, the number of random numbers used by the target blockchain point to generate the first promise information and the second promise information is smaller than when there is no proof of validity of the first promise value and the second promise value in the blockchain, and the number of formulas is smaller, so that when there is a proof of validity of the first promise value and the second promise value in the blockchain, the efficiency of the target blockchain point to generate the first promise information and the second promise information is higher than when there is no proof of validity of the first promise value and the second promise value in the blockchain, and the efficiency of the target blockchain point to generate the first promise information and the second promise information is higher.
In the first embodiment, in order to improve the operation efficiency, when the target block link point generates the third proof information for proving that the fifth promise value is legal through the zero knowledge proving method and the fifth promise value, the specific steps may be:
generating a random number, and generating third proving information for proving that the fifth promise value is legal through a zero knowledge proving method, the random number and the fifth promise value based on an eighth operation formula;
The eighth operational formula includes:
z 6 =r 6 +e'v;
wherein e', z 6 Representing third certification information; r is (r) 6 Representing a random number;
wherein the blockchain verification node verifies whether the fifth commitment value is legal by verifying whether the fifth equation is valid based on the third certification information;
the fifth equation includes:
it should be noted that in practical applications, the formulas listed in the present application may be modified or the like on the basis of conforming to the logic of the present application to achieve the same functions as the formulas listed in the present application. In addition, the fourth commitment value, the fifth commitment value, etc. applied by the blockchain verification node may be issued directly by the target blockchain link point; the target block link point may write the fourth commitment value, the fifth commitment value, etc. into the division relationship proving information, etc.; so that the blockchain verification node can obtain the fourth commitment value, the fifth commitment value, etc.
The above description describes the actions that the target blockchain node needs to perform in proving whether the third value is a quotient of the first value and the second value from the perspective of the target blockchain node, and the following description describes the actions that the blockchain verification node needs to perform in proving whether the third value is a quotient of the first value and the second value from the perspective of the blockchain verification node.
Referring to fig. 3, fig. 3 is a flow chart of a second embodiment of the present application.
In a second embodiment, a blockchain information processing method applied to a blockchain verification node provided by the present application may include the following steps:
step S201: receiving a third promise value and division relation proving information issued by the target block chain node, wherein the third promise value is obtained by the target block chain node after calculating a third numerical value based on discrete password group information applied by the block chain; the division relation proving information is zero knowledge proving information which is generated by the target block chain link point through the zero knowledge proving method and the first promise value, the second promise value, the third promise value, the fourth promise value and the fifth promise value and is used for proving that the third numerical value is the quotient value of the first numerical value and the second numerical value.
Step S203: verifying whether the third value is a quotient value of the first value and the second value based on the division relation proving information, and correspondingly processing the third promised value based on a verification result, wherein the first promised value is a value obtained by the target blockchain node after calculating the first value based on the discrete password group information; the second promise value is a value obtained by the target block chain node after calculating the second value based on the discrete password group information; the fourth promise value is obtained by calculating a fourth value based on the discrete code group information by the target blockchain node, and the fourth value is the reciprocal of the second value; the fifth promise value is a value obtained by calculating the value 1 by the target blockchain node based on the discrete password group information.
For a description of each step in this embodiment, please refer to the above embodiment, and further description is omitted herein. It should be noted that, in the blockchain, the blockchain verification node needs to verify the interval certification of the value during the value transmission, so in this application, the blockchain verification node needs to verify the interval certification of the first value, the second value, the third value, and the like in the process of verifying whether the third value is the quotient of the first value and the second value, and the specific process is please refer to the prior art, and is not repeated here.
In another aspect, the present application provides a blockchain information processing system.
Referring to fig. 4, fig. 4 is a schematic diagram of a blockchain information processing system according to an embodiment of the present application.
The block chain information processing system provided by the application is applied to a target block chain node, and can comprise:
a first obtaining module 201, configured to obtain discrete cryptographic group information of a blockchain application;
a second obtaining module 202, configured to obtain a first promise value obtained by calculating the first numerical value based on the discrete password group information;
a third obtaining module 203, configured to obtain a second promise value obtained by calculating a second value based on the discrete password group information;
The first operation module 204 is configured to divide the first value by the second value to obtain a third value, and operate the third value based on the discrete password group information to obtain a third promise value;
a second operation module 205, configured to operate on the fourth value based on the discrete code group information with the inverse of the second value as the fourth value, to obtain a fourth commitment value;
a third operation module 206, configured to operate on the value 1 based on the discrete password group information to obtain a fifth commitment value;
a first generating module 207, configured to generate division relationship proving information for proving that the third value is a quotient of the first value and the second value by using the zero knowledge proving method and the first, second, third, fourth, and fifth promise values;
the first issuing module 208 is configured to issue a third commitment value and division relationship proof information to the blockchain verification node, so that the blockchain verification node verifies whether the third value is a quotient of the first value and the second value based on the division relationship proof information.
The description of each module in this embodiment is referred to the above embodiments, and will not be repeated here.
In another aspect, the present application provides a blockchain information processing device.
Referring to fig. 5, fig. 5 is a schematic diagram illustrating an internal structure of a blockchain information processing device according to an embodiment of the present application.
In this embodiment, the blockchain information processing device 1 may be a PC (Personal Computer ), or may be a smart phone, a tablet computer, a palm computer, a portable computer, an intelligent router, or a network storage device terminal device.
The blockchain information processing device 5 may be a node constituting a CDN network or a blockchain network.
The memory 11 includes at least one type of readable storage medium including flash memory, a hard disk, a multimedia card, a card type memory (e.g., SD or DX memory, etc.), a magnetic memory, a magnetic disk, an optical disk, etc. The memory 11 may be an internal storage unit of the blockchain information processing device 1 in some embodiments, such as a hard disk of the blockchain information processing device 1. The memory 11 may also be an external storage device of the blockchain information processing apparatus 1 in other embodiments, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card) or the like provided on the blockchain information processing apparatus 1. Further, the memory 11 may also include both an internal storage unit and an external storage device of the blockchain information processing apparatus 1. The memory 11 may be used not only for storing application software installed in the blockchain information processing apparatus 1 and various types of data, such as codes of the blockchain information processing program 01, but also for temporarily storing data that has been output or is to be output.
The processor 12 may be, in some embodiments, a central processing unit (Central Processing Unit, CPU), controller, microcontroller, microprocessor or other data processing chip for executing program code or processing data stored in the memory 11, such as executing the blockchain information processing program 01, etc.
The bus 13 may be a peripheral component interconnect standard (peripheral component interconnect, PCI) bus, or an extended industry standard architecture (extended industry standard architecture, EISA) bus, among others. The bus may be classified as an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in fig. 5, but not only one bus or one type of bus.
Further, the blockchain information processing device may also include a network interface 14, and the network interface 14 may optionally include a wired interface and/or a wireless interface (e.g., WI-FI interface, bluetooth interface, etc.), typically used to establish a communication connection between the device 1 and other electronic equipment.
Optionally, the blockchain information processing device 1 may further include a user interface, which may include a Display (Display), an input unit such as a Keyboard (Keyboard), and an optional user interface may further include a standard wired interface, a wireless interface. Alternatively, in some embodiments, the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, an OLED (Organic Light-Emitting Diode) touch, or the like. Among other things, the display may also be referred to as a display screen or display unit as appropriate for displaying information processed in the blockchain information processing device 1 and for displaying a visual user interface.
Fig. 5 shows only the blockchain information processing device 1 with components 11-14 and blockchain information processing program 01, and those skilled in the art will appreciate that the structure shown in fig. 4 does not constitute a limitation of the blockchain information processing device 1, and may include fewer or more components than shown, or may combine certain components, or a different arrangement of components.
A computer readable storage medium is provided, on which a blockchain information processing program is stored, where the blockchain information processing program may be executed by one or more processors to implement the blockchain information processing method described in any of the embodiments above.
References herein to computer readable storage medium include Random Access Memory (RAM), memory, read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product.
The computer program product includes one or more computer instructions. When loaded and executed on a computer, produces a flow or function in accordance with embodiments of the present invention, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by a wired (e.g., coaxial cable, fiber optic, digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be stored by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid State Disk (SSD)), etc.
It will be clear to those skilled in the art that, for convenience and brevity of description, specific working procedures of the above-described systems, apparatuses and units may refer to corresponding procedures in the foregoing method embodiments, which are not repeated herein.
In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods may be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in each embodiment of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be embodied in essence or a part contributing to the prior art or all or part of the technical solution in the form of a software product stored in a storage medium, including several instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
It should be noted that, the foregoing reference numerals of the embodiments of the present invention are merely for describing the embodiments, and do not represent the advantages and disadvantages of the embodiments. And the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, apparatus, article, or method that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, apparatus, article, or method. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, apparatus, article or method that comprises the element.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the application. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.