CN110601834B - 一种共识方法、装置、设备及可读存储介质 - Google Patents

一种共识方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN110601834B
CN110601834B CN201910938939.5A CN201910938939A CN110601834B CN 110601834 B CN110601834 B CN 110601834B CN 201910938939 A CN201910938939 A CN 201910938939A CN 110601834 B CN110601834 B CN 110601834B
Authority
CN
China
Prior art keywords
node
verification
parameter
determining
target
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.)
Active
Application number
CN201910938939.5A
Other languages
English (en)
Other versions
CN110601834A (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.)
Shenzhen Onething Technology Co Ltd
Shenzhen Xunlei Network Technology Co Ltd
Original Assignee
Shenzhen Onething Technology Co Ltd
Shenzhen Xunlei Network 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 Shenzhen Onething Technology Co Ltd, Shenzhen Xunlei Network Technology Co Ltd filed Critical Shenzhen Onething Technology Co Ltd
Priority to CN201910938939.5A priority Critical patent/CN110601834B/zh
Publication of CN110601834A publication Critical patent/CN110601834A/zh
Application granted granted Critical
Publication of CN110601834B publication Critical patent/CN110601834B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • 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
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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
    • 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 Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种共识方法。本申请还公开了一种共识装置、设备及可读存储介质。本申请在当前区块高度符合预设共识条件,则将加入当前交易信息公证池的节点确定为目标节点;分别获取每个目标节点对应的第一参数;第一参数是每个目标节点利用VRF随机函数对自身私钥和公开随机数处理得到的随机数;将第一参数符合预设验证条件的目标节点确定为验证节点;根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点,以使执行节点负责出块当前交易信息。本申请利用VRF随机函数满足了共识机制的去中心化、公平性、随机性和公开验证性;并降低了共识方法的计算量,避免了计算机资源的浪费。

Description

