【技术实现步骤摘要】
一种区块链共识方法、系统、电子设备、存储介质
本申请涉及区块链领域,特别涉及一种区块链共识方法、系统、电子设备、存储介质。
技术介绍
区块链是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。共识机制作为区块链的核心技术之一,能够保证上链数据始终分布一致性。然而当前主流的如工作量证明(PoW)、权益证明(PoS)、股份授权证明(DPoS)等共识机制还不够完善。
技术实现思路
本申请主要解决的技术问题是提供一种区块链共识方法、系统、电子设备、存储介质,能够解决共识机制还不够完善的问题,提高交易区块的共识结果的准确性。为解决上述技术问题,本申请第一方面提供了一种区块链共识方法,该方法包括:当前提议节点收集交易池中的交易打包成交易区块,并向当前验证节点发送交易区块;当前验证节点对交易区块进行至少两轮验证投票,每轮验证投票中,每个当前验证节点对交易区块进行验证得到验证结果,向其他当前验证节点发送与验证结果对应的投票消息并接收来自于其他当前验证节点的投票消息,投票消息包括肯定投票消息或否定投票消息,每轮验证投票通过的条件为所有投票消息中肯定投票消息的占比大于预设阈值;若所有轮验证投票均通过,则交易区块共识成功。为解决上述技术问题,本申请第二方面提供了一种区块链共识方法,该方法包括:当前验证节点接收来自于当前提议节点的交易区块,交易 ...
【技术保护点】
1.一种区块链共识方法,其特征在于,包括:/n当前提议节点收集交易池中的交易打包成交易区块,并向当前验证节点发送所述交易区块;/n所述当前验证节点对所述交易区块进行至少两轮验证投票,每轮所述验证投票中,每个所述当前验证节点对所述交易区块进行验证得到验证结果,向其他所述当前验证节点发送与所述验证结果对应的投票消息并接收来自于其他所述当前验证节点的投票消息,所述投票消息包括肯定投票消息或否定投票消息,每轮验证投票通过的条件为所有所述投票消息中所述肯定投票消息的占比大于预设阈值;/n若所有轮所述验证投票均通过,则所述交易区块共识成功。/n
【技术特征摘要】
1.一种区块链共识方法,其特征在于,包括:
当前提议节点收集交易池中的交易打包成交易区块,并向当前验证节点发送所述交易区块;
所述当前验证节点对所述交易区块进行至少两轮验证投票,每轮所述验证投票中,每个所述当前验证节点对所述交易区块进行验证得到验证结果,向其他所述当前验证节点发送与所述验证结果对应的投票消息并接收来自于其他所述当前验证节点的投票消息,所述投票消息包括肯定投票消息或否定投票消息,每轮验证投票通过的条件为所有所述投票消息中所述肯定投票消息的占比大于预设阈值;
若所有轮所述验证投票均通过,则所述交易区块共识成功。
2.根据权利要求1所述的方法,其特征在于,
所述每个所述当前验证节点对所述交易区块进行验证得到验证结果包括:
若所述当前验证节点在第一时段内收到所述交易区块,则读取所述交易区块并对其中的每笔交易进行验证;
若所有所述交易通过所述验证,则所述验证结果为通过,对应的所述投票消息为肯定投票消息;若至少一笔所述交易未通过所述验证,则所述验证结果为未通过,对应的所述投票消息为否定投票消息。
3.根据权利要求1所述的方法,其特征在于,
所述每个所述当前验证节点对所述交易区块进行验证得到验证结果,向其他所述当前验证节点发送与所述验证结果对应的投票消息并接收来自于其他所述当前验证节点的投票消息之后进一步包括:
统计节点统计每个所述当前验证节点收到的所述肯定投票消息的数量;
若所有所述肯定投票消息的数量与所有所述投票消息的数量的比值大于所述预设阈值,则本轮验证投票通过。
4.根据权利要求1所述的方法,其特征在于,
所述每个所述当前验证节点对所述交易区块进行验证得到验证结果,向其他所述当前验证节点发送与所述验证结果对应的投票消息并接收来自于其他所述当前验证节点的投票消息之后进一步包括:
每个所述当前验证节点统计收到所述肯定投票消息的数量,若所述肯定投票消息的数量与其他所述当前验证节点理论上收到所述投票消息的数量的比值大于所述预设阈值,则向统计节点发送通过消息;
所述统计节点统计收到的所述通过消息的数量,若所述通过消息的数量与所述当前验证节点的数量相等,则本轮验证投票通过。
5.根据权利要求3或4所述的方法,其特征在于,所述本轮验证投票通过之后进一步包括:
所述统计节点通知部分或全部所述当前验证节点进行下一轮验证投票;或
所述统计节点通知所述当前提议节点,所述当前提议节点通知部分或全部所述当前验证节点进行下一轮验证投票。
6.根据权利要求5所述的方法,其特征在于,
所述统计节点为一所述当前验证节点、所述当前提议节点或独立于所述当前验证节点和所述当前提议节点的其他节点。
7.根据权利要求5所述的方法,其特征在于,
进行第i+1轮验证投票的当前验证节点为第i轮验证投票中发送所述肯定投票消息的当前验证节点。
8.根据权利要求1所述的方法,其特征在于,
不同轮的验证投票中所述当前验证节点对所述交易区块的验证内容不同。
9.根据权利要求1所述的方法,其特征在于,
所述交易区块共识成功之后进一步包括:
记账节点将所述交易记录打包为新区块添加到区块链上。
10.根据权利要求9所述的方法,其特征在于,
所述记账节点将所述交易记录打包为新区块添加到区块链上之前进一步包括:
排序节点接收来自于所述当前提议节点或所述当前验证节点的共识成功的所述交易区块;
所述排序节点将指定时段内收到的共识成功的所述交易区块按照时间进行排序,并将排序后的所述交易区块发送给所述记账节点。
11.根据权利要求10所述的方法,其特征在于,
所述记账节点将所述交易执行记录打包为新区块添加到区块链上之后进一步包括:
所述排序节点检测到本地存储的区块链的高度小于所述记账节点存储的区块链的高度时,所述排序节点从所述记账节点获取所述新区块并添加到本地存储的区块链账本中。
12.根据权利要求1所述的方法,其特征在于,
所述当前提议节点收集交易池中的交易打包成交易区块之前进一步包括:
排序节点接收来自于交易发起方的交易;
所述排序节点将所述交易放入所述交易池中。
13.根据权利要求12所述的方法,其特征在于,所述排序节点将所述交易放入所述交易池中之前进一步包括:
所述排...
【专利技术属性】
技术研发人员:程晗蕾,王超,宋斌,向智宇,黄昭慈,鲁静,
申请(专利权)人:远光软件股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。