[go: up one dir, main page]

CN111416703A - Block chain crossing type and jumping type rapid synchronization method and system - Google Patents

Block chain crossing type and jumping type rapid synchronization method and system Download PDF

Info

Publication number
CN111416703A
CN111416703A CN202010181805.6A CN202010181805A CN111416703A CN 111416703 A CN111416703 A CN 111416703A CN 202010181805 A CN202010181805 A CN 202010181805A CN 111416703 A CN111416703 A CN 111416703A
Authority
CN
China
Prior art keywords
block
voting
round
authentication
consensus
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.)
Pending
Application number
CN202010181805.6A
Other languages
Chinese (zh)
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.)
Beijing Chain Technology Co ltd
Original Assignee
Beijing Chain Technology 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 Beijing Chain Technology Co ltd filed Critical Beijing Chain Technology Co ltd
Priority to CN202010181805.6A priority Critical patent/CN111416703A/en
Publication of CN111416703A publication Critical patent/CN111416703A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Power Engineering (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention relates to a block chain crossing type and jumping type rapid synchronization method and a system, wherein the method comprises the following steps: in the block generation process, performing consensus voting on an r-th block based on a mortgage in the r-b-th block and a seed in the r-c-th block, wherein r is a block number, c is a jump step length c-8, b-k-c, and k is more than or equal to 1; and if the block serial number is a multiple of sigma, performing additional authentication voting on the nth block according to the mortgage on the (n-2) × sigma block and the seed on the (n-1) × sigma block, wherein sigma is 32768, and n is more than or equal to 2. The new node cross-over verifies the correctness of the authentication voting of the nth block and quickly synchronizes the 1 st to the nth blocks; and for the latest block r with the sequence number larger than n sigma, checking the correctness of the consensus vote of the r block in a jumping mode and quickly synchronizing the n sigma to the r block. The invention can ensure that the node newly added into the system can verify the validity of the block with the specific sequence number by generating the leap type consensus vote and the leap type authentication vote on the block, thereby realizing the quick synchronization of the block chain data.

Description

Block chain crossing type and jumping type rapid synchronization method and system
Technical Field
The invention relates to the technical field of information security, in particular to a block chain crossing type and jumping type rapid synchronization method and system.
Background
The block chain system supports the application of the internet of things such as centralized currency payment, intelligent contracts and electronic evidence storage, and the system data is larger and larger. By 2020, Biyon System data has exceeded 200G and EtherFang System data has exceeded 1T. Thus, if a new node joins the bitcoin/Etherhouse system, 200G/1T transaction order data needs to be read and verified. This process makes the joining of new nodes very slow.
Due to the fact that the bit currency and the EtherFang use a workload certification (PoW) consensus mechanism, the validity of the block header is verified without depending on data beyond the block header, and therefore verification is relatively quick. Therefore, when a bitcoin and an EtherFang system are newly added, a new node can start from a foundational block to synchronize a head chain formed by block heads and then construct an authoritative hash tree chain locally. When the new node is synchronized to a certain height, the comparison with the check point is carried out, and whether the node is an authority chain can be determined. However, the drawback is that the node needs to have enough blocks to be confirmed before constructing the authoritative hash tree chain (currently, ethernet uses 2048 as confirmation number) due to the easy forking property of the POW consensus mechanism. The next 2048 blocks up to date still need to be verified and synchronized step by step. The synchronization process is still relatively slow.
In addition, the block output rate of the system based on Proof of rights (PoS) and the byzantine fault-tolerant consensus mechanism derived from the same is higher, and the data volume of the system is increased sharply, so that the difficulty of adding a new node into the system is increased sharply. When a new node needs to synchronize to the latest block, it needs to verify whether the block header is valid. Therefore, the new node needs to verify whether the voter's vote is legal, and the seed provided by the previous block and the mortgage on the previous block are used for verifying the vote. Therefore, the new node needs to further verify the validity of the preamble block. However, since the amount of the mortgage information data is large, it is impossible to directly store the mortgage information data in the block header. In addition, the amount of voting information data is also large. Thus, if the block header is validated block by block starting with the created block, a large amount of data synchronization, caching and storage will be involved. This puts a great strain on resources such as bandwidth and memory of the new node. For example, the block-out rate of the byzantine fault-tolerant consensus algorithms such as algoranad, terminermint, and HotStaff is within 1 minute, so that the system not only has huge block data, but also needs to verify the validity of the mortgage and the extraction seed before the block head to complete the validity verification of the target block head. Therefore, in the byzantine fault-tolerant consensus mechanism, it is very difficult for the new node to perform block chain data synchronization.
The invention provides a block chain crossing type and jumping type rapid synchronization method, which aims at the problem of slow data synchronization of new nodes of a Byzantine fault-tolerant consensus mechanism. In the block generation process, the blocks are firstly subjected to consensus voting in a spanning mode and a jumping mode and stored in the corresponding blocks. Then, in the process of block chain data synchronization, the new node firstly synchronizes across the block with step size σ in a spanning manner, wherein n ≧ 2, σ is the spanning step size, is a large value and is a multiple of c, for example, σ ═ 32768. Then, for the remaining blocks, the new node synchronizes the blocks with a jump step size of c, where c is 8. Thus, blocks of a particular sequence number are cross-verified and skip-verified, thereby increasing the speed of block chain synchronization without requiring step-by-step verification resulting in slowness.
Disclosure of Invention
The invention aims to provide a block chain crossing type and jumping type rapid synchronization method and a system, which verify blocks with specific sequence numbers in a crossing type and jumping type mode, thereby improving the synchronization speed of the block chain and avoiding the slowness caused by gradual verification.
In order to achieve the purpose, the invention provides the following scheme:
a block chain spanning and hopping fast synchronization method, the synchronization method comprising:
generating respective public keys and private keys at the chain link points of the blocks;
in the block generation process, performing consensus voting on an r block based on the mortgage in the r-b block and the seed in the r-c block; wherein r is a block number, c is a jump step length c-8, b-k-c, and k is more than or equal to 1;
if the block sequence number is a multiple of sigma, performing additional authentication voting on the nth block according to the mortgage on the (n-2) th block and the seed on the (n-1) th block; where n ≧ 2 or n ═ 1, σ is the step size spanned, is a large value and is a multiple of c, e.g., σ ═ 32768, in particular, when n ═ 1, then the σ -th block is subjected to an additional authentication vote using the mortgage and seed of the 0-th block, i.e., the created block;
when a newly added node synchronizes data, verifying the correctness of the nth block authentication voting in a spanning mode and quickly synchronizing the data of the 1 st to nth blocks based on the hash value in the block, particularly, when n is 1, performing voting verification on the σ th block by using the mortgage and the seed of the 0 th block, namely the creation block;
and for the latest block r with the sequence number larger than n sigma, wherein r is larger than or equal to n sigma, the correctness of the consensus vote of the r-th block is verified in a jumping mode, and the data of the n sigma-th to the r-th blocks are quickly synchronized based on the hash value in the block.
Optionally, in the block generating process, performing consensus voting on the r-th block based on the mortgage in the r-b-th block and the seed in the r-c-th block specifically includes:
any node i with its private key SKiMortgage in the r-b block
Figure BDA0002412799460000031
Seed in the r-c blockr-cFor inputting, the signature algorithm Sig is operated, and the first round consensus vote of the r block is output
Figure BDA0002412799460000032
Figure BDA0002412799460000033
Arbitrary node j with public key PKiMortgage in the r-b block
Figure BDA0002412799460000034
Seed in the r-c blockr-cWith the first round of consensus voting
Figure BDA0002412799460000035
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000036
If a Valid is output, the consensus vote is stored
Figure BDA0002412799460000037
If the first round of consensus voting meets 2/3,
Figure BDA0002412799460000038
a second round of consensus voting is performed in the same manner
Figure BDA0002412799460000039
If the first round consensus vote
Figure BDA00024127994600000310
And a second round of consensus voting
Figure BDA00024127994600000311
If the ratios all satisfy 2/3, then a consensus is reached for the block.
Optionally, if the block number is a multiple of σ, performing an additional authentication vote on the nth block σ based on the mortgage on the (n-2) × σ th block and the seed on the (n-1) × σ th block, and specifically, when n is 1, performing an additional authentication vote on the σ th block using the mortgage and the seed of the 0 th block, i.e., the creation block, specifically includes:
any node k uses its private key SKkMortgage in the (n-2) 'sigma' th block
Figure BDA00024127994600000312
Seed in (n-1) 'sigma' block(n-1)*σFor inputting, the signature algorithm Sig is operated, and the first round authentication voting of the nth block is output
Figure BDA00024127994600000313
Figure BDA0002412799460000041
Arbitrary node l with public key PKkMortgage in the (n-2) 'sigma' th block
Figure BDA0002412799460000042
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure BDA0002412799460000043
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000044
If a Valid is output, the first round of authentication votes are stored
Figure BDA0002412799460000045
If the first round of authentication votes share is satisfied 2/3,
Figure BDA0002412799460000046
a second round of authentication votes is made in the same manner
Figure BDA0002412799460000047
If the first round authenticates the vote
Figure BDA0002412799460000048
And second round authentication voting
Figure BDA0002412799460000049
If the ratios all satisfy 2/3, then the authentication is completed for the block and the first round of authentication is voted
Figure BDA00024127994600000410
And second round authentication voting
Figure BDA00024127994600000411
And storing the n-sigma blocks.
Optionally, when the newly added node performs data synchronization, the correctness of the n × σ block authentication vote is verified in a cross-over manner, and the data of the 1 st to nth blocks are quickly synchronized based on the hash value in the block, and particularly, when n is 1, the voting verification is performed on the σ block by using the mortgage and the seed of the 0 th block, i.e., the creation block, specifically, the method includes:
the newly added node uses the public key PK in the nth blockkMortgage in the (n-2) 'sigma' th block
Figure BDA00024127994600000412
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure BDA00024127994600000413
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA00024127994600000414
If a Valid is output and the first round authentication vote is taken to satisfy 2/3, then the second round authentication vote is voted in the same manner
Figure BDA00024127994600000415
Carrying out validity verification;
if both authentication votes verify to be valid, the nth block is correct;
and the newly added node verifies whether the hash values from the 1 st block to the (n-1) th block are correct or not according to the hash values in the nth block, if not, the newly added node rejects, otherwise, the newly added node reads the data from the 1 st block to the (n-1) th block and stores the data into a local system, and the cross synchronization of the data of the block chain is realized.
Optionally, the skip-verifying the correctness of the consensus vote of the r-th block and rapidly synchronizing the data of the n-th block to the r-th block based on the hash value in the block for the latest block r with the sequence number greater than n- σ, where r is greater than or equal to n- σ, specifically includes:
newly joined node with public key PKiMortgage in the r-b block
Figure BDA0002412799460000051
Seed in the r-c blockr-cWith the first round of consensus voting
Figure BDA0002412799460000054
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000052
If a Valid is output and the first round consensus vote is in proportion 2/3, then the second round consensus vote is voted in the same way
Figure BDA0002412799460000053
Carrying out validity verification;
if two rounds of consensus voting are verified to be valid, the r-th block is correct;
and the newly added node verifies whether the hash values from the nth block to the r block are correct or not according to the hash value in the r block, if not, the newly added node rejects, otherwise, the newly added node reads the data from the nth block to the r block and stores the data into a local system, and the skip synchronization of the block chain data is realized.
The present invention further provides a block chain striding type and jumping type fast synchronization system, the synchronization system comprising:
the key generation module is used for generating respective public keys and private keys at the block chain link points;
the leap consensus voting module is used for carrying out consensus voting on the r block based on the mortgage in the r-b block and the seed in the r-c block in the block generation process; wherein r is a block number, c is a jump step length c-8, b-k-c, and k is more than or equal to 1;
a cross-over authentication voting module, configured to perform an additional authentication vote on an nth block based on the mortgage on an (n-2) th block and the seed on the (n-1) th block when the block sequence number is a multiple of σ; where n ≧ 2, σ is the step size of spanning, is a large value and is a multiple of c, e.g., σ 32768, and in particular, when n is 1, the σ -th block is subjected to an additional authentication vote using the mortgage and seed of the 0-th block, i.e., the created block;
the cross-over type voting verification module is used for cross-over type verifying the correctness of the nth block authentication voting and quickly synchronizing the 1 st to nth block data based on the hash value in the block when a newly added node synchronizes data, and particularly, when n is 1, the sigma-th block is voted and verified by using the mortgage and the seed of the 0 th block, namely the creation block;
and the skip voting verification module is used for verifying the correctness of the consensus voting of the r-th block in a skip mode and rapidly synchronizing the data of the n-th block from the r-th block to the r-th block based on the hash value in the block for the latest block r with the sequence number larger than n-sigma, wherein r is larger than or equal to n-sigma.
Optionally, the leap consensus voting module includes:
any node i with its private key SKiMortgage in the r-b block
Figure BDA0002412799460000061
Seed in the r-c blockr-cFor inputting, the signature algorithm Sig is operated, and the first round consensus vote of the r block is output
Figure BDA0002412799460000062
Figure BDA0002412799460000063
Arbitrary node j with public key PKiMortgage in the r-b block
Figure BDA0002412799460000064
Seed in the r-c blockr-cWith the first round of consensus voting
Figure BDA0002412799460000065
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000066
If a Valid is output, the consensus vote is stored
Figure BDA0002412799460000067
If the first round of consensus voting meets 2/3,
Figure BDA0002412799460000068
a second round of consensus voting is performed in the same manner
Figure BDA0002412799460000069
If the first round consensus vote
Figure BDA00024127994600000610
And a second round of consensus voting
Figure BDA00024127994600000611
If the ratios all satisfy 2/3, then a consensus is reached for the block.
Optionally, the spanning authentication voting module specifically includes: any node k uses its private key SKk(n-2). multidot.sigmaMortgage in a block
Figure BDA00024127994600000612
Seed in (n-1) 'sigma' block(n-1)*σFor inputting, the signature algorithm Sig is operated, and the first round authentication voting of the nth block is output
Figure BDA00024127994600000613
Figure BDA00024127994600000614
Arbitrary node l with public key PKkMortgage in the (n-2) 'sigma' th block
Figure BDA00024127994600000615
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure BDA00024127994600000616
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA00024127994600000617
If a Valid is output, the first round of authentication votes are stored
Figure BDA00024127994600000618
If the first round of authentication votes share is satisfied 2/3,
Figure BDA0002412799460000071
a second round of authentication votes is made in the same manner
Figure BDA0002412799460000072
If the first round authenticates the vote
Figure BDA0002412799460000073
And second round authentication voting
Figure BDA0002412799460000074
If the ratios all satisfy 2/3, then the authentication is completed for the block and the first round of authentication is voted
Figure BDA0002412799460000075
And second round authentication voting
Figure BDA0002412799460000076
And storing the n-sigma blocks.
Optionally, the spanning voting verification module specifically includes: the newly added node uses the public key PK in the nth blockkMortgage in the (n-2) 'sigma' th block
Figure BDA0002412799460000077
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure BDA0002412799460000078
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000079
If a Valid is output and the first round authentication vote is taken to satisfy 2/3, then the second round authentication vote is voted in the same manner
Figure BDA00024127994600000710
Carrying out validity verification;
if both authentication votes verify to be valid, the nth block is correct;
and the newly added node verifies whether the hash values from the 1 st block to the (n-1) th block are correct or not according to the hash values in the nth block, if not, the newly added node rejects, otherwise, the newly added node reads the data from the 1 st block to the (n-1) th block and stores the data into a local system, and the cross synchronization of the data of the block chain is realized.
Optionally, the skip voting verification module specifically includes: newly joined node with public key PKiMortgage in the r-b block
Figure BDA00024127994600000711
Seed in the r-c blockr-cWith the first round of consensus voting
Figure BDA00024127994600000712
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA00024127994600000713
If a Valid is output and the first round consensus vote is in proportion 2/3, then the second round consensus vote is voted in the same way
Figure BDA00024127994600000714
Carrying out validity verification;
if two rounds of consensus voting are verified to be valid, the r-th block is correct;
and the newly added node verifies whether the hash values from the nth block to the r block are correct or not according to the hash value in the r block, if not, the newly added node rejects, otherwise, the newly added node reads the data from the nth block to the r block and stores the data into a local system, and the skip synchronization of the block chain data is realized.
According to the specific embodiment provided by the invention, the invention discloses the following technical effects:
in the method and the system, in the block generation process, consensus voting is carried out on the r-th block based on the mortgage in the r-b-th block and the seed in the r-c-th block, wherein r is a block number, c is a jump step length c-8, b-k-c, and k is more than or equal to 1. And if the block serial number is a multiple of sigma, performing additional authentication voting on the nth block according to the mortgage on the (n-2) × sigma block and the seed on the (n-1) × sigma block, wherein sigma is 32768, and n is more than or equal to 2. The new node cross-over verifies the correctness of the authentication vote of the nth block and quickly synchronizes the 1 st to the nth block. For the latest block r with the serial number larger than n sigma, the correctness of the consensus voting of the r block is verified in a jumping mode, and the nth block r to the r block are synchronized rapidly.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings needed to be used in the embodiments will be briefly described 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 without inventive exercise.
FIG. 1 is a flow chart of a block chain crossing and jumping fast synchronization method according to an embodiment of the present invention;
FIG. 2 is a block chain striding type and jumping type fast synchronization system structure diagram according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and 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 invention aims to provide a block chain crossing type and jumping type rapid synchronization method and a system, which verify blocks with specific sequence numbers in a crossing type and jumping type mode, thereby improving the synchronization speed of the block chain and avoiding the slowness caused by gradual verification.
In order to make the aforementioned objects, features and advantages of the present invention comprehensible, embodiments accompanied with figures are described in further detail below.
Fig. 1 is a flowchart of a block chain crossing and jumping fast synchronization method according to an embodiment of the present invention, as shown in fig. 1, the method includes:
example 1
Step 101 (key generation): respective public and private keys are generated at block chain nodes.
Private key SK of node iiThe public key is PKi(ii) a Private key SK of node jjThe public key is PKj(ii) a Private key SK of node kkThe public key is PKk
Step 102 (leap consensus voting): in the block generation process, performing consensus voting on an r block based on the mortgage in the r-b block and the seed in the r-c block; wherein r is a block number, c is a jump step length c-8, b-k-c, and k is more than or equal to 1.
The method specifically comprises the following steps:
any node i with its private key SKiMortgage in the r-b block
Figure BDA0002412799460000091
Seed in the r-c blockr-cFor inputting, the signature algorithm Sig is operated, and the first round consensus vote of the r block is output
Figure BDA0002412799460000092
Figure BDA0002412799460000093
Arbitrary node j with public key PKiMortgage in the r-b block
Figure BDA0002412799460000094
Seed in the r-c blockr-cWith the first round of consensus voting
Figure BDA0002412799460000095
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000096
If a Valid is output, the consensus vote is stored
Figure BDA0002412799460000097
If the first round of consensus voting meets 2/3,
Figure BDA0002412799460000098
a second round of consensus voting is performed in the same manner
Figure BDA0002412799460000099
If the first round consensus vote
Figure BDA00024127994600000910
And a second round of consensus voting
Figure BDA00024127994600000911
If the ratios all satisfy 2/3, then a consensus is reached for the block.
Step 103 (cross authentication vote): if the block sequence number is a multiple of sigma, performing additional authentication voting on the nth block according to the mortgage on the (n-2) th block and the seed on the (n-1) th block; where n ≧ 2 or n ═ 1, σ is the stride length, is a large value and is a multiple of c, e.g., σ ═ 32768, and in particular, when n ═ 1, the σ -th block is subjected to an additional authentication vote using the mortgage and seed of the 0-th block, i.e., the created block.
The method specifically comprises the following steps:
any node k uses its private key SKkMortgage in the (n-2) 'sigma' th block
Figure BDA0002412799460000101
Seed in (n-1) 'sigma' block(n-1)*σFor inputting, running signature algorithm Sig, outputting first round authentication of nth blockTicket
Figure BDA0002412799460000102
Figure BDA0002412799460000103
Arbitrary node l with public key PKkMortgage in the (n-2) 'sigma' th block
Figure BDA0002412799460000104
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure BDA0002412799460000105
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000106
If a Valid is output, the first round of authentication votes are stored
Figure BDA0002412799460000107
If the first round of authentication votes share is satisfied 2/3,
Figure BDA0002412799460000108
a second round of authentication votes is made in the same manner
Figure BDA0002412799460000109
If the first round authenticates the vote
Figure BDA00024127994600001010
And second round authentication voting
Figure BDA00024127994600001011
If the ratios all satisfy 2/3, then the authentication is completed for the block and the first round of authentication is voted
Figure BDA00024127994600001012
Second round authentication voting
Figure BDA00024127994600001013
And the hash value of the (n-1) × σ th block is stored into the nth × σ th block.
Step 104 (cross-vote verification): when a newly added node synchronizes data, the correctness of the authentication votes of the nth block is verified in a spanning mode, and the data of the 1 st to the nth blocks are quickly synchronized based on the hash value in the block. Specifically, when n is 1, the σ -th block is voted for verification using the mortgage and seed of the 0-th block, i.e., the created block.
The method specifically comprises the following steps:
the newly added node uses the public key PK in the nth blockkMortgage in the (n-2) 'sigma' th block
Figure BDA00024127994600001014
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure BDA00024127994600001015
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA00024127994600001016
If a Valid is output and the first round authentication vote is taken to satisfy 2/3, then the second round authentication vote is voted in the same manner
Figure BDA0002412799460000111
Carrying out validity verification;
if both authentication votes verify to be valid, the nth block is correct;
and the newly added node verifies whether the hash values from the 1 st block to the (n-1) th block are correct or not according to the hash values in the nth block, if not, the newly added node rejects, otherwise, the newly added node reads the data from the 1 st block to the (n-1) th block and stores the data into a local system, and the cross synchronization of the data of the block chain is realized.
Step 105 (jump voting authentication): and for the latest block r with the sequence number larger than n sigma, wherein r is larger than or equal to n sigma, the correctness of the consensus vote of the r-th block is verified in a jumping mode, and the data of the n sigma-th to the r-th blocks are quickly synchronized based on the hash value in the block.
The method specifically comprises the following steps:
newly joined node with public key PKiMortgage in the r-b block
Figure BDA0002412799460000112
Seed in the r-c blockr-cWith the first round of consensus voting
Figure BDA0002412799460000113
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000114
If a Valid is output and the first round consensus vote is in proportion 2/3, then the second round consensus vote is voted in the same way
Figure BDA0002412799460000115
Carrying out validity verification;
if two rounds of consensus voting are verified to be valid, the r-th block is correct;
and the newly added node verifies whether the hash values from the nth block to the r block are correct or not according to the hash value in the r block, if not, the newly added node rejects, otherwise, the newly added node reads the data from the nth block to the r block and stores the data into a local system, and the skip synchronization of the block chain data is realized.
Example 2
And (3) key generation: let g1Is a group G1G is a generator of2Is a group G2The generator of (1). (G)1,G2) Is a co-GDH group pair, and | G1|=|G2P. Global hash function H: {0,1}*→G1. Node i randomly selects a group
Figure BDA0002412799460000116
Element x in (1)iCalculating
Figure BDA0002412799460000117
The private key SK of node ii=xiThe public key is PKi=vi. Similarly, the private key SK of node jj=xjThe public key is PKj=vj(ii) a Private key SK of node kk=xkThe public key is PKk=vk
Leap consensus voting: in the block generation process, the r-th block is subjected to consensus voting based on the mortgage in the r-b-th block and the seed in the r-c-th block, wherein r is a block number, c is a jump step length c-8, b-k-c, and k is larger than or equal to 1.
The method specifically comprises the following steps:
any node i with its private key SKiMortgage in the r-b block
Figure BDA0002412799460000121
Seed in the r-c blockr-cFor input, the B L S signature algorithm is operated, and the first round consensus voting of the r-th block is output
Figure BDA0002412799460000122
Figure BDA0002412799460000123
Arbitrary node j with public key PKiMortgage in the r-b block
Figure BDA0002412799460000124
Seed in the r-c blockr-cWith the first round of consensus voting
Figure BDA0002412799460000125
For inputting, running B L S verification algorithm, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000126
If a Valid is output, the consensus vote is stored
Figure BDA0002412799460000127
If the first round of consensus voting meets 2/3,
Figure BDA0002412799460000128
a second round of consensus voting is performed in the same manner
Figure BDA0002412799460000129
If the first round consensus vote
Figure BDA00024127994600001210
And a second round of consensus voting
Figure BDA00024127994600001211
If the ratios all satisfy 2/3, then a consensus is reached for the block.
Cross-authentication voting: if the block number is a multiple of σ, then an additional authentication vote is performed on the nth block σ based on the mortgage on the (n-2) × σ th block and the seed on the (n-1) × σ th block, where n is greater than or equal to 2 or n is 1, σ is the step size, is a larger value and is a multiple of c, e.g., σ is 32768, and particularly, when n is 1, the additional authentication is performed on the σ th block using the mortgage and seed of the 0 th block, i.e., the creation block.
The method specifically comprises the following steps:
any node k uses its private key SKkMortgage in the (n-2) 'sigma' th block
Figure BDA00024127994600001212
In the (n-1) 'sigma' blocksSeed of(n-1)*σFor input, the B L S signature algorithm is operated, and the first round authentication vote of the nth block is output
Figure BDA00024127994600001213
Figure BDA00024127994600001214
Arbitrary node l with public key PKkMortgage in the (n-2) 'sigma' th block
Figure BDA00024127994600001215
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure BDA00024127994600001216
For inputting, running B L S verification algorithm, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000131
If a Valid is output, the first round of authentication votes are stored
Figure BDA0002412799460000132
If the first round of authentication votes share is satisfied 2/3,
Figure BDA0002412799460000133
a second round of authentication votes is made in the same manner
Figure BDA0002412799460000134
If the first round authenticates the vote
Figure BDA0002412799460000135
And second round authentication voting
Figure BDA0002412799460000136
The ratios all satisfy 2/3, and the ratio,then the authentication is done for that block and the first round of authentication is voted for
Figure BDA0002412799460000137
Second round authentication voting
Figure BDA0002412799460000138
And the hash value of the (n-1) × σ th block is stored into the nth × σ th block.
Cross-type voting verification: when a newly added node synchronizes data, the correctness of the nth block authentication voting is verified in a cross mode, the data of the 1 st to nth blocks are synchronized rapidly based on the hash value in the block, and particularly, when n is 1, the voting and the seed of the 0 th block, namely the creation block, are used for verifying the voting of the σ th block.
The method specifically comprises the following steps:
the newly added node is based on the public key PK in the nth blockkMortgage in the (n-2) 'sigma' th block
Figure BDA0002412799460000139
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure BDA00024127994600001310
For inputting, running B L S verification algorithm, outputting validity judgment Valid/Invalid
Figure BDA00024127994600001311
If a Valid is output and the first round authentication vote is taken to satisfy 2/3, then the second round authentication vote is voted in the same manner
Figure BDA00024127994600001312
And carrying out validity verification. If both authentication votes verify valid, it indicates that the nth block is correct. Therefore, the newly added node verifies whether the hash values from the 1 st block to the (n-1) × σ th block are correct or not according to the hash values in the nth × σ block. If not, rejecting the data, otherwise reading the data of the 1 st block to the (n-1) × σ block and storing the data in the local system, and realizing the spanning synchronization of the data of the block chain.
And (3) jumping voting verification: and for the latest block r with the sequence number larger than n sigma, wherein r is larger than or equal to n sigma, the correctness of the consensus vote of the r-th block is verified in a jumping mode, and the data of the n sigma-th to the r-th blocks are quickly synchronized based on the hash value in the block.
The method specifically comprises the following steps:
the newly joined node is based on the public key PKiMortgage in the r-b block
Figure BDA0002412799460000141
Seed in the r-c blockr-cWith the first round of consensus voting
Figure BDA0002412799460000142
For inputting, running B L S verification algorithm, outputting validity judgment Valid/Invalid
Figure BDA0002412799460000143
If a Valid is output, if a Valid is output and the first round consensus voting ratio satisfies 2/3, then the second round consensus voting is done in the same way
Figure BDA0002412799460000144
And carrying out validity verification. If two rounds of consensus voting verify that they are valid, it indicates that the r-th block is correct. Therefore, the newly added node verifies whether the hash values from the nth block to the r block are correct according to the hash value in the r block. And if the data is incorrect, rejecting the data, otherwise, reading the data from the nth block to the r block and storing the data into a local system to realize the jump synchronization of the block chain data.
Specifically, the B L S signature algorithm is defined as follows:
(G1,G2) Is a co-GDH group pair, and | G1|=|G2P. Global hashingFunction H: {0,1}*→G1B L S signature includes 3 algorithms, key generation, signature and verification, respectively.
And (3) key generation: randomly selecting groups
Figure BDA0002412799460000145
Element x in (1), calculation
Figure BDA0002412799460000146
The public key belongs to group G2The private key is x.
Signature: given a private key x and a message M, calculate as follows
σ=H(M)x
The signature is sigma.
And (3) verification: given the public key v, the message M, and the signature σ, the following equation holds if:
e(H(M),v)=e(σ,g2)
the signature is valid and otherwise invalid.
Fig. 2 is a schematic structural diagram of a block chain crossing type and jumping type fast synchronization system according to an embodiment of the present invention, as shown in fig. 2, the system includes:
a key generation module 201, a leap consensus voting module 202, a leap authentication voting module 203, a leap voting verification module 204, and a leap voting verification module 205.
The key generation module 201 is configured to generate a public key and a private key at each block link point;
the leap consensus voting module 202 is configured to perform consensus voting on an r-th block based on a mortgage in the r-b-th block and a seed in the r-c-th block in the block generation process; wherein r is a block number, c is a jump step length c-8, b-k-c, and k is more than or equal to 1;
the cross-type authentication voting module 203 is configured to perform an additional authentication vote on the nth block by σ based on the mortgage on the (n-2) th block by σ and the seed on the (n-1) th block by σ when the block sequence number is a multiple of σ; where n ≧ 2 or n ═ 1, σ is the step size spanned, is a large value and is a multiple of c, e.g., σ ═ 32768, in particular, when n ═ 1, then the σ -th block is subjected to an additional authentication vote using the mortgage and seed of the 0-th block, i.e., the created block;
the cross-over voting verification module 204 is configured to, when a newly added node performs data synchronization, cross-over verify correctness of the nth block authentication vote and quickly synchronize the 1 st to nth block data based on hash values in the block, and in particular, when n is 1, perform voting verification on the σ th block using a mortgage and a seed of the 0 th block, i.e., the creation block;
the skip vote verification module 205 is configured to, for the latest chunk r with a sequence number greater than n × σ, where r is greater than or equal to n × σ, skip verify the correctness of the consensus vote of the r-th chunk and quickly synchronize the data of the n × σ -th to r-th chunks based on the hash value in the chunk.
The embodiments in the present description are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. For the system disclosed by the embodiment, the description is relatively simple because the system corresponds to the method disclosed by the embodiment, and the relevant points can be referred to the method part for description.
The principles and embodiments of the present invention have been described herein using specific examples, which are provided only to help understand the method and the core concept of the present invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, the specific embodiments and the application range may be changed. In view of the above, the present disclosure should not be construed as limiting the invention.