一种共识方法、装置、设备及可读存储介质
技术领域
本申请涉及区块链技术领域,特别涉及一种共识方法、装置、设备及可读存储介质。
背景技术
区块链作为一种新型的分布式系统技术,共识机制是其中极其重要的一环。通过共识机制使得该分布式系统中各个节点之间对数据能够达成一致性的认识,从而保证数据存储的一致性。随着区块链技术的发展,产生了多种多样的共识机制,其中具有代表性的是POW共识机制。
POW共识机制主要是通过节点计算符合难度要求的block Hash来确认区块,俗称“挖矿”。其能够充分体现去中心化的公平性,任何节点都可自由加入,并基于算力来获得奖励。然而众所周知的是,POW共识机制的计算量巨大,而巨大的算力是用来进行实际意义并不大的Hash运算,如此将带来巨大的计算机资源浪费。
因此,如何降低共识机制的计算量,是本领域技术人员需要解决的问题。
发明内容
本申请的主要目的在于提供一种共识方法、装置、设备及可读存储介质,旨在解决现有共识机制计算量大的技术问题。
为实现上述目的,本申请提供了一种共识方法,包括:
若当前区块高度符合预设共识条件,则将加入当前交易信息公证池的节点确定为目标节点;
分别获取每个目标节点对应的第一参数;第一参数是每个目标节点利用VRF随机函数对自身私钥和公开随机数处理得到的随机数;
将第一参数符合预设验证条件的目标节点确定为验证节点;
根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点。
优选地,将加入当前交易信息公证池的节点确定为目标节点,包括:
将以代币质押方式加入当前交易信息公证池的节点确定为目标节点。
优选地,将第一参数符合预设验证条件的目标节点确定为验证节点包括:
确定所有目标节点的数量,并计算预设验证节点的数量与所有目标节点的数量的比值;
根据每个目标节点对应的第一参数分别计算每个目标节点对应的第二参数;
将第二参数小于比值的目标节点确定为验证节点。
优选地,根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点之前,还包括:
在当前区块链网络中确定中转节点;
利用中转节点收集各个验证节点根据自身对应的第一参数计算得到的隐藏参数,并将收集有所有隐藏参数的第一列表广播至各个验证节点,以使各个验证节点发送自身对应的第一参数,根据自身私钥计算得到的当前交易信息的VRF证明,以及计算隐藏参数所用的随机数;
利用中转节点收集各个验证节点发送的第一参数、当前交易信息的VRF证明,以及计算隐藏参数所用的随机数,并将收集有所有第一参数,所有VRF证明,以及所有计算隐藏参数所用的随机数的第二列表广播至各个验证节点,以使各个验证节点验证每个隐藏参数和每个VRF证明。
优选地,各个验证节点根据自身对应的第一参数计算隐藏参数,包括:
各个验证节点按照预设第一公式计算隐藏参数,预设第一公式为:
Figure BDA0002222361370000021
i为各个验证节点的标识,Ci表示验证节点i根据自身对应的第一参数ri计算得到的隐藏参数,g、h和n均为系统参数,j为随机数。
优选地,还包括:
若各个验证节点在预设第一时间段内未接收到第一列表,或在预设第二时间段内未接收到第二列表,则执行将加入当前交易信息公证池的节点确定为目标节点的步骤。
优选地,根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点,包括:
获取各个验证节点按照预设第二公式计算得到的第三参数;
在所有第三参数中确定最大第三参数,并将最大第三参数对应的验证节点确定为执行节点;
其中,预设第二公式为:
Figure BDA0002222361370000031
其中,i为各个验证节点的标识,a和b预设系数;Oi表示验证节点i对应的第三参数;Pi表示验证节点i质押的代币数量,Pmax表示质押代币数量最多的验证节点质押的代币数量;φi表示验证节点i对应的第二参数,r表示验证节点i对应的第一参数,max表示验证节点i对应的第一参数对应的目标值。
优选地,将最大第三参数对应的验证节点确定为执行节点之前,还包括:
若最大第三参数存在多个,则将最大第三参数确定为目标参数;
分别计算每个目标参数对应的哈希值;
在所有哈希值中确定最大哈希值,并将最大哈希值对应的目标参数确定为最大第三参数。
优选地,执行节点打包当前交易信息,包括:
执行节点将当前交易信息和当前交易信息的所有VRF证明打包为区块,并将区块广播至当前区块链网络中的所有节点。
优选地,将区块广播至当前区块链网络中的所有节点之后,还包括:
若当前区块链网络中的所有节点在预设第三时间段内未接收到区块,则执行将加入当前交易信息公证池的节点确定为目标节点的步骤。
优选地,根据每个目标节点对应的第一参数分别计算每个目标节点对应的第二参数,包括:
针对任一个目标节点对应的第一参数,确定当前第一参数所属数制的位数;
将数制中具有位数的最大数值确定为当前第一参数对应的目标值;
将当前第一参数与目标值的比值确定为目标节点对应的第二参数。
为实现上述目的,本申请进一步提供了一种共识装置,包括:
第一确定模块,用于若当前区块高度符合预设共识条件,则将加入当前交易信息的公证池的节点确定为目标节点;
获取模块,用于分别获取每个目标节点对应的第一参数;第一参数是每个目标节点利用VRF随机函数对自身私钥和公开随机数处理得到的随机数;
第二确定模块,用于将第一参数符合预设验证条件的目标节点确定为验证节点;
第三确定模块,用于根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点。
优选地,第一确定模块具体用于:
将以代币质押方式加入当前交易信息公证池的节点确定为目标节点。
优选地,第二确定模块包括:
第一计算单元,用于确定所有目标节点的数量,并计算预设验证节点的数量与所有目标节点的数量的比值;
第二计算单元,用于根据每个目标节点对应的第一参数分别计算每个目标节点对应的第二参数;
验证节点确定单元,用于将第二参数小于比值的目标节点确定为验证节点。
优选地,还包括:
第四确定模块,用于在当前区块链网络中确定中转节点;
第一收集模块,用于利用中转节点收集各个验证节点根据自身对应的第一参数计算得到的隐藏参数,并将收集有所有隐藏参数的第一列表广播至各个验证节点,以使各个验证节点发送自身对应的第一参数,根据自身私钥计算得到的当前交易信息的VRF证明,以及计算隐藏参数所用的随机数;
第二收集模块,用于利用中转节点收集各个验证节点发送的第一参数、当前交易信息的VRF证明,以及计算隐藏参数所用的随机数,并将收集有所有第一参数,所有VRF证明,以及所有计算隐藏参数所用的随机数的第二列表广播至各个验证节点,以使各个验证节点验证每个隐藏参数和每个VRF证明。
优选地,第一收集模块具体用于:
各个验证节点按照预设第一公式计算隐藏参数,预设第一公式为:
Figure BDA0002222361370000051
i为各个验证节点的标识,Ci表示验证节点i根据自身对应的第一参数ri计算得到的隐藏参数,g、h和n均为系统参数,j为随机数。
优选地,还包括:
第一容错模块,用于若各个验证节点在预设第一时间段内未接收到第一列表,或在预设第二时间段内未接收到第二列表,则执行将加入当前交易信息公证池的节点确定为目标节点的步骤。
优选地,第三确定模块包括:
获取单元,用于获取各个验证节点按照预设第二公式计算得到的第三参数;
第一确定单元,用于在所有第三参数中确定最大第三参数,并将最大第三参数对应的验证节点确定为执行节点;
其中,预设第二公式为:
Figure BDA0002222361370000052
其中,i为各个验证节点的标识,a和b预设系数;Oi表示验证节点i对应的第三参数;Pi表示验证节点i质押的代币数量,Pmax表示质押代币数量最多的验证节点质押的代币数量;φi表示验证节点i对应的第二参数,r表示验证节点i对应的第一参数,max表示验证节点i对应的第一参数对应的目标值。
优选地,第三确定模块还包括:
第二确定单元,用于若最大第三参数存在多个,则将最大第三参数确定为目标参数;
第三计算单元,用于分别计算每个目标参数对应的哈希值;
第三确定单元,用于在所有哈希值中确定最大哈希值,并将最大哈希值对应的目标参数确定为最大第三参数。
优选地,第三确定模块具体用于:
使执行节点将当前交易信息和当前交易信息的所有VRF证明打包为区块,并将区块广播至当前区块链网络中的所有节点。
优选地,还包括:
第二容错模块,用于若当前区块链网络中的所有节点在预设第三时间段内未接收到区块,则执行将加入当前交易信息公证池的节点确定为目标节点的步骤。
为实现上述目的,本申请进一步提供了一种共识设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的共识方法。
为实现上述目的,本申请进一步提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的共识方法。
在本申请中,若当前区块高度符合预设共识条件,也就是达到当前区块链网络预设的共识触发条件时,当前区块链网络中的各个节点自由加入当前交易信息的公证池,此时将加入公证池的节点确定为目标节点,这些目标节点即为想要对当前交易信息进行打包的节点。加入公证池的这些目标节点各自利用VRF随机函数对自身私钥和公开随机数处理,从而可得到自身对应的第一参数;若第一参数符合预设验证条件,则目标节点有可能对当前交易信息进行打包,此时将有可能对当前交易信息进行打包的节点确定为验证节点。进一步地,根据每个验证节点对应的第一参数,可在所有验证节点中确定执行节点,而该执行节点即为负责出块当前交易信息的节点。由此过程通过层层选拔,可在区块链网络中为交易信息确定负责出块的执行节点,从而完成当前交易信息的入块。
其中,加入公证池的目标节点各自利用VRF随机函数对自身私钥和公开随机数处理得到第一参数,可满足共识机制的去中心化、公平性和随机性;并且,VRF随机函数对于任意输入,都会存在对应的输出,且该输出具备可公开验证性,因此目标节点计算得到的第一参数具备可公开验证性,也就是能够被其他节点公开验证,即满足去中心化的共识和安全性。同时,VRF随机函数相比于现有的POW共识机制,其验证计算量远小于Hash运算,因此可降低共识方法的计算量,避免计算机资源的浪费。
相应地,本申请提供的一种共识装置、设备及可读存储介质,也同样具有上述技术效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的第一种共识方法流程图;
图2为图1中S103步骤的细化流程图;
图3为本申请公开的第二种共识方法流程图;
图4为图3中S308步骤的细化流程图;
图5为本申请公开的一种共识装置示意图
图6为本申请公开的一种共识设备示意图;
图7为本申请公开的另一种共识设备示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
参见图1,图1为本申请实施例公开的第一种共识方法流程图。在一实施例中,该方法包括:
S101、若当前区块高度符合预设共识条件,则将加入当前交易信息公证池的节点确定为目标节点;
在一种具体实施方式中,将加入当前交易信息公证池的节点确定为目标节点,包括:将以代币质押方式加入当前交易信息公证池的节点确定为目标节点。以代币质押方式加入公证池,可增加验证交易信息的成本,从而可有效防止女巫攻击。
在本实施例中,网络中的各个节点可通过代币质押方式自由参与共识,整个过程公平公开,具备共识机制的去中心化和公平性。
需要说明的是,预设共识条件为区块链网络中设置的共识流程的触发条件,一般为:当区块链网络中的区块高度达到某个数值时,触发共识流程,即执行“将加入当前交易信息公证池的节点确定为目标节点”步骤。如:当区块链网络中的区块高度为10、20、30、40……时,触发本实施例中的S101的执行。当然,预设共识条件可根据实际情况灵活调整,具体可参照现有技术中的相关设置。一般是周期性触发,若每个区块高度都触发,将会增加无谓的计算开销。
S102、分别获取每个目标节点对应的第一参数;
其中,第一参数是每个目标节点利用VRF(verifiable random function,可验证随机函数)随机函数对自身私钥和公开随机数处理得到的可验证的随机数。第一参数的具体计算过程可参见现有技术中VRF随机函数的算法原理,为避免累赘,在此不再赘述。
S103、将第一参数符合预设验证条件的目标节点确定为验证节点;
S104、根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点。
需要说明的是,本实施例中所说的共识流程主要包括对负责出块的执行节点的确定流程,区块链系统中的各验证人节点对区块所打包交易的验证并不是本文说明的重点;执行节点确定之后,在下一个新的执行节点确定之前,都负责该周期内的区块的出块。
在本实施例中,若当前区块高度符合预设共识条件,也就是达到当前区块链网络预设的共识触发条件(如当前区块高度为H)时,当前区块链网络中的各个节点自由加入当前交易信息的公证池,此时将加入公证池的节点确定为目标节点,这些目标节点即为想要对当前交易信息进行打包的节点。可以理解的是,若共识触发条件为当前区块高度为H,那么当前共识方法打包得到的区块即为H。
加入公证池的这些目标节点各自利用VRF随机函数对自身私钥和公开随机数处理,从而可得到自身对应的第一参数;若第一参数符合预设验证条件,则目标节点有可能对当前交易信息进行打包,此时将有可能对当前交易信息进行打包的节点确定为验证节点。进一步地,根据每个验证节点对应的第一参数,可在所有验证节点中确定执行节点,而该执行节点即为对当前交易信息进行打包的节点,故执行节点打包当前交易信息。由此过程通过层层选拔,可在区块链网络中为交易信息确定打包的执行节点,从而完成当前交易信息的入块。
需要说明的是,任意一个节点均可以利用VRF随机函数产生一对密钥,即公钥和私钥。并且,可利用VRF随机函数对自身私钥和任意输入进行处理,从而获得当前输入的VRF证明;而任意第三方均可以利用与私钥对应的公钥对该VRF证明进行验证。因此VRF随机函数既具备数学上的严谨性,又具备安全性和随机性。故而各个目标节点利用VRF随机函数对自身私钥和公开随机数处理得到的第一参数既具备数学上的严谨性,又具备安全性和随机性。VRF随机函数的随机性,也可以有效防止女巫攻击。
请参见图2,图2为图1中S103步骤的细化流程图。图1中的S103的具体实现步骤包括:
S201、确定所有目标节点的数量,并计算预设验证节点的数量与所有目标节点的数量的比值;
S202、根据每个目标节点对应的第一参数分别计算每个目标节点对应的第二参数;
S203、将第二参数小于比值的目标节点确定为验证节点。
具体的,预设验证节点的数量即为当前区块链网络中设置的可以对一个交易信息进行验证的节点数量,该数量设置后为定值,但可以根据实际情况灵活调整。若所有目标节点的数量为N,而预设验证节点的数量为M,那么其比值为M/N。
在一种具体实施方式中,根据每个目标节点对应的第一参数分别计算每个目标节点对应的第二参数,包括:针对任一个目标节点对应的第一参数,确定当前第一参数所属数制的位数;将数制中具有位数的最大数值确定为当前第一参数对应的目标值;将当前第一参数与目标值的比值确定为目标节点对应的第二参数。
也就是说,计算每个目标节点对应的第二参数,可按照下述公式进行计算:
Figure BDA0002222361370000101
其中,φi表示验证节点i对应的第二参数,r表示验证节点i对应的第一参数,max表示验证节点i对应的第一参数r对应的目标值。若第一参数r为二进制数,若第一参数r为两位的二进制数,那么max即为“二进制数11”;若第一参数r为8位的二进制数,那么max即为“二进制数11111111”。
其中,若目标节点对应的第二参数小于比值,则表明目标节点对应的第一参数符合预设验证条件,也就是目标节点可以为当前交易的验证节点,否则目标节点对应的第一参数不符合预设验证条件,目标节点就不能参与当前交易的验证。
在本实施例中,加入公证池的目标节点各自利用VRF随机函数对自身私钥和公开随机数处理得到第一参数,可满足共识机制的去中心化、公平性和随机性;并且,VRF随机函数对于任意输入,都会存在对应的输出,且该输出具备可公开验证性,因此目标节点计算得到的第一参数具备可公开验证性,也就是能够被其他节点公开验证,即满足去中心化的共识和安全性。同时,VRF随机函数相比于现有的POW共识机制,其验证计算量远小于Hash运算,因此可降低共识方法的计算量,避免计算机资源的浪费。
参见图3,图3为本申请实施例公开的第二种共识方法流程图。在二实施例中,该方法包括:
S301、若当前区块高度符合预设共识条件,则将加入当前交易信息公证池的节点确定为目标节点;
S302、分别判断每个目标节点对应的第一参数是否符合预设验证条件;若是,则执行S304;若否,则执行S303;
其中,第一参数是每个目标节点利用VRF随机函数对自身私钥和公开随机数处理得到的随机数。
S303、从当前交易信息公证池中删除第一参数不符合预设验证条件的目标节点;
S304、将第一参数符合预设验证条件的目标节点确定为验证节点;
S305、在当前区块链网络中确定中转节点;
S306、利用中转节点收集各个验证节点根据自身对应的第一参数计算得到的隐藏参数,并将收集有所有隐藏参数的第一列表广播至各个验证节点,以使各个验证节点发送自身对应的第一参数,根据自身私钥计算得到的当前交易信息的VRF证明,以及计算隐藏参数所用的随机数;
在本实施例中,各个验证节点根据自身对应的第一参数计算隐藏参数,包括:各个验证节点按照预设第一公式计算隐藏参数,预设第一公式为:
Figure BDA0002222361370000111
i为各个验证节点的标识,Ci表示验证节点i根据自身对应的第一参数ri计算得到的隐藏参数,g、h和n均为系统参数,j为随机数。
具体的,首先收集并广播隐藏参数,可以提高安全性。隐藏参数C即为一个验证节点公布其拥有第一参数r的承诺,而后可证明第一参数r与隐藏参数C匹配。通过隐藏参数C不能反推出第一参数r,因此使用隐藏参数C可使中转节点在收集第一列表后,确定各个验证节点对应的第一参数r,从而使各个验证节点或其他节点无从作恶。
在一种具体实施方式中,中转节点为提出当前交易的节点。例如:区块链网络中的节点A提出区块H对应的交易信息,且区块高度H符合当前网络中的预设共识条件,则触发共识流程。对节点A提出的交易信息完成共识流程后,将会得到区块H,该共识流程中的中转节点即为节点A。
S307、利用中转节点收集各个验证节点发送的第一参数、当前交易信息的VRF证明,以及计算隐藏参数所用的随机数,并将收集有所有第一参数,所有VRF证明,以及所有计算隐藏参数所用的随机数的第二列表广播至各个验证节点,以使各个验证节点验证每个隐藏参数和每个VRF证明。
需要说明的是,当中转节点收集所有验证节点对应的隐藏参数后,可保障各个验证节点对应的第一参数不被更改,因此可提高安全性。进而中转节点可转发各个验证节点发送的第一参数和对当前交易信息的VRF证明,以便完成每个隐藏参数和每个VRF证明的验证操作。其中,由于隐藏参数的计算过程需要用到随机数j,那么隐藏参数的验证操作必然也需要用到随机数j,因此各个验证节点向中转节点发送第一参数和当前交易信息的VRF证明时,还同时发送了计算隐藏参数所用的随机数j。
S308、根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点。
其中,为了提高共识方法的容错率,本实施例还包括:若各个验证节点在预设第一时间段内未接收到第一列表,或在预设第二时间段内未接收到第二列表,则执行将加入当前交易信息公证池的节点确定为目标节点的步骤。
也就是说,若各个验证节点在预设第一时间段内未接收到第一列表,或在预设第二时间段内未接收到第二列表,则表明当前共识流程出现故障,因此按照本实施例提供的方法重新进行共识。当重新进行共识时,中转节点会更换。例如:当前中转节点为NH,若共识流程出现故障,则重新进行共识时,中转节点会更改为NH-1
请参见图4,图4为图3中S308步骤的细化流程图。图3中的S308的具体实现步骤包括:
S401、获取各个验证节点按照预设第二公式计算得到的第三参数;
在本实施例中,预设第二公式为:
Figure BDA0002222361370000131
其中,i为各个验证节点的标识,a和b预设系数;Oi表示验证节点i对应的第三参数;Pi表示验证节点i质押的代币数量,Pmax表示质押代币数量最多的验证节点质押的代币数量;φi表示验证节点i对应的第二参数,r表示验证节点i对应的第一参数,max表示验证节点i对应的第一参数对应的目标值。
具体的,a可取值为0.8,b可取值为0.2。当然,a和b的取值可以根据实际应用情况灵活调整,其中a+b=1,a和b可看作权重,数值越大,则与其相乘的参数所占的比重越大。当b为0时,完全取决于VRF随机数结果;当a为0时,完全取决于质押的代币数量。通过调节a和b的取值,可以调节质押代币数量的占比,从而可鼓励或压制竞选节点质押代币,达到调节代币流通的目的。
S402、在所有第三参数中确定最大第三参数,若最大第三参数存在多个,则将最大第三参数确定为目标参数;
S403、分别计算每个目标参数对应的哈希值;
具体的,每个目标参数对应的哈希值可以根据目标参数对应的验证节点的ID和公开随机数确定,也就是对目标参数对应的验证节点的ID和公开随机数进行哈希运算,以获得目标参数对应的哈希值。这里的公开随机数即用于计算第一参数的公开随机数。
S404、在所有哈希值中确定最大哈希值,并将最大哈希值对应的目标参数确定为最大第三参数;
S405、将最大第三参数对应的验证节点确定为执行节点,以使执行节点打包当前交易信息。
可以理解的是,由于图3中的S308步骤和图1中的S104步骤相同,因此图4也是图1中S104步骤的细化流程图。按照图4提供的方法,最终可确定出唯一的执行节点来打包当前交易信息。这样共识流程在执行过程中不会分叉,从而可提高区块链网络的稳定性。
具体的,执行节点打包当前交易信息,包括:执行节点将当前交易信息和当前交易信息的所有VRF证明打包为区块,并将区块广播至当前区块链网络中的所有节点。当前交易信息的所有VRF证明包括:各个验证节点利用VRF随机函数对自身私钥和当前交易信息进行处理得到的VRF证明。
其中,为了提高共识方法的容错率,将区块广播至当前区块链网络中的所有节点之后,还包括:若当前区块链网络中的所有节点在预设第三时间段内未接收到区块,则执行将加入当前交易信息公证池的节点确定为目标节点的步骤。
也就是说,若所有节点在预设第三时间段内未接收到区块,则表明当前共识流程出现故障,因此按照本实施例提供的方法重新进行共识。当重新进行共识时,中转节点会更换。例如:当前中转节点为NH,若共识流程出现故障,则重新进行共识时,中转节点会更改为NH-1
需要说明的是,本实施例中的其他实现步骤与上述实施例相同或类似,故本实施例在此不再赘述。
由上可见,本实施例可满足共识机制的去中心化、公平性、随机性和可公开验证性,也满足去中心化的共识和安全性。同时,VRF随机函数还可以降低共识方法的计算量,避免计算机资源的浪费。
下面对本申请实施例提供的一种共识装置进行介绍,下文描述的一种共识装置与上文描述的一种共识方法可以相互参照。
参见图5,图5为本申请实施例公开的一种共识装置示意图。在三实施例中,该装置包括:
第一确定模块501,用于若当前区块高度符合预设共识条件,则将加入当前交易信息的公证池的节点确定为目标节点;
获取模块502,用于分别获取每个目标节点对应的第一参数;第一参数是每个目标节点利用VRF随机函数对自身私钥和公开随机数处理得到的随机数;
第二确定模块503,用于将第一参数符合预设验证条件的目标节点确定为验证节点;
第三确定模块504,用于根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点。
在一种具体实施方式中,第一确定模块具体用于:
将以代币质押方式加入当前交易信息公证池的节点确定为目标节点。
在一种具体实施方式中,第二确定模块包括:
第一计算单元,用于确定所有目标节点的数量,并计算预设验证节点的数量与所有目标节点的数量的比值;
第二计算单元,用于根据每个目标节点对应的第一参数分别计算每个目标节点对应的第二参数;
验证节点确定单元,用于将第二参数小于比值的目标节点确定为验证节点。
在一种具体实施方式中,还包括:
第四确定模块,用于在当前区块链网络中确定中转节点;
第一收集模块,用于利用中转节点收集各个验证节点根据自身对应的第一参数计算得到的隐藏参数,并将收集有所有隐藏参数的第一列表广播至各个验证节点,以使各个验证节点发送自身对应的第一参数,根据自身私钥计算得到的当前交易信息的VRF证明,以及计算隐藏参数所用的随机数;
第二收集模块,用于利用中转节点收集各个验证节点发送的第一参数、当前交易信息的VRF证明,以及计算隐藏参数所用的随机数,并将收集有所有第一参数,所有VRF证明,以及所有计算隐藏参数所用的随机数的第二列表广播至各个验证节点,以使各个验证节点验证每个隐藏参数和每个VRF证明。
在一种具体实施方式中,第一收集模块具体用于:
各个验证节点按照预设第一公式计算隐藏参数,预设第一公式为:
Figure BDA0002222361370000151
i为各个验证节点的标识,Ci表示验证节点i根据自身对应的第一参数ri计算得到的隐藏参数,g、h和n均为系统参数,j为随机数。
在一种具体实施方式中,还包括:
第一容错模块,用于若各个验证节点在预设第一时间段内未接收到第一列表,或在预设第二时间段内未接收到第二列表,则执行将加入当前交易信息公证池的节点确定为目标节点的步骤。
在一种具体实施方式中,第三确定模块包括:
获取单元,用于获取各个验证节点按照预设第二公式计算得到的第三参数;
第一确定单元,用于在所有第三参数中确定最大第三参数,并将最大第三参数对应的验证节点确定为执行节点;
其中,预设第二公式为:
Figure BDA0002222361370000161
其中,i为各个验证节点的标识,a和b预设系数;Oi表示验证节点i对应的第三参数;Pi表示验证节点i质押的代币数量,Pmax表示质押代币数量最多的验证节点质押的代币数量;φi表示验证节点i对应的第二参数,r表示验证节点i对应的第一参数,max表示验证节点i对应的第一参数对应的目标值。
在一种具体实施方式中,第三确定模块还包括:
第二确定单元,用于若最大第三参数存在多个,则将最大第三参数确定为目标参数;
第三计算单元,用于分别计算每个目标参数对应的哈希值;
第三确定单元,用于在所有哈希值中确定最大哈希值,并将最大哈希值对应的目标参数确定为最大第三参数。
在一种具体实施方式中,第三确定模块具体用于:
使执行节点将当前交易信息和当前交易信息的所有VRF证明打包为区块,并将区块广播至当前区块链网络中的所有节点。
在一种具体实施方式中,还包括:
第二容错模块,用于若当前区块链网络中的所有节点在预设第三时间段内未接收到区块,则执行将加入当前交易信息公证池的节点确定为目标节点的步骤。
在一种具体实施方式中,第二计算单元具体用于:
针对任一个目标节点对应的第一参数,确定当前第一参数所属数制的位数;
将数制中具有位数的最大数值确定为当前第一参数对应的目标值;
将当前第一参数与目标值的比值确定为目标节点对应的第二参数。
其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本实施例提供了一种共识装置,该装置利用VRF随机函数满足了共识机制的去中心化、公平性、随机性和公开验证性;并降低了共识方法的计算量,避免了计算机资源的浪费。
下面对本申请实施例提供的一种共识设备进行介绍,下文描述的一种共识设备与上文描述的一种共识方法及装置可以相互参照。
参见图6,图6为本申请实施例公开的一种共识设备示意图。在四实施例中,该设备包括:
存储器601,用于保存计算机程序;
处理器602,用于执行所述计算机程序,以实现上述任意实施例公开的共识方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
参见图7,图7为本申请实施例公开的另一种共识设备示意图。该共识设备可以包括存储器11、处理器12和总线13。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是共识设备的内部存储单元,例如该共识设备的硬盘。存储器11在另一些实施例中也可以是共识设备的外部存储设备,例如共识设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。进一步地,存储器11还可以既包括共识设备的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于共识设备的应用软件及各类数据,例如共识程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行共识程序等。
该总线13可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,共识设备还可以包括网络接口,网络接口可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该设备与其他电子设备之间建立通信连接。
可选地,该设备还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在该设备中处理的信息以及用于显示可视化的用户界面。
图7仅示出了具有组件11-13的共识设备,本领域技术人员可以理解的是,图7示出的结构并不构成对设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种共识方法、装置及设备可以相互参照。
一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的共识方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (13)

