Taproot Consensus:比特币原生扩展技术的集大成之作

比特币原生扩展技术的集大成之作:深入解析Taproot Consensus技术

2024年5月20日,一个专注于比特币Layer2开发的团队发布了一份名为《Taproot Consensus:一种去中心化的BTC Layer2解决方案》的技术黄皮书。这份文档详细阐述了Taproot Consensus的实现方式,以及如何利用施诺尔签名、MAST、比特币SPV节点等比特币原生技术来构建一个完全去中心化的BTC Layer2解决方案。

通读全文后,给人的感觉是这个团队提出的Taproot Consensus解决方案,堪称比特币原生扩展技术的集大成之作。它没有对比特币的代码进行任何修改,而是巧妙地整合了比特币的几项核心技术,思路清晰,结构精妙。

在深入分析黄皮书之前,我们有必要回顾一下比特币的技术发展历程,这有助于理解Taproot Consensus是如何从比特币的演进脉络中应运而生的。

比特币技术演进简史

2008年10月31日,中本聪发表了题为《比特币:一种点对点的电子现金系统》的论文,首次完整阐述了比特币的技术实现方案。论文第八章提到了SPV(Simple Payment Verification)解决方案,即简单支付验证,这是一种无需运行完整节点,仅保存区块头就能验证支付的技术手段。

2009年1月3日,中本聪在芬兰赫尔辛基的一台小型服务器上挖出了创世区块,标志着比特币的正式诞生。值得注意的是,比特币的初始代码采用了椭圆曲线签名技术(ECDSA),而非更适合比特币的施诺尔签名技术。这是因为当时施诺尔签名尚未开源,仍在专利保护期内。

施诺尔签名保留了椭圆曲线签名的所有功能和安全假设,同时突破了椭圆曲线签名框架下比特币最多只能实现15重多签的限制,最终可以实现1000多个地址共同管理比特币且不影响签名速度。

2018年,经过多年的反复验证,比特币核心开发者正式提出将施诺尔签名引入比特币网络的建议。

2021年11月14日,比特币完成了Taproot升级,正式将施诺尔签名纳入网络,开启了全新的去中心化多签时代。除了施诺尔签名,Taproot升级还引入了MAST(Merkelized Abstract Syntax Trees),即默克尔抽象语法树,这是一种让比特币具备类似智能合约功能的技术。

施诺尔签名可以将比特币的多签地址扩展到1000+,而MAST可以通过比特币程序来驱动施诺尔签名地址进行多签。因此,施诺尔签名+MAST的组合可以实现不依赖人工签名,而是通过比特币代码指令来驱动的去中心化比特币多签网络。

这意味着比特币可以以去信任的方式突破一层的局限,在二层实现更复杂、更丰富的业务场景。而这个团队提出的Taproot Consensus解决方案,正是对比特币从2008年到2021年这13年技术迭代的集大成之作。

Taproot Consensus解决方案概述

Taproot Consensus技术黄皮书开篇指出:比特币网络的非图灵完备性质限制了其直接实现类似以太坊Rollup的Layer2扩展方案。比特币网络的脚本合约层只能进行简单的转账操作,无法支持更复杂的智能合约功能。因此,单纯从比特币脚本层面来构建Layer2扩展方案是不可行的。

这段描述高度概括了比特币网络的非图灵完备性,以及比特币脚本合约仅能执行比特币转账操作的特点。因此,比特币扩展的正确方向不是在一层网络上做文章,而是要利用比特币现有的能力,来构建一个完全去中心化的二层扩展方案。

Taproot Consensus正是将比特币的Taproot技术(Schnorr签名和MAST)、比特币SPV轻节点以及BFT PoS共识机制融合在一起,构建出了一个去中心化且高度一致的Layer2网络。

Taproot Consensus架构详解

这个团队提出的Taproot Consensus总共由Schnorr+Mast、Bitcoin SPV和Aura+Grandpa三部分组成。

Schnorr+Mast利用比特币Taproot升级带来的这两项原生技术进行组合,可以实现比特币的去中心化多签管理,且不需要通过人来签名,而是使用比特币代码来驱动。

那么,谁来驱动这些代码?答案是通过二层网络达成的共识来驱动。

二层网络如何达成共识,且这些共识如何与比特币一层实现状态同步?这就是Bitcoin SPV+BFT POS共识(Aura+Grandpa)的作用所在。

