BTC.com手机客户端

多重签名数据分析

山寨币资讯 发布在 比特币 0 5365

简介:本文涉及多重签名技术的发展和运用状况以及几个重要问题的解答。多重签名正在快速发展,创造更多可能,同时也需要更多支持。

161814mf1yhz8t4dhfehbi

2014年被一些人称为是“多重签名之年”,最近在2014btc阿姆斯特丹大型主题会议中Gavin Andresen也这么认为。这其中一个重要的原因在于:支持多重签名交易的服务商数量在增加。在这篇文章里,Thomas Kerin记录跟踪到目前为止这个新兴技术的发展情况,并基于从区块链得到的一些数据提出一些关键的问题。

如果你并不是非常了解多重签名,这里有一个简短的解释。多重签名地址允许多个用户用一个公钥单独发送部分地址。当一些人想要使用比特币时,他们需要除他们本人以外其他一部分人的签名。需要签名用户的数量在最初创建地址的时候便已经商定。

由于在资金使用之前需要多个签名,这些另外的签名可以来自于你的商业伙伴,与你关系密切的人,甚至是你所拥有的另外一个设备,由此来为你成功使用比特币增加一个因素。

想象一下在任何情况下都需要银行所持有的钥匙和你个人的钥匙这两把钥匙才能打开的银行保险箱。多重签名运用了这一方法的精髓,而且它不需要不同的钥匙在同一个地方。由于钥匙分别在不同的地方,恶意攻击者很难使两个服务器同时崩溃。然而使用传统的比特币地址,攻击者大概知道应该将谁作为目标,并可以用各种方式使服务器崩溃从而窃取钱包文件。

使用多重签名的服务能够更好地抵御窃取。因为资金被椭圆曲线数字签名(ECDSA)所保护,而并不仅仅是需要访问服务器钱包。ECDSA要远比网站在它的代码中能运用的安全措施好得多

数字签名地址是刚刚出现的新事物吗?

并不是。它最初出现于2012年,当时添加了对 P2SH地址的支持。当资金被发送到这个地址时,脚本使得地址仅仅被所有者知道,而并不在资金交易中涉及。这一脚本确保区分了能使用和不能使用地址中比特币的人。这些地址看起来也不一样,它们是以3开头的,而不是以1开头的。P2SH是数字签名的前身,而数字签名仅仅是P2SH运用的一个较为复杂化的例子。

以这样一个交易为例:112ae9859731f671ec3593de5790ed026d06d23134ba284aec811bc8f50e96b3——实际上这是之前出现的第六个P2SH交易 ——揭示着一个‘5357’的脚本。这个简单脚本表示把3和7这两个数字放进内存中。

该脚本被提取了哈希值,并被用于创建真正的地址:37paP4uTjmA4Pi85LG6CF9huift3Dw1kFT; 任何发往该地址的资金事实上都能够被盗取,因为大家知道该脚本并不会检查核实到底是谁在用这部分资金。所以,这有点像P2SH的1JwSSubhmg6iPtRjtyqhUYYH7bZg3Lfy1T这是关于P2SH的一个非常简单的演示。它可以进一步复杂化。但是它也演示了一个安全得多的应用案例——多签名交易。

为何我从未听说过?多重签名和交易对于运用来说仍然较为复杂。到目前为止只有Bitcion Core软件能够完全驾驭它们,即使无需储存区块链,但是你仍然需要使用控制台。以后我们会看到越来越多填补这一缺口的服务出现,使得数字签名交易更为人性化。Coinbin网站允许你创建比特币私钥和公钥,建立多重签名地址,并且通过他们签署交易。这是一个非常简单的网站,但是目前它不支持压缩钥匙,这使得它与Bitcoin Core 相比毫无竞争力。Coinbin会导致每一个用户都要使用未压缩密钥。

Onchain.ioOnchain是Electrum & BIP0032主公钥的电子仓库,它在一个网站或安卓APP上运作,为钱包中的地址签署多重签名交易。使用确定的钱包意味着用户只能向网站提交一次他们的拓展公钥,公钥会在此基础上产生。这一应用软件也接受多重签名交易的二维码,使得它们使用起来非常方便。
它们被使用得多吗?运用我从一家爱尔兰区块链分析公司QuantaBytes获得的数据,我能够得知被使用的各种不同的多重签名地址以及它们的使用频率。通过搜刮区块链你可以得到这些数据,但是我认为这需要很长很长时间。

162103ofvzs1pkgtmg2yt2

这张图显示了每2500个数据块中P2SH的输出量。由于有一些没有兑换,因此我们无法得知具体是哪一类地址。尽管如此,在278000区块(2014年1月1日)附近,从每五个区块中至少有一个开始,数量有了大幅增加。尽管如此,要用于常规交易仍然有很长一段路要走:我们知道平均来说每个区块有几百个交易,所以我们离常规交易使用还非常远。下图显示了第一个多重签名交易出现的时间:170052区块。

162157k2g7qh3yvm3gy3gr

