CN111080296A - Verification method and device based on block chain system - Google Patents

Verification method and device based on block chain system Download PDF

Info

Publication number
CN111080296A
CN111080296A CN201911235411.8A CN201911235411A CN111080296A CN 111080296 A CN111080296 A CN 111080296A CN 201911235411 A CN201911235411 A CN 201911235411A CN 111080296 A CN111080296 A CN 111080296A
Authority
CN
China
Prior art keywords
information
verified
verification
node
pieces
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911235411.8A
Other languages
Chinese (zh)
Other versions
CN111080296B (en
Inventor
王朝阳
严强
李昊轩
李辉忠
张开翔
范瑞彬
刘雪峰
裴庆祺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
WeBank Co Ltd
Original Assignee
Xidian University
WeBank Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University, WeBank Co Ltd filed Critical Xidian University
Priority to CN201911235411.8A priority Critical patent/CN111080296B/en
Publication of CN111080296A publication Critical patent/CN111080296A/en
Priority to PCT/CN2020/120923 priority patent/WO2021109718A1/en
Application granted granted Critical
Publication of CN111080296B publication Critical patent/CN111080296B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

The embodiment of the invention discloses a verification method and a verification device based on a block chain system.A node to be verified generates data to be verified corresponding to at least two pieces of information to be verified based on an elliptic curve encryption algorithm and sends the data to the verification node, the verification node calculates first information and at least two pieces of second information in the data to be verified by using a decryption algorithm corresponding to the elliptic curve encryption algorithm to obtain third information, and whether the verification is passed or not is determined according to the third information and the first information. The data to be verified is obtained through the elliptic curve encryption algorithm, so that the verification difficulty is reduced, and the verification accuracy can be improved; in addition, the data to be verified in the scheme is generated by two or more pieces of information to be verified, so that the verification node can complete the verification of the two or more pieces of information to be verified in the nodes to be verified through one verification process, and the verification efficiency is improved.

Description

Verification method and device based on block chain system
Technical Field
The invention relates to the technical field of financial technology (Fintech), in particular to a verification method and device based on a block chain system.
Background
With the development of computer technology, more and more technologies are applied in the financial field, and the traditional financial industry is gradually changing to financial technology (Fintech), but higher requirements are also put forward on the technologies due to the requirements of the financial industry on safety and real-time performance.
At present, the public key cryptosystem RSA is an asymmetric encryption algorithm commonly used in a block chain system, and the length of a key generated by the RSA encryption algorithm is 512 bits to 2048 bits, although the RSA encryption algorithm can ensure the security of information to be verified, a longer key deepens the difficulty of verifying the encrypted information by a node, which results in lower efficiency of verifying the information to be verified.
In summary, there is a need for a verification method based on a block chain system for solving the technical problem of low verification efficiency caused by encrypting the information to be verified by using the RSA encryption algorithm in the prior art.
Disclosure of Invention
The embodiment of the invention provides a verification method and a verification device based on a block chain system, which are used for solving the technical problem of low verification efficiency caused by the fact that an RSA encryption algorithm is adopted to encrypt information to be verified in the prior art.
In a first aspect, an embodiment of the present invention provides a verification method based on a blockchain system, including:
a node to be verified in the block chain system generates data to be verified corresponding to at least two pieces of information to be verified based on an elliptic curve encryption algorithm, wherein the data to be verified comprises first information and at least two pieces of second information, the at least two pieces of second information are respectively in one-to-one correspondence with the at least two pieces of information to be verified, and the at least two pieces of second information are used for determining third information by the verification node; further, the node to be verified sends the data to be verified to a verification node, so that the verification node determines a verification result of the data to be verified through the first information and the third information.
In the embodiment of the invention, the elliptic curve encryption algorithm can use a shorter key to realize the security equivalent to or higher than that of the RSA encryption algorithm, so the method can improve the accuracy of verification on the basis of reducing the difficulty of verification; in addition, the data to be verified in the scheme is generated by two or more pieces of information to be verified, so that the verification node can verify the two or more pieces of information to be verified in the nodes to be verified through one verification process without verifying each piece of information to be verified, thereby saving unnecessary operation steps and improving the verification efficiency.
In a possible implementation manner, the generating, by a node to be verified in the blockchain system, to-be-verified data corresponding to at least two pieces of to-be-verified information based on an elliptic curve cryptography algorithm includes: the node to be verified sets a corresponding random blind key for each piece of information to be verified, and obtains the first information based on the random blind key corresponding to each piece of information to be verified and the elliptic curve point corresponding to each piece of information to be verified; the elliptic curve points corresponding to the information to be verified are obtained by pre-negotiating the node to be verified and the verification node; further, for any information to be verified, the node to be verified generates second information corresponding to the information to be verified according to the information to be verified, the random blind key corresponding to the information to be verified and the first information, and the data to be verified is constructed and obtained according to the first information and the second information corresponding to each information to be verified.
In the implementation manner, each piece of information to be verified is covered by using the random blind key, and the association relationship between the first information, each piece of second information, each piece of random blind key and each piece of information to be verified is designed, so that the verification node can reconstruct and obtain the first information based on the association relationship under the condition that each piece of information to be verified is not leaked by the verification node, and thus, the verification node can accurately verify two or more pieces of information to be verified.
In one possible implementation, the first information satisfies the following form: z1=Hash(a1*G1+a2*G2+……an*Gn) (ii) a Wherein Z is1Is the first information, a1、a2……、anRandom blind keys, G, corresponding to n pieces of information to be verified respectively1、G2……、GnRespectively corresponding to n pieces of information to be verified, wherein n is an integer greater than or equal to 2.
In the implementation mode, the hash algorithm is used for encrypting the continuous addition value of the discrete logarithm obtained by constructing each random blind key, so that the verification node cannot decrypt and obtain the random blind key corresponding to each piece of information to be verified based on the first information, a non-interactive verification mode can be implemented between the node to be verified and the verification node, and the safety of each piece of information to be verified is improved.
In a possible implementation manner, the second information corresponding to any information to be verified satisfies the following form: z2i=ai-Z1*ri(ii) a Wherein Z is2iIs the second information corresponding to the ith information to be verified, aiIs a random blind key r corresponding to the ith information to be verifiediAnd i is the ith information to be verified, and is an integer which is greater than 0 and less than n.
In a second aspect, an embodiment of the present invention provides a verification method based on a blockchain system, where the method includes:
the verification node receives data to be verified sent by the node to be verified; the data to be verified is obtained by encrypting at least two pieces of information to be verified by the node to be verified by using an elliptic curve encryption algorithm, and the data to be verified comprises first information and at least two pieces of second information; the at least two pieces of second information correspond to the at least two pieces of information to be verified one by one; further, the verification node uses a decryption algorithm corresponding to the elliptic curve encryption algorithm to calculate to obtain third information according to the first information and the at least two pieces of second information in the data to be verified, and determines whether the data to be verified passes verification according to the third information and the first information.
In a possible implementation manner, the calculating, by the verification node, according to the first information and the at least two pieces of second information in the data to be verified, using a decryption algorithm corresponding to the elliptic curve cryptography algorithm to obtain third information includes: the verification node acquires an elliptic curve point and a verification point corresponding to each piece of information to be verified; the elliptic curve points corresponding to the information to be verified and the verification points are obtained by pre-negotiating the nodes to be verified and the verification nodes; further, the verification node obtains the third information according to the first information, the second information corresponding to each piece of information to be verified, and the elliptic curve point and the verification point corresponding to each piece of information to be verified.
In one possible implementation, the third information satisfies the following form: z3=Hash(Z21*G1+Z22*G2+……+Z2n*Gn+Z1Y); wherein Z is3As third information, Z21、Z22、……、Z2nSecond information G corresponding to the n pieces of information to be verified respectively1、G2、……、GnRespectively corresponding to n information to be verified, Z1Is the first information and Y is the verification point.
In a third aspect, an embodiment of the present invention provides an authentication apparatus based on a blockchain system, where the apparatus includes:
the generating module is used for generating at least two pieces of to-be-verified data corresponding to the to-be-verified information based on an elliptic curve encryption algorithm; the data to be verified comprises first information and at least two pieces of second information, the at least two pieces of second information are respectively in one-to-one correspondence with the at least two pieces of information to be verified, and the at least two pieces of second information are used for determining third information by the verification node;
and the transceiver module is used for sending the data to be verified to the verification node so that the verification node can determine the verification result of the data to be verified through the first information and the third information.
In a possible implementation manner, the generating module is specifically configured to: setting a corresponding random blind key for each piece of information to be verified, and obtaining the first information based on the random blind key corresponding to each piece of information to be verified and the elliptic curve point corresponding to each piece of information to be verified; the elliptic curve points corresponding to the information to be verified are obtained by pre-negotiating the nodes to be verified and the verification nodes; further, for any information to be verified, second information corresponding to the information to be verified is generated according to the information to be verified, the random blind key corresponding to the information to be verified and the first information, and the data to be verified is constructed and obtained according to the first information and the second information corresponding to each information to be verified.
In one possible implementation, the first information satisfies the following form: z1=Hash(a1*G1+a2*G2+……an*Gn) (ii) a Wherein Z is1Is the first information, a1、a2……、anRandom blind keys, G, corresponding to n pieces of information to be verified respectively1、G2……、GnRespectively corresponding to n pieces of information to be verified, wherein n is an integer greater than or equal to 2.
In a possible implementation manner, the second information corresponding to any information to be verified satisfies the following form: z2i=ai-Z1*ri(ii) a Wherein Z is2iIs the second information corresponding to the ith information to be verified, aiIs a random blind key r corresponding to the ith information to be verifiediAnd i is the ith information to be verified, and is an integer which is greater than 0 and less than n.
In a fourth aspect, an embodiment of the present invention provides an authentication apparatus based on a blockchain system, where the apparatus includes:
the receiving and sending module is used for receiving the data to be verified sent by the node to be verified; the data to be verified is obtained by encrypting at least two pieces of information to be verified by the node to be verified by using an elliptic curve encryption algorithm, and the data to be verified comprises first information and at least two pieces of second information; the at least two pieces of second information correspond to the at least two pieces of information to be verified one by one;
the processing module is used for calculating to obtain third information by using a decryption algorithm corresponding to the elliptic curve encryption algorithm according to the first information and the at least two pieces of second information in the data to be verified;
and the verification module is used for determining whether the data to be verified passes the verification or not according to the third information and the first information.
In a possible implementation manner, the processing module is specifically configured to: acquiring an elliptic curve point and a verification point corresponding to each piece of information to be verified; the elliptic curve points and the verification points corresponding to the information to be verified are obtained by pre-negotiating the nodes to be verified and the verification nodes; and further, obtaining the third information according to the first information, the second information corresponding to each piece of information to be verified, and the elliptic curve point and the verification point corresponding to each piece of information to be verified.
In one possible implementation, the third information satisfies the following form: z3=Hash(Z21*G1+Z22*G2+……+Z2n*Gn+Z1Y); wherein Z is3As third information, Z21、Z22、……、Z2nSecond information G corresponding to the n pieces of information to be verified respectively1、G2、……、GnAre respectively n to be verifiedElliptic curve points, Z, to which information corresponds1Is the first information and Y is the verification point.
In a fifth aspect, an embodiment of the present invention provides a computing device, including at least one processor and at least one memory, where the memory stores a computer program, and when the program is executed by the processor, the processor is caused to execute the method for verifying based on a blockchain system according to any of the first or second aspects.
In a sixth aspect, an embodiment of the present invention provides a computer-readable storage medium, which stores a computer program executable by a computing device, and when the program runs on the computing device, the computer program causes the computing device to execute the verification method based on the blockchain system according to any of the first aspect or the second aspect.
These and other aspects of the invention are apparent from and will be elucidated with reference to the embodiments described hereinafter.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Fig. 1 is a block chain system according to an embodiment of the present invention;
fig. 2 is a flowchart illustrating a verification method based on a blockchain system according to an embodiment of the present invention;
fig. 3 is a schematic structural diagram of a verification apparatus based on a blockchain system according to an embodiment of the present invention;
FIG. 4 is a schematic structural diagram of a verification apparatus based on a blockchain system according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a computing device according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the present invention will be described in further detail with reference to the accompanying drawings, and it is apparent that the described embodiments are only a part of the embodiments of the present invention, not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The field of financial technology (Fintech) generally involves many transactions, for example, bank transactions may include card-selling transactions, deposit transactions, loan transactions, insurance transactions, financing transactions, etc., and the daily transaction amount of a bank may reach thousands or even tens of thousands. With the development of the blockchain technology, the field of financial technology may also use the blockchain technology to process transactions, for example, if related transactions are involved between multiple banks, the various related transactions may be processed synchronously by setting up a federation chain, or a court, a customer, and the like may be linked up simultaneously to maintain the security and stability of the federation chain together.
The blockchain system may be a point-To-point (Peer To Peer, P2P) network composed of a plurality of nodes. P2P is an application layer Protocol running on top of the Transmission Control Protocol (TCP), and nodes in a blockchain system can be peer-to-peer with each other, and there is no central node in the system, so each node can randomly connect to other nodes. In the block chain system, a preset database can be arranged in each node, each node commonly maintains a public ledger in the block chain system through the preset database, and the preset database in each node can store block data in the block chain system; the block data includes a block header and a block body, the block header includes information such as a hash value of a previous block, a hash value of the current block, a block height of the current block, a timestamp, and the like, and the block body includes transaction data, for example, transaction data generated by processing a transaction to be processed in a process of recognizing the block by a node in a block chain system.
Fig. 1 is a schematic structural diagram of a blockchain system according to an embodiment of the present invention, as shown in fig. 1, the blockchain system may include one or more nodes, such as a node 101, a node 102, a node 103, and a node 104, and any two of the nodes 101 to 104 may be communicatively connected, so as to jointly maintain the blockchain system. Any two nodes may be connected in a wired manner, or may be connected in a wireless manner, which is not limited specifically.
In the embodiment of the present invention, the nodes in the blockchain system may have multiple functions, such as a routing function, a transaction function, a blockchain function, a consensus function, and the like. Specifically, the nodes in the blockchain system can transmit information such as transaction data transmitted by other nodes to more nodes to realize communication between the nodes; alternatively, nodes in the blockchain system may be used to support users in conducting transactions; alternatively, nodes in the blockchain system may be used to record all transactions historically; alternatively, a node in the blockchain system may generate a new block in the blockchain by verifying and recording the transaction. In practical applications, the routing function is a function that each node in the blockchain system must have, and other functions can be set by those skilled in the art according to practical needs.
It should be noted that a node in the blockchain system may be on a physical machine (server), and a node may specifically refer to a process or a series of processes running in the server. For example, the node 101 in the blockchain network may be a process running on a server, or may also refer to a server, which is not limited in particular.
As shown in fig. 1, the system architecture may further include a client 200, and the client 200 may be connected to any node in the blockchain system through an access blockchain network. In an implementation, the client 200 may send the transaction to any node in the blockchain system, and after receiving the transaction, a node in the blockchain system may synchronize the transaction to other nodes in the blockchain system. After the node synchronously transacts, the node can also store the transaction in a transaction pool inside the node; accordingly, other nodes may also store transactions in a transaction pool internal to the other nodes after receiving the node-synchronized transactions. Therefore, if a certain node determines to process a plurality of transactions, the plurality of transactions can be obtained from the internal transaction pool, and then subsequent transaction processing and block consensus are carried out.
Wherein the transactions may be stored in a transaction pool in the form of a stack; therefore, if a certain node determines to process a plurality of transactions, the earliest stacked transaction can be obtained from the internal transaction pool to carry out subsequent processing and consensus process.
Based on the system architecture illustrated in fig. 1, fig. 2 is a schematic flowchart corresponding to a data processing method based on a blockchain system according to an embodiment of the present invention, where the method is applied to any node in the blockchain system, such as node 101, node 102, node 103, or node 104, and the method includes:
step 201, a node to be verified generates at least two data to be verified corresponding to information to be verified based on an elliptic curve encryption algorithm.
The data to be verified comprises first information and at least two pieces of second information, and the at least two pieces of second information are in one-to-one correspondence with the at least two pieces of information to be verified respectively.
In the verification field of the block chain system, a node to be verified and a verification node can negotiate a verification format in advance, and the verification format is a format required to be met by at least two pieces of information to be verified; therefore, if the node to be verified wants to prove to the verification node that at least two pieces of information to be verified exist in the node to be verified, the node to be verified can prove that the at least two pieces of information to be verified exist in the node to be verified as long as the node to be verified proves to the verification node that the at least two pieces of information to be verified in the node to be verified meet the verification format.
The verification format may be set by a person skilled in the art based on experience, and is not limited in particular.
In this embodiment of the present invention, the verification format may be determined based on an elliptic curve cryptography algorithm, for example, the verification format may be in a form of adding at least two elliptic curve discrete logarithms of the information to be verified, or may also be in a form of multiplying at least two elliptic curve discrete logarithms of the information to be verified, or may also be in a form of mixing the adding and multiplying at least two elliptic curve discrete logarithms of the information to be verified, which is not limited.
Taking the form of the continuous addition of discrete logarithms of elliptic curves with verification formats of at least two pieces of information to be verified as an example, the nodes to be verified and the verification nodes can negotiate a set elliptic curve in advance, and in order to ensure the verification safety, the set elliptic curve can be set to have a large prime number (namely, greater than 2) in order256) An elliptic curve of (a); correspondingly, the to-be-verified node and the verification node can also select an elliptic curve point corresponding to each to-be-verified information from the set elliptic curve in advance, and select a verification point from the set elliptic curve.
In one example, the verification format may be satisfied as follows:
Y=r1*G1+r2*G2+……+rn*Gn
wherein r is1、r2、……、rnN pieces of information to be verified, n is an integer greater than or equal to 2, Y is a verification point on an elliptic curve with the order of a large prime number q, G1、G2、……、GnFor information r to be verified1、r2、……、rnRespectively corresponding elliptic curve points.
In the embodiment of the invention, in order to ensure the consistency of verification of each node, an elliptic curve point (namely G) corresponding to each information to be verified1、G2、……、Gn) And the verification point Y can be determined by negotiation of each node in the block chain system in advance, so that each node to be verified can encrypt respective information to be verified by using the same elliptic curve to obtain data to be verified, and the verification nodes can verify the data to be verified of each node to be verified by using the same verification method, so that the verification consistency of each node to be verified is ensured, and the verification accuracy is improved.
For example, if the node 1 needs to verify the node 2 and the node 3 at the same time, the node 1 may obtain the data to be verified sent by the node 2 and the data to be verified sent by the node 3 respectively, and based on the same ellipseCircle curve point G1、G2、……、GnVerifying the data to be verified sent by the node 2 and the data to be verified of the node 3 with the elliptic curve point Y; if both the node 2 and the node 3 pass the verification, the node 1 may determine that the information to be verified stated by the node 2 does exist in the node 2, and the information to be verified stated by the node 3 does exist in the node 3, so that the node 1 may perform subsequent operations based on the verification results of the node 2 and the node 3, for example, obtain the sum, difference, product, and the like of the information to be verified in the node 2 and the information to be verified in the node 3 based on the data to be verified in the node 2 and the data to be verified in the node 3; if the node 2 fails to verify, the node 1 may determine that the information to be verified, which is said by the node 2, does not exist in the node 2, and the node 2 has a behavior of forging information.
It should be noted that, in the embodiment of the present invention, the elliptic curve cryptography algorithm is obtained by relying on elliptic curve discrete logarithm calculation, and therefore, the elliptic curve cryptography algorithm is referred to as an elliptic curve cryptography algorithm, and the elliptic curve cryptography algorithm may be set by a person skilled in the art according to experience, which is not particularly limited.
In a possible implementation manner, the node to be verified may obtain the data to be verified through the following construction method:
step one, a node to be verified sets a corresponding random blind key for each information to be verified; the random blind key corresponding to each piece of information to be verified can be an integer with a larger value and is smaller than the order of the set elliptic curve.
And step two, the node to be verified obtains first information based on the random blind key corresponding to each piece of information to be verified and the elliptic curve point corresponding to each piece of information to be verified.
And step three, aiming at any information to be verified, the node to be verified generates second information corresponding to the information to be verified according to the information to be verified, the random blind key corresponding to the information to be verified and the first information.
And fourthly, the node to be verified constructs data to be verified corresponding to each piece of information to be verified according to the first information and the second information corresponding to each piece of information to be verified.
It should be noted that each operator in the above steps needs to perform modulo operation on the order q of the elliptic curve, and for convenience of description, the embodiment of the present invention does not describe the operation of performing modulo operation on the order q of the elliptic curve.
In one example, the first information may satisfy the following form:
Z1=Hash(a1*G1+a2*G2+……an*Gn)
wherein Z is1Is the first information, a1、a2……、anAre respectively information r to be verified1、r2、……、rnCorresponding random blind key.
Correspondingly, the second information corresponding to any information to be verified can satisfy the following form:
Z2i=ai-Z1*ri
wherein Z is2iIs the second information corresponding to the ith information to be verified, riAnd i is the ith information to be verified, and is an integer which is greater than 0 and less than n.
In this example, the hash algorithm is used to encrypt the continuous addition value of the discrete logarithm obtained by constructing each random blind key, so that the verification node cannot decrypt the continuous addition value based on the first information to obtain the random blind key corresponding to each piece of information to be verified, thereby enabling non-interactive verification to be achieved between the verification node and the node to be verified, and ensuring the security of each piece of information to be verified.
For easy understanding, the first information r to be verified is used below1And second information r to be verified2For example, a specific implementation process of obtaining to-be-verified data corresponding to two pieces of to-be-verified information is described.
In specific implementation, the node to be verified may first randomly select an integer a with a larger value from integers smaller than q1And integer a2An integer a1As the first information r to be verified1Corresponding random blind key, and converting the integer a2As the second information r to be authenticated2A corresponding random blind key, and then based on the first information r to be verified1Corresponding random blind key a1First information r to be verified1Corresponding elliptic curve point G1The second information r to be verified2Corresponding random blind key a2And second information r to be verified2Corresponding elliptic curve point G2First information Z is obtained through construction1
Z1=Hash(a1*G1+a2*G2)
Further, aiming at the first information r to be verified1The node to be verified can be based on the first information r to be verified1First information r to be verified1Corresponding random blind key a1And first information Z1Generating first information r to be verified1Corresponding second information Z21
Z21=a1-Z1*r1
Accordingly, for the second information r to be verified2The node to be verified can be based on the second information r to be verified2The second information r to be verified2Corresponding random blind key a2And first information Z1Generating second information r to be verified2Corresponding second information Z22
Z22=a2-Z1*r2
Thus, the node to be verified can be based on the first information Z1First information r to be verified1Corresponding second information Z21And second information r to be verified2Corresponding second information Z22The data to be verified is obtained through construction, for example, the node to be verified can obtain the first information Z1First information r to be verified1Corresponding second information Z21And second information r to be verified2Corresponding second information Z22The vector obtained by splicing is used as the data to be verified, or the first information Z can be used1First information r to be verified1Corresponding second information Z21And second information r to be verified2Corresponding second information Z22The constructed array is used as data to be verified, and the array can be an array [ Z ] of three rows and one column1,Z21,Z22]TOr an array of three columns and one row [ Z ]1,Z21,Z22]And are not limited.
It should be noted that the above is only an exemplary and simple description, and does not form a limitation to the present solution, and in the specific implementation, the node to be verified may also obtain the first information and the second information according to other manners, for example, the first information may also be set to be Z1=K1Hash(a1*G1+a2*G2+……an*Gn) Or setting the first information as Z1=K1(a1*G1+a2*G2+……an*Gn) Accordingly, the second information may be set to Z2i=K2ai-Z1*riOr setting the second information as Z2i=ai-K2Z1*ri,K1、K2Is a constant.
Step 202, the node to be verified sends the data to be verified corresponding to at least two pieces of information to be verified to the verification node.
In specific implementation, a node to be verified may broadcast data to be verified to each node in the blockchain system, and for each node in the blockchain system, after receiving the data to be verified, the node determines whether the node is a verification node corresponding to the node to be verified, if so, the node may obtain the data to be verified, and if not, the node may not perform processing.
Step 203, after the verification node receives the data to be verified, according to the first information and the at least two second information in the data to be verified, calculating by using a decryption algorithm corresponding to the elliptic curve encryption algorithm to obtain third information.
The decryption algorithm corresponding to the elliptic curve encryption algorithm can be realized based on the inverse solution process of the elliptic curve encryption algorithm, and the decryption algorithm corresponding to the elliptic curve encryption algorithm can be set by a person skilled in the art according to experience, as long as the third information calculated by using the algorithm is consistent with the first information sent by the node to be verified.
In one example, by setting a decryption algorithm corresponding to the elliptic curve encryption algorithm, the third information may be obtained by the following formula:
Z3=Hash(Z21*G1+Z22*G2+……+Z2n*Gn+Z1*Y)
wherein Z is3As third information, Z21、Z22、……、Z2nAre respectively information r to be verified1、r2、……、rnCorresponding second information, G1、G2、……、GnAre respectively information r to be verified1、r2、……、rnCorresponding elliptic curve point, Z1Is the first information and Y is the verification point.
For ease of understanding, the verification process for the third information being consistent with the first information is given below:
Z3=Hash(Z21*G1+Z22*G2+……+Z2n*Gn+Z1*Y)
=Hash((a1-Z1*r1)*G1+(a2-Z1*r2)*G2+……+(an-Z1*rn)*Gn+Z1*(r1*G1+r2*G2+……+rn*Gn))
=Hash(a1*G1-Z1*r1*G1+a2*G2-Z1*r2*G2+……+an*Gn-Z1*rn*Gn+Z1*r1*G1+Z1*r2*G2+……+Z1*rn*Gn)
=Hash(a1*G1+a2*G2+……+an*Gn)=Z1
obviously, the decryption algorithm corresponding to the elliptic curve encryption algorithm set in the above example may obtain the third information consistent with the first information by using the first information and each second information encrypted by the elliptic curve encryption algorithm, so that the decryption algorithm has a corresponding relationship with the elliptic curve encryption algorithm, and the accuracy of the verification process can be ensured.
In a specific implementation, if the verification node receives the to-be-verified data sent by the to-be-verified node, the verification node may first obtain each piece of information that is negotiated in advance with the to-be-verified node, such as an elliptic curve point and a verification point corresponding to each piece of to-be-verified information, and then calculate each piece of information that is negotiated in advance, the first information in the to-be-verified data, and each piece of second information according to the formula in the above example, to obtain the third information.
In step 204, the verification node determines whether the third information is the same as the first information, if so, step 205 is executed, and if not, step 206 is executed.
In step 205, the verification node determines that the data to be verified passes verification, and the node to be verified really has the at least two pieces of information to be verified.
In step 206, the verification node determines that the data to be verified passes verification, and the at least two pieces of information to be verified do not exist in the node to be verified.
In a specific implementation, after the verification node calculates the third information, the third information and the first information may be compared, if the third information is the same as the first information, the data to be verified passes the verification, that is, the at least two pieces of information to be verified do exist in the node to be verified, if the third information is different from the first information, the data to be verified does not pass the verification, that is, the at least two pieces of information to be verified do not exist in the node to be verified, and the node to be verified is faked.
In an example, if the verification node determines that the node to be verified is counterfeit, an alarm may be given to the node to be verified, for example, alarm information is generated according to the identifier of the node to be verified, the third information, and the comparison result of the first information, and the alarm information is pushed to a manager of the blockchain system through a nail, a WeChat, a qq, a mailbox, a short message, and the like, so that the manager can maintain the security of the blockchain system.
In the above embodiment of the present invention, a node to be verified in a block chain system generates at least two pieces of data to be verified corresponding to information to be verified based on an elliptic curve encryption algorithm, and sends the data to be verified to a verification node, after receiving the data to be verified sent by the node to be verified, the verification node calculates to obtain third information by using a decryption algorithm corresponding to the elliptic curve encryption algorithm according to the first information and the at least two pieces of second information in the data to be verified, and determines whether the data to be verified passes verification according to the third information and the first information. In the embodiment of the invention, the data to be verified is obtained by using the elliptic curve encryption algorithm, and the safety equivalent to or higher than that of the RSA encryption algorithm can be realized by using a shorter secret key, so that the verification accuracy can be improved on the basis of reducing the verification difficulty; in addition, the data to be verified in the scheme is generated by two or more pieces of information to be verified, so that the verification node can verify the two or more pieces of information to be verified in the nodes to be verified through one verification process without verifying each piece of information to be verified, thereby saving unnecessary operation steps and improving the verification efficiency.
For the above method flow, an embodiment of the present invention further provides a verification apparatus based on a blockchain system, and the specific content of the apparatus can be implemented with reference to the above method.
Fig. 3 is a schematic structural diagram of a verification apparatus based on a blockchain system according to an embodiment of the present invention, including:
the generating module 301 is configured to generate to-be-verified data corresponding to at least two pieces of to-be-verified information based on an elliptic curve encryption algorithm; the data to be verified comprises first information and at least two pieces of second information, the at least two pieces of second information are respectively in one-to-one correspondence with the at least two pieces of information to be verified, and the at least two pieces of second information are used for determining third information by the verification node;
a transceiver module 302, configured to send the data to be verified to the verification node, so that the verification node determines a verification result of the data to be verified through the first information and the third information.
Optionally, the generating module 301 is specifically configured to:
setting a corresponding random blind key for each information to be verified;
obtaining the first information based on the random blind key corresponding to each information to be verified and the elliptic curve point corresponding to each information to be verified; the elliptic curve points corresponding to the information to be verified are obtained by pre-negotiating the nodes to be verified and the verification nodes;
for any information to be verified, generating second information corresponding to the information to be verified according to the information to be verified, a random blind key corresponding to the information to be verified and the first information;
and according to the first information and second information corresponding to each piece of information to be verified, constructing to obtain the data to be verified.
Optionally, the first information satisfies the following form:
Z1=Hash(a1*G1+a2*G2+……an*Gn)
wherein Z is1Is the first information, a1、a2……、anRandom blind keys, G, corresponding to n pieces of information to be verified respectively1、G2……、GnRespectively corresponding to n pieces of information to be verified, wherein n is an integer greater than or equal to 2.
Optionally, the second information corresponding to any information to be verified satisfies the following form:
Z2i=ai-Z1*ri
wherein Z is2iIs the second information corresponding to the ith information to be verified, aiIs a random blind key r corresponding to the ith information to be verifiediAnd i is the ith information to be verified, and is an integer which is greater than 0 and less than n.
Fig. 4 is a schematic structural diagram of a verification apparatus based on a blockchain system according to an embodiment of the present invention, including:
the transceiver module 401 is configured to receive data to be verified sent by a node to be verified; the data to be verified is obtained by encrypting at least two pieces of information to be verified by the node to be verified by using an elliptic curve encryption algorithm, and the data to be verified comprises first information and at least two pieces of second information; the at least two pieces of second information correspond to the at least two pieces of information to be verified one by one;
a processing module 402, configured to calculate, according to the first information and the at least two pieces of second information in the data to be verified, third information using a decryption algorithm corresponding to the elliptic curve encryption algorithm;
the verification module 403 is configured to determine whether the data to be verified passes verification according to the third information and the first information.
Optionally, the processing module 402 is specifically configured to:
acquiring an elliptic curve point and a verification point corresponding to each piece of information to be verified; the elliptic curve points and the verification points corresponding to the information to be verified are obtained by pre-negotiating the nodes to be verified and the verification nodes;
and obtaining the third information according to the first information, the second information corresponding to each piece of information to be verified, and the elliptic curve points and verification points corresponding to each piece of information to be verified.
Optionally, the third information satisfies the following form:
Z3=Hash(Z21*G1+Z22*G2+……+Z2n*Gn+Z1*Y)
wherein Z is3As third information, Z21、Z22、……、Z2nSecond information G corresponding to the n pieces of information to be verified respectively1、G2、……、GnRespectively corresponding to n information to be verified, Z1Is the first information and Y is the verification point.
From the above, it can be seen that: in the above embodiment of the present invention, a node to be verified in a block chain system generates at least two pieces of data to be verified corresponding to information to be verified based on an elliptic curve encryption algorithm, and sends the data to be verified to a verification node, after receiving the data to be verified sent by the node to be verified, the verification node calculates to obtain third information by using a decryption algorithm corresponding to the elliptic curve encryption algorithm according to the first information and the at least two pieces of second information in the data to be verified, and determines whether the data to be verified passes verification according to the third information and the first information. In the embodiment of the invention, the data to be verified is obtained by using the elliptic curve encryption algorithm, and the safety equivalent to or higher than that of the RSA encryption algorithm can be realized by using a shorter secret key, so that the verification accuracy can be improved on the basis of reducing the verification difficulty; in addition, the data to be verified in the scheme is generated by two or more pieces of information to be verified, so that the verification node can verify the two or more pieces of information to be verified in the nodes to be verified through one verification process without verifying each piece of information to be verified, thereby saving unnecessary operation steps and improving the verification efficiency.
Based on the same inventive concept, an embodiment of the present invention further provides a computing device, as shown in fig. 5, including at least one processor 501 and a memory 502 connected to the at least one processor, where a specific connection medium between the processor 501 and the memory 502 is not limited in the embodiment of the present invention, and the processor 501 and the memory 502 are connected through a bus in fig. 5 as an example. The bus may be divided into an address bus, a data bus, a control bus, etc.
In the embodiment of the present invention, the memory 502 stores instructions executable by the at least one processor 501, and the at least one processor 501 can execute the steps included in the verification method based on the blockchain system by executing the instructions stored in the memory 502.
The processor 501 is a control center of the computing device, and may be connected to various parts of the computing device through various interfaces and lines, and implement data processing by executing or executing instructions stored in the memory 502 and calling data stored in the memory 502. Optionally, the processor 501 may include one or more processing units, and the processor 501 may integrate an application processor and a modem processor, where the application processor mainly processes an operating system, a user interface, an application program, and the like, and the modem processor mainly processes an instruction issued by an operation and maintenance worker. It will be appreciated that the modem processor described above may not be integrated into the processor 501. In some embodiments, processor 501 and memory 502 may be implemented on the same chip, or in some embodiments, they may be implemented separately on separate chips.
The processor 501 may be a general-purpose processor, such as a Central Processing Unit (CPU), a digital signal processor, an Application Specific Integrated Circuit (ASIC), a field programmable gate array or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof, configured to implement or perform the methods, steps, and logic blocks disclosed in the embodiments of the present invention. A general purpose processor may be a microprocessor or any conventional processor or the like. The steps of the disclosed method in connection with the verification embodiments based on the blockchain system may be embodied directly in a hardware processor, or in a combination of hardware and software modules within the processor.
Memory 502, which is a non-volatile computer-readable storage medium, may be used to store non-volatile software programs, non-volatile computer-executable programs, and modules. The Memory 502 may include at least one type of storage medium, and may include, for example, a flash Memory, a hard disk, a multimedia card, a card-type Memory, a Random Access Memory (RAM), a Static Random Access Memory (SRAM), a Programmable Read Only Memory (PROM), a Read Only Memory (ROM), a charged Erasable Programmable Read Only Memory (EEPROM), a magnetic Memory, a magnetic disk, an optical disk, and so on. The memory 502 is any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to such. The memory 502 of embodiments of the present invention may also be circuitry or any other device capable of performing a storage function to store program instructions and/or data.
Based on the same inventive concept, the embodiment of the present invention further provides a computer-readable storage medium, which stores a computer program executable by a computing device, and when the program runs on the computing device, the computer program causes the computing device to execute the block chain system-based authentication method as described in any of fig. 2.
It should be apparent to those skilled in the art that embodiments of the present invention may be provided as a method, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (16)