Bitcoin SPV是中本聪提出的简单支付验证方式,在不运行全节点的情况下,也可以同步和验证比特币交易。这一特性使得Taproot Consensus能够在完全去中心化的环境下,无需任何许可,同步BTC状态。

Aura+Grandpa是较为通用的实现拜占庭容错的高级PoS共识协议,通过分布式协议确保网络节点的高度一致性(以Substrate框架构建的区块链基本都使用Aura+Grandpa)

因此,总结Taproot Consensus三部分的运行原理:

在这个系统中,每个验证者均持有一个用于Schnorr签名的BTC私钥。Schnorr签名的特性使其能够实现高效的签名聚合,从而提高系统的安全性和效率。通过Musig2多签名方案生成的聚合公钥Pagg,形成了一颗大型MAST(Merkle Abstract Syntax Tree)树。

在MAST树的根哈希值生成后,验证者通过向MAST树生成的门限签名地址进行BTC转账和铭刻操作,实现BTC主网向Layer2网络提交数据的功能。同时每个验证者均作为Bitcoin SPV(Simplified Payment Verification)轻节点,使其能够安全且无许可地同步BTC网络状态。

简而言之:

Taproot Consensus在比特币一层使用Schnorr+Mast构建去中心化的BTC多签管理,二层运行Bitcoin SPV节点网络。以某个Layer2网络为例,该网络全部运行比特币SPV节点,这些节点可以同步比特币一层的数据状态,因此,可以让Layer2和比特币一层信息同步。而为了保障二层网络是安全可信的,该Layer2把比特币SPV节点网络和Aura+Grandpa融为一体,即让比特币SPV节点网络具备了BFT共识层面的安全级别。也就是说,管理Layer2网络资产的不是某些多签人而是依靠BFT共识来驱动,从而实现真正的去中心化。

其他技术细节

除了上述技术框架外,Taproot Consensus黄皮书还详细解释了施诺尔签名、MAST、比特币PSV轻节点、Aura+Grandpa等技术的实现细节。对于想学习和了解比特币最新技术的人来说,这份黄皮书是一个非常全面且详细的学习资料。

此外,黄皮书还详细解释了Musig2的实现过程,以及与其他知名BTC Layer2项目技术方案的区别。

例如,某个项目的底层技术结构是基于tBTC协议。tBTC利用比特币多签构建了一个门限签名网络,这种结构相比传统分布式网络而言,具有较强的一致性。

但是,tBTC仍是一个需要9人签名的多签人网络,要想真正实现不依靠人而是依靠共识驱动,则需要把多签网络与BFT PoS(拜占庭容错权益证明)共识机制相结合。(这也是分布式网络和区块链的区别,分布式网络强调分布式,但是缺乏拜占庭容错的共识,而区块链虽然也是一个分布式网络,但是依靠拜占庭容错共识来驱动,因此,是真正去中心化的网络)

Taproot Consensus方案则采取了这种更为先进的设计。通过结合Schnorr签名、MAST、比特币SPV轻节点以及Aura和Grandpa拜占庭容错共识机制,构建了一个高度一致性和安全的去中心化Layer2扩展方案。这种融合不仅提升了比特币网络的扩展性和可用性,还确保了Layer2网络的安全性和一致性。

结语

这份技术黄皮书系统且全面地描述了Taproot Consensus的实现方案和技术细节,向我们展现了一个完全基于比特币原生技术构建的比特币二层解决方案。

Taproot Consensus不仅尊重和继承了比特币原有的技术方向,同时,还结合比特币历次升级带来的技术进行组合式创新,是真正意义上的比特币原生扩展技术的集大成之作。

随着比特币生态的不断发展,人们将逐渐意识到,真正去中心化的比特币二层解决方案才是比特币生态发展的必经之路,而Taproot Consensus这种解决方案将真正的大放光彩。

比特币原生拓展技术集大成者:BEVM技术黄皮书全面解读

TAPROOT4.23%
BTC-1.45%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 4
  • 分享
评论
0/400
区块烧烤师vip
· 07-31 20:25
比特币又要起飞了
回复0
MEV三明治受害者vip
· 07-29 02:14
又来又来~又一个L2解就完事了
回复0
HackerWhoCaresvip
· 07-29 01:57
L2这么冷 谁care啊
回复0
DAO开发者vip
· 07-29 01:54
对本地比特币扩展的绝妙方法... 说实话,我正在深入研究白皮书
查看原文回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)