简单了解babylon协议工作流程

  • zhitong
  • 发布于 2025-03-24 23:20
  • 阅读 397

babylon可以通过跨链质押的方式,用BTC为其他POS链提供经济安全性,类比以太坊上的EigenLayer,但是实现差异较大,主要是因为bitcoin没有像以太坊那样的可编程合约。

概述

babylon可以通过跨链质押的方式,用BTC为其他POS链提供经济安全性,类比以太坊上的EigenLayer,但是实现差异较大,主要是因为bitcoin没有像以太坊那样的可编程合约。我们看一下babylon架构图,需要很多模块支撑。 image.png

主要角色

  • 验证者 Babylon是基于CosmosSDK开发的一条公链,共识机制在Tendermint基础上参照以太坊的Gasper进行了改造(CometBFT),引入了epoch和checkpoint机制,但本质仍然是BFT类共识,因此需要质押原生Token并运行全节点的验证者,负责链的状态存储和共识。
  • 质押者 质押者是BTC持有者,并希望委托BTC给Babylon获取收益
  • 最终性提供者(FP) FP接受质押者的BTC委托获取投票权力,投票是针对其他POS消费链共识之后的区块,在其上叠加一层最终性共识,类似以太坊的Gasper,主要目的是防止POS存在的长程攻击问题,为POS消费链提供经济安全性。
  • 契约委员会 这是一个多签委员会,用来保证质押BTC的安全花费。因为BTC有限的可编程性,没办法校验解除质押交易是否满足协议所约束的条件,比如解除质押时间不得短于协议规定的最短质押解除质押时间。
  • 义警 负责Babylon和比特币之间传递检查点、时间戳等协议信息。

    工作流程

    babylon的关键功能是将比特币的经济安全性引入POS链,可以将babylon视为比特币链和POS链的交互中间层。

    1. FP注册 FP是独立的外部模块,需要在Babylon上注册才可以激活进行投票。不同于以太坊的Casper是对每个epoch的检查点进行投票,FP是对每个区块都进行投票,因为大部分基于CosmosSDK的链并没有实现epoch机制。 注册需要经过契约委员会的验证,并且需要等到质押交易在bitcoin链上确认之后才能生效(通过提供交易在链上的Merkle包含证明来确认)。 注册分为两种形式,质押后注册和质押前注册,质押后表示质押交易已经在比特币链上确认了再进行注册,这种方式用户可以直接提供质押交易的Merkle包含证明进行验证,如果是质押前,质押交易需要等到babylon的义警模块监控到btc链上确认后提交的merkle包含证明。
  1. 质押者质押BTC 质押者将质押的BTC委托给FP,babylon质押原理这篇已经讲的很清楚了: https://learnblockchain.cn/article/9205 简而言之,就是利用taproot和PSBT,预制了一些约束,使锁定的BTC只能通过3个条件花费, 1)锁定时间到期 2)锁定时间未到期,契约委员会大部分同意提现 3)因为双重签名导致EOTS密钥泄露,被slashing 用户在质押时,需要指定对应的最终性提供者(FP),将投票权力委托给FP进行区块投票,这个过程会调用消费链合约,在链上更新FP的以satosi为单位的投票权力power。
  2. 消费链产生区块 寻求Babylon提供BTC经济安全性的POS链产生区块,区块头被Babylon节点的Zone Concierge模块通过IBC链间协议拦截并验证。
  3. Babylon进行checkpoint 参考以太坊,Babylon按照epoch划分出块周期,每个epoch出固定数量的块(类似slot),并且保持验证者集合不变,这样Babylon只需要以epoch为周期提交检查点和验证者集合更新,减轻了babylon协议开销和比特币链负担。babylon通过IBC拦截的消费链区块头会被索引在Babylon账本中,最终会打检查点到比特币链上。
  4. FP投票 FP实时监控消费链,从链上拉取待投票的区块进行EOTS签名,EOTS的工作机制可以参考这段代码:

image.png 这里很直观就可以看出,一旦对同一个秘密进行两次签名,就会泄露私钥,这种签名方案可以用来惩罚双重投票的质押者,EOTS签名正是babylon的核心技术。 签名会发送给babylon和消费链合约,babylon会统计接收到的投票power,如果超过所有FP总power的2/3,即认为区块达到最终性。

总结

从上述流程可以看到babylon以两种方式为pos消费链提供了比特币安全性: 1)打检查点到比特币链获取时间戳 2)在原有共识基础上叠加一层最终性共识 既然通过比特币时间戳就可以防止长程攻击,为什么还需要再叠加一层FP共识呢,因为比特币交易确认时间很长,打检查点的方式无法提供实时的最终性,而FP共识可以做到快速确认(只需要2/3以上的FP投票即可敲定),同时比特币时间戳可以保证POS链的同步,防止比特币链和POS链对质押者解绑事件不同步造成的分叉攻击,所以两者是互补的关系。 由于比特币有限的可编程性,可以看到类似EigenLayer的AVS功能在babylon的中的实现非常复杂,引入了相当多的模块,当前对于质押BTC保证POS链经济安全性,似乎并不刚需,但真正有意义的可能是远程质押,会为比特币生态带来更丰富的场景,释放BTC流动性。**

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
zhitong
zhitong
江湖只有他的大名,没有他的介绍。