区块链与人工智能:数字经济新时代
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第二节 技术性风险

一方面,数字货币都是开源的,所有原始数据均可从网络获得,爱好者社区对各种技术问题的公开讨论可起到足够的风险警示作用。比特币分叉事件的解决,显示出社区号召加计算力投票所组成的强大纠错机制,体现了数字货币的自我修复能力。另一方面,数字货币的技术复杂,普通的参与人员相对难以理解,也无能为力,这种信息不对称同样构成了风险。一旦出现技术上的漏洞,其产生的恶果将是无法估量的。目前那些包括算法爱好者等在内的极客群体也在不断努力,不断验证数字货币本身的技术局限性,但流通过程中的技术风险还未被完整排除。

需要指出的是,与传统的中央银行系统相比,数字货币的技术风险并不比前者高。作为一个仍然不断演进的系统,算力投票机制提供了适当的规范和约束,这种风险基本可控,技术问题也不是数字货币当前面临的最主要问题。传统的中央银行系统的广泛运用范围,导致其技术风险远远大于数字货币体系。

一、钱包安全问题

钱包在数字货币的使用过程中起到至关重要的作用。大部分普通用户的风险,都集中在钱包上。例如,有人误把钱包文件删除,丢失了价值数万美元的比特币;有人没有正确备份钱包文件,导致一段时间内交易的货币全部丢失;有人的计算机被植入木马,钱包文件被盗,所有比特币荡然无存。

以比特币官方钱包客户端Bitcoin-Qt为例,该客户端存放比特币私钥的文件是wallet.dat,一般在Windows 8系统下的存放路径是C:\Users\(你计算机的用户名)\AppData\Roaming\Bitcoin(需要注意的是,一般AppData是个隐藏文件夹,需要修改系统设置为隐藏文件可见才能找到)。wallet.dat这个文件,本质上是一个私钥池,存放了这个钱包的所有地址的私钥。有了这个文件,用户才能证明钱包地址里的比特币归他所有。所以,比特币钱包的风险就是wallet.dat文件的风险问题,如wallet.dat文件被偷、wallet.dat文件丢失、wallet.dat文件备份出错。

相应的解决方法是注重计算机本身的安全,防止黑客或木马入侵;妥善保存wallet.dat文件,定期备份。也可以考虑使用纸钱包、脑钱包或在线钱包,但是这些钱包也有各自的风险,同样需要谨慎使用。

另一种危险便是钱包私钥直接被破解。当前使用的椭圆曲线数字签名算法ECDSA签名用来验证货币所有人的变化,为数字货币传输的关键算法。ECDSA其实也有其理论弱点。那些一直被反复使用的钱包地址,有可能出现容易被发现私钥的缺陷,从而使得不法分子有偷取货币的可能。由于ECDSA算法和SHA-256算法的自身可验证性问题,使用完全兼容安全性的算法目前看来并非易事。

同时,随机数字发生器RNGs也会影响比特币的安全性。加密算法需要高度随机数生成密钥,一旦被预测会影响随机数字的输出,就有导致潜在危险的可能性,曾经的Android安全漏洞使得比特币失窃的案例,便有可能是随机数产生过程的漏洞造成的。

二、区块链内容合法问题

2014年5月,有人将病毒DOS/STONED的签名嵌入比特币区块链中。由于仅仅是病毒的签名,而非病毒的代码,并未给用户带来实际危险。但是基于Windows系统的杀毒套件MSE发现了这个病毒的签名时,便误将其当作危险信号,持续性报警,直到用户将该区块链文件隔离,比特币客户端却重复下载,给用户也造成一定麻烦。

但是之前发生过的问题是,有用户将一张儿童色情图片的数据上传到了比特币区块链里,只要通过一定的解码软件,这段代码就可以转换回图片。这不仅仅是对于用户,包括对于公众在内的所有人而言都是值得关注的问题。

在很多国家,在知情的情况下,以任何形式持有儿童色情图片都是违法的。现在数字货币的属性决定了每一个用户都必须把全部的区块链历史信息下载到自己的计算机上。那么实质上,每一个比特币的用户都以某种形式存放了一些违禁内容。设想如果上传的色情内容足够耸人听闻,以致新闻媒体进行了报道传播,那么用户很难辩称自己并不知道区块链内有违禁的儿童色情信息。在这种情况下,法律将如何进行判决,对于立法者来说,是一个必须认真面对的问题。

数字货币的特性决定了在每笔的交易数据中都允许用户嵌入一小段自定义信息,比如一段话或是一段代码。由于数字货币的开放性,区块链里的数据的丰富程度比大多数人所想的要高得多。这样的自由也导致滥用的情况出现,使得人们去探讨在数字货币中出现惩罚写入不当数据的机制。而这样的限制实际效果如何现在还不得而知。