Claims (10)

1. A block chain spanning and hopping fast synchronization method, the synchronization method comprising:
generating respective public keys and private keys at the chain link points of the blocks;
in the block generation process, performing consensus voting on an r block based on the mortgage in the r-b block and the seed in the r-c block; wherein r is a block number, c is a jump step length c-8, b-k-c, and k is more than or equal to 1;
if the block sequence number is a multiple of sigma, performing additional authentication voting on the nth block according to the mortgage on the (n-2) th block and the seed on the (n-1) th block; when n is more than or equal to 2 or n is equal to 1, sigma is a spanning step length and is a multiple of c, and when n is equal to 1, the mortgage and the seed of the 0 th block are used for carrying out additional authentication voting on the sigma th block;
when a newly added node carries out data synchronization, verifying the correctness of the nth block authentication voting in a spanning mode, quickly synchronizing the data of the 1 st to the nth block based on the hash value in the block, and when n is 1, carrying out voting verification on the σ -th block by using the mortgage and the seed of the 0 th block;
and for the latest block r with the sequence number larger than n sigma, wherein r is larger than or equal to n sigma, the correctness of the consensus vote of the r-th block is verified in a jumping mode, and the data of the n sigma-th to the r-th blocks are quickly synchronized based on the hash value in the block.
2. The method of claim 1, wherein the consensus voting for the r-th block based on the mortgage in the r-b-th block and the seed in the r-c-th block during the block generation process specifically comprises:
any node i with its private key SKiMortgage in the r-b block
Figure FDA0002412799450000011
Seed in the r-c blockr-cFor inputting, the signature algorithm Sig is operated, and the first round consensus vote of the r block is output
Figure FDA0002412799450000012
Figure FDA0002412799450000013
Arbitrary node j with public key PKiMortgage in the r-b block
Figure FDA0002412799450000014
Seed in the r-c blockr-cWith the first round of consensus voting
Figure FDA0002412799450000017
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure FDA0002412799450000015
If a Valid is output, the consensus vote is stored
Figure FDA0002412799450000016
If the first round of consensus voting meets 2/3,
Figure FDA0002412799450000021
a second round of consensus voting is performed in the same manner
Figure FDA0002412799450000022
If the first round consensus vote
Figure FDA0002412799450000023
And a second round of consensus voting
Figure FDA0002412799450000024
If the ratios all satisfy 2/3, then a consensus is reached for the block.
3. The blockchain spanning and hopping fast synchronization method according to claim 1, wherein if the block number is a multiple of σ, the nth σ block is subjected to an additional authentication vote based on the mortgage on the (n-2) th σ block and the seed on the (n-1) th σ block; when n is greater than or equal to 2 or n is equal to 1, σ is a spanning step length and is a multiple of c, when n is equal to 1, the mortgage and the seed of the 0 th block are used, and the additional authentication voting for the σ th block specifically comprises the following steps:
any node k uses its private key SKkMortgage in the (n-2) 'sigma' th block
Figure FDA0002412799450000025
Seed in (n-1) 'sigma' block(n-1)*σFor inputting, the signature algorithm Sig is operated, and the first round authentication voting of the nth block is output
Figure FDA0002412799450000026
Figure FDA0002412799450000027
Arbitrary node l with public key PKkMortgage in the (n-2) 'sigma' th block
Figure FDA0002412799450000028
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure FDA0002412799450000029
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure FDA00024127994500000210
If a Valid is output, the first round of authentication votes are stored
Figure FDA00024127994500000211
If the first round of authentication votes share is satisfied 2/3,
Figure FDA00024127994500000212
a second round of authentication votes is made in the same manner
Figure FDA00024127994500000213
If the first round authenticates the vote
Figure FDA00024127994500000214
And second round authentication voting
Figure FDA00024127994500000215
If the ratios all satisfy 2/3, then the authentication is completed for the block and the first round of authentication is voted
Figure FDA00024127994500000216
And second round authentication voting
Figure FDA00024127994500000217
And storing the n-sigma blocks.
4. The method of claim 1, wherein the newly added node performs data synchronization by performing cross-validation on the nth block authentication vote and performing fast synchronization on the 1 st to nth block data based on the hash value in the block, and performing vote validation on the σ th block by using the mortgage and seed of the 0 th block when n is 1, specifically comprising:
the newly added node uses the public key PK in the nth blockkMortgage in the (n-2) 'sigma' th block
Figure FDA0002412799450000031
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure FDA0002412799450000032
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure FDA0002412799450000033
If a Valid is output and the first round authentication vote is taken to satisfy 2/3, then the second round authentication vote is voted in the same manner
Figure FDA0002412799450000034
Carrying out validity verification;
if both authentication votes verify to be valid, the nth block is correct;
and the newly added node verifies whether the hash values from the 1 st block to the (n-1) th block are correct or not according to the hash values in the nth block, if not, the newly added node rejects, otherwise, the newly added node reads the data from the 1 st block to the (n-1) th block and stores the data into a local system, and the cross synchronization of the data of the block chain is realized.
5. The method of claim 1, wherein for the latest chunk r with sequence number greater than n σ, where r ≧ n σ, the leap method for verifying correctness of the consensus vote of the r-th chunk and for fast synchronizing the data of the n σ to the r-th chunk based on the hash value in the chunk comprises:
newly joined node with public key PKiMortgage in the r-b block
Figure FDA0002412799450000035
Seed in the r-c blockr-cWith the first round of consensus voting
Figure FDA0002412799450000036
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure FDA0002412799450000037
If a Valid is output and the first round consensus vote occupation satisfies 2/3, then the same is done for the second roundConsensus voting
Figure FDA0002412799450000038
Carrying out validity verification;
if two rounds of consensus voting are verified to be valid, the r-th block is correct;
and the newly added node verifies whether the hash values from the nth block to the r block are correct or not according to the hash value in the r block, if not, the newly added node rejects, otherwise, the newly added node reads the data from the nth block to the r block and stores the data into a local system, and the skip synchronization of the block chain data is realized.
6. A block chain spanning and hopping fast synchronization system, the synchronization system comprising:
the key generation module is used for generating respective public keys and private keys at the block chain link points;
the leap consensus voting module is used for carrying out consensus voting on the r block based on the mortgage in the r-b block and the seed in the r-c block in the block generation process; wherein r is a block number, c is a jump step length c-8, b-k-c, and k is more than or equal to 1;
a cross-over authentication voting module, configured to perform an additional authentication vote on an nth block based on the mortgage on an (n-2) th block and the seed on the (n-1) th block when the block sequence number is a multiple of σ; when n is more than or equal to 2 or n is equal to 1, sigma is a spanning step length and is a multiple of c, and when n is equal to 1, the mortgage and the seed of the 0 th block are used for carrying out additional authentication voting on the sigma th block;
the cross-over voting verification module is used for cross-over verifying the correctness of the nth block authentication voting and quickly synchronizing the data of the 1 st to the nth block on the basis of the hash value in the block when a newly added node synchronizes the data, and when n is 1, the voting verification is carried out on the σ th block by using the mortgage and the seed of the 0 th block;
and the skip voting verification module is used for verifying the correctness of the consensus voting of the r-th block in a skip mode and rapidly synchronizing the data of the n-th block from the r-th block to the r-th block based on the hash value in the block for the latest block r with the sequence number larger than n-sigma, wherein r is larger than or equal to n-sigma.
7. The blockchain-spanning and leaping fast synchronization system according to claim 1, wherein the leaping consensus voting module comprises:
any node i with its private key SKiMortgage in the r-b block
Figure FDA0002412799450000041
Seed in the r-c blockr-cFor inputting, the signature algorithm Sig is operated, and the first round consensus vote of the r block is output
Figure FDA0002412799450000042
Figure FDA0002412799450000043
Arbitrary node j with public key PKiMortgage in the r-b block
Figure FDA0002412799450000044
Seed in the r-c blockr-cWith the first round of consensus voting
Figure FDA0002412799450000045
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure FDA0002412799450000046
If a Valid is output, the consensus vote is stored
Figure FDA0002412799450000047
If the first round of consensus voting meets 2/3,
Figure FDA0002412799450000051
a second round of consensus voting is performed in the same manner
Figure FDA0002412799450000052
If the first round consensus vote
Figure FDA0002412799450000053
And a second round of consensus voting
Figure FDA0002412799450000054
If the ratios all satisfy 2/3, then a consensus is reached for the block.
8. The blockchain spanning and hopping rapid synchronization system according to claim 1, wherein said spanning authentication voting module comprises: any node k uses its private key SKkMortgage in the (n-2) 'sigma' th block
Figure FDA0002412799450000055
Seed in (n-1) 'sigma' block(n-1)*σFor inputting, the signature algorithm Sig is operated, and the first round authentication voting of the nth block is output
Figure FDA0002412799450000056
Figure FDA0002412799450000057
Arbitrary node l with public key PKkMortgage in the (n-2) 'sigma' th block
Figure FDA0002412799450000058
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure FDA0002412799450000059
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure FDA00024127994500000510
If a Valid is output, the first round of authentication votes are stored
Figure FDA00024127994500000511
If the first round of authentication votes share is satisfied 2/3,
Figure FDA00024127994500000512
a second round of authentication votes is made in the same manner
Figure FDA00024127994500000513
If the first round authenticates the vote
Figure FDA00024127994500000514
And second round authentication voting
Figure FDA00024127994500000515
If the ratios all satisfy 2/3, then the authentication is completed for the block and the first round of authentication is voted
Figure FDA00024127994500000516
And second round authentication voting
Figure FDA00024127994500000517
And storing the n-sigma blocks.
9. The blockchain spanning and jumping rapid synchronization system of claim 1, wherein said spanning vote verification module further comprises: the newly added node uses the public key PK in the nth blockk(n-2). sigma.. sup.Mortgage in a block
Figure FDA00024127994500000518
Seed in (n-1) 'sigma' block(n-1)*σAnd first round authentication voting
Figure FDA00024127994500000519
For inputting, running verification algorithm Ver, outputting validity judgment Valid/Invalid
Figure FDA00024127994500000520
If a Valid is output and the first round authentication vote is taken to satisfy 2/3, then the second round authentication vote is voted in the same manner
Figure FDA0002412799450000061
Carrying out validity verification;
if both authentication votes verify to be valid, the nth block is correct;
and the newly added node verifies whether the hash values from the 1 st block to the (n-1) th block are correct or not according to the hash values in the nth block, if not, the newly added node rejects, otherwise, the newly added node reads the data from the 1 st block to the (n-1) th block and stores the data into a local system, and the cross synchronization of the data of the block chain is realized.
10. The blockchain-spanning and leap-type fast synchronization system of claim 1, wherein the leap voting verification module comprises: newly joined node with public key PKiMortgage in the r-b block
Figure FDA0002412799450000062
Seed in the r-c blockr-cWith the first round of consensus voting
Figure FDA0002412799450000063
In order to be an input, the user can select,operating verification algorithm Ver, and outputting validity judgment Valid/Invalid
Figure FDA0002412799450000064
If a Valid is output and the first round consensus vote is in proportion 2/3, then the second round consensus vote is voted in the same way
Figure FDA0002412799450000065
Carrying out validity verification;
if two rounds of consensus voting are verified to be valid, the r-th block is correct;
and the newly added node verifies whether the hash values from the nth block to the r block are correct or not according to the hash value in the r block, if not, the newly added node rejects, otherwise, the newly added node reads the data from the nth block to the r block and stores the data into a local system, and the skip synchronization of the block chain data is realized.
CN202010181805.6A 2020-03-16 2020-03-16 Block chain crossing type and jumping type rapid synchronization method and system Pending CN111416703A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010181805.6A CN111416703A (en) 2020-03-16 2020-03-16 Block chain crossing type and jumping type rapid synchronization method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010181805.6A CN111416703A (en) 2020-03-16 2020-03-16 Block chain crossing type and jumping type rapid synchronization method and system

