区块共识方法技术

技术编号:39508724 阅读:17 留言:0更新日期:2023-11-25 18:44
本申请实施例提供了一种区块共识方法

【技术实现步骤摘要】
区块共识方法、同步方法、装置、电子设备及存储介质


[0001]本申请涉及区块链
,具体而言,本申请涉及一种区块共识方法

同步方法

装置

电子设备

计算机可读存储介质及计算机程序产品


技术介绍

[0002]智能合约是区块链系统中的重要部分,是一种旨在以信息化方式传播

验证或执行合同的计算机协议,智能合约允许在没有第三方的情况下进行可信交易,这些交易可查询且不可逆转

[0003]区块链是一种确定性状态机,要求区块链系统的所有节点对于交易的执行结果必须是一致的,从而能达成共识,否则共识失败

对于大部分对外提供的智能合约,为了支持该确定性,它们从诞生之处就特意屏蔽掉了随机数

时间戳等等会产生随机操作的随机函数

[0004]但随着目前区块链的发展,越来越多的广泛使用的语言被应用到区块链中,这类广泛使用的语言通常是支持随机数等随机函数的,因此也就对区块链系统带来本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.
一种区块共识方法,其特征在于,应用于区块链系统中的任一节点,所述任一节点为主节点或从节点,所述方法包括:在预设时长内获得多个投票结果,每个投票结果是由所述区块链系统中的一个从节点针对待共识的第一区块生成的验证结果;所述第一区块中包括至少一个交易的交易标识,所述投票结果用于表示所述第一区块中是否存在验证失败的交易,当所述投票结果为表示第一区块中存在验证失败的交易的第一投票结果时,所述第一投票结果还包括所述第一区块中验证失败的交易的交易标识;若根据多个投票结果确定所述第一区块共识失败,则根据所述多个投票结果中各第一投票结果包括的验证失败的交易的交易标识,对预设的本地交易池进行清理;其中,所述交易池包括所述第一区块中的交易标识对应的交易
。2.
根据权利要求1所述的方法,其特征在于,所述根据所述多个投票结果中的各第一投票结果包括的验证失败的交易,对预设的本地交易池进行清理,包括:确定每个验证失败的交易在所有第一投票结果中出现的次数;将次数大于所述区块链中作恶节点的数量的验证失败的交易,从所述交易池中清除
。3.
根据权利要求1所述的方法,其特征在于,当所述任一节点为从节点时,所述方法还包括:获得由所述主节点发送的所述第一区块;对所述第一区块进行验证投票,得到投票结果,将投票结果发送至所述区块链系统中的多个其他节点
。4.
根据权利要求1或2所述的方法,其特征在于,所述若根据多个投票结果确定所述第一区块共识失败,之后还包括:进行更换主节点的操作
。5.
根据权利要求4所述的方法,其特征在于,当所述任一节点为从节点时,所述进行更换主节点的操作,之后还包括:若所述任一节点确定作为新的主节点,则将清理后的交易池中的交易打包为待共识的第二区块;将所述第二区块广播至所述区块链系统中的其他节点进行区块共识
。6.
根据权利要求1所述的方法,其特征在于,所述根据多个投票结果确定所述第一区块共识失败,包括:若所述多个投票结果中所述第一投票结果的数量大于所述区块链中作恶节点的数量,则确定所述第一区块共识失败;或者若得所述多个投票结果中,所述第一投票结果的数量不大于所述区块链中作恶节点的数量,且第二投票结果的数量不大于所述区块链中作恶节点数量的两倍,则确定所述第一区块共识失败;其中,所述第二投票结果用于表示所述第一区块中不存在验证失败的交易
。7.
根据权利要求1所述的方法,其特征在于,所述在预设时长内获得投票结果,之后还包括:若所述多个投票结果中,第二投票结果的数量大于所述区块链中作恶节点数量的两倍,则确定所述第一区块共识成功,将所述第一区块中的交易标识对应的交易写入账本

8.
根据权利要求3所述的方法,其特征在于,所述第一区...

【专利技术属性】
技术研发人员:邵珠光王能刘京波刘克猛
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1