比特币价格·比特币行情
Ctrl+D收藏简单区块链

读懂比特币协议重要里程碑:Schnorr 签名和 Taproot 软分叉升级_区块链_

作者:

时间:2021/1/14 19:33:56

能增强隐私的多签和潜在复杂脚本扩展性,是比特币下一次分叉的核心改进。

一次比特币协议的升级,可能会预示着未来 3 至 5 年的趋势,虽然大家并不关心比特币的技术迭代,更关注安全和主流人群接受度,但最终所有人都会受益于这次升级。

那个被你们认定为技术上不思进取的比特币协议,终于引来了一次值得关注的技术升级。比特币协议中具有里程碑意义的技术升级 Schnorr Signature (施诺尔签名)和 Taproot (树的主根)已集成到刚刚发布的 Bitcoin Core 0.21.0 版本中——这绝对值得关注,因为该升级有可能会影响未来 3 至 5 年的比特币生态,特别是针对机构级用户和多签的各种应用场景。

当然,对于比特币协议目前重要的关键词是「稳健」和「安全」,所以哪怕这些技术上线之后,社区和生态通常都会相当谨慎,就算不集成支持其实也没什么问题,不然还可能会引入不必要的风险和漏洞。

由于这次的升级是需要经过软分叉才能激活的,所以后续还需要看矿池和矿工对于该提案的支持程度,至少目前来看,矿池和矿工相当积极,大于 90% 的算力已经宣布会支持该升级。

Schnorr Signature 是以德国数学家和密码学家 Claus-Peter Schnorr 命名的数字签名算法,由于在 2008 年之前处于专利保护的状态,所以中本聪在设计比特币协议时并未使用该签名算法,而是选用了当时更适合且开源的椭圆曲线数字签名算法(ECDSA)。

但是比特币核心开发者在将近十多年后却认为,Schnorr Signature 才是比特币的未来,因为它在密码学特性上的优势,可以在几乎同等(甚至更好)安全的基础上,更方便和「低调」地构建多签名交易,也能为寸土寸金的区块节省不少空间。

比特币协议中除了签名算法之外,还设计了一套脚本语言定义如何使用比特币。Taproot 就是一套可以在 Schnorr Signature 的特性之下,让比特币更强大的全新脚本语言体系,并且,还设计了 Tapscript 脚本语言,对花费比特币的方式进行了微调——具体的技术细节,这里就不继续展开。

在这些技术的组合下,比特币多签类地址可以不用暴露出自己的「多签」身份,也可以支持数量众多的多签场景,同时在经济层面上也有些许优势,可以降低链上的交易费用,特别是对于需要高频操作的地址而言,可以节省不少的成本。

在介绍 Schnorr Signature 和 Taproot 之前,有必要先回顾一下比特币协议升级的流程步骤,毕竟这是一件相比其他区块链网络升级低频许多的事件,甚至许多区块链从业人员也不甚了解。

粗略来说,比特币协议的升级分为六个阶段:

第一阶段:所有的一切都诞生于一个点子或一个创新的想法,然后比特币的核心开发者们会在邮件中进行初步的阐述和讨论。

第二阶段:提交 BIP (比特币改进提案)的草案,这个阶段可能会通过 GitHub 进行归档。

第三阶段:核心开发者们在邮件中针对提案进行详细的讨论,涉及所有的技术细节或可能的问题、挑战。

第四阶段:进入正式的开发阶段,以及后续的测试,并将功能加入比特币核心客户端。

第五阶段:进行投票,然后等待网络逐步激活,也就是最终的上线。

第六阶段:第三方应用集成支持。

如果我们回顾此前比特币比较重要的协议升级,会发现其实新功能的采用率并不高,而且通常是 3 年之后也仅仅是极低的采用率。