1.一种共识方法,其特征在于,包括:
若当前区块高度符合预设共识条件,则将加入当前交易信息公证池的节点确定为目标节点;
分别获取每个目标节点对应的第一参数;所述第一参数是每个目标节点利用VRF随机函数对自身私钥和公开随机数处理得到的随机数;
将第一参数符合预设验证条件的目标节点确定为验证节点;
根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点;
其中,所述根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点,包括:
获取各个验证节点按照预设第二公式计算得到的第三参数;
在所有第三参数中确定最大第三参数,并将所述最大第三参数对应的验证节点确定为所述执行节点;
其中,所述预设第二公式为:
Figure FDA0003826904350000011
其中,i为各个验证节点的标识,a和b预设系数;Oi表示验证节点i对应的第三参数;Pi表示验证节点i质押的代币数量,Pmax表示质押代币数量最多的验证节点质押的代币数量;φi表示验证节点i对应的第二参数,r表示验证节点i对应的第一参数,max表示验证节点i对应的第一参数对应的目标值。
2.根据权利要求1所述的共识方法,其特征在于,所述将加入当前交易信息公证池的节点确定为目标节点,包括:
将以代币质押方式加入所述当前交易信息公证池的节点确定为所述目标节点。
3.根据权利要求1所述的共识方法,其特征在于,所述将第一参数符合预设验证条件的目标节点确定为验证节点,包括:
确定所有目标节点的数量,并计算预设验证节点的数量与所有目标节点的数量的比值;
根据每个目标节点对应的第一参数分别计算每个目标节点对应的第二参数;
将第二参数小于所述比值的目标节点确定为验证节点。
4.根据权利要求3所述的共识方法,其特征在于,所述根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点之前,还包括:
在当前区块链网络中确定中转节点;
利用所述中转节点收集各个验证节点根据自身对应的第一参数计算得到的隐藏参数,并将收集有所有隐藏参数的第一列表广播至各个验证节点,以使各个验证节点发送自身对应的第一参数,根据自身私钥计算得到的当前交易信息的VRF证明,以及计算所述隐藏参数所用的随机数;
利用所述中转节点收集各个验证节点发送的第一参数、当前交易信息的VRF证明,以及计算所述隐藏参数所用的随机数,并将收集有所有第一参数,所有VRF证明,以及所有计算所述隐藏参数所用的随机数的第二列表广播至各个验证节点,以使各个验证节点验证每个隐藏参数和每个VRF证明。
5.根据权利要求4所述的共识方法,其特征在于,各个验证节点根据自身对应的第一参数计算隐藏参数,包括:
各个验证节点按照预设第一公式计算隐藏参数,所述预设第一公式为:
Figure FDA0003826904350000021
i为各个验证节点的标识,Ci表示验证节点i根据自身对应的第一参数ri计算得到的隐藏参数,g、h和n均为系统参数,j为随机数。
6.根据权利要求4所述的共识方法,其特征在于,还包括:
若各个验证节点在预设第一时间段内未接收到所述第一列表,或在预设第二时间段内未接收到所述第二列表,则执行所述将加入当前交易信息公证池的节点确定为目标节点的步骤。
7.根据权利要求4所述的共识方法,其特征在于,所述将所述最大第三参数对应的验证节点确定为所述执行节点之前,还包括:
若所述最大第三参数存在多个,则将所述最大第三参数确定为目标参数;
分别计算每个目标参数对应的哈希值;
在所有哈希值中确定最大哈希值,并将所述最大哈希值对应的目标参数确定为所述最大第三参数。
8.根据权利要求7所述的共识方法,其特征在于,所述执行节点打包当前交易信息,包括:
所述执行节点将当前交易信息和当前交易信息的所有VRF证明打包为区块,并将所述区块广播至当前区块链网络中的所有节点。
9.根据权利要求8所述的共识方法,其特征在于,所述将所述区块广播至当前区块链网络中的所有节点之后,还包括:
若当前区块链网络中的所有节点在预设第三时间段内未接收到所述区块,则执行所述将加入当前交易信息公证池的节点确定为目标节点的步骤。
10.根据权利要求3所述的共识方法,其特征在于,所述根据每个目标节点对应的第一参数分别计算每个目标节点对应的第二参数,包括:
针对任一个目标节点对应的第一参数,确定当前第一参数所属数制的位数;
将所述数制中具有所述位数的最大数值确定为所述当前第一参数对应的目标值;
将所述当前第一参数与所述目标值的比值确定为所述目标节点对应的第二参数。
11.一种共识装置,其特征在于,包括:
第一确定模块,用于若当前区块高度符合预设共识条件,则将加入当前交易信息的公证池的节点确定为目标节点;
获取模块,用于分别获取每个目标节点对应的第一参数;所述第一参数是每个目标节点利用VRF随机函数对自身私钥和公开随机数处理得到的随机数;
第二确定模块,用于将第一参数符合预设验证条件的目标节点确定为验证节点;
第三确定模块,用于根据每个验证节点对应的第一参数在所有验证节点中确定负责出块的执行节点;
其中,第三确定模块包括:
获取单元,用于获取各个验证节点按照预设第二公式计算得到的第三参数;
第一确定单元,用于在所有第三参数中确定最大第三参数,并将所述最大第三参数对应的验证节点确定为所述执行节点;
其中,所述预设第二公式为:
Figure FDA0003826904350000041
其中,i为各个验证节点的标识,a和b预设系数;Oi表示验证节点i对应的第三参数;Pi表示验证节点i质押的代币数量,Pmax表示质押代币数量最多的验证节点质押的代币数量;φi表示验证节点i对应的第二参数,r表示验证节点i对应的第一参数,max表示验证节点i对应的第一参数对应的目标值。
12.一种共识设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至10任一项所述的共识方法。
13.一种可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至10任一项所述的共识方法。
CN201910938939.5A 2019-09-30 2019-09-30 一种共识方法、装置、设备及可读存储介质 Active CN110601834B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910938939.5A CN110601834B (zh) 2019-09-30 2019-09-30 一种共识方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910938939.5A CN110601834B (zh) 2019-09-30 2019-09-30 一种共识方法、装置、设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN110601834A CN110601834A (zh) 2019-12-20
CN110601834B true CN110601834B (zh) 2023-02-10

