
一文读懂零知识证明背后的简单逻辑
零知识证明的工程实现是一件极具挑战性的工作,但这并不意味着理解零知识证明这件事也同样困难,它背后的逻辑是简单的。 为什么需要去了解它?隐私问题自不用提,另一个重要原因则在于,随着对区块链探索的深入,我们发现通过密码学的方法来实现信任是对共识算法信任的有效补充,这两种信任可以更低摩擦地结合在一起,因此也更易被实现和应用。这个趋势也可以从近期区块链技术的发展方向中察觉到。 而只有当我们知道这些密码学方法背后的逻辑,才不会迷失其中,才能理解它为何要这样去设计,它适用于什么样的应用场景。 那么现在,就让我们开始零知识证明之旅吧。它包含三段旅程:隐藏秘密之旅;证明秘密之旅;构建通用零知识证明之旅。一. 隐藏秘密:单向功能在《星际迷航》的宇宙中,P = NP,这对于计算界也许是件好事,它意味着所有可以在多项式时间内验证的问题,也可以在多项式时间内求解。但对于密码学界而言,这可能是一场灾难。 密码学需要存在一种「单向功能」,也就是说能够从 A 计算出 B,但从 B 计算出 A 存在着计算上的不可行性——计算从 A 到 B 是单向的,我们才有可能把 A 藏起来。而如果 P = NP,在多项式时间...

What Can Be Created Based on Decentralized Social Networks
When we talk about decentralized social, we usually refer to a class of products or protocols that have decentralized characteristics and are related to social media. When we discuss how to build such products, we often consider how to use decentralized technologies or even blockchain to create them, and how to bring the benefits of decentralization and blockchain to social users. While this perspective is not wrong, it resembles Maslow’s hammer: “If all you have is a hammer, everything looks...

Farcaster: A Brand-New Community Built on Top of Decentralized Social Networks
Every Friday, Farcaster is filled with a relaxed atmosphere. People greet each other with “Happy Friday” and “touch grass,” and even the cash cannon (a method for mass tipping) seems to be used more frequently on that day. It’s hard to sense this vibe on social media platforms on a Friday, but you can feel it in the office just before the end of the workday. I know some people come to Farcaster, take a quick look, and leave saying, “How is it different from Twitter?” Let me tell you, when you...
<100 subscribers

一文读懂零知识证明背后的简单逻辑
零知识证明的工程实现是一件极具挑战性的工作,但这并不意味着理解零知识证明这件事也同样困难,它背后的逻辑是简单的。 为什么需要去了解它?隐私问题自不用提,另一个重要原因则在于,随着对区块链探索的深入,我们发现通过密码学的方法来实现信任是对共识算法信任的有效补充,这两种信任可以更低摩擦地结合在一起,因此也更易被实现和应用。这个趋势也可以从近期区块链技术的发展方向中察觉到。 而只有当我们知道这些密码学方法背后的逻辑,才不会迷失其中,才能理解它为何要这样去设计,它适用于什么样的应用场景。 那么现在,就让我们开始零知识证明之旅吧。它包含三段旅程:隐藏秘密之旅;证明秘密之旅;构建通用零知识证明之旅。一. 隐藏秘密:单向功能在《星际迷航》的宇宙中,P = NP,这对于计算界也许是件好事,它意味着所有可以在多项式时间内验证的问题,也可以在多项式时间内求解。但对于密码学界而言,这可能是一场灾难。 密码学需要存在一种「单向功能」,也就是说能够从 A 计算出 B,但从 B 计算出 A 存在着计算上的不可行性——计算从 A 到 B 是单向的,我们才有可能把 A 藏起来。而如果 P = NP,在多项式时间...

What Can Be Created Based on Decentralized Social Networks
When we talk about decentralized social, we usually refer to a class of products or protocols that have decentralized characteristics and are related to social media. When we discuss how to build such products, we often consider how to use decentralized technologies or even blockchain to create them, and how to bring the benefits of decentralization and blockchain to social users. While this perspective is not wrong, it resembles Maslow’s hammer: “If all you have is a hammer, everything looks...

Farcaster: A Brand-New Community Built on Top of Decentralized Social Networks
Every Friday, Farcaster is filled with a relaxed atmosphere. People greet each other with “Happy Friday” and “touch grass,” and even the cash cannon (a method for mass tipping) seems to be used more frequently on that day. It’s hard to sense this vibe on social media platforms on a Friday, but you can feel it in the office just before the end of the workday. I know some people come to Farcaster, take a quick look, and leave saying, “How is it different from Twitter?” Let me tell you, when you...