比如,约三年前的隔离见证(SegWit)升级,为区块提供了些许的扩容,使用隔离见证的地址可以降低一些转账成本。而根据 txstats.com 的数据,目前储存在隔离见证地址中的比特币数量不到 8%。(数据来源:https://txstats.com/dashboard/db/bech32-statistics)

出现这样的情况,一方面的原因是很多 BTC 资产可能已经丢失,或者对于大型机构而言改造这套体系需要付出太多成本,同时也会引入一些不必要的风险,毕竟安全更重要。不过从积极的方面来看,网络中接近一半的新交易都采用了隔离见证。(数据来源:https://txstats.com/dashboard/db/segwit-usage)

而闪电网络协议也是比特币自 2018 年以来持续迭代更新的 Layer 2 扩容支付通道技术,目前这个网络的容量还处于一个非常小的规模(约 1000 个 BTC),仅占 BTC 总量不到万分之一。

所以对于 Schnorr Signature 和 Taproot 而言,虽然在最新客户端中已经植入了该功能,但是功能是否会激活启用,以及后续的生态如何支持,还需要看之后三至五年的发展了。钱包、托管商、交易所、大型机构都会按照自己的用户需求、安全需求、功能需求综合考虑,逐步引入。

当我们整理比特币核心开发者针对 Schnorr Signature 和 Taproot 进行讨论和研究的时间线时,发现这个方案从提出到集成已经超过了 3 年的时间。

虽然 Schnorr Signature 是 Taproot 得以实现的基础,但是最早被提出的其实是 Taproot——这是一套可以丰富比特币脚本的方案,最初由 Blockstream 联合创始人 Gregory Maxwell 在比特币核心开发者邮件组中提出。

半年后,Blockstream 另一位联合创始人 Pieter Wuille 则提出 Schnorr Signature 替代比特币现有的椭圆曲线签名(ECDSA),通过其特有的「线性」特点,实现密钥的聚合、提升区块验证速度。

在此之后,这两个技术也就被组合起来作为一个大的方案,共同推进,最后在去年初形成了三个正式版 BIP,进入开发阶段:

BIP-340: 在 secp256k1 曲线上实现 Schnorr Signature (注:此前比特币使用的椭圆曲线签名也是采用的 secp256k1 这一条)

BIP-341: Taproot:隔离见证 V1 版本的花费规则 (注:此前在 2017 年底推出隔离见证升级中,使用的是 V0 版本规则)

BIP-342: Taproot 脚本的验证方式(注:该文档描述了修改部分比特币操作码)

虽然 Gregory Maxwell 和 Pieter Wuille 先后离开了 Blockstream,但是 Schnorr Signature 和 Taproot 的大多数核心参与者都来自于 Blockstream,只有 Anthony Towns 一人除外——他之前是 Xapo 的工程师,后来加入了投资机构 Paradigm。

Schnorr Signature 有什么用?

在比特币协议中,判断用户是否有权限使用一笔资产时,除了需要经典的「数字签名」算法这个密码学组件之外,还构建了一种基于「锁定脚本」和「解锁脚本」的概念。

在此之前,中本聪在设计比特币协议时,需要考虑到签名算法的签名长度、是否开源、是否有专利、是否经过足够长时间的安全验证、性能等多种条件,最终选择了椭圆曲线数字签名算法(ECDSA),还在其他专家的建议下选择了一条特殊的椭圆曲线 secp256k1。

但是能满足上述这些条件的数字签名算法不止有 ECDSA,特别是有 Schnorr Signature 这个从各个方面都不亚于 ECDSA 的数字签名算法。而此前中本聪没有采用的理由可能是因为在比特币白皮书诞生的那一年,Schnorr Signature 的专利才失效。

没错,德国数学家和密码学家 Claus-Peter Schnorr 在 1990 年提交了相关专利申请并获批,而对于开源社区来说,在专利失效前是无法采用这套技术的,不然中本聪还真有可能在初版比特币协议实现中采用这套签名算法机制。

相比较 ECDSA,Schnorr Signature 更像是比特币签名算法应该有的样子。性能提升和签名长短的优势就不提了,更重要的是它的「线性」特点,可以很方便的进行密钥聚合,而不是通过其他特殊技巧实现多签。

这个「线性」也很好理解,各个密钥的参与方可以通过简单的机制处理就可以聚合生成一个新的密钥。而这个聚合的机制可以通过很多种方式进行,比如 Blockstream 就提出了 MuSig 和后面的更新版 MuSig2。在 MuSig2 的方案中,多个签名可以从他们各自的私钥中创建一个聚合公钥,然后共同为该公钥创建一个有效签名,并且从原来的三轮交互(MuSig)优化为只需要两轮的交互即可。

所以以一个 2-3 的多签交易来看,原来的传统方式是需要三个公钥加上两个签名才可以发起交易。

在 Schnorr Signature 场景中,链上交易只需要一个聚合的公钥和一个签名即可,同时也就能降低很多的交易字节数,也就是降低了转账成本。

所以,这也就又能带来两个额外的优势:私密性和超级多签。

由于只需要暴露一个签名和公钥,所以对于使用 Schnorr Signature 的地址,很难判断这是否是一个多签的地址,那也就无法得知多签的组成是什么样的,对于外部观察者而言,这就是一个普通的地址。

而对于之前的比特币脚本,在交易时是需要暴露出部分多签细节的,所以这也是为什么可以知道地址的多签构成。

BitInfoCharts 的比特币富豪榜,后面这个小标记标注了多签地址以及多签规则

此前,因为脚本的限制而无法支持很大数量的多签,也因 Schnorr Signature 得以实现,这可能会打开很多此前无法想象的应用场景,比如开启一个几百个地址规模的多签地址,实现更去中心化或更多样化的资产托管等。但可能会提升链下交互的复杂度,只能寄希望于 MuSig2 这些机制可以更快的研发和迭代。

Taproot 是一套全新的比特币脚本结构,定义了如何使用和收取 Taproot 类交易的地址。它最早的概念来自于比特币开发者提出的 MAST (默克尔抽象语法树),所以 Taproot 可以算是 MAST 的一种特殊实现。

相比之前的比特币脚本逻辑,MAST 概念中最主要的优势是可以以更私密的方式,实现更多样化的逻辑。

在构建一个 MAST 结构时,可以支持数量很多的脚本,如果这里以两个为例,用户可以提前准备一个主要的支付脚本和一个备用的支付脚本,最终生成一个递归上去的 MAST 根的哈希值。在使用这笔资产时,用户可以解锁主要的支付脚本,且不暴露备用的支付脚本细节,而是用它的哈希值。

这也就意味着,对于一个无论多复杂包含多少解锁方案的的 MAST 根,用户在解锁这笔资产时,只需要暴露其中的一个脚本即可,其他更多的逻辑都可以用哈希值体现,而不暴露任何其他细节。

说回到 Taproot,其本质也是类似的。而且这其中需要签名算法的「线性」特性,所以 Taproot 才需要和 Schnorr Signature 绑定在一起。

在比特币协议中,「锁定脚本」(输出脚本)定义了如何收取比特币(UTXO)的规则,「解锁脚本」(输入脚本)定义了如何使用比特币(UTXO)的规则,如果说前者是创造一个锁,那后者就是一把钥匙。

在三年前的隔离见证(Segwit)升级时,比特币的脚本规则进行了一次大规模的升级,提出了两种全新的脚本规则 P2WPKH (Pay to Witness Public Key Hash)和 P2WSH (Pay to Witness Script Hash),也就是现在那些以 bc1 开头的地址,都是采用了上述的脚本规则之一。P2WPKH 通常用在普通的地址上,P2WSH 通常用在多签地址中。

另外在隔离见证的升级中,脚本中还预留了一个版本号的概念,所有之前的 Segwit 脚本规则都采用了 V0 作为版本号,所以也可以称为 Segwit V0。而 Taproot 则是在 Segwit 的框架上进行了升级,版本号升级为 V1,这也就是 BIP 341 标题中 Segwit V1 的由来,或者这套脚本规则也可以称为 P2TR (Pay to Taproot),以对应 P2WPKH 和 P2WSH 的名字。

比如在某一笔交易中,输出脚本中 Segwit 版本号是 V0

在 Schnorr Signature 和 Taproot 的组合下,构建多签的方式也是多种多样的,比如比特币布道者 Steve Lee 就介绍 (https://www.youtube.com/watch?v=fDJRy6K_3yo) 过两种方法,分别是门限签名和 Musig 树(Musig Keytree)。

比如对于一个交易所的热钱包而言,可能是通过三个私钥进行 2-3 的多签,分别是「交易所私钥」、「可信第三方私钥」、「冷钱包备份私钥」。

在门限签名中,多个签名者需要利用 MuSig 机制预先构建收款地址;使用时将两个签名进行聚合,即可实现交易。

而在树状结构(Musig Keytree)中构建多签,就可以充分利用 Taproot 和 MAST 的优势了。同样是三种可以花费 BTC 的情况,将一种花费方式放在 MAST 的外部,而另外两种方式储存在 MAST 的两个节点中,以此构建收款地址。

如果拥有交易所密钥和第三方密钥的签名,就可以绕过 MAST 树状结构,直接生成一个聚合的 Taproot 签名,以花费这笔交易。

或者用户可以通过解锁「第三方密钥+冷钱包密钥」的脚本,加上 MAST 树另一边脚本的哈希,就可以构建出 Taproot 签名,以花费这笔交易。当然,用户还有第三种方式花费,也是一样的逻辑。

Schnorr Signature 和 Taproot 需要通过软分叉的形式升级,也就是旧版本协议和客户端可以继续运行,无需做其他调整。

但是未升级的节点是无法验证 Segwit V1 版本的 Taproot 类脚本的,会把他们当作是任何人都可以花费的脚本(anyone-can-spend scripts)。而对于那些未升级的钱包,可以继续接受和发送 SegWit V0 版本隔离见证地址,或者更早的传统地址类型(P2PKH)。对于部分实施了 BIP 173 (Bech32 地址)逻辑的钱包而言,可能是可以支持将 BTC 发送给 Taproot (Segwit V1)地址。

不过,核心开发者依旧是鼓励大家升级,以便支持验证这些新型的交易。

软分叉一般可以通过多种方式激活,之前多次软分叉是使用 BIP 9 的规则激活的,需要依据大量的算力发出支持的信号,而 BIP 8 也是类似的规则。

所以最终这套方案的上线还是需要矿工和矿池来投票和激活的。根据币印矿池整理的这份 Taproot 软分叉升级算力支持度来看,目前支持度已经超过 90%。而选择哪个具体的激活规则,很多矿池还未公开确认。

来源:https://taprootactivation.com

激活提案的种类还是挺多的,不过从目前已经投票的情况来看,很多都倾向于 BIP8 (false,1y)的这个方式,也就是这个软分叉并不会强制激活,有 1 年的投票区间,如果投票通过阈值,就会激活。

在 Taproot 激活后,接下去的事情就交给下游生态了,不过这应该是一个相比 Segwit 更漫长的普及之路。

由于 Schnorr Signature 和 Taproot 改进的更多是多签相关的场景,所以可以预料到第三方钱包、交易所都会比较谨慎,毕竟这不是一个立竿见影的技术升级。而对于那些有更复杂多签需求的专业用户、专业机构、甚至是依赖于多签的项目(比如跨链方案),更可能是第一批吃螃蟹的人。

无论如何,哪怕这不是一个用户感知度很高的技术升级,它最终也会因为各种基础设施的集成,实现更多样化的多签、私密性更强的地址类型、潜在的复杂逻辑支持、降低交易成本等各个方面,最终影响到生态内所有的用户。

撰文:潘致雄

您投送的稿件违反了金色财经的投稿协议,现已关闭您的投稿功能,如有异议请发邮件至tougao@jinse.com进行申诉。

金色午报 | 9月6日午间重要动态一览:7:00-12:00关键词:SushiSwap、“寿司”、CherryFi、数字版权 \n1. SushiSwap总锁仓量跌破9亿美元。 \n2. 加密社区用户曝币安随意上线“寿司”收割投资者。 \n3. 因代码漏洞,波场DeFi项目樱桃CherryFi已无法取出USDT。 \n4. Sushiswap创始人:我卖掉Devshare代币和Sushiswap是不是局没有关系。 \n5. 北京市副市长:北京将利用冬奥会等场景在数字货币等前沿领域先行先试。 \n6. 经济学家余丰慧:央行数字货币理论上杜绝了投机套利的可能。 \n7. 日本加密货币交易所Fisco计划于2020年11月进行品牌变更。 \n8. 北京版权保护中心主任:数字版权证书将成为数字经济时代版权资产唯一可信的价值载体。[2020/9/6]

TRX突破0.0175 USDT 创6月11日以来新高:据OKEx行情显示,TRX连续拉升,最高触及0.01757 USDT,创6月11日以来新高。现报0.01751 USDT,24H涨幅4.32%。[2020/7/6]

Simplex宣布支持BSV:金色财经报道,合规支付服务提供商Simplex增加了对BSV的支持。据悉,Simplex为多个加密货币交易所提供法币网关基础设施。[2020/7/3]

标签:

区块链热门资讯
金色前哨|币安智能链上演“空气换BTC”戏码 全过程揭秘

币安智能链今日上演“空气币换BTC和ETH”戏码。 2021年1月14日下午,加密货币KOL“超级比特币”发微博表示:“币安智能链借贷平台venus上,今天一个CAN的垃圾币莫名被添加进去作为抵押物,然后有人疯狂添加了价值10亿刀的CAN币,借走了2000 BTC和7000 ETH,上一次这么紧张是SBF把自己的FTX等等抵押到CREAM,借走了CRE。

2021/1/14 19:50:38
2021:最值得关注的以太坊改进提案

2021 年将会是自 2016 年以来以太坊协议最具创新性的一年。以下是这一年值得关注的 EIP 情况: 下一次的硬分叉升级—— “柏林”将推行 4 项 EIP: EIP-2929: 状态访问操作码所需的gas费用将增加 EIP-2930: 可选的访问列表交易 (Optional Access List Txs) EIP-2718: 包含类型的交易封套。

2021/1/14 19:45:04
5天13人离职?Aragon知情人士回应「集体离职」

加密行业出现了另一起成员集体辞职的现象。 事件的起因源于 1 月 7 日,DAO 解决方案提供商 Aragon 的发起者和现阶段主导者 Aragon Association(以下简称 AA)的治理主管 John Light 更新了动态,他在 GitHub 上发表长文,表示由于团队内部的巨大变动,他决定离开待了快三年的团队。

2021/1/14 19:39:31
暴涨的算力币了解一下 证券+DeFi玩法上演新财富故事?_区块链_

随着算法稳定币全面转入水下(稳定币单价<1美元),市场转冷亟需新的玩法,就在此时,一个新的概念新的网红开始冒尖,抓住了交接棒! 24小时,涨幅高达1130%,逆天的节奏,算力币的财富故事远超想象! 1月7日,币安宣布上线比特币标准算力(BTCST),支持用户质押BNB、BUSD、BTC到BTCST挖矿池中获得BTCST,挖矿周期为30天。

2021/1/14 19:23:03
首发 | 关于Filecoin 大家最关心的问题集锦

本文由尺度区块链原创,授权金色财经首发。 Filecoin从2020年10月份正式上线,而后市面上的文章基本上以矿商相关的文章为主,今天我来讲解一下Filecoin大家最关心的各类问题。 1、Filecoin的目前的基本状况? 目前市场上负面消息有一些,基本情况不好不坏吧。挖矿收益我下文会具体核算,并给出计算方法。

2021/1/14 19:17:29
1.14晚间行情:昨天进场 今天回调继续抄底

文章系金色财经专栏作者币圈北冥供稿,发表言论仅代表其个人观点,仅供学习交流!金色盘面不会主动提供任何交易指导,亦不会收取任何费用指导交易,请读者仔细甄别防上当。 BTC 昨天如期止跌反弹,日线连阴之后的低点并不难抓,昨天下午提示了趋势多单,公众号文章同样建议抄底买进。

2021/1/14 19:11:54