织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 区块链

读懂比特币侧链方案 Drivechain:如何实现比特币和多条侧链双向锚定?

时间:2021-07-13 10:43来源:未知 作者:admin 点击:
Drivechain 用「算力托管」的方案实现比特币与侧链锚定,方式简单且激励性更强。 原文标题:《科普 | 什么是 Drivechain?》 撰文:fiatjaf 翻译 阿剑 在理解 Drivechain 之前,我们先要转变绝

  Drivechain 用「算力托管」的方案实现比特币与侧链锚定,方式简单且激励性更强。

  原文标题:《科普 | 什么是 Drivechain?》

  撰文:fiatjaf

  翻译 & 校对:闵敏 & 阿剑

  在理解 Drivechain 之前,我们先要转变绝大多数比特币用户已经习惯了的思维定势。理解 Drivechain 的关键不在于 「免信任」 或 「数学确定性」,而是博弈论和激励。(总的来说,比特币也是如此,但是人们往往会忽略这点,沉浸在数学带来的免信任假想中。)

  本文将介绍 「算力托管(hashrate escrow)」 的基本原理(简单)和激励(复杂),以及它是如何实现主链(比特币)和多条侧链之间的双向锚定的。

  「Drivechain」 的完整概念还涉及盲合并挖矿(blind merged mining)(即,侧链通过将区块哈希值发布至主链来实现自挖矿,无需矿工运行侧链挖矿软件),不过这个概念理解起来要容易得多,而且通过 BIP 301 机制或 Spacechains 机制就可以实现。

从比特币的角度来看,算力托管是如何运作的?

  我们需要创建一个新的地址类型。凡是进入这类地址的代币都会被锁定,只有当所有矿工在 6 个月内就取款交易(WT^)达成共识时,才可以动用该地址上的代币。每条侧链在比特币区块链上都有这样一个地址。

  为了收集矿工的一致意见,bitcoind 会追踪所有想要动用特殊地址上的代币的交易的 「分数」。每当一条侧链上新挖出一个区块,矿工就可以使用 coinbase 交易将一个 WT^ 的分数增加 1,同时将其它所有 WT^ 的分数减去 1;或者将所有 WT^ 的分数减去 1;或者什么都不做。(译者注:此处的 「矿工」 指的是比特币主链的矿工。)

  当某个交易的分数足够高时,这个交易就会被发布到链上,将资产从侧链转移到发起取款交易的用户那里。

  在 6 个月内分数未能达到阈值的 WT^ 会被丢弃。

上述流程有什么意义?

  上述流程意味着,用户可以通过将代币存入特殊地址来将它们从主链转移到侧链,然后再通过特殊的取款交易取走侧链上的代币。

  特殊交易可以通过某种方式冻结侧链上的代币,然后所有取款请求会被聚合到一个主链 WT^ 内提交给主链矿工,以便主链矿工进行投票。过了几个月后,投票通过的 WT^ 会被发布到链上。

  现在,最关键的部分是:WT^ 的有效性并非由比特币主链规则验证,即,如果 Bob 已经请求从侧链提款到他在主链的地址,但是有人发布了一个错误的 WT^ ,将原本属于 Bob 的代币发送到了 Alice 在主网上的地址,主链是无法知晓的。WT^ 是否有效仅仅取决于矿工的投票分数。矿工的职责是正确投票 —— 为此,他们可能想要运行侧链的 SPV (简单支付验证)节点,以便见证侧链区块链上存在对 WT^ 交易的引用(然后验证其是否有效),或者通过其它方式进行验证。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容