1. A verification method based on a blockchain system, the method comprising:
the node to be verified in the block chain system generates data to be verified corresponding to at least two pieces of information to be verified based on an elliptic curve encryption algorithm;
the data to be verified comprises first information and at least two pieces of second information, the at least two pieces of second information are respectively in one-to-one correspondence with the at least two pieces of information to be verified, and the at least two pieces of second information are used for determining third information by the verification node;
and the node to be verified sends the data to be verified to the verification node so that the verification node can determine the verification result of the data to be verified through the first information and the third information.
2. The method according to claim 1, wherein the generating of the to-be-verified data corresponding to at least two pieces of to-be-verified information by the to-be-verified node in the blockchain system based on the elliptic curve cryptography algorithm comprises:
the node to be verified sets a corresponding random blind key for each piece of information to be verified;
the node to be verified obtains the first information based on the random blind key corresponding to each piece of information to be verified and the elliptic curve point corresponding to each piece of information to be verified; the elliptic curve points corresponding to the information to be verified are obtained by pre-negotiating the node to be verified and the verification node;
aiming at any information to be verified, the node to be verified generates second information corresponding to the information to be verified according to the information to be verified, a random blind key corresponding to the information to be verified and the first information;
and the node to be verified constructs and obtains the data to be verified according to the first information and second information corresponding to each piece of information to be verified.
3. The method of claim 2, wherein the first information satisfies the following form:
Z1=Hash(a1*G1+a2*G2+……an*Gn)
wherein Z is1Is the first information, a1、a2……、anRandom blind keys, G, corresponding to n pieces of information to be verified respectively1、G2……、GnRespectively corresponding to n pieces of information to be verified, wherein n is an integer greater than or equal to 2.
4. The method according to claim 3, wherein the second information corresponding to any information to be verified satisfies the following form:
Z2i=ai-Z1*ri
wherein Z is2iIs the second information corresponding to the ith information to be verified, aiIs a random blind key r corresponding to the ith information to be verifiediAnd i is the ith information to be verified, and is an integer which is greater than 0 and less than n.
5. A verification method based on a blockchain system, the method comprising:
the verification node receives data to be verified sent by the node to be verified; the data to be verified is obtained by encrypting at least two pieces of information to be verified by the node to be verified by using an elliptic curve encryption algorithm, and the data to be verified comprises first information and at least two pieces of second information; the at least two pieces of second information correspond to the at least two pieces of information to be verified one by one;
the verification node calculates to obtain third information by using a decryption algorithm corresponding to the elliptic curve encryption algorithm according to the first information and the at least two pieces of second information in the data to be verified;
and the verification node determines whether the data to be verified passes verification or not according to the third information and the first information.
6. The method according to claim 5, wherein the calculating, by the verification node, third information using a decryption algorithm corresponding to the elliptic curve cryptography algorithm according to the first information and the at least two pieces of second information in the data to be verified includes:
the verification node acquires an elliptic curve point and a verification point corresponding to each piece of information to be verified; the elliptic curve points corresponding to the information to be verified and the verification points are obtained by pre-negotiating the nodes to be verified and the verification nodes;
and the verification node obtains the third information according to the first information, the second information corresponding to each piece of information to be verified, and the elliptic curve point and the verification point corresponding to each piece of information to be verified.
7. The method of claim 6, wherein the third information satisfies the following form:
Z3=Hash(Z21*G1+Z22*G2+……+Z2n*Gn+Z1*Y)
wherein Z is3As third information, Z21、Z22、……、Z2nSecond information G corresponding to the n pieces of information to be verified respectively1、G2、……、GnRespectively corresponding to n information to be verified, Z1Is the first information and Y is the verification point.
8. An apparatus for authentication based on a blockchain system, the apparatus comprising:
the generating module is used for generating at least two pieces of to-be-verified data corresponding to the to-be-verified information based on an elliptic curve encryption algorithm; the data to be verified comprises first information and at least two pieces of second information, the at least two pieces of second information are respectively in one-to-one correspondence with the at least two pieces of information to be verified, and the at least two pieces of second information are used for determining third information by the verification node;
and the transceiver module is used for sending the data to be verified to the verification node so that the verification node can determine the verification result of the data to be verified through the first information and the third information.
9. The apparatus of claim 8, wherein the generation module is specifically configured to:
setting a corresponding random blind key for each information to be verified;
obtaining the first information based on the random blind key corresponding to each information to be verified and the elliptic curve point corresponding to each information to be verified; the elliptic curve points corresponding to the information to be verified are obtained by pre-negotiating the nodes to be verified and the verification nodes;
for any information to be verified, generating second information corresponding to the information to be verified according to the information to be verified, a random blind key corresponding to the information to be verified and the first information;
and according to the first information and second information corresponding to each piece of information to be verified, constructing to obtain the data to be verified.
10. The apparatus of claim 9, wherein the first information satisfies the following form:
Z1=Hash(a1*G1+a2*G2+……an*Gn)
wherein Z is1Is the first information, a1、a2……、anRandom blind keys, G, corresponding to n pieces of information to be verified respectively1、G2……、GnRespectively corresponding to n pieces of information to be verified, wherein n is an integer greater than or equal to 2.
11. The apparatus according to claim 10, wherein the second information corresponding to any information to be verified satisfies the following form:
Z2i=ai-Z1*ri
wherein Z is2iIs the second information corresponding to the ith information to be verified, aiIs a random blind key r corresponding to the ith information to be verifiediAnd i is the ith information to be verified, and is an integer which is greater than 0 and less than n.
12. An apparatus for authentication based on a blockchain system, the apparatus comprising:
the receiving and sending module is used for receiving the data to be verified sent by the node to be verified; the data to be verified is obtained by encrypting at least two pieces of information to be verified by the node to be verified by using an elliptic curve encryption algorithm, and the data to be verified comprises first information and at least two pieces of second information; the at least two pieces of second information correspond to the at least two pieces of information to be verified one by one;
the processing module is used for calculating to obtain third information by using a decryption algorithm corresponding to the elliptic curve encryption algorithm according to the first information and the at least two pieces of second information in the data to be verified;
and the verification module is used for determining whether the data to be verified passes the verification or not according to the third information and the first information.
13. The apparatus of claim 12, wherein the processing module is specifically configured to:
acquiring an elliptic curve point and a verification point corresponding to each piece of information to be verified; the elliptic curve points and the verification points corresponding to the information to be verified are obtained by pre-negotiating the nodes to be verified and the verification nodes;
and obtaining the third information according to the first information, the second information corresponding to each piece of information to be verified, and the elliptic curve points and verification points corresponding to each piece of information to be verified.
14. The apparatus of claim 13, wherein the third information satisfies the following form:
Z3=Hash(Z21*G1+Z22*G2+……+Z2n*Gn+Z1*Y)
wherein Z is3As third information, Z21、Z22、……、Z2nSecond information G corresponding to the n pieces of information to be verified respectively1、G2、……、GnRespectively corresponding to n information to be verified, Z1Is the first information and Y is the verification point.
15. A computing device comprising at least one processor and at least one memory, wherein the memory stores a computer program that, when executed by the processor, causes the processor to perform the method of any of claims 1 to 4 or 5 to 7.
16. A computer-readable storage medium storing a computer program executable by a computing device, the program, when run on the computing device, causing the computing device to perform the method of any of claims 1 to 4 or 5 to 7.
CN201911235411.8A 2019-12-05 2019-12-05 Verification method and device based on blockchain system Active CN111080296B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911235411.8A CN111080296B (en) 2019-12-05 2019-12-05 Verification method and device based on blockchain system
PCT/CN2020/120923 WO2021109718A1 (en) 2019-12-05 2020-10-14 Verification method and apparatus based on block chain system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911235411.8A CN111080296B (en) 2019-12-05 2019-12-05 Verification method and device based on blockchain system

