[0007] 本发明旨在提供一种可用于节点公平竞争的区块链共识机制。
[0008] 本发明包括诚信值校验模块、动态保证金计算模块、保证金缴纳校验模块、奖励及制裁校验模块、退出集合及保证金赎回校验模块五个模块;
[0009] 当节点想加入共识集合时,首先要通过诚信值校验模块的校验,由动态保证金计算模块计算节点需要缴纳的保证金,并由保证金缴纳校验模块监督保证金的缴纳。在节点工作过程中,其行为受奖励及制裁校验模块的监督及管制,该模块会对节点的行为作出奖励或制裁。当节点自愿退出共识集合时,由退出集合及保证金赎回校验模块对节点酬金和保证金进行发放。
[0010] 诚信值检验模块;
[0011] 如果有一个节点想要加入共识集合,成为其中的一个共识节点时,需要其他节点进行诚信值校验,如果发现其诚信值低于共识门槛的要求,该节点的请求将会被忽略和丢弃,如果高于共识门槛节点加入共识集合。
[0012] 动态保证金计算模块;
[0013] 当节点加入共识集合后,节点还需要交取动态保证金,以约束其在共识集合中的不合法操作。因为作恶节点的一次针对区块链的攻击,往往是蓄谋已久的,是为了获取利益的。如果获得的利益比接受惩罚损失的利益要少,那是不会有人对区块链发起进攻的。设置动态保证金一定程度上可以预防小成本作恶节点。
[0014] 保证金是动态的,动态保证金的多少与当前参与共识的节点数是分不开的,采用基于参与节点数的线性算法,来计算当前动态保证金的大小,使得动态保证金大小与当前参与共识节点数满足一个基本线性增长的关系。
[0015] 动态保证金Deposit公式:
[0016]
[0017] 其中,maxDeposit为最大保证金,maxSize为最大参与节点数,size表示当前参与节点数;
[0018] 任何节点对共识集合的相关进出操作,是要受到其他节点的严格监督的。
[0019] 保证金缴纳校验模块:
[0020] 保证金的接收方是平台中的保证金接受智能合约脚本,其余节点不仅要对请求节点进行保证金缴纳校验,还要对智能合约脚本进行校验,以保证这一环节的高度安全。当保证金缴纳校验和智能合约脚本校验均合格,则节点后续正常工作;否则直到节点提交了符合要求的智能合约脚本和保证金后,才能后续正常工作;
[0021] 奖励及制裁校验模块:一个节点A对另一个节点B进行举报,节点A需要提供密码学证据或其他节点的校验共识,否则,节点A的举报将不会被所有节点所接受,直到节点A再次提供密码学证据或其他节点的校验共识。
[0022] 率先发现作恶节点的诚实节点将会得到智能合约脚本的奖励;作恶后被举报成立,则作恶节点将会立即被行使处罚制裁,若举报不成立,节点A被判定为作恶节点,被行使处罚制裁。
[0023] 说明:所述的密码学证据为节点B的数字签名,用于确认作恶节点身份,对作恶节点进行追踪与制裁。数字签名是一种通过公钥加密领域的技术来鉴别数字信息的方法,可用来验证签字者的身份,所以当A提供了节点B的数字签名后,可确认到节点B为被举报者。
[0024] 每个时间轮转出块时,节点都会对其他节点进行校验,当发现有节点校验结果与该节点显示的结果不符时,对该节点提交举报。当A节点对B节点进行举报,其余节点会重做节点B的工作,与其提交的结果进行对比,这就是所述的校验共识。
[0025] 如果结果相同则说明节点A举报失败,判定A为作恶节点,对A节点进行制裁;如果结果不同则判定节点B为作恶节点,对节点B进行制裁。认真工作的节点和提交正确举报的节点为诚实节点。
[0026] 所述的处罚制裁详细包括:1.节点在自己的出块时段内不出块,将扣除一定诚信值,并从共识节点降级为普通节点;2.普通节点肆意广播区块,将扣除诚信值,并丢弃被广播区块;3.将非数据池中的数据打包至区块,将没收保证金,并降级为普通节点;4.在自己的出块时段内广播多个区块,将没收保证金并将该出块节点加入诚信黑名单;5.将双花交易打包至区块,将没收保证金并将该出块节点加入诚信黑名单;6.节点尝试分叉区块链,对区块链进行攻击,将没收保证金并将出块节点加入诚信黑名单。
[0027] 所述的双花交易是指一笔数字资产被重复使用的情况,作为非第三方平台,我们需要确保双花交易不能发生。
[0028] 在惩罚机制中,前三条不属于严重违规,此类节点为违规节点,处罚不会太重;后三条为严重违规,此类节点为作恶节点,将会被采取严厉制裁。
[0029] 制裁的内容包括被踢出共识集合和扣取保证金,信息被列入黑名单,无法再次加入共识集合。
[0030] 退出集合及保证金赎回校验模块:为防止肆意认领的情况出现,节点退出共识集合和赎回保证金时需要进行严格校验。严格校验指系统和其他节点对该节点提交的所有成果进行的校验。节点自愿退出集合时,记录该节点诚信值,计算酬金,退回保证金。
[0031] 本发明有益效果如下:
[0032] PoH机制提出了一种全新的共识机制,改善了原有机制电力资源消耗高的缺点,将人的做功提高到最大,最大限度的避免了浪费,在同样的时间内,出块数大大提升;首次提出对节点的安全性校验概念,大大提高了安全性。将记录和保存信息作为夺块的目的,使得区块链的功能更加明确,实用。