三、哈希算法被破解了怎么办

大部分数字货币的安全核心都基于特定的哈希算法,如果该算法被破解,攻击者可以从两组不同的信息推出相同的信息摘要,也就是说,他可以在极短时间内找到满足要求的随机数,从而快速抢到记账权,产生新区块。在这种情况下,基于工作量证明的数字货币安全机制将形同虚设。

当前人们对于哈希算法可能被破解的担忧,主要来自此前MD5被破解一事。2004年中国山东大学教授王小云公布了MD5的破解报告。需要说明的是,这一报告只是证明存在着一种方法可以产生强特定碰撞,但要伪造数字签名则必须能产生弱特定碰撞。因此MD5实际上并没有被真正破解,更不用说比MD5安全度更高的其他哈希算法(如比特币使用的SHA256)了。

比特币的发明者中本聪本人,曾对这个问题做过讨论。2010年6月14日,他在bitcointalk.org的一个帖子里,分析了两种情况。一种是SHA256被突然宣布破解成功,因此比特币社区的大部分用户可以决定,在某个区块之前的所有区块属于“诚实”区块而予以承认,在该区块以后,使用新的算法进行挖矿。另一种情况则是SHA256没有被突然破解,只是发现了可能的隐患,因此转换可以逐步进行。使用新算法的客户端将被提前开发好,并约定在某一个区块之后开始采用。所有用户将在该区块被开采出来之前,更新客户端。

从以往的经验来看,大部分的加密算法,都是逐步发现漏洞,并在一段较长的时间内被替换成其他算法的。因此,最大可能的情形是,数字货币使用的哈希算法,在未来某段时间内开始发现能产生强特定碰撞的方法,并被宣布为不安全算法,而数字货币社区也因此开始统一转向使用新算法的客户端,实现平稳过渡。

四、51%攻击问题

51%攻击,是自数字货币诞生第一天起,就有人担心并曾真实发生过的现象。给51%攻击下一个定义:若一个攻击者控制了全网50%以上的算力,那么他将能够修改他自己的交易记录,可令自己进行双重支付,可阻止区块确认某些或者全部的交易,还可阻止某些或全部矿工开采到任何有效区块。

预防51%攻击的方法是快速增加全网算力,使得个别攻击者很难拥有超过50%的算力,或者采用动态检查点技术。对于比特币来说,在全网算力超过1200PHash/s的情况下,制造51%攻击已经基本不可能。动态检查点技术增强了中心化要求。而对于其他算力较弱的数字货币,51%攻击的风险时刻存在。

下面我们从攻击者的收益角度来分析如何在机制上采取措施来遏制攻击者发起51%攻击的动机。之所以要发起51%攻击,对于大多数攻击者来说无非是因为有利可图。因此在比特币算力升级、分配等机制的设计上,或许可以通过BTC价格的设置、获取算力的成本核算来进行考量,使得大算力攻击无利可图。

五、集成矿机风险

仍以比特币为例,最早拿到集成矿机的矿工都获得了较大的收益,投资回报动辄数十倍。这些财富神话给了比特币新人很大的刺激。他们普遍涌入挖矿这个表面上可以低成本获得比特币的领域。这也是“南瓜张”接受芯片预订后,会有这么多人参与预定的原因,殊不知这些投资中的很大一部分可能是难以收回成本的。

比特币挖矿投入,实质上是一个博弈的过程:如果大家都不投入新装备,只有你的运算能力增加了,那么你的赢利就会增加;如果大家都投入新装备,全网运算能力暴涨,每个人的赢利可能维持不变,但如果你不增加算力投入,赢利就会下降。这在“期货矿机”上则表现为,你按照当前的算力估算矿机到手后的收益,似乎前景很光明。但是几个月后拿到矿机时,你的收益只有当前的几分之一,可能根本就无法收回成本。另外一种危险的可能性便是“期货矿机”也存在着相当大的违约风险,部分矿机厂家由于资金链断裂或其他原因导致无法如约交付矿机,在商家自身面临破产的同时严重影响投资者的收益。因此,衡量自身算力扩充实力,比较全网控矿难度增加情况,做出明智的投资决策,对于普通投资者来说是关键。

在比特币网络每月的算力都在以接近70%的速度增长的情况下,如果没有对难度的提高引起足够重视,或者在数学上缺乏敏感性,盲目投资,那么,当矿机到手之后恐怕只能以“比特币价格上涨还是有得赚”来自我安慰了,但是这种安慰并无充足的逻辑依据。