Publications (2)

Publication Number Publication Date
CN111080296A true CN111080296A (en) 2020-04-28
CN111080296B CN111080296B (en) 2023-12-01

Family

ID=70313139

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911235411.8A Active CN111080296B (en) 2019-12-05 2019-12-05 Verification method and device based on blockchain system

Country Status (2)

Country Link
CN (1) CN111080296B (en)
WO (1) WO2021109718A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021109718A1 (en) * 2019-12-05 2021-06-10 深圳前海微众银行股份有限公司 Verification method and apparatus based on block chain system
CN113971597A (en) * 2021-09-30 2022-01-25 西安电子科技大学 Shared charging pile transaction system, method, equipment and terminal

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113656842B (en) * 2021-08-10 2024-02-02 支付宝(杭州)信息技术有限公司 Data verification method, device and equipment
CN113904869B (en) * 2021-11-10 2024-04-19 深圳前海微众银行股份有限公司 Method for detecting malicious nodes in blockchain and blockchain

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10116443B1 (en) * 2018-02-02 2018-10-30 ISARA Corporation Pairing verification in supersingular isogeny-based cryptographic protocols
CN109361508A (en) * 2018-10-11 2019-02-19 深圳市捷恩斯威科技有限公司 Data transmission method, electronic equipment and computer readable storage medium
CN110188550A (en) * 2019-05-17 2019-08-30 深圳前海微众银行股份有限公司 A kind of data verification method and device of block chain
CN110336673A (en) * 2019-06-03 2019-10-15 江苏科技大学 A kind of block chain design method based on secret protection

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106251144A (en) * 2015-06-05 2016-12-21 地气股份有限公司 Electronic money management method and electronic money node apparatus
CN107196900B (en) * 2017-03-24 2020-04-24 创新先进技术有限公司 Consensus checking method and device
CN108737106B (en) * 2018-05-09 2021-06-01 深圳壹账通智能科技有限公司 User authentication method and device on block chain system, terminal equipment and storage medium
CN110059494B (en) * 2019-04-17 2020-11-03 深圳启元信息服务有限公司 Privacy protection method for block chain transaction data and block chain system
CN110222538B (en) * 2019-06-17 2020-09-08 北京瑞策科技有限公司 Verification method and device related to block chain
CN111080296B (en) * 2019-12-05 2023-12-01 深圳前海微众银行股份有限公司 Verification method and device based on blockchain system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10116443B1 (en) * 2018-02-02 2018-10-30 ISARA Corporation Pairing verification in supersingular isogeny-based cryptographic protocols
CN109361508A (en) * 2018-10-11 2019-02-19 深圳市捷恩斯威科技有限公司 Data transmission method, electronic equipment and computer readable storage medium
CN110188550A (en) * 2019-05-17 2019-08-30 深圳前海微众银行股份有限公司 A kind of data verification method and device of block chain
CN110336673A (en) * 2019-06-03 2019-10-15 江苏科技大学 A kind of block chain design method based on secret protection

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021109718A1 (en) * 2019-12-05 2021-06-10 深圳前海微众银行股份有限公司 Verification method and apparatus based on block chain system
CN113971597A (en) * 2021-09-30 2022-01-25 西安电子科技大学 Shared charging pile transaction system, method, equipment and terminal

