入侵比特币和区块链
打开电视,翻开科技博客,难免被大量比特币或区块链的消息淹没。比特币如此流行的最大原因,在于其去年狂涨2000%的价格。比特币价值的倍增,也引爆了对其支撑技术区块链的关注,尽管区块链可能才是长期投资的更佳选择。
区块链技术已为大幅影响我们的世界做好了准备。2017年初,《哈佛商业评论》认为,区块链具备创建经济及社会系统新基础的潜力。2017年1月的世界经济论坛报告预测,到2025年,全球GDP的10%将存储在区块链或区块链相关技术上。如果你对十年之内将承载 10% GDP 的技术还知之甚少,那你真应该开始学习一下了。
区块链是什么?
区块链是数字日志文件,采用加密技术,保护在线交易数据。区块链技术的思想在1991年成型,比特币,是将分布式公共区块链付诸实践的第一个应用。区块是交易记录的数字存档,交易的确立需要区块链参与者的同意。通常,区块包含有诸如价格、动作(购买、售出、转移等等)之类的交易数据,还有一个时间戳。每笔交易(或一系列交易)创建一个区块。每个新加入的区块包含有之前区块的密码散列(如今该散列通常是SHA-256)。如此一来,每个交易区块都被加密锁定到之前的区块上。
如果区块链公开分布,就像比特币一样,那么每个参与者都能验证该区块链中任一交易。你可能无法看到某个参与者持有的钱数或价值,除非该信息被包含在交易记录中;但你可以看到两名参与者之间交易的价值,并能验证其有效性。通过出示难以伪造但易被所有参与者验证的密码证明,任意参与者都可以证明自己对特定区块链账户的所有权。
区块链的机制可用公钥/私钥密码体制做类比,该密码体制中每个参与者可用私钥创建签名内容,而其他所有参与者可用相关联的公钥,很方便地验证该签名内容。
正如云计算有公共云、私有云和混合云,区块链也有公共链、私有链和混合链三种模式。你可以创建自己的区块链,使用具共同利益的更大群体提供的其他区块链,甚或参与进全球性的公共链,比如比特币。尽管还是个相对较新的功能,私有区块链和公共区块链还是可以相互加入的。
从比特币到区块链
大多数人对区块链的认知源于比特币,该流行加密货币是由昵称为“中本聪”的人/团队,于2008年创建的。中本聪并没有发明区块链的概念,但他确实为去中心化账簿和数字货币交易验证,引入了分布式区块链的概念。这一概念解决了无可信第三方的去中心化数字货币固有的“重复付款”问题。
2008年10月,中本聪在metzdowd.com的加密邮件列表中发布了一篇文章,题为《比特币:点对点电子现金系统》。2009年,他生成了区块链的第一个区块,创建了可供任何人下载来挖掘比特币的软件。文章刚发布那几天就下载了该软件的人中,有人很快就产生了3枚比特币。
尽管从一开始,比特币的前景和最终价值就体现了出来,但首笔“官方”交易,是用1万个比特币买了价值20美元的披萨。今天,比特币的价值有了大幅增长,12月12日交易价格创下17428.42美元的历史新高,但波动频繁而巨大。巨大而快速的价格上涨,引起了投资人和金融公司CEO们的注意,尽管未必持肯定态度。很多投资人将比特币的价格上涨,类比成17世纪的荷兰郁金香泡沫——某些投资者一夜暴富,而怀疑者只能旁观自己的朋友晋升富人阶级。
比特币、挖矿软件和分布式网络建立的方式,一系列新生成的比特币,让下一个比特币的产生越来越困难。于是,以往一台电脑几个小时就能产生的比特币,如今需要聚合数千台专门的特定硬件“矿工”电脑组成网络,花费数周至几个月时间才能产生。今天,用于产生比特币的电力,都可与全球日常总用电量相提并论了。
不仅创建比特币需要大量计算能力,创建并验证比特币交易所需的计算工作也不可小觑,尽管不在同一领域。而且,每笔交易都增大了区块链的规模——区块链随时间持续增长(比特币的区块链已超过100GB),且必须产生并分发到所有参与方以维持有效。最终,到2140年,最多挖出2100万比特币。该自诱导的加密稀缺性,正是比特币火箭般蹿升的价格背后的推动力之一。
比特币可能是泡沫,但区块链不是
投资人和金融专家对比特币的价值争论不休,但没人质疑区块链的价值和合法性。世界上最大的几家公司都成立了团队,有时候甚至是全新的部门,来专门研究区块链。你可以在云端或私人业务中创建并使用区块链。
推崇区块链的公司,看到了几乎每一笔金融交易都由区块链支撑的未来。区块链可使非常复杂的金融交易在几秒内就得到解决。跨国银行区块链领导者之一称,融资并购交易平均要1个月才能在财务上交接清楚。使用区块链,几秒就能搞定。监管审查者们真的应该考虑一下区块链对提升复杂交易效率的巨大推动力,将人员和资本解脱出来,投入更有生产建设性的事务中。
几乎每个金融交易密集型的行业,都急于找出在各自公司及行业中实现区块链的方法。随便举出几个行业,区块链都是行业热门话题。计算机行业云巨头,比如微软和亚马逊,如今推出了无数区块链服务。
互联网上搜索一下区块链,你会被2016年后涌出的千万条信息链接和服务吓到。比特币可能是泡沫,但区块链正在兴起,并将持续发展。
入侵比特币和区块链
在早期,很多比特币和区块链狂热爱好者想知道,这二者固有的加密本质是否足以抵御绵延不断的黑客攻击。答案的浮现并没有花费太多时间。正如依托计算机的一切有价值的东西,比特币和其他加密货币,还有区块链,一直处在频繁的攻击之下。数亿美元被盗,不断有人被骗,区块链被劫掠。下面举几个比特币和区块链被黑的例子。
- 比特币挖矿恶意软件
每个被挖出的比特币,都让将来的比特币更难以被创建。需要大量电力运行及冷却专业“矿工”计算机。对比特币矿工而言,电力是头号运营成本。因此,很多比特币矿工“借用”资源来挖掘比特币,要么在其雇主的产业中,要么广撒比特币挖矿恶意软件。如今,很多大型恶意软件僵尸网络都是用来挖掘比特币的。虽然本意不算坏到极致,但依然是对计算机或设备(通常劫持在线摄像设备和路由器)的未授权使用,且耗费了受害者的金钱。这些恶意软件还拖慢了被劫持计算机。应像对待其他恶意软件程序一样停止比特币挖矿程序。
- 被盗价值存储
加密货币通常将其价值存储在名为钱包的文件中。钱包是会被入侵、篡改、偷盗和转移的,就像计算机上的其他任意价值存储一样。更糟的是,人们常会忘记其保护性口令/PIN码,或者弄丢放有该价值存储的硬盘,而这往往意味着该价值存储就再也找不回来了。勒索软件就可以导致这种问题。如果是普通的银行账户,你还可以用另一台电脑来访问网银,里面的钱分毫不变。但加密货币钱包?你想多了。丢了就是丢了,打不开就是打不开,没人能帮你恢复。
大多数专家建议将加密货币保存在离线钱包中,防止被恶意软件或黑客染指。但这也会让其中价值难以被利用。离线特性会让价值的使用和更新多花费数天时间。如果你用的是在线钱包,可能的话用多因子身份验证来保护它。
- 转账木马
加密货币木马会监视你的计算机,等待疑似加密货币账号格式的东西出现。只要发现目标,该木马就会用自己的账号替换掉你准备传入价值的账号。除非你对该切换特别敏感,否则在你按下“发送”按钮的时候,就一切都完了。
- 实现缺陷
“理论上,理论与实践没有任何区别。实际上,区别就在那里。”没人知道谁最先说的这句话,但首次刊印在书中,是在1986年沃尔特 J. 萨维奇出版的《Pascal:编程的艺术和科学》里。
正如任何一种加密实现,加密算法总是比实现它的程序要合理明智得多。基本上,区块链自带任意加密解决方案都会有的漏洞或缺陷。编程漏洞或缺乏良好私钥安全(或比特币钱包),都能令整个实现崩塌。虽然这一点不是那么显而易见,但在使用加密货币或参与区块链项目之前,请确保软件开发者应用了安全开发生命周期(SDL)过程来最少化漏洞。
黑客篡改加密货币软件以盗取价值的案例并不鲜见。最近的一起案例中,黑客犯了个编程错误,不仅没能让他们偷到任何价值,还让每个人的钱包都惨遭破坏,恢复无能。典型的损人不利己。
- 已知明文抓取攻击
良好的加密可使密文看起来像随机乱码。理论上,加密攻击者应不能分析出原始明文。然而,区块链技术上,区块格式却是众人皆知,或者说很容易被分析出来。特定字母、字符或数字总是存在于每个区块的固定位置上。这就让加密攻击者很容易从每个被加密保护的区块中“抓取”出部分明文表示。另外,每个区块都关联着之前的区块。于是,底层加密密码的整体防护就受到了削弱。如果密码不弱,那还不是什么巨大的问题,但这一点确实给了攻击者一定的优势。
- 弱SHA-256?
很多安全专家想知道,SHA-256,也就是与其更短小的前身SHA-1含有相同数学弱点的安全散列算法,是否是比特币和区块链(二者通常都使用SHA-256)的一个顾虑。答案是:现在还不是。SHA-256在可预见的未来还算够健壮。更重要的是,鉴于全球大多数金融交易和HTTPS交易都由SHA-256保护,如若有人破坏了这一算法,我们要担心的远不只是比特币和区块链。即便如此,如果你计划搞加密货币或区块链,还是先开始策划“加密敏捷性”吧——保留支撑程序而只替换密码的能力。
- 被黑的网站
围绕比特币最常见的黑客活动,同时也是可以应用到任意区块链项目上的黑客活动,就是控制比特币或区块链的中心网站被黑了。这种活动真的太常见,上周就发生了一起,让黑客狂赚价值7000万美元的比特币。太多管理着上亿美元加密货币的站点被成功入侵。一旦控制网站被黑,人们创建的比特币价值,往往就消散在了网路中。将价值在离线位置做个备份是不错的防范办法。
几起最大型的黑客事件,都是寡廉鲜耻的黑客携上千万不义之财逃之夭夭。如果你与加密货币网站做生意,确保该网站是安全且可信的。联邦存款保险公司可不会为你的存款消失买单,至少现在不会。
- 大型公共区块链更安全
理解区块链安全的一个观念概念,是公共分布式区块链比私有区块链更安全。想要黑掉区块链,攻击者必须掌控超过50%的参与者或区块,且这一动作要比新区块的创建快。
因此,大型公共区块链天生比小型私有区块链更安全。对小型区块链的掌控会更快更简单,尤其是在所有相关“秘密”都存储在一个地方或一家公司的情况下。事实上,很多安全专家都在质疑单一公司区块链存在的必要性。他们认为,区块链的优势,只有在跨单一安全边界分布的时候才会出现。然而,你仍将看到很多私有小型区块链,因为区块链有在数秒内解决复杂金融交易的潜力,还因为小型区块链有可能成为大型混合/公共区块链的组成部分。
每位安全从业人员都应理解区块链,以及区块链对其当前及未来职业的意义。即便区块链建立在非常安全的密码基础上,也是会像其他任何东西一样被黑的。