LBFT跨链共识机制

简介

LBFT跨链共识机制是L0区块链的跨链共识机制,是对PBFT共识机制的改进,可以保证在容错范围内,每一笔交易都在不同的参与方区块链上同步处理。
对于某个子账本来说,如果交易双方都在同一个区块链(链A)内,则只在这个子账本记录这笔交易;如果交易双方在不同的区块链(链A和链B)上,则需要在区块链A和区块链B账本上同步记账。我们的跨链共识算法可以在A和B两个区块链都满足拜占庭容错的情况下,完成交易并同步记录在双方区块链的账本上。
L0目前支持两个参与方进行的资产转移交易,需要更多参与方或者更复杂转移方式的交易可以通过智能合约来完成。
一条典型的交易包括交易类型,付款方账户及所在链,收款方账户及所在链,交易金额,时间,签名等信息。
L0中的交易类型如下图:

L0交易类型图.JPG

共识机制

(1)A链主节点广播Preprepare交易到B链节点(主节点即共识消息发出节点)
(2)A链和B链主节点分别广播Preprepare到各自链的从节点(从节点即共识消息投票节点
(3)A和B链的从节点分别对Preprepare的交易进行验证,验证通过后广播Prepare消息到A, B区块链的所有节点
(4)A和B链的节点收到2f+1的A链节点以及2 k+1的B链节点的相同Prepare消息后广播Commit消息到A, B区块链的所有节点
(5) A和B链的节点收到2f+1的A链节点以及2 k+1的B链节点的相同Commit消息后确认

LBFT共识机制.JPG

容错性

在拥有3f+1(也适用于3f+2或3f+3)的LO区块链中,具有f个节点的容错性能。
在错误节点数小于等于f时,错误节点不影响跨链双方诚实节点对交易的确认,跨链交
易可以正常记账。
在错误节点数大于f小于2f+1时,诚实节点无法确认交易,跨链交易无法记账。
在错误节点数大于2f+1时,错误节点有联合作恶并对账本造成分叉的可能,可以造成
跨链交易双方账本数据不一致,还可以操纵本地账本数据。
在错误节点数大于2f+1时,错误节点有联合作恶并对账本造成分叉的可能,可以造成跨链交易双方账本数据不一致,还可以操纵本地账本数据。



作者:vdes
链接:https://www.jianshu.com/p/62ddf9fcb56b
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

猜你喜欢

转载自blog.csdn.net/omnispace/article/details/80234459
今日推荐