Publications (1)

Publication Number Publication Date
CN111416703A true CN111416703A (en) 2020-07-14

Family

ID=71492954

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010181805.6A Pending CN111416703A (en) 2020-03-16 2020-03-16 Block chain crossing type and jumping type rapid synchronization method and system

Country Status (1)

Country Link
CN (1) CN111416703A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112633706A (en) * 2020-12-25 2021-04-09 中国科学院计算技术研究所 Internet of things terminal data processing method and system based on layered multi-chain
CN114553604A (en) * 2022-04-26 2022-05-27 南京邮电大学 Internet of things terminal node access control method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170048209A1 (en) * 2015-07-14 2017-02-16 Fmr Llc Crypto Key Recovery and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
CN107579848A (en) * 2017-08-30 2018-01-12 上海保险交易所股份有限公司 The method that common recognition node is dynamically changed in practical Byzantine failure tolerance common recognition mechanism
US20180204191A1 (en) * 2015-07-08 2018-07-19 Barclays Bank Plc Secure Digital Data Operations
US20190172026A1 (en) * 2017-12-02 2019-06-06 Alchemy Limited LLC Cross blockchain secure transactions
CN110445619A (en) * 2017-03-30 2019-11-12 腾讯科技(深圳)有限公司 Block catenary system, message treatment method and storage medium
CN110870254A (en) * 2017-06-01 2020-03-06 斯凯维公司D/B/A阿索尼 Distributed private subspace blockchain data structure with secure access restriction management

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180204191A1 (en) * 2015-07-08 2018-07-19 Barclays Bank Plc Secure Digital Data Operations
US20170048209A1 (en) * 2015-07-14 2017-02-16 Fmr Llc Crypto Key Recovery and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
CN110445619A (en) * 2017-03-30 2019-11-12 腾讯科技(深圳)有限公司 Block catenary system, message treatment method and storage medium
CN110870254A (en) * 2017-06-01 2020-03-06 斯凯维公司D/B/A阿索尼 Distributed private subspace blockchain data structure with secure access restriction management
CN107579848A (en) * 2017-08-30 2018-01-12 上海保险交易所股份有限公司 The method that common recognition node is dynamically changed in practical Byzantine failure tolerance common recognition mechanism
US20190172026A1 (en) * 2017-12-02 2019-06-06 Alchemy Limited LLC Cross blockchain secure transactions

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112633706A (en) * 2020-12-25 2021-04-09 中国科学院计算技术研究所 Internet of things terminal data processing method and system based on layered multi-chain
CN112633706B (en) * 2020-12-25 2024-05-17 中国科学院计算技术研究所 Data processing method and system for terminal of Internet of things based on layered multi-chain
CN114553604A (en) * 2022-04-26 2022-05-27 南京邮电大学 Internet of things terminal node access control method