Share Dialog
Share Dialog
广受比特币开发者青睐的Schnoor究竟是什么?它带来的又是什么?
比特币是通过数字签名来解锁UTXO中的未花费余额,从而完成交易的。
以下图为例,在交易B中,Bob转给Carol一个比特币。Bob需要分两步来完成这笔交易:

1.证明自己拥有这一个比特币
Bob为什么拥有这一个比特币,因为Alice给了他这一个比特币;Alice在交易A的「加锁」部分把给Bob的这一个比特币用Bob的公钥哈希锁上,该公钥哈希也是Bob的钱包地址。
Bob在交易B的「解锁」部分提供自己的公钥以及用私钥创建的签名,就能证明这一个比特币是自己的,从而完成解锁,可以使用这一个比特币。
2.把这一个比特币给Carol
Bob在交易B的「加锁」部分用Carol的公钥哈希把这一个比特币锁上,即表明这个比特币是属于Carol的了。
当Carol要使用这个比特币时,比如想转给Dave,Carol就需创建一笔交易C,先在「解锁」部分用自己的公钥及私钥签名解锁这个比特币,再在「加锁」部分用Dave的公钥哈希把这个比特币锁上。
不难发现,比特币需要利用公钥进行加锁,利用私钥签名进行解锁,从而实现密码货币的交易。公钥、私钥及其签名如何产生?通过数字签名算法。
Schnoor即是一种数字签名算法,它将在下一次升级中取代比特币现在使用的签名算法ECDSA。Schnorr由德国数学家、密码学家Claus Schnorr提出,该算法可以与ECDSA使用同一个椭圆曲线:secp256k1,因此升级起来的变动不会很大。
Schnorr最突出的特点在于它是「线性」的,也就是说,它可以把多个公钥或多个私钥签名聚合成一个新的公钥或一个新的签名(也可以理解为把多个需要同时解开的锁变成一个锁,把用于解锁的一串钥匙变成一把钥匙),而且这个新的公钥或签名还满足线性特征。
做一个不是特别适合但能说明问题的比喻,在一笔使用Schnorr的多签交易中,如果参与方Alice的公钥或签名是1,Bob的是2,Carol的是3,Dave的是4,那么这笔交易对外显示的公钥或签名是10(1+2+3+4=10),而不是1、2、3、4。
Schnorr 开发者Andrew Poelstra认为,人们之所以对Schnoor感兴趣,是因为它提高了比特币的可伸缩性,并允许人们创建具有非常多参与者的多签交易,这里边的参与者不仅指多个人,也可能是Liquid网络、闪电网络、智能合约等等。
此外,Andrew 认为Schnorr 签名在结合Taproot 和Scriptless Scripts后,会让所有比特币交易看起来都一样,无论这是一个普通交易还是一个复杂交易,这种方式将极大改善比特币的隐私情况。
这些优势源于在多签的情况下,如果使用的是ECDSA,用N个公钥加锁,就需要有与之对应的N个签名来做验证解锁,验证的工作也需要进行N次;如果使用的是Schnorr,N个公钥可以聚合为一个公钥,验证时也只需用一个聚合签名做一次验证。
这种「线性」的特质让Schnorr在性能、体积、隐私等方面均优于ECDSA。
**性能:**Schnoor的性能优势显而易见,它减少了一个多签交易的验证工作量,此外还有可能实现多个交易的批量验证,也就是用一个区块中所有交易的聚合签名一次性验证所有交易,从而提升比特币的验证速度。
体积:Schnorr使用的是聚合公钥和聚合签名,这会减少多重签名的大小,通过将无关数据移出区块链提高系统的可伸缩性,节点将拥有更多的带宽同时还能减少存储量。Andrew认为如果每个人都采用这种方法,等于变相将比特币的容量增加了 10%至20%。
**隐私:**Schnoor的隐私优势在于它在交易脚本中使用聚合公钥和聚合签名完成加锁和解锁操作,某个用户的原公钥和原签名都不会暴露。外界只能看到10,而不能看到1、2、3、4,外界甚至无法知道这是一笔多签交易还是一笔非多签交易。
Schnoor签名还有更多有趣的使用方式,比如它能够在被调整后使用。人们可以把一个聚合公钥乘以2作为新的聚合公钥来上锁,解锁时只需要把聚合签名也乘以2就能完成解锁。这样一来其他人就无法知道原聚合公钥和原聚合签名是什么,他们也看不出公钥或签名是否被调整过。
Schnorr如何与Taproot等技术手段组合起来使用?这套组合拳又能给比特币带来什么好处?
先从了解它们是什么开始。Schnorr是签名算法,它是这些技术中最基础也是最核心的;MAST、Taproot、Graftroot、Scriptless scripts等则都是脚本结构,它们可以通过利用Schnorr让自己的功能淋漓尽致的发挥。
比特币脚本是比特币交易的载体:一笔比特币交易是通过执行一段比特币脚本来实现的,解锁就是执行「输入脚本」,加锁就是执行「输出脚本」。脚本结构是指比特币脚本的数据结构。