Family

ID=68865041

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910938939.5A Active CN110601834B (zh) 2019-09-30 2019-09-30 一种共识方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN110601834B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230034210A (ko) * 2020-07-07 2023-03-09 라인플러스 주식회사 랜덤 샘플링 bft 합의 방법과 시스템 및 컴퓨터 프로그램

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109523260A (zh) * 2018-11-28 2019-03-26 段红 一种动态节点选举的高并发共识机制

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108960794A (zh) * 2018-07-14 2018-12-07 上海分布信息科技有限公司 一种区块生成方法及区块生成系统
CN109525398A (zh) * 2018-10-18 2019-03-26 尚维斯 一种实现去中心化权力证明共识的方法
WO2019072262A2 (en) * 2018-11-07 2019-04-18 Alibaba Group Holding Limited RECOVERING CHILLED TRANSACTION INFORMATION IN CONFIDENTIAL BLOCK CHAIN TRANSACTIONS
CN109785130B (zh) * 2018-12-17 2021-05-28 金蝶软件(中国)有限公司 区块链随机共识方法、装置、计算机设备和存储介质
CN109684798A (zh) * 2019-01-04 2019-04-26 深圳银链科技有限公司 一种基于公有区块链的共识算法、设备及存储介质
CN110198213B (zh) * 2019-04-01 2020-07-03 上海能链众合科技有限公司 一种基于秘密共享随机数共识算法的系统
CN110011814B (zh) * 2019-04-16 2019-10-15 北京艾摩瑞策科技有限公司 一种可验证的DPoS共识方法及其系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109523260A (zh) * 2018-11-28 2019-03-26 段红 一种动态节点选举的高并发共识机制

