公开/公告号CN112564902A
专利类型发明专利
公开/公告日2021-03-26
原文格式PDF
申请/专利权人 苏州市星际云通区块链科技有限公司;
申请/专利号CN202011432621.9
发明设计人 王佳;
申请日2020-12-09
分类号H04L9/08(20060101);
代理机构31335 上海尚象专利代理有限公司;
代理人徐炫
地址 215000 江苏省苏州市相城区高铁新城青龙港路66号领寓商务广场2幢1214室
入库时间 2023-06-19 10:22:47
技术领域
本发明涉及区块链技术领域,具体来说,涉及一种区块链上可验证随机函数的共识方法及其系统。
背景技术
分布式共识算法是分布式系统中保证系统状态一致性的重要技术,是分布式文件系统、分布式数据库的重要基础。区块链采用分布式共识算法在无中心节点控制,又可能存在破坏节点的环境下确立系统状态,从而建立信任。
现有的区块链系统中,主流的共识机制包括工作量证明、权益证明以及授权权益证明;每一种权益证明都有其优缺点。随着区块链技术的发展,组合共识能够适应不同的技术场景,因此,如何找到新的共识算法,成为亟待解决的问题。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中的问题,本发明提出一种区块链上可验证随机函数的共识方法及其系统,以克服现有相关技术所存在的上述技术问题。
本发明的技术方案是这样实现的:
一种区块链上可验证随机函数的共识方法及其系统,步骤如下:
S1:一个区块链节点包括第一服务器、第二服务器和至少一个数据库构成;
S2:第二服务器代替所述第一服务器,从所述数据库中获取共识数据,并根据所述共识数据执行共识,生成共识结果,所述第二服务器将所述共识结果存储在所述数据库中;
S3:通过可验证随机函数的方式选择第一区块链节点组;
S4:第一区块链节点组为所述当前区块链节点组的下一个区块链节点组,第一区块链节点组包括第二数量的区块链节点;
S5:第一区块链节点组通过实用拜占庭算法对第一区块进行共识,共识完成后,第一区块链上链。
一种区块链上可验证随机函数的共识系统,其特征在于,包括区块链节点,所述区块链节点由第一服务器、第二服务器和至少一个数据库构成。
进一步的,所述第一数量和所述第二数量为相同数量或不同数量,所述第一数量为3m+1,m为正整数,所述第二数量为3n+1,n为正整数。
进一步的,所述第一数量为所述区块链系统初始化时的预定数量。
进一步的,所述数据库存储执行共识所需的共识数据,供所述第一服务器和所述第二服务器在执行共识的过程中进行调用。
本发明提供了一种区块链上可验证随机函数的共识方法及其系统,有益效果如下:
(1)、通过可验证随机函数的方式选择第一区块链节点组,第一区块链节点组为所述当前区块链节点组的下一个区块链节点组,第一区块链节点组包括第二数量的区块链节点,在可验证随机函数的方式随机选择区块链节点组,避免了区块链节点打包的作恶;第一区块链节点组通过实用拜占庭算法对第一区块进行共识,共识完成后,第一区块上链,并且选出来的区块链节点组通过实用拜占庭算法进行共识,能够减少共识的时间,进而提升共识的效率。
(2)、第一数量和所述第二数量为相同数量或不同数量,所述第一数量为3m+1,m为正整数,所述第二数量为3n+1,n为正整数
(3)、第一数量为所述区块链系统初始化时的预定数量
(4)、数据库存储执行共识所需的共识数据,供所述第一服务器和所述第二服务器在执行共识的过程中进行调用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种区块链上可验证随机函数的共识方法及其系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
下面,结合附图以及具体实施方式,对本发明做出进一步的描述:
实施例一:
请参阅图1,根据本发明实施例的一种区块链上可验证随机函数的共识方法,步骤如下:
S1:一个区块链节点包括第一服务器、第二服务器和至少一个数据库构成;
S2:第二服务器代替所述第一服务器,从所述数据库中获取共识数据,并根据所述共识数据执行共识,生成共识结果,所述第二服务器将所述共识结果存储在所述数据库中;
S3:通过可验证随机函数的方式选择第一区块链节点组;
S4:第一区块链节点组为所述当前区块链节点组的下一个区块链节点组,第一区块链节点组包括第二数量的区块链节点;
S5:第一区块链节点组通过实用拜占庭算法对第一区块进行共识,共识完成后,第一区块上链。
一种区块链上可验证随机函数的共识系统,其特征在于,包括区块链节点,所述区块链节点由第一服务器、第二服务器和至少一个数据库构成。
通过本发明的上述方案,通过在第二服务器代替所述第一服务器,从所述数据库中获取共识数据,并根据所述共识数据执行共识,生成共识结果,所述第二服务器将所述共识结果存储在所述数据库中,通过可验证随机函数的方式选择第一区块链节点组,第一区块链节点组为所述当前区块链节点组的下一个区块链节点组,第一区块链节点组包括第二数量的区块链节点,第一区块链节点组通过实用拜占庭算法对第一区块进行共识,共识完成后,第一区块上链,选出来的区块链节点组通过实用拜占庭算法进行共识,能够减少共识的时间,进而提升共识的效率。
实施例二:
如图1所示,所述第一数量和所述第二数量为相同数量或不同数量,所述第一数量为3m+1,m为正整数,所述第二数量为3n+1,n为正整数;所述第一数量为所述区块链系统初始化时的预定数量;所述数据库存储执行共识所需的共识数据,供所述第一服务器和所述第二服务器在执行共识的过程中进行调用。
为了方便理解本发明的上述技术方案,以下就本发明在实际过程中的工作原理或者操作方式进行详细说明。
在实际应用时,在第二服务器代替所述第一服务器,从所述数据库中获取共识数据,并根据所述共识数据执行共识,生成共识结果,所述第二服务器将所述共识结果存储在所述数据库中,通过可验证随机函数的方式选择第一区块链节点组,第一区块链节点组为所述当前区块链节点组的下一个区块链节点组,第一区块链节点组包括第二数量的区块链节点,第一区块链节点组通过实用拜占庭算法对第一区块进行共识,共识完成后,第一区块上链,选出来的区块链节点组通过实用拜占庭算法进行共识,能够减少共识的时间,进而提升共识的效率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
机译: 区块链共识任务的协调方法,区块链共识任务的协调设备,处理区块链共识任务的方法,区块链节点设备,区块链系统和存储介质
机译: 区块链系统和区块链系统中矿工节点的共识方法
机译: 区块链系统和区块链系统中矿点的共识方法