原文最初发表于2019年4月。重读这篇文章将有助于我们更好地理解施诺尔和比特币升级的意义。
比特币协议最终集成了Schnorr签名和taproot这两个重量级函数的代码。在两者结合的情况下,有望进一步提高多签名者地址的私密性,为数据块腾出更大的空间。目前,矿库和矿工对软叉升级的算力支持率已超过90%。至于以何种方式激活以及具体上线时间,则取决于后续相关方如何协商合作。如何支持第三方应用程序和生态系统可能是一个缓慢的过程,需要几年的时间。相对而言,另一个好消息是,经过讨论,比特币的核心开发者最终决定放弃之前的版本号命名规则,调整0版。X到版本X.0。下一个大版本将从“22.0”开始。
以下是正文。
原题:在即将到来的多重签名时代,施诺尔意味着什么
“Schnorr签名、主根签名和具有多个签名的签名聚合可能会同时作为升级包添加到比特币中。这些是一些非常有前途的加密创新,”安德烈亚斯M.安东诺普洛斯在今年年初说。
比特币**比特币传教士安德烈亚斯M.安东诺普洛斯
安东诺普洛斯是《掌握比特币》一书的作者。他也是加密货币界重要的技术专家和受人尊敬的人物。他预计,比特币的升级将在6个月内以软分叉的形式实施,包括施诺尔在内的升级将给用户带来比特币所不具备的隐私优势。
已创建升级的BiP,相关规范正在定稿。比特币的核心开发者Pieter wuille和其他开发者已经编写了实现代码。第一个原也已经创建。以施诺尔为核心的比特币豪华升级套餐即将推出。
那么,在比特币开发者中流行的Schnorr是什么呢?它带来了什么?
施诺尔的签名是什么
比特币使用数字签名解锁utxo中未使用的余额并完成交易。
例如,在事务B中,Bob将比特币转移给Carol。鲍勃需要分两步完成交易:
1) 证明你拥有这个比特币。
鲍勃之所以拥有这枚比特币,是因为爱丽丝给了他这枚比特币。在事务a的“锁定”部分,Alice使用Bob的公钥哈希(也是Bob的钱包地址)锁定提供给Bob的比特币。
Bob在交易B的“解锁”部分提供了自己的公钥和用私钥创建的签名,可以证明该比特币是自己的,从而完成解锁并使用该比特币。
2) 把这个比特币给卡罗尔。
Bob在事务B的“lock”部分使用Carol的公钥散列来锁定该比特币,这表示该比特币属于Carol。
例如,当Carol想使用此比特币时,如果她想将其传输给Dave,她需要创建一个事务C。首先,在“解锁”部分,她使用自己的公钥和私钥签名来解锁比特币,然后在“锁定”部分,她使用Dave的公钥哈希来锁定比特币。
不难发现,比特币需要使用公钥进行锁定,私钥签名进行解锁,从而实现加密货币的交易。如何生成公钥、私钥和签名?通过数字签名算法。
Schnoor是一种数字签名算法,它将在下一次升级中取代ECDSA。施诺尔是由德国数学家和密码学家克劳斯·施诺尔提出的。该算法可以使用与ECDSA相同的椭圆曲线:secp256k1,因此升级不会有太大变化。
Schnorr最突出的特点是它是“线性”的,即可以将多个公钥或私钥签名聚合成一个新的公钥或一个新的签名(也可以理解为将需要同时解锁的多个锁变成一个锁,将用于解锁的一组密钥变成一个密钥),新的公钥或签名也满足线性特征。
在使用Schnorr的多重签名事务中,如果Alice的公钥或签名为1,Bob的公钥或签名为2,Carol的公钥或签名为3,Dave的公钥或签名为4,则此事务中显示的公钥或签名为10(1+2+3+4=10),而不是1、2、3、4。
Schnoor签名算法的优点
施诺尔的开发者安德鲁波尔斯特拉(Andrew poelstra)认为,人们对施诺尔感兴趣是因为它提高了比特币的可扩展性,并允许人们创建具有非常多参与者的多签名交易。在这里,参与者不仅是多人,还有流动网络、闪电网络、智能合约等。
此外,安德鲁认为,施诺尔签名将使所有比特币交易在合并直根和无脚本脚本脚本后看起来都一样。无论是普通交易还是复杂交易,这种方式都将大大提高比特币的隐私性。
这些优点来自于在多个签名的情况下,如果使用ECDSA和N个公钥进行锁定,则需要N个与其对应的签名进行验证和解锁,并且验证也需要执行N次;如果使用Schnorr,则可以将N个公钥聚合成一个公钥,并且只有验证需要一个聚合签名。
这种“线性”质量使Schnorr在性能、体积和隐私方面优于ECDSA。
性能:施诺尔的性能优势非常明显。它减少了多重签名事务的验证工作量。此外,还可以实现多笔交易的批量验证,即用一个区块中所有交易的合计签名一次验证所有交易,从而提高比特币的验证速度。
卷:Schnorr使用聚合公钥和聚合签名,这将减少多重签名的大小。通过将无关数据移出区块链,提高了系统的可扩展性,节点将拥有更多的带宽,减少存储。安德鲁认为,如果每个人都采用这种方法,就会变相增加以太坊0%到20%的容量。
隐私:Schnorr的隐私优势在于,它使用聚合公钥和聚合签名来完成事务脚本中的锁定和解锁操作,用户的原始公钥和原始签名不会被暴露。外界只能看到10个,却看不到1、2、3、4个。外界甚至不知道这是一个多签名交易还是一个非多签名交易。
有更多有趣的方法来使用Schnorr签名,比如它可以在调整后使用。人们可以将一个聚合公钥乘以2作为要锁定的新聚合公钥。解锁时,只需将聚合签名乘以2即可完成解锁。这样,其他人就不知道原来的聚合公钥和原来的聚合签名是什么,也看不到公钥或签名是否被调整了。
施诺尔和直根的结合
印钞矿创始人潘志彪也认为,这次升级意义重大。他在个人微博中写道:“桅杆、施诺尔、直根、组合、烧成爆炸”,施诺尔如何与直根等技术手段结合?这种拳头组合能给比特币带来什么好处?
从了解他们是什么开始。Schnorr是一种签名算法,它是这些技术中最基本、最核心的,mast、taproot、graveroot、无脚本脚本等都是脚本结构,通过Schnorr可以充分利用它们的功能。
比特币脚本是比特币交易的载体:比特币交易是通过执行比特币脚本来实现的。解锁是执行“输入脚本”,锁定是执行“输出脚本”。脚本结构是指比特币脚本的数据结构。
如上所述,当人们使用自己未使用的余额进行比特币交易时,他们需要在输入脚本中提供自己的公钥和私钥签名,以证明他们拥有这些余额。
P2sh是比特币最基本的脚本结构。它显示了整个脚本的内容,包括公钥和私钥签名信息。节点通过这些信息验证事务。但同时,节点和任何人都可以获得交易的所有细节。
所以我们说比特币是透明的。虽然p2sh可以将实体的个人从比特币账户中隔离出来,实现实体个人的匿名性,但是p2sh并不能从比特币账户的角度为账户提供隐私。每个人都可以知道哪些账户以及资金的使用情况。
针对p2sh的不足,开发人员提出了一种新的脚本结构mast,即树结构。具体来说,它是一个Merkel树,即散列树。树中的每个节点都存储一个哈希值。其结构如下图所示。
树形结构
采用mast结构的比特币交易是指在多次签约的情况下,对一笔资金的不同使用条件分别进行哈希运算,生成哈希值并存储在树的叶子节点,这些哈希值逐层向上递归,**生成哈希值并放置在树的顶部节点,也就是说,默克尔根。
这样,在验证事务时,就不必公开所有的脚本信息。它只需要提供Merkel根和Merkel路径上的数据到一定的使用条件,其他信息仍处于散列密文状态。mast脚本结构不仅提供了隐私,而且提高了数据处理的效率。
现在我们可以谈谈直根。
直根是一种基于Schnorr特征的特殊桅杆。它可以像mast一样包含复杂的交易条件和资金使用细节,然后将所有这些内容作为新的资金使用条件(new lock)提供给外界。Schnorr的线性特性支持这种新的使用条件和在这种使用条件下的解锁方法(新钥匙)。
在最终演示中,taproot不需要公开任何脚本信息,也不需要公开原始公钥和原始签名。它的输出是要锁定的聚合签名,它只需要使用聚合签名来解锁。
再次,用一个不太合适但能解释问题的比喻。孙悟空可以把猴毛变成猴毛,而直根可以把猴毛变成猴毛。也就是说,我们把普通的事务看作是猴子的毛发,把由mast支持的复杂事务看作是一只强大的猴子。Taproot可以把mast变成猴毛,也就是说,它使所有比特币交易看起来都一样,不管它有多复杂。
这比特殊货币的隐私性有了很大的提高,包括多签交易下账户的隐私性、智能合约的隐私性、liquid network、lightning network等的隐私性,因为智能合约、liquid networks、lightning networks,而更多的外链扩容解决方案都是多签复杂事务。
组合拳拉开多重签名的帷幕
在现实生活中,我们常常提倡某种“生活方式”。在加密货币世界的生活中,或许我们应该倡导多重签名作为一种生活方式,让多重签名成为加密货币资本使用的常识和习惯方式。
基于Schnorr和taproot的多重签名可以增强交易的私密性。它可以隐藏参与者的公钥和私钥签名信息,也可以隐藏资金使用的细节。
多重签名的另一个优点是提高安全性。无论是加拿大quadrigacx交易所(quadrigacx exchange)创始人的去世,导致1.6亿美元加密货币被锁定,还是来自戈克斯山从一开始,可以通过多次签名来改善兑换钱包的连续**。
多重签名提供了一种“检索”加密货币的方法,因此当我们无法通过特定路径或特定方式解锁比特币时,还有其他方法可以解锁比特币。就像在现实生活中,如果我们丢了储蓄卡不能取款,我们仍然可以用存折取款。
(注:当然,现在是申请新储蓄卡的时候了,但这与多签的方式完全不同。加密货币没有卡替换方法,因为私钥本身是最终的、唯一的证书,不像银行在账户证书之上有用户身份层证书来替换卡。
多次签名还可以提供严格的加密货币“使用”条件。正常情况下,只有同时满足这些条件,比特币才能解锁。就像进入银行的金库。你需要刷卡和视网膜才能打开保险库的门。你需要密码和钥匙才能打开保险箱。
这些是多重签名的优点,而Schnorr和taproot的结合进一步提升了这一优点,因此多重签名可以以更高效、更私密的方式实现。
需要注意的是,即使在升级后,一个不使用多重签名的普通交易也无法获得Schnorr和taproot带来的好处,其隐私级别与升级前相同。
因此,一方面要提倡多签。另一方面,即使在普通交易中不使用多重签名,但在大量应用场景中也需要多重签名,比如通过智能合约使用比特币,通过液网、闪电网使用比特币,以及更多的链外扩容方式。多重签名本身的地位越来越重要。
Schnorr和taproot的结合,可能包括更多的多符号脚本结构,如graftroot,将大大提高多符号的性能,使比特币上的复杂交易成为可能。
复杂的事务在过去很容易识别,但升级后,它们看起来与普通事务一样,并且事务将变为私有事务。例如,当用户打开或关闭lightning网络通道时,除了参与者之外,没有人知道发生了什么,其他人看到的是一个公共锁定公钥。Wuille称Schnorr和taproot是比特币隐私保护的一大胜利。
Wuille还认为Schnorr和taproot是比特币智能合约的大赢家。它们将允许创建具有复杂使用条件的多签名事务。在施诺尔线性特性的支持下,链下可能衍生出许多新的应用和创新。
此外,在Schnorr和taproot的支持下,复杂的交易不仅执行效率高,而且不需要占用额外的比特币区块链空间。Schnorr使用聚合公钥和聚合签名,只需要一次验证;taproot支持一个大的脚本树,但占用的空间很小。
不难发现,尽管此前比特币已经支持多重签名,但包括Schnorr和taproot在内的比特币升级包无疑将拉开多重签名的帷幕。多重签名带来的不仅是一个更安全、更私有、更可扩展的比特币区块链,而且是一个智能合约和流动性支持网络、闪电网络,以及未来更多比特币应用的基础设施。
这是一个值得期待的美好未来。
文章标题:比特币终于集成了施诺尔码和直根码,多重签名时代即将到来?
文章链接:https://www.btchangqing.cn/179080.html
更新时间:2021年01月14日
本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。
比特币天啊.
哈哈,其几天买了以太坊,不错不错
4000多买的比特币,我骄傲了嘛