Also Published As

Publication number Publication date
CN110601834A (zh) 2019-12-20

Similar Documents

Publication Publication Date Title
CN110825349B (zh) 随机数生成方法、区块链节点、系统及介质
CN112789824B (zh) 区块链系统及信息传输方法、系统、装置、计算机介质
CN111414373B (zh) 一种共识方法和共识系统
CN111445333B (zh) 区块生成方法、装置、计算机设备以及存储介质
CN110505305B (zh) 一种区块链分片方法、装置及区块链系统
WO2018158936A1 (ja) ブロックチェーン管理装置、ブロックチェーン管理方法及びプログラム
CN109981281B (zh) 基于区块链提案随机共识确定候选元素的方法及装置
CN108848148B (zh) 基于区块链的交易信息确认方法及装置
CN111612600B (zh) 区块链拍卖方法、设备、存储介质及区块链系统
CN110489946B (zh) 基于区块链的版权认证方法、装置、设备和存储介质
CN110543488B (zh) 一种验证节点更新方法、装置及设备
CN110892674A (zh) 区块链的交易生成方法和区块链的块验证方法
CN110247753B (zh) 基于区块链节点网络的出块方法及装置
CN110659905B (zh) 交易验证方法、装置、终端设备以及存储介质
CN109508987B (zh) 一种区块链的构建方法、系统及相关组件
CN111711655A (zh) 一种基于区块链的电子数据存证方法、系统、存储介质及终端
CN110990790B (zh) 一种数据处理方法及设备
CN112162726A (zh) 目标用户确定方法、装置、设备及存储介质
CN110601834B (zh) 一种共识方法、装置、设备及可读存储介质
CN112036878A (zh) 数据处理方法及装置
US20220114276A1 (en) Controlling a data network with respect to a use of a distributed database
CN110224813B (zh) 基于区块链的出块方法及装置
CN116233140A (zh) 基于权重的出块节点确定方法、装置、设备及存储介质
CN110224839B (zh) 应用于区块链上的验证方法及装置
CN110400409B (zh) 基于bls签名算法的门限投票方法、系统及相关设备

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

Effective date of registration: 20210910

Address after: 518000 21 / f-23 / F, block B, building 12, Shenzhen Bay science and technology ecological park, No. 18, South Keji Road, high tech community, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Applicant after: Xunlei Networking Technologies, Ltd.

Applicant after: SHENZHEN ONETHING TECHNOLOGIES Co.,Ltd.

Address before: 518052 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Applicant before: SHENZHEN ONETHING TECHNOLOGIES Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant