区块链替代签名方案优劣势对比,Schnorr签名最适合比特币_ECD:maidsafecoin

作者:LelandLee和DevOzha

具有讽刺意味的是,一些市值数十亿美元的加密货币本身并不支持多重签名。其中m-of-n的签名者需授权一笔交易。我们不需要审判,因为也许我们只设计了一把私钥。但这不是我们想要生活的世界,因为谁都不想因为错误的智能合约或丢失的私匙,而损失数百万美元。

今天,我们将研究各种适用于UTXO和帐户模型的交易签名多重签名方案。请注意,一些方案仍在被积极研究当中,并且会有多种具有不同属性的构造。如果读者因本文涉及太多的技术内容,而不想看这些枯燥的东西,您可直接跳至“权衡空间”部分,查看各签名方案的优劣势。

在目前的情况下,现有的区块链已采用了几种不同的系统,让多个所有者控制同一笔区块链token,以太坊是基于智能合约,而比特币则基于脚本。

基于智能合约的例子:以太坊、Tezos、EOS、Vechain、ETC;基于脚本的例子:比特币、莱特币、Iota、Cardano、Zcash、NEO、DASH、Decred;客户端内置:恒星和瑞波;自定义密码系统:GRIN和门罗;一、签名是如何工作的

币记Bitget与币圈判官达成合作关系:据官方消息,币记Bitget与币圈判官达成合作关系,共同拓展市场

币圈判官于2019年进入区块链市场,主要专攻ETH合约 ,现货,数字货币量化(现货 合约)。 致力于技术分析,资金分配 ,风险控制管理。自今年4月份深入合作以来,跟单人数已超十万人,日交易量上千万usdt。4月22号预测以太将创历史新高当晚到达,4月28号再次成功预测以太坊创历史新高,提前带领合作用户布局,拿下上千点利润。实现利润与风险双向控制。

币记Bitget总部位于新加坡,是一家拥有四国牌照的专注于衍生品的全球数字资产交易平台,在日本、韩国、越南、加拿大等地设有办事处。币记Bitget的标杆产品为一键跟单,累计跟单数超过360万,全球拥有150多万注册用户,合约交易量位居世界前五。[2021/4/30 21:11:56]

为了在任何区块链上发送有效的交易,必须采取几个步骤:

构造一笔有效交易;使用帐户或UTXO的相应私钥签署交易;将签名的交易提交到网络;矿工核实交易和签名;交易被放置到一个区块当中,并更新相关的区块链状态;二、非密码技术及其问题

智能合约:虽然基于智能合约的多重签名帐户提供了很大的灵活性,但从历史上看,它们在代码、语言、虚拟机和编译器方面都存在缺陷。由于与人类有关的错误,数亿美元的区块链token被永久锁定了。

脚本:与智能合约平台不同,比特币具有更原始的脚本语言。区别也很明显:非图灵完备、非编译、没有虚拟机,也没有“状态”的概念。这是否会使加密货币变得不那么有用,这一争论将在其他地方展开。但更重要的是,其对多重签名有特定的操作码。在比特币和比特币相关分叉中,有一个特殊的脚本被称为支付到脚本哈希,其被用于创建多重签名帐户。

直播 | Wendy > 币圈2020存量市场的突围之路:金色财经 · 直播主办的《 币圈 “后浪” 仙女直播周》第3期今晚20:00准时开始,本期“后浪”仙女Abit CPO Wendy 将在直播间聊聊“币圈2020存量市场的突围之路”,感兴趣的朋友扫码移步收听![2020/6/7]

比特币的多重签名地址和以太坊的多重签名钱包都要求在发送交易时提交所有相关签名。我们今天将探讨的一些方案,只需要提交一个签名,从而节省了宝贵的链上空间,并可能使地址与单个私钥地址无法区分。

三、各类加密签名技术

在本文当中,我们会探索各种技术,将多重签名添加到区块链协议当中。注意,这些技术均不是什么万能药,因为每种方案都会存在各种权衡,在确定哪种技术最适合特定情况之前,我们需要去彻底探索。

1、沙米尔秘密共享算法

注:这不是经典意义上的多重签名,尽管这里讨论的是为其他形式的密码多重签名提供反例。