Also Published As

Publication number Publication date
WO2021109718A1 (en) 2021-06-10
CN111080296B (en) 2023-12-01

Similar Documents

Publication Publication Date Title
US11842317B2 (en) Blockchain-based authentication and authorization
CN111080296B (en) Verification method and device based on blockchain system
CN111066285A (en) Method for recovering public key based on SM2 signature
CN109510818A (en) Data transmission system, method, apparatus, equipment and the storage medium of block chain
US20160269397A1 (en) Reissue of cryptographic credentials
JP7407925B2 (en) Flowline friendly signature and signature verification methods, equipment and storage media
CN113536379B (en) Private data query method and device and electronic equipment
CN110336779B (en) Block chain construction method and device and electronic equipment
CN109861956B (en) Data verification system, method, device and equipment based on state channel
EP4035306A1 (en) Lattice based signatures with uniform secrets
CN110545169B (en) Block chain method and system based on asymmetric key pool and implicit certificate
CN111325535A (en) Block chain private key management method, system and storage medium based on elliptic curve migration
WO2022267314A1 (en) Data processing method and apparatus based on smart contract
JP2022554202A (en) INTERACTIVE AGGREGATE SIGNATURE METHOD, EQUIPMENT AND STORAGE MEDIUM
WO2014030706A1 (en) Encrypted database system, client device and server, method and program for adding encrypted data
Zhao et al. Fuzzy identity-based dynamic auditing of big data on cloud storage
CN113988831A (en) Transfer method based on alliance chain
Yang et al. Practical escrow protocol for bitcoin
Dolev et al. SodsBC: a post-quantum by design asynchronous blockchain framework
CN111769945B (en) Auction processing method based on block chain and block chain link point
CN112184245A (en) Cross-block-chain transaction identity confirmation method and device
CN111404685A (en) Attribute-based signature method and system
WO2023070831A1 (en) Block confirmation method and device
CN117795901A (en) Generating digital signature shares
CN111311210B (en) Asymmetric encryption digital currency transaction data processing method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant