CN113556238A - 区块验证方法 - Google Patents

区块验证方法 Download PDF

Info

Publication number
CN113556238A
CN113556238A CN202111104734.0A CN202111104734A CN113556238A CN 113556238 A CN113556238 A CN 113556238A CN 202111104734 A CN202111104734 A CN 202111104734A CN 113556238 A CN113556238 A CN 113556238A
Authority
CN
China
Prior art keywords
verified
block
target
transaction information
transaction
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
CN202111104734.0A
Other languages
English (en)
Other versions
CN113556238B (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.)
WeBank Co Ltd
Original Assignee
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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN202111104734.0A priority Critical patent/CN113556238B/zh
Publication of CN113556238A publication Critical patent/CN113556238A/zh
Priority to PCT/CN2021/140630 priority patent/WO2023045150A1/zh
Application granted granted Critical
Publication of CN113556238B publication Critical patent/CN113556238B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/3236Cryptographic 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 using cryptographic hash functions
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Economics (AREA)
  • Signal Processing (AREA)
  • Development Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种区块验证方法,该区块验证方法应用于区块链网络中的轻节点。首先,轻节点接收目标全节点发送的待验证区块并确定待验证区块是否满足预设共识机制的首要条件,若满足,轻节点判断待验证区块包括的所有待验证交易信息是否都符合目标条件,目标条件根据交易状态值获得,而交易状态值用于表征轻节点已接收到的交易信息。若轻节点确定所有待验证交易信息都符合目标条件,则确定待验证区块通过验证,从而轻节点基于交易状态值实现对待验证区块的区块验证,无需存储全量的交易信息,为区块链节点运行于轻量化终端设备提供了可能。

Description

区块验证方法
技术领域
本申请涉及金融科技(Fintech)技术领域,尤其涉及一种区块验证方法。
背景技术
随着计算机技术以及互联网技术的快速发展,金融科技(Fintech)作为金融与科技深度融合的产物,目前正成为金融行业创新发展的热点,例如,区块链技术在金融行业已被广泛使用。
区块链利用块链式数据结构验证与存储数据,并基于分布式节点共识机制生成和更新数据,还利用密码学的方式保证数据传输及访问的安全,以及利用由自动化脚本代码组成的智能合约进行编程及操作数据。因此,区块链提供了高度一致的分布式账本。其中,基于共识机制,任何参与节点独立修改自身账本都无法对整个分布式网络造成影响,这使得区块链具备不可篡改性。在共识机制的实现过程中,参与共识的节点需要进行区块验证,以当验证通过记录区块。
然而,在区块验证中,除过验证交易签名的正确性,还要确保交易有效性,即需要基于之前的区块(即交易)进行验证并实时更新默克尔树状态,可见,参与共识的节点需拥有完整路径上的所有交易信息才能完成区块验证。目前,参与共识的节点均为全节点,换言之,全节点上保存了区块链网络的全量数据。全节点一般为共识和挖矿节点。但在实际的区块链应用中,大众或者中小机构参与区块链网络的诉求也越来越强,但大众或者中小机构所涉及的例如智能终端、个人电脑以及传感器等轻量化终端设备,由于其存储开销有限而无法全量存储所有交易信息,进而无法对交易有效性进行验证来完成区块验证,从而导致轻量化终端设备无法参与区块链网络的正常运行。
发明内容
本申请提供一种区块验证方法,用于为轻量化终端设备提供一种无需存储全量交易信息也可进行的区块验证方法。
第一方面,本申请提供一种区块验证方法,应用于区块链网络中的轻节点;所述方法,包括:
接收目标全节点发送的待验证区块,并确定所述待验证区块是否满足预设共识机制的首要条件,所述目标全节点是在所述区块链网络的全节点中选举得到;
若是,判断所述待验证区块包括的所有待验证交易信息是否都符合目标条件,所述目标条件根据交易状态值获得,所述交易状态值用于表征所述轻节点已接收到的交易信息;
若确定所述所有待验证交易信息都符合所述目标条件,则所述待验证区块通过验证。
第二方面,本申请提供一种区块验证装置,包括:
第一处理模块,用于接收目标全节点发送的待验证区块,并确定所述待验证区块是否满足预设共识机制的首要条件,所述目标全节点是在所述区块链网络的全节点中选举得到;
第二处理模块,用于若确定所述待验证区块满足所述预设共识机制的首要条件,判断所述待验证区块包括的所有待验证交易信息是否都符合目标条件,所述目标条件根据交易状态值获得,所述交易状态值用于表征所述轻节点已接收到的交易信息;
所述第二处理模块,还用于若确定所述所有待验证交易信息都符合所述目标条件,则确定所述待验证区块通过验证。
第三方面,本申请提供一种电子设备,包括:
处理器;以及,
存储器,用于存储所述处理器的计算机程序;
其中,所述处理器配置为经由执行所述计算机程序来执行第一方面所提供的任意一种可能的区块验证方法。
第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所提供的任意一种可能的区块验证方法。
第五方面,本申请还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面所提供的任意一种可能的区块验证方法。
本申请提供一种区块验证方法,该区块验证方法应用于区块链网络中的轻节点。首先,轻节点接收目标全节点发送的待验证区块并确定待验证区块是否满足预设共识机制的首要条件,若满足,轻节点判断待验证区块包括的所有待验证交易信息是否都符合目标条件,目标条件根据交易状态值获得,而交易状态值用于表征轻节点已接收到的交易信息。若轻节点确定所有待验证交易信息都符合目标条件,则确定待验证区块通过验证,从而轻节点基于交易状态值实现对待验证区块的区块验证,无需存储全量的交易信息,为区块链节点运行于轻量化终端设备提供了可能。
附图说明
图1为本申请实施例提供的一种应用场景示意图;
图2为本申请实施例提供的一种区块验证方法的流程示意图;
图3为本申请实施例提供的另一种区块验证方法的流程示意图;
图4为本申请实施例提供的再一种区块验证方法的流程示意图;
图5为本申请实施例提供的一种交易状态值更新过程示意图;
图6为本申请实施例提供的又一种区块验证方法的流程示意图;
图7为本申请实施例提供的又一种区块验证方法的流程示意图;
图8为本申请实施例提供的又一种区块验证方法的流程示意图;
图9为本申请实施例提供的一种区块验证装置的结构示意图;
图10为本申请实施例提供的另一种区块验证装置的结构示意图;
图11为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的方法和装置的例子。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。
在区块链网络中,基于共识机制,任何参与节点独立修改自身账本都无法对整个分布式网络造成影响,这使得区块链具备不可篡改性。也正因为如此,在共识机制的实现过程中,参与共识的节点需要进行区块验证,以当验证通过时记录区块。然而,在区块验证中,除过验证交易签名的正确性,还要确保交易的有效性,即需要基于之前的区块(即交易)进行验证并实时更新默克尔树状态。可见,参与共识的节点需要拥有完整路径上的所有交易信息才能完成区块验证。目前,参与共识的节点均为全节点,换言之,全节点上保存了区块链网络的全量数据。全节点一般为共识和挖矿节点。但在实际的区块链应用中,大众或者中小机构参与区块链网络的诉求也越来越强,但大众或者中小机构所涉及的例如智能终端、个人电脑以及传感器等轻量化终端设备,由于其存储开销有限而无法全量存储所有交易信息,进而无法对交易有效性进行验证来完成区块验证,从而导致轻量化终端设备无法参与区块链网络的正常运行。
针对现有技术中存在的上述问题,本申请提供一种区块验证方法,该区块验证方法应用于区块链网络中的轻节点。本申请提供的区块链验证方法的发明构思在于:轻节点接收目标全节点发送的待验证区块,首先判断待验证区块是否满足预设共识机制的首要条件,在当满足时,进一步判断待验证区块包括的所有待验证交易信息是否都符合目标条件,其中,目标条件是根据交易状态值获得,而交易状态值可以表征该轻节点已接收到的交易信息,从而当所有待验证交易信息都符合目标条件时,确定待验证区块通过验证。可见,本申请提供的区块验证方法中,在对待验证区块是否满足预设共识机制的首要条件进行判断之后,基于交易状态值即可实现对待验证区块的验证,不同于现有技术需进行默克尔树证明等步骤,无需存储全量的交易信息即可实现区块验证,为区块链节点运行于轻量化终端设备提供可能。并且,由于交易状态值只需较小空间便可实现存储,存储空间还不会随着待验证区块的增多而增大,因而更加有利于轻量化终端设备在区块链网络中的应用。
以下,对本申请实施例的示例性应用场景进行介绍。
图1为本申请实施例提供的一种应用场景示意图,如图1所示,区块链网络包含多个区块链节点,例如区块链节点11、区块链节点12、区块链节点13以及区块链节点14,其中区块链节点11至区块链节点14均为全节点,全节点是指需存储区块链网络的全量交易信息,一般为共识节点和挖矿节点。其中,轻节点15中所配置的处理器通过执行本申请实施例提供的区块验证方法,无需存储全量的交易信息即可实现对待验证区块的验证,在验证通过时可参与至区块链网络中进行区块链的正常运行。轻节点15可以例如移动终端、个人电脑或者传感器等存储开销十分有限的轻量化终端设备,移动终端可以例如智能手机、智能手表等可穿戴设备。
需要说明的是,图1中示意性列举了区块链网络中全节点的数量为四个,轻节点的数量为一个。在实际工况中,对于区块链网络中全节点和轻节点的数量不作限定,具体由实际情况决定。另外,图1中轻节点15以智能手机为例示出。
需要说明的是,上述应用场景仅仅是示意性的,本申请实施例提供的区块验证方法包括但不仅限于上述应用场景。
图2为本申请实施例提供的一种区块验证方法的流程示意图。如图2所示,本申请实施例提供的区块验证方法应用于区块链网络中的轻节点,该方法包括:
S101:接收目标全节点发送的待验证区块,并确定待验证区块是否满足预设共识机制的首要条件。
其中,目标全节点是在区块链网络的全节点中选举得到。
轻节点接收目标全节点发送的待验证区块,待验证区块由目标全节点根据业务需要从自身交易池中选择交易信息并对选择到的交易信息进行打包形成的。例如,目标全节点打包形成新的区块,需将新的区块广播给区块链网络中的其他节点,轻节点则可以接收到目标全节点发送的该新的区块,该新的区块即为待验证区块。
目标全节点是从区块链网络的全节点中选举得到的。例如,区块链网络中的全节点执行交易信息时,需基于预设共识机制,从所有全节点中选举出一个全节点以对外广播区块,被选举出的全节点即被定义为目标全节点。比如,预设共识机制以工作量证明(Proofof Work,简称PoW)共识机制为例,从全节点选举目标全节点的方式可以通过计算哈希值实现。例如,每个全节点都会计算一个符合难度条件的哈希值,当某一全节点首个计算出该哈希值,则该全节点被选举为目标全节点,其中,符合难度条件的哈希值也可称为困难值。进而该目标全节点会将困难值和其根据业务需求从自身交易池中选择出的交易信息进行打包形成上述新的区块,也即待验证区块,并将该待验证区块广播给其他节点。
轻节点接收到待验证区块后,会确定待验证区块是否满足预设共识机制的首要条件。
例如,假设预设共识机制为PoW共识机制,则本步骤S101中轻节点确定待验证区块是否满足预设共识机制的首要条件可能的实现方式如图3所示。图3为本申请实施例提供的另一种区块验证方法的流程示意图。如图3所示,本申请实施例包括:
S1011:验证待验证区块的困难值是否正确。
其中,PoW共识机制的首要条件包括困难值。
S1012:若是,确定待验证区块满足首要条件。
S1013:若否,确定待验证区块未通过验证,并生成第二反馈信息。
其中,第二反馈信息用于指示轻节点拒绝待验证区块。
轻节点接收到待验证区块后,若预设共识机制为PoW共识机制,预设共识机制的首要条件,也即PoW共识机制的首要条件则包括困难值。因而,轻节点确定待验证区块是否满足预设共识机制的首要条件,也就是轻节点验证待验证区块的困难值是否正确,若正确,则确定待验证区块满足首要条件。反之,若不正确,则待验证区块不满足首要条件,则可确定待验证区块未通过验证,并且,轻节点可以生成第二反馈信息,通过第二反馈信息指示轻节点拒绝待验证区块。
本申请实施例提供的区块验证方法,轻节点接收目标全节点发送的待验证区块,确定待验证区块是否满足预设共识机制的首要条件。例如,假设预设共识机制为PoW共识机制,轻节点通过验证待验证区块的困难值是否正确确定其是否满足预设共识机制的首要条件。若正确,则确定待验证区块满足预设共识机制的首要条件。反之,若不正确,则表明待验证区块未通过验证,并生成第二反馈信息,以指示轻节点拒绝待验证区块。从而为待验证区块完成区块验证提供前提条件。
需要说明的是,确定待验证区块是否满足预设共识机制的首要条件可以理解为验证待验证区块对应交易签名的正确性,显然,预设共识机制包括但不限定于PoW共识机制。当预设共识机制为其他共识机制时,则可以通过其他的预设共识机制所对应的具体方式验证交易签名的正确性以判断待验证区块是否满足预设共识机制的首要条件。
通过上述描述可知,在验证困难值正确时,则确定待验证区块满足预设共识机制的首要条件时,进一步执行步骤S102。而若验证困难值不正确,则表明待验证区块不满足预设共识机制的首要条件,待验证区块未通过验证。
S102:若是,判断待验证区块包括的所有待验证交易信息是否都符合目标条件。
其中,目标条件根据交易状态值获得,交易状态值用于表征轻节点已接收到的交易信息。
在确定待验证区块满足预设共识机制的首要条件后,进一步判断待验证区块包括的所有待验证交易信息是否都符合目标条件,以对待验证区块包括的待验证交易信息的有效性进行验证,以此完成区块验证。
例如,在本申请实施例中,轻节点可以通过交易状态值来反馈其已接收到的交易信息,并根据其维护的交易状态值获得目标条件,进而则可以通过判断待验证区块包括的所有待验证交易信息是否都符合目标条件,来实现对待验证区块所包括的所有待验证交易信息有效性的验证。
其中,待验证交易信息是指待验证区块中所包含的各交易信息,即目标全节点打包形成待验证区块时所选择的交易信息,例如,目标全节点将m(1≤mn)起交易信息打包形成了待验证区块,假设待验证区块以B 1表示,那么B 1中的交易信息也即所有待验证交易信息可以通过如下集合表示:
Figure 31174DEST_PATH_IMAGE001
轻节点判断待验证区块B 1包括的所有待验证交易信息是否都符合目标条件,其中,目标条件根据轻节点所维护的交易状态值获得,而其维护的交易状态值可以反馈其接收到交易信息。鉴于此,判断待验证区块包括的所有待验证交易信息是否都符合目标条件中的该目标条件,可以理解为,判断待验证区块包括的该m起待验证交易信息是否均存在于其维护的交易状态值中。换言之,若m起待验证交易信息均存在于其所维护的交易状态值中,则表明待验证区块包括的所有待验证交易信息都符合目标条件。反之,若m起待验证交易信息中任意一起都不存在于其维护的交易状态值中,则表明待验证区块包括的所有待验证交易信息都不符合目标条件。
在经过判断后,若判断出待验证区块包括的所有待验证交易信息都符合目标条件,则表明待验证区块包括的所有待验证交易信息的有效性通过验证,即执行步骤S103。反之,若确定所有待验证交易信息都不符合目标条件,即执行步骤S104。
S103:若确定所有待验证交易信息都符合目标条件,则待验证区块通过验证。
S104:若确定所有待验证交易信息都不符合目标条件,则待验证区块未通过验证,并生成第一反馈信息。
其中,第一反馈信息用于指示轻节点拒绝待验证区块。
若轻节点确定出待验证区块包括的所有待验证交易信息都符合目标条件,则表明轻节点对待验证区块包括的所有待验证交易信息的交易有效性验证通过,再结合之前待验证区块满足预设共识机制的首要条件的前提,可以确定待验证区块通过验证,完成对待验证区块的验证。
反之,若确定所有待验证交易信息都不符合目标条件,则表明轻节点对待验证区块包括的所有待验证交易信息的交易有效性验证未通过,则可以确定待验证区块未通过验证。进而还生成第一反馈信息,通过第一反馈信息指示轻节点拒绝待验证区块。
可选地,若确定待验证区块通过验证,则轻节点记录待验证区块并向目标全节点发送验证信息,通过验证信息使得目标全节点获知轻节点对于待验证区块的验证已通过。在当目标全节点接收一定数量的验证信息后即可完成对待验证区块的上链。目标全节点接收到一定数量的验证信息即为目标全节点接收到超过预设数量的验证信息。例如,每个对于交易信息有效性验证通过的节点均会向目标全节点反馈验证信息,当目标全节点接收到超过其发送待验证区块的节点总数的51%数量的验证信息时,即目标全节点接收到超过预设数量的验证信息,对于目标全节点而言,其完成了对待验证区块的上链。
本申请实施例提供的区块验证方法应用于区块链网络中的轻节点。首先,轻节点接收目标全节点发送的待验证区块,并确定待验证区块是否满足预设共识机制的首要条件。若满足,轻节点判断待验证区块包括的所有待验证交易信息是否都符合目标条件,该目标条件根据轻节点所维护的交易状态值获得,而交易状态值用来表征轻节点已接收到的交易信息,轻节点则无需存储全量的交易信息。经过判断,若确定待验证区块包括的所有待验证交易信息都符合目标条件,则待验证区块通过验证。本申请实施例提供的区块验证方法中,轻节点在确定待验证区块满足预设共识机制的首要条件时,基于其所维护的交易状态值判断待验证区块包括的所有待验证交易信息是否都符合目标条件,以达到对待验证区块的验证。对轻节点而言无需存储全量的交易信息也可以实现区块验证,为区块链节点运行于轻量化终端设备提供可能。
在上述实施例的描述中,交易状态值反馈轻节点已接收到的交易信息。具体地,在接收目标全节点发送的待验证区块之前,每当轻节点接收到目标账户发送的交易信息,根据预设更新策略以及当前次接收到的交易信息更新交易状态值,从而通过所维护的交易状态值反馈其已接收到的交易信息。
例如,当区块链网络初始化完成或,则会有多起交易发起,目标账户会选择区块链网络中的任何一个区块链节点发送交易信息。当区块链网络中的全节点接收到目标账户发送的交易信息后,会将其放入自身交易池。而对于轻节点而言,该轻节点不需保存交易信息,而是根据交易信息以及预设更新策略更新交易状态值,通过维护交易状态值代替存储全量的交易信息。
在一种可能的设计中,轻节点根据预设更新策略以及当前次接收到的交易信息更新交易状态值可能的实现方式如图4所示。图4为本申请实施例提供的再一种区块验证方法的流程示意图。如图4所示,本申请实施例提供的区块验证方法,包括:
S201:获取当前哈希值。
其中,当前哈希值为当前次接收到的交易信息的哈希值。
S202:根据当前哈希值、预设更新算法以及当前的交易状态值生成目标交易状态值。
其中,预设更新算法包括目标参数以及目标特征函数,目标参数为互为质数的第一参数和第二参数的乘积。
S203:利用预设更新方式以及目标交易状态值更新交易状态值。
其中,预设更新策略包括预设更新算法以及预设更新方式。
轻节点每当接收到目标账户发送的交易信息,获取当前次接收到的交易信息的哈希值,即获取当前哈希值。然后根据当前哈希值、预设更新算法以及当前的交易状态值生成目标交易状态值,再利用预设更新方式和目标交易状态值更新交易状态值,例如所采用的预设更新方式为将当前的交易状态值更新为目标交易状态值,从而完成对交易状态值的更新。
图5为本申请实施例提供的一种交易状态值更新过程示意图。如图5所示,假设以T 1T n表示轻节点接收到目标账户发送的第1至第n起交易信息,H(T 1)至H(T n)分别表示第1起至第n起交易信息的哈希值,即各当前哈希值,TxState 1TxState n则表示轻节点针对接收到的每起交易信息所对应维护的各交易状态值。
继续参照图5,在区块链网络初始化阶段,也即在轻节点首次接收目标账户发送的交易信息之前,轻节点的交易状态值以TxState 0表示,该TxState 0为轻节点随机生成的初始的交易状态值。轻节点接收到第1起交易信息,则将TxState 0更新为TxState 1。轻节点接收到第2起交易信息,则将TxState 1更新为TxState 2,依次类推,轻节点接收到第n起交易信息,轻节点的交易状态值则更新为TxState nTxState 1TxState n也即轻节点针对每次接收到的目标账户发送的交易信息所对应维护的交易状态值,TxState 1TxState n分别表示第1起至第n起交易信息各自对应的目标交易状态值。
当区块链网络初始化完成后会有目标账户发起交易,相应地,轻节点会接收目标账户发送的交易信息。因而,在轻节点首次接收目标账户发送的交易信息之前,也即区块链网络的初始化阶段,轻节点会随机生成初始的交易状态值。换言之,在区块链网络的初始化阶段,也即第0个区块时,轻节点随机生成初始的交易状态值,该初始的交易状态值就是第0个区块时轻节点所对应维护的交易状态值。在本申请实施例中,该初始的交易状态值为任意质数的预设常识,例如以g表示,对于该任意质数的具体取值,本申请实施例不作限定。
由于TxState 0为初始的交易状态值,其为任意质数的预设常数,即存在如下公式(1):
TxState 0=g (1)
对于第1起交易信息T 1,获取的当前哈希值H(T 1)可以如下公式(2)表示:
Figure 733682DEST_PATH_IMAGE002
(2)
则根据当前哈希值、预设更新算法以及当前的交易状态值(即初始的交易状态值)生成的目标交易状态值(即第1起交易信息对应的目标交易状态值TxState 1)可以如下公式(3)表示:
Figure 737410DEST_PATH_IMAGE003
(3)
以此类推,对于第i(1≤in)起交易信息,获取该T i起交易信息的哈希值,即当前哈希值如公式(4)所示:
Figure 178756DEST_PATH_IMAGE004
(4)
然后,根据H(T i)、预设更新算法以及当前的交易状态值(即T i-1起交易信息对应的交易状态值)得到第i起交易信息的目标交易状态值TxState i 如下公式(5)所示:
Figure 382948DEST_PATH_IMAGE005
(5)
其中,TxState i-1表示接收到第i起交易信息时的当前的交易状态值,H(T i)表示第i起交易信息的当前哈希值,TxState i 表示接收到第i起交易信息对应的目标交易状态值,将当前的交易状态值TxState i-1更新为目标交易状态值TxState i 完成当前次交易状态值的更新,符号“mod”表示取模运算,N表示目标参数。
在上述描述的基础上,进一步地,若轻节点接收到n起交易,则所对应的目标交易状态值,也就是轻节点当前所维护的交易状态值TxState n,可以如下公式(6)所示:
Figure 872835DEST_PATH_IMAGE006
(6)
其中,如公式(6)所示的表达式即为预设更新算法,初始的交易状态值g的幂次方 即
Figure 465491DEST_PATH_IMAGE007
可以被定义为目标特征函数。
另外,上述的N表示目标参数,其中该N的取值为第一参数和第二参数的乘积,并且第一参数和第二参数互为质数,例如第一参数和第二参数分别为两大质数。假设第一参数和第二参数分别采用pq表示,则存在如下公式(7):
Figure 281000DEST_PATH_IMAGE008
(7)
其中,第一参数和第二参数的取值可以根据实际情况设置。为了便于轻节点维护交易状态值,第一参数和第二参数可以采用数值较大的质数。
例如,假设n的取值为5,即轻节点接收到目标账户发送的5起交易信息,并假设每起交易信息的哈希值分别如下公式(8)至(12)所示:
Figure 975417DEST_PATH_IMAGE009
(8)
Figure 534575DEST_PATH_IMAGE010
(9)
Figure 44053DEST_PATH_IMAGE011
(10)
Figure 515617DEST_PATH_IMAGE012
(11)
Figure 946599DEST_PATH_IMAGE013
(12)
则轻节点接收到的目标账户发送的5起交易信息后所维护的交易状态值TxState 5如下公式(13)所示:
Figure 43868DEST_PATH_IMAGE014
(13)
通过上述实施例描述以及举例说明可知,交易状态值TxState n 隐式的包含了n起交易信息。换言之,通过轻节点的交易状态值可以反馈出轻节点所接收到的交易信息,即交易状态值可以表征轻节点已接收到的交易信息。因而,轻节点无需保存交易信息,只需根据交易信息和预设更新策略更新交易状态值,达到通过维护交易状态值来反馈其已接收到的交易信息的目的。
交易状态值只需几兆空间便可存储,无需较大存储空间。例如,交易状态值TxState n 为一小于目标参数N的数值。而目标参数N可以为两大质数pq的乘积,目前最大质数为257885161-1位,因此交易状态值TxState n 最多需要57885161bit即可存储,可见其存储容量不会超过7MB。因此对于轻节点而言,其只需要7MB的存储空间便可通过本申请实施例提供的区块验证方法实现区块验证。
图6为本申请实施例提供的又一种区块验证方法的流程示意图。如图6所示,本申请实施例提供的区块验证应用于区块链网络中的轻节点,该方法包括:
S301:每当接收到目标账户发送的交易信息,根据预设更新策略以及当前次接收到的交易信息更新交易状态值。
步骤S301的实现方式、原理以及技术效果与图4的实现方式、原理以及技术效果相类似,详细内容可参考前述描述,在此不再赘述。
S302:接收目标全节点发送的待验证区块,并确定待验证区块是否满足预设共识机制的首要条件。
其中,目标全节点是在区块链网络的全节点中选举得到。
步骤S302的实现方式、原理以及技术效果与步骤S101的实现方式、原理以及技术效果相类似,详细内容可参考前述描述,在此不再赘述。
通过前述实施例的描述可知,对于判断待验证区块包括的所有目标验证交易信息是否都符合目标条件,可以等同于判断待验证区块包括的所有待验证交易信息是否均存在于其维护的交易状态值。由于交易状态值TxState n 涉及有限域的取模运算,因而是无法证明其因子的存在性的,但是可以反向证明因子的不存在性。换言之,若要确定待验证交易信息均存在于交易状态值TxState n 中,只需确定待验证交易信息中的任意一起待验证交易信息都不存在于交易状态值TxState n 中是不成立的即可。
以下步骤S303至步骤S306,详细说明如何通过判断待验证区块中的任意一起待验证交易信息都不存在于交易状态值TxState n 中是否成立,来实现对待验证区块包括的所有待验证交易信息是否都符合目标条件的判断。
S303:若是,根据各当前哈希值以及目标特征函数得到目标特征值。
S304:判断任意待验证交易信息的哈希值是否都与目标特征值互为质数关系。
S305:若是,则确定所有待验证交易信息都不符合目标条件。
S306:若否,则确定所有待验证交易信息都符合目标条件。
轻节点每接收到一起交易信息更新交易状态值时,均会获取到当前次接收到的交易信息的哈希值,换言之,轻节点获取了其所接收到的每起交易信息的哈希值,即轻节点获取了各当前哈希值。因而,轻节点根据各当前哈希值以及目标特征函数可以得到目标特征值,该目标特征值以W n表示,则存在如下公式(14):
Figure 876694DEST_PATH_IMAGE015
(14)
其中,若轻节点接收到目标账户发送的n起交易信息,则H(T 1)、H(T 2)、…、H(T n)分 别表示各当前哈希值,
Figure 519159DEST_PATH_IMAGE007
表示目标特征函数,该目标特征函数 基于预设更新算法得到,W n则表示通过各当前哈希值以及目标特征函数得到的目标特征 值。
进一步,通过判断任意待验证交易信息的哈希值是否与目标特征值互为质数关系来实现对所有待验证交易信息是否都符合目标条件的判断。
例如,假设以H(T')即Hash(T')表示任意待验证交易信息的哈希值,若Hash(T')与W n各自表示的数值互为质数关系,则表明Hash(T')不能被W n整除。结合公式(6)的表达式可知,若Hash(T')不能被W n整除,即Hash(T')不为TxState n幂次方的因子,也即任意待验证交易信息T'不存在于交易状态值TxState n中,其中TxState n幂次方的因子即公式(6)中预设常识g的幂次方,其为目标特征函数W n所表示的数值。也就是说,若Hash(T')与W n各自表示的数值互为质数关系成立,则相当于任意待验证交易信息T'不存在于交易状态值TxState n中是成立的。故而,当判断任意待验证交易信息的哈希值与目标特征值都互为质数关系成立时,任意待验证交易信息T'不存在于交易状态值TxState n中成立,则表明所有待验证交易信息都不符合目标条件。
反之,若任意待验证交易信息的哈希值都与目标特征值不互为质数关系,换言之,若任意待验证交易信息的哈希值都能被目标特征值整除,则任意待验证交易信息的哈希值是交易状态值的幂次方的因子,也即任意待验证交易信息存在于交易状态值中,故而,所有待验证交易信息都符合目标条件。
而判断任意待验证交易信息的哈希值是否都与目标特征值互为质数关系,可以通过确定目标条件函数是否存在整数解得以实现。在一种可能的设计中,步骤S304可能的实现方式如图7所示。图7为本申请实施例提供的又一种区块验证方法的流程示意图。如图7所示,本申请实施例包括:
S3041:确定目标条件函数是否存在整数解。
其中,目标条件函数由任意待验证交易信息的哈希值和目标特征值生成。
S3042:若是,则任意待验证交易信息的哈希值都与目标特征值均互为质数关系。
S3043:若否,则任意待验证交易信息的哈希值与目标特征值均非互为质数关系。
目标条件函数由任意待验证交易信息的哈希值
Figure 437437DEST_PATH_IMAGE016
和目标特征值生成。
例如,对于任何整数ab,如果ab互质,则存在整数解<x,y>使得如下公式(15)成立:
Figure 338397DEST_PATH_IMAGE017
(15)
比如2和3互质,那么2x+3y=1,显然存在整数解(-1,1)可使得公式(15)成立。
而对于整数ab,如果ab不互质,则意味着ab存在最大公约数,假设最大公约 数为c,且c为大于1的整数,并假设
Figure 760151DEST_PATH_IMAGE018
则肯定存整数mn使得如下公式(16)和(17) 存在:
Figure 842026DEST_PATH_IMAGE019
(16)
Figure 982020DEST_PATH_IMAGE020
(17)
结合公式(16)和(17)则存在如下公式(18):
Figure 686671DEST_PATH_IMAGE021
(18)
如果ax+by=1在ab不互质的情况下还存在整数解,那么mx+ny一定为整数,但是由于c也为整数,所以1/c一定不为整数,所以mx+ny=1/c一定不成立。故而可以得知,当ab不互质的情况,ax+by=1一定不存在整数解。
基于以上描述,则可以由任意待验证交易信息的哈希值
Figure 228511DEST_PATH_IMAGE016
和目标特征值 生成如下公式(19)所示的目标条件函数:
Figure 478358DEST_PATH_IMAGE022
(19)
其中,若表示任意待验证交易信息的哈希值H(T')即Hash(T')与表示目标特征值的W n互为质数关系,则如公式(19)表示的目标条件函数存在整数解<x,y>。反之,若表示任意待验证交易信息的哈希值与表示目特征值的非互为质数关系,则如公式(19)表示的目标条件函数不存在整数解<x,y>。
因此,判断任意待验证交易信息的哈希值是否都与目标特征值互为质数关系,可以通过判断目标条件函数是否存在整数解得以实现。
故而,若轻节点确定出由任意待验证交易信息的哈希值和目标特征值所生成的目标条件函数存在整数解,则表明任意待验证交易信息的哈希值与目标特征值均互为质数关系。反之,若轻节点确定出由任意待验证交易信息的哈希值和目标特征值所生成的目标条件函数不存在整数解,则表明任意待验证交易信息的哈希值与目标特征值均不互为质数关系。
通过上述实施例的描述可知,轻节点接收到目标全节点发送的待验证区块后,首先对待验证区块的困难值正确与否进行验证以确定出待验证区块是否满足预设共识机制的首要条件。在困难值正确的情况下,进一步对待验证区块的有效性进行验证来完成区块验证。其中,轻节点在对待验证区块的有效性验证时,可以基于其维护的交易状态值进行。具体地,轻节点确定由待验证区块包括的任意待验证交易信息的哈希值以及目标特征值所生成的目标条件函数是否存在整数解。若存在整数解,则表明任意待验证交易信息的哈希值与目标特征值都互为质数关系,即目标特征值无法整除任意待验证交易信息的哈希值,任意待验证交易信息的哈希值不为交易状态值的幂次方的因子,所有待验证交易信息都不符合目标条件,则可在步骤S305后执行步骤S307。反之,若轻节点确定由待验证区块包括的任意待验证交易信息的哈希值以及目标特征值所生成的目标条件函数不存在整数解,则表明任意待验证交易信息的哈希值与目标特征值都非互为质数关系,即目标特征值可以整除任意待验证交易信息的哈希值,任意待验证交易信息的哈希值为交易状态值的幂次方的因子,则可以确定所有待验证交易信息都符合目标条件,则可以在步骤S306后执行步骤S308。
S307:待验证区块未通过验证,并生成第一反馈信息。
其中,第一反馈信息用于指示轻节点拒绝待验证区块。
S308:待验证区块通过验证,记录待验证区块并向目标全节点发送验证信息。
若所有待验证交易信息都不符合目标条件,则待验证区块未通过验证,轻节点可以通过生成第一反馈信息来指示自身拒绝待验证区块。
而若所有待验证交易信息都符合目标条件,则表明待验证区块通过验证,进而轻节点会记录待验证区块并向目标全节点发送验证信息。当目标全节点接收一定数量的验证信息后即表示其完成对待验证区块的上链。
本申请实施例提供的区块验证方法应用于区块链网络中的轻节点。轻节点每当接收到目标账户发送的交易信息,根据预设更新策略以及当前次接收到的交易信息更新交易状态值。并且,轻节点接收目标全节点发送的待验证区块后首先确定待验证区块是否满足预设共识机制的首要条件,若满足,则根据各当前哈希值以及目标特征函数得到目标特征值,并通过判断任意待验证交易信息的哈希值是否都与目标特征值互为质数关系,来确定所有待验证交易信息是否都符合目标条件。经过判断,若任意待验证交易信息的哈希值都与目标特征值互为质数关系,则所有待验证交易信息都不符合目标条件。而若任意待验证交易信息的哈希值与目标特征值都不互为质数关系,则所有待验证交易信息都符合目标条件,待验证区块通过验证,轻节点会记录待验证区块并向目标全节点发送验证信息。本申请实施例提供的区块验证方法,轻节点每当接收到交易信息时都更新交易状态值,从而通过维护交易状态值代替存储全量的交易信息,并进一步基于所维护的交易状态值,通过判断任意待验证交易信息的哈希值是否都与目标特征值互为质数关系,来实现待验证区块包括的所有待验证交易信息是否都符合目标条件的判断,达到对待验证区块的验证,从而无需存储全量的交易信息即可进行区块验证,为区块链节点运行于轻量化终端设备提供可能。
进一步地,为了避免交易信息发生重复即双花现象,轻节点确定待验证区块通过验证之后,还包括如图8所示步骤。图8为本申请实施例提供的又一种区块验证方法的流程示意图。如图8所示,本申请实施例包括:
S401:根据所有待验证交易信息以及目标特征函数生成目标数据。
S402:根据目标数据、目标特征值以及预设特征函数更新当前的交易状态值,以删除所有待验证交易信息。
在待验证区块通过验证后,为了防止交易信息发生重复现象,则需要对轻节点当前的交易状态值进行更新,以从轻节点所维护的交易状态值中删除已完成验证的待验证区块所涉及的交易信息,即删除待验证区块包括的所有待验证交易信息。
假设待验证区块包括m起待验证交易信息,因而可以基于目标特征函数以及所有待验证交易信息生成如下公式(20)所示的目标数据W m
Figure 840069DEST_PATH_IMAGE023
(20)
其中,H(T i )(i的取值从1至m)表示待验证区块中该m起的所有待验证交易信息的哈希值,目标数据则基于该m起的所有待验证交易信息的哈希值和目标特征函数得到。
目标特征值W n如前述公式(14)所示。预设特征函数如下公式(21)所示:
Figure 82832DEST_PATH_IMAGE024
(21)
其中,通过目标数据、目标特征值以及公式(21)所示的预设特征函数生成最终的交易状态值TxRoot n-m ,以将轻节点在完成区块验证后的当前的交易状态值TxState n更新为最终的交易状态值TxRoot n-m ,通过该最终的交易状态值TxRoot n-m 表征轻节点已从交易状态值TxState n中删除了待验证区块所包括的所有m起待验证交易信息,进而则可再继续接收新的交易信息。
本申请实施例提供的区块验证方法,在待验证区块通过验证之后,为了防止交易信息发生重复,根据所有待验证交易信息以及目标特征函数生成目标数据,并根据该目标数据、目标特征值以及预设特征函数生成最终的交易状态值,以将当前的交易状态值更新为最终的交易状态值,从轻节点的交易状态值中删除通过验证的待验证区块所包括的所有待验证交易信息。可见,基于其所维护的交易状态值可以防止交易信息发生重复问题。并且,待验证区块通过验证后,对其所维护的交易状态值进行更新后再重新接收新的交易信息,可以保证轻节点的存储空间不会随着其接收到的交易信息和待验证区块的不断累计而发生变化,从而更加有利于区块链节点运行于轻量化终端设备中。
图9为本申请实施例提供的一种区块验证装置的结构示意图。如图9所示,本申请实施例提供的区块验证装置500应用于区块链网络中的轻节点,该区块验证装置500,包括:
第一处理模块501,用于接收目标全节点发送的待验证区块,并确定待验证区块是否满足预设共识机制的首要条件。
其中,目标全节点是在区块链网络的全节点中选举得到。
第二处理模块502,用于若确定待验证区块满足预设共识机制的首要条件,判断待验证区块包括的所有待验证交易信息是否都符合目标条件。
其中,目标条件根据交易状态值获得,交易状态值用于表征轻节点已接收到的交易信息
第二处理模块502,还用于若确定所有待验证交易信息都符合目标条件,则确定待验证区块通过验证。
在图9的基础上,图10为本申请实施例提供的另一种区块验证装置的结构示意图。如图10所示,该区块验证装置500,还包括:
更新模块503,用于每当接收到目标账户发送的交易信息,根据预设更新策略以及当前次接收到的交易信息更新交易状态值。
在一种可能的设计中,更新模块503,具体用于:
获取当前哈希值,当前哈希值为当前次接收到的交易信息的哈希值;
根据当前哈希值、预设更新算法以及当前的交易状态值生成目标交易状态值,预设更新算法包括目标参数和目标特征函数,目标参数为互为质数的第一参数和第二参数的乘积;
利用预设更新方式以及目标交易状态值更新交易状态值;
其中,预设更新策略包括预设更新算法和预设更新方式。
在一种可能的设计中,更新模块503,还用于:
随机生成初始的交易状态值,初始的交易状态值为任意质数的预设常数。
在一种可能的设计中,第二处理模块502,具体用于:
根据各当前哈希值以及目标特征函数得到目标特征值;
判断任意待验证交易信息的哈希值是否都与目标特征值互为质数关系;
若是,则确定所有待验证交易信息都不符合目标条件;
若否,则确定所有待验证交易信息都符合目标条件。
在一种可能的设计中,第二处理模块502,还具体用于:
确定目标条件函数是否存在整数解,目标条件函数由任意待验证交易信息的哈希值和目标特征值生成;
若是,则确定任意待验证交易信息的哈希值都与目标特征值均互为质数关系;
若否,则确定任意待验证交易信息的哈希值与目标特征值均非互为质数关系。
可选地,第二处理模块502,还用于:
若确定所有待验证交易信息都不符合目标条件,则待验证区块未通过验证,并生成第一反馈信息,第一反馈信息用于指示轻节点拒绝待验证区块。
在一种可能的设计中,若预设共识机制为PoW共识机制,第一处理模块501,具体用于:
验证待验证区块的困难值是否正确,PoW共识机制的首要条件包括困难值;
若是,确定待验证区块满足首要条件;
若否,确定待验证区块未通过验证,并生成第二反馈信息,第二反馈信息用于指示轻节点拒绝待验证区块。
在一种可能的设计中,区块验证装置500,还包括:第三处理模块;该第三处理模块,用于:
根据所有待验证交易信息以及目标特征函数生成目标数据;
根据目标数据、目标特征值以及预设特征函数更新当前的交易状态值,以删除所有待验证交易信息。
可选地,第二处理模块502,还用于:
若确定待验证区块通过验证,则记录待验证区块并向目标全节点发送验证信息。
值得说明的,上述图9和图10以及可选的实施例提供的区块验证装置,可用于执行上述任一实施例提供的区块验证方法的各步骤,具体实现方式和技术效果类似,这里不再赘述。
本申请所提供的上述各装置实施例仅仅是示意性的,其中的模块划分仅仅是一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个模块可以结合或者可以集成到另一个系统。各个模块相互之间的耦合可以是通过一些接口实现,这些接口通常是电性通信接口,但是也不排除可能是机械接口或其他的形式接口。因此,作为分离部件说明的模块可以是或者也可以不是物理上分开的,既可以位于一个地方,也可以分布到同一个或不同设备的不同位置上。
图11为本申请实施例提供的一种电子设备的结构示意图。如图11所示,该电子设备600可以包括:至少一个处理器601和存储器602。图11示出的是以一个处理器为例的电子设备。
存储器602,用于存放处理器601的计算机程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。
存储器602可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器601配置为用于执行存储器602存储的计算机程序,以实现以上各方法实施例中区块验证方法的各步骤。
其中,处理器601可能是一个中央处理器(central processing unit,简称为CPU),或者是特定集成电路(application specific integrated circuit,简称为ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。
可选地,存储器602既可以是独立的,也可以跟处理器601集成在一起。当存储器602是独立于处理器601之外的器件时,电子设备600,还可以包括:
总线603,用于连接处理器601以及存储器602。总线可以是工业标准体系结构(industry standard architecture,简称为ISA)总线、外部设备互连(peripheralcomponent, PCI)总线或扩展工业标准体系结构(extended industry standardarchitecture, EISA)总线等。总线可以分为地址总线、数据总线、控制总线等,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器602和处理器601集成在一块芯片上实现,则存储器602和处理器601可以通过内部接口完成通信。
本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当电子设备的至少一个处理器执行该计算机程序时,电子设备执行上述的各种实施方式提供的区块验证方法的各个步骤。
本实施例还提供一种计算机程序产品,该程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。电子设备的至少一个处理器可以从计算机可读存储介质读取该计算机程序,至少一个处理器执行该计算机程序使得电子设备实施上述的各种实施方式提供的区块验证方法的各个步骤。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其他实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

Claims (10)

1.一种区块验证方法,其特征在于,应用于区块链网络中的轻节点;所述方法,包括:
接收目标全节点发送的待验证区块,并确定所述待验证区块是否满足预设共识机制的首要条件,所述目标全节点是在所述区块链网络的全节点中选举得到;
若是,判断所述待验证区块包括的所有待验证交易信息是否都符合目标条件,所述目标条件根据交易状态值获得,所述交易状态值用于表征所述轻节点已接收到的交易信息;
若确定所述所有待验证交易信息都符合所述目标条件,则所述待验证区块通过验证。
2.根据权利要求1所述的区块验证方法,其特征在于,在所述接收目标全节点发送的待验证区块之前,还包括:
每当接收到目标账户发送的所述交易信息,根据预设更新策略以及当前次接收到的交易信息更新所述交易状态值。
3.根据权利要求2所述的区块验证方法,其特征在于,所述根据预设更新策略以及当前次接收到的交易信息更新交易状态值,包括:
获取当前哈希值,所述当前哈希值为所述当前次接收到的交易信息的哈希值;
根据所述当前哈希值、预设更新算法以及当前的交易状态值生成目标交易状态值,所述预设更新算法包括目标参数和目标特征函数,所述目标参数为互为质数的第一参数和第二参数的乘积;
利用预设更新方式以及所述目标交易状态值更新所述交易状态值;
其中,所述预设更新策略包括所述预设更新算法和所述预设更新方式。
4.根据权利要求3所述的区块验证方法,其特征在于,在所述轻节点首次接收所述目标账户发送的交易信息之前,还包括:
随机生成初始的交易状态值,所述初始的交易状态值为任意质数的预设常数。
5.根据权利要求3或4所述的区块验证方法,其特征在于,所述判断所述待验证区块包括的所有待验证交易信息是否都符合目标条件,包括:
根据各当前哈希值以及所述目标特征函数得到目标特征值;
判断任意待验证交易信息的哈希值是否都与所述目标特征值互为质数关系;
若是,则确定所述所有待验证交易信息都不符合所述目标条件;
若否,则确定所述所有待验证交易信息都符合所述目标条件。
6.根据权利要求5所述的区块验证方法,其特征在于,所述判断任意待验证交易信息的哈希值是否都与所述目标特征值互为质数关系,包括:
确定目标条件函数是否存在整数解,所述目标条件函数由所述任意待验证交易信息的哈希值和所述目标特征值生成;
若是,则确定所述任意待验证交易信息的哈希值都与所述目标特征值均互为所述质数关系;
若否,则确定所述任意待验证交易信息的哈希值与所述目标特征值均非互为所述质数关系。
7.根据权利要求5所述的区块验证方法,其特征在于,若确定所述所有待验证交易信息都不符合所述目标条件,则所述待验证区块未通过验证,并生成第一反馈信息,所述第一反馈信息用于指示所述轻节点拒绝所述待验证区块。
8.根据权利要求1所述的区块验证方法,其特征在于,若所述预设共识机制为PoW共识机制,所述确定所述待验证区块是否满足预设共识机制的首要条件,包括:
验证所述待验证区块的困难值是否正确,所述PoW共识机制的首要条件包括所述困难值;
若是,确定所述待验证区块满足所述首要条件;
若否,确定所述待验证区块未通过验证,并生成第二反馈信息,所述第二反馈信息用于指示所述轻节点拒绝所述待验证区块。
9.根据权利要求6所述的区块验证方法,其特征在于,在确定所述待验证区块通过验证之后,还包括:
根据所述所有待验证交易信息以及所述目标特征函数生成目标数据;
根据所述目标数据、所述目标特征值以及预设特征函数更新当前的交易状态值,以删除所述所有待验证交易信息。
10.根据权利要求1-4任一项所述的区块验证方法,其特征在于,若确定所述待验证区块通过验证,则记录所述待验证区块并向所述目标全节点发送验证信息。
CN202111104734.0A 2021-09-22 2021-09-22 区块验证方法 Active CN113556238B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111104734.0A CN113556238B (zh) 2021-09-22 2021-09-22 区块验证方法
PCT/CN2021/140630 WO2023045150A1 (zh) 2021-09-22 2021-12-22 区块验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111104734.0A CN113556238B (zh) 2021-09-22 2021-09-22 区块验证方法

Publications (2)

Publication Number Publication Date
CN113556238A true CN113556238A (zh) 2021-10-26
CN113556238B CN113556238B (zh) 2022-02-15

Family

ID=78134539

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111104734.0A Active CN113556238B (zh) 2021-09-22 2021-09-22 区块验证方法

Country Status (2)

Country Link
CN (1) CN113556238B (zh)
WO (1) WO2023045150A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114244523A (zh) * 2021-12-09 2022-03-25 东软集团股份有限公司 数据处理方法、装置和适配器
WO2023045150A1 (zh) * 2021-09-22 2023-03-30 深圳前海微众银行股份有限公司 区块验证方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110378697A (zh) * 2019-07-22 2019-10-25 南京信息工程大学 一种基于rsa累加器的区块链轻节点utxo交易验证方法及其装置
US20200143338A1 (en) * 2018-11-06 2020-05-07 Electricite De France Method for processing data and apparatuses for implementing the same
CN111640018A (zh) * 2020-05-06 2020-09-08 深圳前海微众银行股份有限公司 一种区块链交易存在性验证方法及装置
CN112287034A (zh) * 2020-12-24 2021-01-29 腾讯科技(深圳)有限公司 一种数据同步方法、设备以及计算机可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108921556B (zh) * 2018-07-02 2022-04-19 上海达家迎信息科技有限公司 一种区块链的验证方法、装置、设备及存储介质
CN108985772B (zh) * 2018-07-02 2022-03-18 上海达家迎信息科技有限公司 一种区块链的验证方法、装置、设备及存储介质
CN110602116B (zh) * 2019-09-19 2021-05-11 腾讯科技(深圳)有限公司 基于区块链的数据验证方法、装置和计算机可读存储介质
CN111010284B (zh) * 2019-12-20 2022-12-13 深圳市迅雷网络技术有限公司 一种待共识区块的处理方法、相关装置及区块链系统
CN112396423B (zh) * 2021-01-20 2021-04-13 腾讯科技(深圳)有限公司 一种交易数据处理方法、装置、设备及存储介质
CN113556238B (zh) * 2021-09-22 2022-02-15 深圳前海微众银行股份有限公司 区块验证方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200143338A1 (en) * 2018-11-06 2020-05-07 Electricite De France Method for processing data and apparatuses for implementing the same
CN110378697A (zh) * 2019-07-22 2019-10-25 南京信息工程大学 一种基于rsa累加器的区块链轻节点utxo交易验证方法及其装置
CN111640018A (zh) * 2020-05-06 2020-09-08 深圳前海微众银行股份有限公司 一种区块链交易存在性验证方法及装置
CN112287034A (zh) * 2020-12-24 2021-01-29 腾讯科技(深圳)有限公司 一种数据同步方法、设备以及计算机可读存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023045150A1 (zh) * 2021-09-22 2023-03-30 深圳前海微众银行股份有限公司 区块验证方法
CN114244523A (zh) * 2021-12-09 2022-03-25 东软集团股份有限公司 数据处理方法、装置和适配器

Also Published As

Publication number Publication date
WO2023045150A1 (zh) 2023-03-30
CN113556238B (zh) 2022-02-15

Similar Documents

Publication Publication Date Title
CN108200203B (zh) 基于双层网络的区块链系统
CN110597925B (zh) 一种基于区块链的跨链数据处理方法及装置
US20210157800A1 (en) Blockchain-based transaction processing methods, apparatuses, and electronic devices
CN113556238B (zh) 区块验证方法
CN110825755B (zh) 区块链的共识方法、共识节点、电子设备、存储介质
CN110570196A (zh) 交易数据处理方法、装置、终端设备以及存储介质
CN111259078A (zh) 区块链共识方法、装置、计算机设备和存储介质
GB2539430A (en) Digital token exchange system
CN110163755B (zh) 基于区块链的数据压缩、查询方法及装置和电子设备
CN111382164B (zh) 一种基于区块链网络的业务处理方法
CN108572986B (zh) 一种数据更新的方法及节点设备
CN111698094B (zh) 一种基于区块链系统的共识方法及区块链系统
CN111163130B (zh) 一种网络服务系统及其数据传输方法
CN110659905B (zh) 交易验证方法、装置、终端设备以及存储介质
CN110599177A (zh) 一种交易验证方法及相关设备
TW202101350A (zh) 基於處理模組跨鏈發送可認證訊息的方法和裝置
CN111046110B (zh) 用于区块链系统的节点管理的方法、节点和计算设备
CN113810465B (zh) 一种异步二元共识方法及装置
CN111416709B (zh) 基于区块链系统的投票方法、装置、设备及存储介质
CN110910000A (zh) 一种区块链资产管理方法和装置
CN111292190A (zh) 交易生成方法、区块创建方法及相关装置、设备
CN113794576B (zh) 一种可再投票的二元共识方法及装置
CN110928952A (zh) 基于区块链的数据同步方法及装置
CN107577700A (zh) 数据库容灾的处理方法及装置
JP2024506093A (ja) クロスチェーントランザクション処理方法と装置、電子機器及びコンピュータプログラム

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