这里使用一个私钥来派生n个碎片,其中的m是重建私钥所需的。此方案通常用于密钥恢复,如果用户丢失了私钥,则可使用用户分发给不同朋友的碎片重建原始密钥。但是,它不适用于多重签名,这是因为:

必须生成私钥才能派生碎片;在签署交易之前,必须从碎片重新组装私钥;这意味着存在一个可信生成和重新组装的步骤,这是一个故障点。另外,个人碎片持有者没有发言权,他们提供的只是碎片。可信硬件可减轻可信生成和签名问题,但这会导致诸如侧通道攻击、可用性等问题。

币圈大V火星人Ryan柯里昂微博清空:据了解,币圈大V火星人Ryan柯里昂微博全部清空,然而该大V并未澄清微博全部删除的原因,有网友称,火星人或许遭到投资者的威胁报复。[2018/1/11]

尽管如此,应注意SSS的一些独特特性,其可在不修改基础密钥/私钥的情况下创建尽可能多的不同的共享集。因此,如果Alice最初拥有10个秘密,而非朋友关系的Bob是一个秘密持有者,那么Alice可重新生成9个秘密,并将其交给其余的受信任方。

2、门限ECDSA

在门限ECDSA方案中,我们消除了沙米尔方案存在的一个漏洞。在这里,我们描述了StevenGoldfeder在其ECDSAMPC论文中开创的一项最新建设,在密钥生成和签名效率方面,这项建设超过了以前的ECDSA工作。

使用分布式密钥生成方案,所有密钥持有者都参与一个交互过程,该过程为自己生成一个私钥,并生成一个公钥。这样可确保任何一方都不会知道真正的私钥。在此构造密钥生成之前,只能使用一个可信方,因为对于大于两个的参与方来说,计算时间太长了。

据目前所知的是,KeepNetwork和KzenNetworks在运用这种阈值ECDSA方案。

3、门限ED25519

ECDSA的一个问题是,由于签名算法的复杂性,阈值签名是很复杂的。然而,对于其他签名方案,如EdDSA,尤其是曲线Edwards25519,其签名方案ED25519具有相对更有效和更直接的阈值签名。用户生成自己的密钥,然后有一个聚合步骤来创建单个公钥,交易签名有三轮交互协议。

KzenNetworks已经为ED25519门限签名实现了一个参考库,恒星、NearProtocol以及Cosmos使用了相同的曲线,但不实现加密门限签名。

4、Schnorr签名

在比特币中,Schnorr签名是签名聚合的一种形式。相比使用P2SH,其与密钥数成线性增长关系,而签名聚合允许使用恒定大小的签名。验证者不需要知道签名者的个人公钥,从而增加了隐私性。在这方面,Blockstream正大力推动将这种技术应用于比特币。

在Schnorr签名方案论文中,有几种方法可实现m-of-n多重签名,并进行各种权衡,在某些方案中,用户提供自己的密钥,而在其他方案中,必须有一个DKG。一般来说,至少有一轮的密钥生成和交易签名通信,交易签名也不能很好地扩展到大的m或n。

韩国政府科学技术情报通信部许可的首家区块链研究教育院在首尔开院:6月8日,韩国政府科学技术情报通信部许可的首家区块链研究教育院——沃尔顿区块链研究教育院在首尔开院,沃尔顿链教育项目将致力于培养区块链人才、推动区块链技术的发展以及在亚洲的推广。就在昨日,沃尔顿链与时尚星球(FASHION)签署战略合作协议,在品牌、技术、商品溯源等多方面与时尚星球展开深度合作。当晚,沃尔顿链向全球发布主题为“沃尔顿链,链接你的梦想”社区创意大赛,目前已有全球86个国家的社区通过创意作品,最直观地展现出社区心目中的沃尔顿链。据悉,沃尔顿链专注于区块链底层技术研发、创新与应用落地,为众多领域提供行业解决方案,将区块链技术与微小芯片进行结合,实现数据与实物绑定,让物理世界与数字世界无缝链接。[2018/6/8]

5、BLS签名方案

所谓BLS签名,其全称为签名方案,这种方案在大签名集的情况下来说是非常有效的。也就是说,我们可以有2-of-10或2-of-1000多重签名方案,而在设置和签名时间上和普通签名方案几乎没有任何区别。对于设置阶段,唯一需要做的就是为每个私钥生成成员密钥,这只需要一轮通信因为用户提供自己的私钥,所以可以使用HD派生等技术来轻松管理多个密钥。用户离线签署交易,单个聚合器汇总签名并提交。

