长推:Babylon 如何实现 BTC “去信任化质押”?—— BTC 一层质押步骤解析
本文介绍了Babylon项目的最大亮点——让BTC实现去信任化质押,让用户可以在不脱离钱包控制的情况下参与质押并获得收益。质押流程包括创建质押交易、创建质押合约、解除质押交易、创建解除质押合约和绑定领奖账号等步骤。通过多次签名实现质押、处罚和赎回操作,最终确认交易需要7个BTC区块。
![Portal_Kay](/wp-content/themes/zhtcw/assets/images/logo-icon.png)
原文作者:Portal_Kay
原文来源:twitter
注:本文来自@portal_kay 推特,火星财经整理如下:
- 上周 @babylon_chain 社区测试活动 bbn-test-3 已经结束,不知道大家都参与了没有?
- Babylon 这个项目最大的亮点就是让 BTC 实现了“去信任化质押”。简单说就是,BTC 资产可以不脱离自己钱包的控制就参与质押活动,并获得收益。
- 之前参与测试的时候,发现 Babylon 的质押流程总共需要进行 5 个步骤。而所谓的“去信任化质押”就通过这 5 个步骤实现,接下来我们一起看一看这 5 个步骤到底是怎么运作的。
【致谢】在拆解整个质押过程时,我向 @raylin51 长老湿请教了 BTC UTXO 交易构建和不同签名方式的实现机制,墙裂感谢。但是,我们都看不到 Babylon 实现质押的具体源码,所以拆解的过程可能有误,欢迎随时打脸批判。
创建质押交易(BTC 网络)
- 第一个步骤是在 BTC 网络创建一笔质押交易,这笔交易需要实现两种功能:1)利用了 BTC 的 time-lock 脚本,将参与质押的 BTC 锁定起来不允许使用;2)惩罚交易,这是为了预防用户后续作恶时(比如利用自己质押 BTC 来攻击 POS 链)可以进行处罚(Slashing),这笔质押的 BTC 将被销毁。
- 这里的处罚是使用了 EOTS 签名(Extractable one-time signatures,可提取的一次签名方案),当用户作恶时允许从恶意行为产生的签名中自动提取私钥。Babylon 会将质押交易的“输出” 花费到一个销毁地址上,将其变成不可花费的交易输出。
创建质押合约和解除质押交易(BTC 网络)
- 这一步主要实现了两个操作。第一个是创建了一个质押的合约,即创建一种限制条款(covenants)来将上面第 1 步的操作以合约的形式确定下来;另外一个操作是创建了一个解除质押交易(unbonding transaction),这个操作的核心目的是为了在锁定期结束后,用户才能使用他们的私钥来赎回这些资产,重新使用这些 BTC。
创建解除质押合约(BTC 网络)
关于【长推:Babylon 如何实现 BTC “去信任化质押”?—— BTC 一层质押步骤解析】的延伸阅读
探讨比特币 Layer 2 解决方案的三个关键设计决策
比特币的二层解决方案涉及三个关键设计决策:桥接BTC、继承安全性和处理数据可用性。最佳解决方案是BitVM桥接,但仍有问题。另一种选择是与Babylon结合,构建PoS侧链。数据可用性对乐观设计很重要,比特币侧链可能需要使用以太坊或其他替代方案。最有利于安全性的解决方案是合并挖矿,通过不同模块可创建18种独特的侧链组合。个人偏好的方案是通过BitVM桥接使用Babylon获得BTCPoS安全性,或者采用创新的合并挖矿方法扩展比特币PoW安全性,并依赖外部数据可用性。
探讨比特币 Layer 2 解决方案的三个关键设计决策
比特币的二层解决方案涉及三个关键设计决策:桥接BTC、继承安全性和处理数据可用性。最佳解决方案是BitVM桥接,但仍有问题。另一种选择是与Babylon结合,构建PoS侧链。数据可用性对乐观设计很重要,比特币侧链可能需要使用以太坊或其他替代方案。最有利于安全性的解决方案是合并挖矿,通过不同模块可创建18种独特的侧链组合。个人偏好的方案是通过BitVM桥接使用Babylon获得BTCPoS安全性,或者采用创新的合并挖矿方法扩展比特币PoW安全性,并依赖外部数据可用性。
- 这一步是为了创建解除 BTC 质押的限制条款(covenants)。即构建一个解除质押的合约,最终实现 BTC 赎回的操作。
- 上面3次签名,最终都在同一笔 BTC 交易中实现(如下图所示)。这里其实是通过多个签名实现了一个交易内的多个分支,可以理解为一个交易就实现 质押、处罚、赎回 三项操作。
- 此外,我们发现在这笔交易中,我们的 BTC 仍然发送给了一个陌生的钱包。我当时对此非常好奇,Babylon 不是号称资金不脱离钱包控制吗?怎么还把 BTC 打到了一个陌生钱包呢?后来经过咨询才明白,因为私钥原本是 BTC UTXO 的唯一条件,但是当增加了类似 time-lock 之类的条件以后,那么最终就必须创建一个新钱包才能实现多条件解锁。而我们原付款钱包的私钥是解锁新钱包 UTXO 的必要条件之一,所以最终要赎回这笔 UTXO,也还是需要使用我们付款钱包的私钥才可以。
绑定领奖账号(Babylon 网络)
- 到了最后两步,整个质押的流程基本就已经完成了。第 4 步主要是在 Babylon 网络上将你的钱包地址和前 3 步完成的 BTC 质押事件进行绑定,让你的 Babylon 钱包拥有获取质押奖励的资格。
绑定领奖账号(BTC 网络)
- 最后一步依然在 BTC 网络完成,目的是将你的 BTC 钱包与 Babylon 在 POS 链上的质押行为相绑定(这一步疑问比较大,只是看字面意思进行的解读,实际上我不理解这一步操作的必要性)。
好了,到这一步咱们的这次质押操作就完成了,最终确认交易还需要再 7 个 BTC 区块之后。
免责声明:本文仅代表作者个人观点,不代表链观CHAINLOOK立场,不承担法律责任。文章及观点也不构成投资意见。请用户理性看待市场风险,以及遵守所在国家和地区的相关法律法规。
图文来源:Portal_Kay,如有侵权请联系删除。转载或引用请注明文章出处!