比特币侧链技术解析:发展历程与设计空间
侧链的概念最早由 Adam Back、Matt Corallo、Luke Dashjr、Mark Friedenbach、Gregory Maxwell、Andrew Miller、Andrew Poelstra、Jorge Timón 和 Pieter Wuille 等人于 2014 年提出,他们后来共同创立了 Blockstream。
这一概念的提出旨在为开发者提供一个更加自由的创新环境,允许在侧链上测试新技术和新想法,而无需对主比特币区块链的安全性造成威胁。
自那时起,侧链的设计空间得到了极大的扩展。
“侧链”作为一个宽泛的术语,涵盖了多种极其多样化且不同的系统。它们可以像其他区块链生态系统一样千差万别,因为本质上,侧链就是其他区块链系统。
尽管每种侧链的具体设计可能有所不同,但它们都包含两个核心组成部分:锚定机制、共识机制与规则。锚定机制负责在主链上“锁定”或“解锁”代币,从而实现代币在比特币主链和侧链之间的双向转移;共识机制和规则则决定了侧链自身的运行方式,例如新区块的生成规则以及允许的行为、交易或智能合约的规范。
最初的提案
2014 年,Blockstream 提出了一项设计方案,建议使用合并挖矿作为共识机制,并通过在主链区块头中提交侧链区块头来复用当前比特币矿工的工作量。此外,该方案还计划利用简化支付验证证明(SPV 证明)来操作挂钩机制。
为了支持合并挖矿,所有侧链的区块头都会被构建为“子区块头”,并在主链区块的coinbase交易中进行承诺。这使得矿工能够同时挖矿主链及其选择提交的任何侧链。任何满足侧链难度目标的主链区块头,即使不满足主链的目标,也可以作为有效区块提交到侧链网络。
挂钩机制需要使用 Merkle 证明来确认某些交易已被包含在区块中。挂钩机制可以采用两种形式之一:对称 SPV 证明或非对称 SPV 证明。
在对称方案中,存款和取款都需要 SPV 证明,并设置一个竞赛期。用户将代币发送到主链上的脚本后,需等待竞赛期结束,随后使用 SPV 证明解锁侧链上的代币。如果主链发生重组并撤销存款交易,任何证明更高工作量的重组都可以使侧链上的认领交易无效。因此,每个侧链用户都有动力生成此类证明,以维护锚定的 1:1 支持。
取款过程则需要反向操作,即将侧链上的代币锁定在脚本中,并通过主链的 SPV 证明解锁主链上的代币。
非对称变体通过要求侧链节点运行并验证主链,消除了存款时生成主链 SPV 证明的需求。这虽然能加快存款速度并提高安全性,但会增加侧链的验证成本。
尽管合并挖矿已在许多侧链和独立的山寨币网络中得到应用,但原始论文中提出的 SPV 挂钩机制以及比特币所需的共识变更尚未实施或部署。
附录 – 联合挂钩及其他设计
在原论文的附录A中,作者提议使用联邦锚定机制作为替代方案(或临时方案),直到 SPV 锚定设计所需的软分叉得以实现。该方案通过多重签名机制操作锚定,用户代币在侧链上由职能机构保管,并强制执行提现的有效性。Liquid 和 Rootstock 的实现均采用了这种方式,其中 Liquid 使用职能机构通过加密密钥为侧链签名区块,而 Rootstock 则利用合并挖矿实现侧链共识。
自这些侧链推出以来,出现了许多针对不同共识机制和锚定机制的新设计方案。尽管部分方案已成功部署,但并未有一个方案实现大规模普及。
以下是此前撰写的系列文章链接,探讨了其他侧链设计方案的不同方面。尽管本系列并不完整,但涵盖了大多数重要的提案。
- ()
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代币币情的观点或立场