Similar Documents

Publication Publication Date Title
US12038937B2 (en) Computer-implemented system and method for managing transactions over a blockchain network
CN107864198B (en) A kind of block chain common recognition method based on deep learning training mission
CN111090892B (en) Block chain consensus method and device based on VRF and threshold signature
CN114281888B (en) Block chain consensus method, device, equipment and storage medium
CN115152177B (en) System and method for providing specialized proof of confidential knowledge
CN111723406B (en) Block chain consensus algorithm and system
EP3685331A1 (en) Smart contract execution using distributed coordination
Guan et al. Fair outsourcing polynomial computation based on the blockchain
CN112541821A (en) Delegation rights and interests certification consensus algorithm with dynamic trust
Wang et al. Byzantine fault tolerant algorithm based on vote
CN117745284B (en) Block chain system and resource management method thereof
CN119444422B (en) Financial information management method and system based on blockchain technology
CN111416703A (en) Block chain crossing type and jumping type rapid synchronization method and system
CN118400095B (en) A consensus method and device for blockchain system
CN114117549A (en) Post-quantum multi-node threshold signature method and system
CN112613601A (en) Neural network model updating method, device and computer storage medium
CN117793126A (en) On-chain voting methods, devices, equipment and storage media based on blockchain
Ma et al. Ripple+: An improved scheme of ripple consensus protocol in deployability, liveness and timing assumption
JPWO2022037869A5 (en)
CN117218759B (en) Verifiable random number shaking method based on Merker tree and sequencing
Wang et al. Consensus algorithm based on verifiable randomness
CN117793125A (en) Blockchain system management methods and blockchain nodes
Çulha A random and scalable blockchain consensus mechanism
Lan et al. ERBFT: improved asynchronous BFT with erasure code and verifiable random function: Y. Lan et al.
CN117610087B (en) Block processing method and device, and electronic equipment

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201229

Address after: 100085 no.054, Room 201, north side, second floor, No.36 Haidian West Street, Haidian District, Beijing

Applicant after: Macy Technology (Beijing) Co.,Ltd.

Address before: 100085 Room 201, north side, 2nd floor, 36 Haidian West Street, Haidian District, Beijing

Applicant before: Beijing Chain Technology Co.,Ltd.

WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200714