使用成员密钥的这种特殊构造是相当新的,另一种方法是利用沙米尔秘密共享方案,但是需要一个可信方或DKG。BLS签名方案的一个缺点在于,其签名验证会是缓慢的,它比ECDSA要慢上一个数量级。

四、权衡空间

当从远处观察这些技术时,我们可能会认为某些技术会优于其他技术。不幸的是,当我们潜入到权衡领域时,我们会发现,情况并非如此。一些技术对于较大的签名者组而言更可取,一些技术则更适合于低带宽环境。在这里,我们探索一个非详尽的属性列表,以分析以上各类技术。

原像:是否有必须拆分的私钥?

可信设置:是否存在生成密钥的单个实体,或者是否存在分布式密钥生成方案?

检测多重签名:区块链的查看者能否确定特定地址是否为多重签名地址?

HD派生:是否可以为相关的加密过程设置硬件确定性密钥?

权重:是否可以为特定的私钥分配不同的权重?。

能见度

签名者的隐私:区块链的查看者能否确定谁是交易的特定签名者?签名大小:多重签名交易是否需要更多的链上空间,空间大小是否随签名者的数量而变化?时间

密钥生成时间:生成密钥需要多长时间,密钥生成时间是否根据参与方数量增加?密钥生成回合:如果密钥生成是交互的,参与者需要交互多少次?验证时间:验证签名需要多长时间?签名时间:签署交易需要多长时间?签名

交互式:签署交易需要多少轮通信?曲线效率:尽管其中一些技术适用于所有曲线,但有必要考虑曲线效率和辅助因子选择等问题。

图:以上方案的权衡考虑,注意每个方案都有几个构造,导致会有不同的属性。

五、未来发展

尽管有很多不同的技术可以为区块链启用多重签名帐户,但我们必须认识到协议中的设计注意事项。其中一些技术需要更改底层协议,而另一些则不需要。协议设计者应意识到在用户体验和未来的密码技术进步校对中的隐含权衡。

有趣的事实:签名比发送交易有更多的用途。它们可用于权益证明系统中的区块签名、具有较小区块链的聚合签名以及交易压缩。

六、有趣的问题

现在,您大概了解了一些关于加密多重签名的知识,在决定实现协议时应选择哪种签名方案时,这里有一些问题是值得探讨的:

是否存在希望能够区分多重签名帐户和链上单个签名帐户的用例;门限密码系统提供了一种属性,在该属性中,单个密钥签名者是未知的,这在哪里有益或有害?有没有可能有一个允许选择性公开的签名方案,在某些交易公开签名者,而在其他交易则不公开?有没有可能有一个只显示签名者的一个子集而非全部签名者的签名方案?是否可能有一个方案,其中签名方无法确定交互步骤中的其他签名方是谁?当无法使用HD钱包时,密钥管理如何工作?对于BLS方案,人们可使用HD密钥,但是需要生成其他成员密钥。当用户丢失其成员密钥时,协议应该是什么样的?多重签名应该完全位于加密领域,还是应该在智能合约/脚本和加密之间保持平衡?是否存在签名大小根本不重要的情况,因为签名被丢弃,或者存在一种新的压缩形式?脚注

从技术上讲,假设存在加密签名,所有区块链都具有原生多重签名的形式。然而,对于任意的签名算法,寻找一个有效的门限签名方案是相当困难的。

zcash目前使用P2SH,在即将到来的Blossom更新中,它将切换到自定义加密结构。

GRIN是加密货币中唯一使用基于密码学的多重签名方案,类似于比特币的保密交易。该方法的一个缺点是,其是按照他们的协议定制的,很难概括。

门罗币只支持n-of-n和多重签名方案,前者与Splitkey非常相似。

恒星有多重签名,但没有在密码学中实现,而是通过使用他们的脚本语言来实现的。

注意,对于UTXO模型,有一个一次性交互步骤来生成公钥,这对于用户想要花费的解锁脚本而言是必需的。

感谢TarunChitra、JoyceYang、DanRobinson、JeremyRubin、JeremiahAndrews和很多其他人对本文中提到的各种密码技术进行的审查和解释工作。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金智博客

[0:15ms0-3:391ms