在这篇报道所使用的数据的时间跨度是从170052区块到297445区块(大约从3月7日到4月24日),24951个交易输出被识别为是支付给哈希地址。在这其中,14123个输出是来自于垃圾交易,每一个交易是给一个任意地址支付一聪比特币,这些交易在本文中已被忽略。剩下的有效交易中有70%被兑换,因此显示了地址背后的脚本。在被兑换的交易中我们可以得知脚本,以及多重签名地址的类型,比如是是2/2或3/5.

162234vkpttp6tyyp5t10g

可以看出2/3是最常使用的地址类型,接下来便是2/2。2/3这一方式容许在买方,卖方以及第三方之间的代管契约,但是没有一个人可以在没有另一人同意的情况下取走资金。Bitgo,Bitalo,Greenwallet,和bitwasp等很多服务商都开始讲这类地址作为交易和订单的一次性地址。2/2地址最近被Mycelium用于建立面对面交易功能。它使用多重签名地址和交易锁定时间,从而在交易过程中保护资金。上表中被涂成蓝色的几行并不是目前的网络标准,由于未被修改的用户不会运用它们到达其他节点,它们严格上说不应出现在区块链中。Eligius矿池移除了标准检验,并对非标准收费,但是在我们分析的所有交易中只有0.36%是非标准的。在所有被兑换的输出中有29.7%是重复使用的地址。上述很多服务商用唯一的公钥来建立订单地址,意味着我们将期待更多唯一的地址。下图显示了最常用的多重签名地址类型的不同时间的使用频率。结果被分为了两个部分,第一部分是从区块170052到区块227500,第二部分是从230000到297445。

162320vhc0be0fx5tee851

162650e9u1ok9urux82rzu

第一张图显得分散,不连续,但是第二张表清楚地显示了从2013年11月开始2/2和2/3形式使用频率的增长。我预计随着越来越多服务商采取这种交易方式,这个趋势将会继续。

这并不是没有原因的。多重签名地址可以运用远程密钥使你的冷藏比特币更加安全。通过使用更多密钥你可以增加冗余以避免损失。
如果提供交易各方多重签名地址的服务商脱机了,只要双方可以取得联系,资金仍然可以恢复。这使得欺诈用户或者误报网站上留存的资金数目变得更为困难。

从一开始就使用多重签名交易,你可以预先指定第三方来对纠纷进行仲裁,这样便有可能恢复地址中的资金。

162819bhh6jva31j6ta1b5

上图是使用2/3地址兑换一个地址中的余额,并将其支付给两个不同地址的交易数量。而从一个地址支付给另一个地址的比例低于8%。这是为了逼近包含网站交易佣金在内的协议中介的收费费率。

数据集里有2410笔交易符合以上条件,并被用于图中。虽然我们不知道交易是从钱包提供者发出还是由商场发出,最普遍的收费是在0-0.2%之间。在这之后随着收费增加相应的交易数量稳步减少。

所以,多重签名的时代正在很好地形成。数字清晰地现实了它的应用正在蜂拥而来。伴随着bitpay的bitcore(一个提供核心比特币功能和网络通道的java脚本库)这一首创,伴随着越来越多的人们研究磁心体或者在编写他们自己的服务时使用它,多重签名必然会有更加积极快速的发展。

现在这个时刻,有一个先导极为重要。如果没有先导,创业者会衡量是否值得投入时间和资金,或者他们会走向错误的方向。每一个人都重复纠结这一问题对于创新而言毫无意义。所以储存一个值得信赖的代码库使得服务商使用多重签名变得更为容易。

对于钱包提供者来说,多重签名并没有什么缺点。多重签名钱包提供者可以通过使用由Bitcore或者BitcoreJS衍生而来的客户端脚本来避免用户的不支持,而并不是强迫用户去使用其他软件。我预料到最后大部分网站都不会宣传他们的多重签名功能。如果他们做的足够好,他们的客户甚至并不会知道他们正在使用多重签名。

我很希望看到更多平台可以协助签署多重签名交易,从而使得人们可以充分运用协议,而并不仅仅是成为一个钱包提供者。从多重签名交易里延伸出的可能性是无穷的,但是缺少支持工具和基础架构。我对Onchain有很高的期待:他们的APP应当使得多重签名交易变为扫描两个二维码这么简单,在这一早期发展阶段带来类似于P2SH协议的服务。

用一个网站来保管比特币非常违背比特币精神。尽管这对很多人来说是一个可以接受的方法,它的发展推动力不能缺少来自Electrum和Armory等软件的支持。能够提供对资金双重保护的跨设备工具以及能够使得交易签署更为便利的工具必不可少。

我认为解决这一问题可以极大地减少使用多重签名交易的障碍,使得越来越多的人可以拥抱这惊人的技术,从而造就一个真正的“多重签名时代”。

原文地址:Coindesk
编译:SSSS

版权声明: by nc" sa 作者保留权利。文章为作者独立观点,不代表巴比特立场。

评论:0

您需要登录后才可以回复 登录|注册