如前文所述,当人们使用自己的未花费余额进行比特币交易时,需要在输入脚本部分提供自己的公钥和私钥签名,以证明自己拥有这些余额。
P2SH是比特币最基本的脚本结构,它向外展示整个脚本的内容,包括公钥和私钥签名的信息,节点通过这些信息来验证该笔交易。但同时,节点和任何人都可以获取这笔交易的全部细节信息。
因此我们说比特币是透明的。虽然它能够把物理实体的个人与比特币账户隔离,实现物理个体的匿名,但如果站在比特币账户的角度,P2SH是不为账户提供隐私的,所有人都可以知道这笔资金是哪个/哪些账户以什么方式使用的。
因为P2SH的缺点,开发者提出了一种新的脚本结构MAST,它是一种树状的结构,具体而言是一棵默克尔树,即哈希树,树上的每一个节点存储的都是哈希值。其结构如下图所示。

比特币交易使用MAST结构是指在多签情况下,把一笔资金不同的使用条件单独进行哈希处理,生成一个哈希值储存在这棵树的叶子节点中;这些哈希值逐层向上递归,最终生成一个哈希值放在树的最顶端的节点中,即默克尔根中。
这样一来,当验证某笔交易时就不需要暴露全部的脚本信息,只需要提供默克尔根和抵达某使用条件的默克尔路径上的数据,其他信息仍然是哈希密文状态。MAST脚本结构不仅提供了隐私性,还增加了数据处理效率。
现在可以讨论Taproot了。
Taproot是一种特殊的MAST,基于Schnorr签名。它可以包含复杂的交易条件和资金使用细节,就像MAST一样,再把所有这些内容作为一个新的资金使用条件(新的锁)提供给外界使用,这个新的使用条件和该使用条件下的解锁方法(新的钥匙)是通过Schnorr的线性特征来支持的。
在最后的呈现上,Taproot无需披露任何脚本信息,也无需暴露原公钥、原签名,它的输出是一个聚合签名加锁,也只要用一个聚合签名解锁。
再次做一个不是特别适合但能说明问题的比喻。孙悟空可以把猴毛变成猴子,而Taproot做的是把猴子变成猴毛,也就是说,我们把普通交易看做一根猴毛,把MAST支持的复杂交易看做一只功能强大的猴子,Taproot可以把MAST这个猴子变成猴毛,即Andrew说的让所有的比特币交易看起来都一个样,不管它本身是多么复杂。
这对比特币隐私,包括多签交易下的账户隐私、智能合约隐私,以及Liquid网络、闪电网络等的隐私都是极大的改善。因为智能合约、Liquid网络、闪电网络,以及更多链外扩容的方案都是一种多签,一种复杂交易。
在现实生活中,我们常常会提倡某种「生活方式」,在密码货币这个世界的生活中,或许我们该把多签当作一种生活方式来倡导,让多签成为密码货币的常识性和习惯性的资金使用方式。
以Schnorr和Taproot为基础的多签对交易隐私的提升在前文已经阐述,它可以隐藏参与者的公钥和私钥签名信息,也可以隐藏资金被使用的细节。
多签的另一个好处是提高安全性。不管是加拿大Quadriga CX交易所创始人离世,导致1.6亿美元的密码货币被锁事件,还是从Mt.gox开始就一直持续不断的交易所钱包被盗事件,都可以通过多签得到改善。
多签提供了一种密码货币的「寻回」方法,让我们在无法通过某条路径或某种方式解锁比特币时,还能有其他的解锁方式。这就像在现实生活中,如果我们弄丢了储蓄卡取不出钱的时候,还能用存折本取钱。
注:当然现在是补办储蓄卡,但补卡这种方式和多签的方式是完全不同的。密码货币没有补卡这种方式,因为私钥本身就是终极的唯一的凭证,不像银行在账户凭证之上还有用户身份这一层的凭证可用于补卡。
多签也可以提供严苛的密码货币「使用」条件,常规情况下只有这些条件同时被满足时才能解锁比特币。这就像进入银行的金库,需要刷卡和刷视网膜打开金库大门,需要密码和钥匙打开保险柜。
这些都是多签带来的好处,而Schnorr和Taproot的组合进一步升级了这种好处,让多签能以更高效、更隐私的方式实现。
需要注意的是,即使是升级之后,一笔未使用多签的普通交易也是无法得到Schnorr和Taproot带来的好处的,其隐私级别与升级前是一样的。
因此一方面需要提倡多签,而另一方面,即使普通交易不使用多签,多签也在大量应用场景中被需要,比如通过智能合约使用比特币,通过Liquid网络、闪电网络,以及更多链外扩容的方式使用比特币。多签本身的地位正在变得越来越重要。
而Schnorr和Taproot的组合——后续该组合还可能包含Graftroot等更多多签脚本结构——将极大地加强多签的性能,让比特币上的复杂交易成为可能。
复杂交易在过去很容易就可以被识别出来,但升级后它们将和普通交易看起来一样,交易将变得私密,比如当用户打开或者关闭闪电网络通道时,除了参与方之外没有人知道发生了什么,其他人看见的只是一个普通的加锁公钥。Wuille称Schnorr和Taproot是比特币在隐私性上的巨大胜利。
Wuille同时也认为Schnorr和Taproot是比特币智能合约的巨大胜利。它们将允许创建具有复杂使用条件的多签交易,在Schnorr线性特征的支持下,可能衍生出许多新的应用以及链下创新。
此外,在Schnorr和Taproot的支持下,复杂交易不仅有高的执行效率,还不需要占用额外的比特币区块链空间。Schnorr使用的是聚合公钥和聚合签名,只需一次验证;Taproot支持很大的脚本树,但占用的空间却很小。
不难发现,虽然比特币之前就支持多签,但包含Schnorr和Taproot在内的比特币升级包无疑会全面开启多签的大幕,而多签带来的,不仅是一个更安全、更具隐私、更有伸缩性的比特币区块链,还是一种支持智能合约、Liquid网络、闪电网络,以及未来更多比特币应用方式的基础设施。
这是一个值得期待的、更好的未来。
广受比特币开发者青睐的Schnoor究竟是什么?它带来的又是什么?
比特币是通过数字签名来解锁UTXO中的未花费余额,从而完成交易的。
以下图为例,在交易B中,Bob转给Carol一个比特币。Bob需要分两步来完成这笔交易:

1.证明自己拥有这一个比特币
Bob为什么拥有这一个比特币,因为Alice给了他这一个比特币;Alice在交易A的「加锁」部分把给Bob的这一个比特币用Bob的公钥哈希锁上,该公钥哈希也是Bob的钱包地址。
Bob在交易B的「解锁」部分提供自己的公钥以及用私钥创建的签名,就能证明这一个比特币是自己的,从而完成解锁,可以使用这一个比特币。
2.把这一个比特币给Carol
Bob在交易B的「加锁」部分用Carol的公钥哈希把这一个比特币锁上,即表明这个比特币是属于Carol的了。
当Carol要使用这个比特币时,比如想转给Dave,Carol就需创建一笔交易C,先在「解锁」部分用自己的公钥及私钥签名解锁这个比特币,再在「加锁」部分用Dave的公钥哈希把这个比特币锁上。
不难发现,比特币需要利用公钥进行加锁,利用私钥签名进行解锁,从而实现密码货币的交易。公钥、私钥及其签名如何产生?通过数字签名算法。
Schnoor即是一种数字签名算法,它将在下一次升级中取代比特币现在使用的签名算法ECDSA。Schnorr由德国数学家、密码学家Claus Schnorr提出,该算法可以与ECDSA使用同一个椭圆曲线:secp256k1,因此升级起来的变动不会很大。
Schnorr最突出的特点在于它是「线性」的,也就是说,它可以把多个公钥或多个私钥签名聚合成一个新的公钥或一个新的签名(也可以理解为把多个需要同时解开的锁变成一个锁,把用于解锁的一串钥匙变成一把钥匙),而且这个新的公钥或签名还满足线性特征。
做一个不是特别适合但能说明问题的比喻,在一笔使用Schnorr的多签交易中,如果参与方Alice的公钥或签名是1,Bob的是2,Carol的是3,Dave的是4,那么这笔交易对外显示的公钥或签名是10(1+2+3+4=10),而不是1、2、3、4。
Schnorr 开发者Andrew Poelstra认为,人们之所以对Schnoor感兴趣,是因为它提高了比特币的可伸缩性,并允许人们创建具有非常多参与者的多签交易,这里边的参与者不仅指多个人,也可能是Liquid网络、闪电网络、智能合约等等。
此外,Andrew 认为Schnorr 签名在结合Taproot 和Scriptless Scripts后,会让所有比特币交易看起来都一样,无论这是一个普通交易还是一个复杂交易,这种方式将极大改善比特币的隐私情况。
这些优势源于在多签的情况下,如果使用的是ECDSA,用N个公钥加锁,就需要有与之对应的N个签名来做验证解锁,验证的工作也需要进行N次;如果使用的是Schnorr,N个公钥可以聚合为一个公钥,验证时也只需用一个聚合签名做一次验证。
这种「线性」的特质让Schnorr在性能、体积、隐私等方面均优于ECDSA。
**性能:**Schnoor的性能优势显而易见,它减少了一个多签交易的验证工作量,此外还有可能实现多个交易的批量验证,也就是用一个区块中所有交易的聚合签名一次性验证所有交易,从而提升比特币的验证速度。
体积:Schnorr使用的是聚合公钥和聚合签名,这会减少多重签名的大小,通过将无关数据移出区块链提高系统的可伸缩性,节点将拥有更多的带宽同时还能减少存储量。Andrew认为如果每个人都采用这种方法,等于变相将比特币的容量增加了 10%至20%。
**隐私:**Schnoor的隐私优势在于它在交易脚本中使用聚合公钥和聚合签名完成加锁和解锁操作,某个用户的原公钥和原签名都不会暴露。外界只能看到10,而不能看到1、2、3、4,外界甚至无法知道这是一笔多签交易还是一笔非多签交易。
Schnoor签名还有更多有趣的使用方式,比如它能够在被调整后使用。人们可以把一个聚合公钥乘以2作为新的聚合公钥来上锁,解锁时只需要把聚合签名也乘以2就能完成解锁。这样一来其他人就无法知道原聚合公钥和原聚合签名是什么,他们也看不出公钥或签名是否被调整过。
Schnorr如何与Taproot等技术手段组合起来使用?这套组合拳又能给比特币带来什么好处?
先从了解它们是什么开始。Schnorr是签名算法,它是这些技术中最基础也是最核心的;MAST、Taproot、Graftroot、Scriptless scripts等则都是脚本结构,它们可以通过利用Schnorr让自己的功能淋漓尽致的发挥。
比特币脚本是比特币交易的载体:一笔比特币交易是通过执行一段比特币脚本来实现的,解锁就是执行「输入脚本」,加锁就是执行「输出脚本」。脚本结构是指比特币脚本的数据结构。

