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) |