如前文所述,当人们使用自己的未花费余额进行比特币交易时,需要在输入脚本部分提供自己的公钥和私钥签名,以证明自己拥有这些余额。
P2SH是比特币最基本的脚本结构,它向外展示整个脚本的内容,包括公钥和私钥签名的信息,节点通过这些信息来验证该笔交易。但同时,节点和任何人都可以获取这笔交易的全部细节信息。
因此我们说比特币是透明的。虽然它能够把物理实体的个人与比特币账户隔离,实现物理个体的匿名,但如果站在比特币账户的角度,P2SH是不为账户提供隐私的,所有人都可以知道这笔资金是哪个/哪些账户以什么方式使用的。
因为P2SH的缺点,开发者提出了一种新的脚本结构MAST,它是一种树状的结构,具体而言是一棵默克尔树,即哈希树,树上的每一个节点存储的都是哈希值。其结构如下图所示。

比特币交易使用MAST结构是指在多签情况下,把一笔资金不同的使用条件单独进行哈希处理,生成一个哈希值储存在这棵树的叶子节点中;这些哈希值逐层向上递归,最终生成一个哈希值放在树的最顶端的节点中,即默克尔根中。
这样一来,当验证某笔交易时就不需要暴露全部的脚本信息,只需要提供默克尔根和抵达某使用条件的默克尔路径上的数据,其他信息仍然是哈希密文状态。MAST脚本结构不仅提供了隐私性,还增加了数据处理效率。
现在可以讨论Taproot了。
Taproot是一种特殊的MAST,基于Schnorr签名。它可以包含复杂的交易条件和资金使用细节,就像MAST一样,再把所有这些内容作为一个新的资金使用条件(新的锁)提供给外界使用,这个新的使用条件和该使用条件下的解锁方法(新的钥匙)是通过Schnorr的线性特征来支持的。
在最后的呈现上,Taproot无需披露任何脚本信息,也无需暴露原公钥、原签名,它的输出是一个聚合签名加锁,也只要用一个聚合签名解锁。
再次做一个不是特别适合但能说明问题的比喻。孙悟空可以把猴毛变成猴子,而Taproot做的是把猴子变成猴毛,也就是说,我们把普通交易看做一根猴毛,把MAST支持的复杂交易看做一只功能强大的猴子,Taproot可以把MAST这个猴子变成猴毛,即Andrew说的让所有的比特币交易看起来都一个样,不管它本身是多么复杂。
这对比特币隐私,包括多签交易下的账户隐私、智能合约隐私,以及Liquid网络、闪电网络等的隐私都是极大的改善。因为智能合约、Liquid网络、闪电网络,以及更多链外扩容的方案都是一种多签,一种复杂交易。
在现实生活中,我们常常会提倡某种「生活方式」,在密码货币这个世界的生活中,或许我们该把多签当作一种生活方式来倡导,让多签成为密码货币的常识性和习惯性的资金使用方式。
以Schnorr和Taproot为基础的多签对交易隐私的提升在前文已经阐述,它可以隐藏参与者的公钥和私钥签名信息,也可以隐藏资金被使用的细节。
多签的另一个好处是提高安全性。不管是加拿大Quadriga CX交易所创始人离世,导致1.6亿美元的密码货币被锁事件,还是从Mt.gox开始就一直持续不断的交易所钱包被盗事件,都可以通过多签得到改善。
多签提供了一种密码货币的「寻回」方法,让我们在无法通过某条路径或某种方式解锁比特币时,还能有其他的解锁方式。这就像在现实生活中,如果我们弄丢了储蓄卡取不出钱的时候,还能用存折本取钱。
注:当然现在是补办储蓄卡,但补卡这种方式和多签的方式是完全不同的。密码货币没有补卡这种方式,因为私钥本身就是终极的唯一的凭证,不像银行在账户凭证之上还有用户身份这一层的凭证可用于补卡。
多签也可以提供严苛的密码货币「使用」条件,常规情况下只有这些条件同时被满足时才能解锁比特币。这就像进入银行的金库,需要刷卡和刷视网膜打开金库大门,需要密码和钥匙打开保险柜。
这些都是多签带来的好处,而Schnorr和Taproot的组合进一步升级了这种好处,让多签能以更高效、更隐私的方式实现。
需要注意的是,即使是升级之后,一笔未使用多签的普通交易也是无法得到Schnorr和Taproot带来的好处的,其隐私级别与升级前是一样的。
因此一方面需要提倡多签,而另一方面,即使普通交易不使用多签,多签也在大量应用场景中被需要,比如通过智能合约使用比特币,通过Liquid网络、闪电网络,以及更多链外扩容的方式使用比特币。多签本身的地位正在变得越来越重要。
而Schnorr和Taproot的组合——后续该组合还可能包含Graftroot等更多多签脚本结构——将极大地加强多签的性能,让比特币上的复杂交易成为可能。
复杂交易在过去很容易就可以被识别出来,但升级后它们将和普通交易看起来一样,交易将变得私密,比如当用户打开或者关闭闪电网络通道时,除了参与方之外没有人知道发生了什么,其他人看见的只是一个普通的加锁公钥。Wuille称Schnorr和Taproot是比特币在隐私性上的巨大胜利。
Wuille同时也认为Schnorr和Taproot是比特币智能合约的巨大胜利。它们将允许创建具有复杂使用条件的多签交易,在Schnorr线性特征的支持下,可能衍生出许多新的应用以及链下创新。
此外,在Schnorr和Taproot的支持下,复杂交易不仅有高的执行效率,还不需要占用额外的比特币区块链空间。Schnorr使用的是聚合公钥和聚合签名,只需一次验证;Taproot支持很大的脚本树,但占用的空间却很小。
不难发现,虽然比特币之前就支持多签,但包含Schnorr和Taproot在内的比特币升级包无疑会全面开启多签的大幕,而多签带来的,不仅是一个更安全、更具隐私、更有伸缩性的比特币区块链,还是一种支持智能合约、Liquid网络、闪电网络,以及未来更多比特币应用方式的基础设施。
这是一个值得期待的、更好的未来。
No comments yet