区块链技术以及少数服务多数的51%攻击
区块链技术日前火的是一塌糊涂,仔细在网上查资料会发现原来区块链技术的原理就是典型的美国思维,人人都有选举权,每个节点(算力)都有账本,一旦大多数选了坏人(坏账),整个系统也就瘫痪了。
一个区块链系统由许多节点组成,这些节点一般就是一台计算机。在该系统中,每个参与的节点都有机会去竞争记账,即更新数据库信息。系统会在一段时间内(可能是十分钟,也可能是一秒钟),选出其中记账最快最好的一个节点,让他在这一段时间内记账,它会把这段时间内数据变化记录在一个数据区块中,我们把这个数据区块想象成一页纸。在记完帐以后,该节点就会把这一页的账本发给其它节点。其它节点会核实这一页账本是否无误,如果没有问题就会放入自己的账本中。在系统里面,这一页账本的数据表现形式,称为区块。该区块中就记录了整个账本数据在这段时间里的变化。然后把这个更新结果发给系统里的每一个节点。于是,整个系统的每个节点都有着完全一样的账本。
我们把这种记账方式称为方式区块链技术或者分布式总账技术。
安全性
那么为什么要采取这种方式?他有什么优势?因为通常大家的直觉是,这种方式似乎较为浪费宽带和储存空间,并不是一个可取方案。但是,区块链就是通过这种高冗余的方式来构建极高的安全性。
首先,每个节点的权利是一样的,任意节点被摧毁都不会影响整个系统的安全,也不会造成数据丢失。其在整个系统中的权重都是一致的。系统每次都在链入这个系统的节点中选择记账者,于是,即使某个或者部分节点被摧毁、死机都不会影响整个系统的运作。
其次,每个节点的账本数据都是一模一样的,也就意味着单个节点的数据篡改是没有任何意义的。因为如果系统发现俩个账本对不上,它就认为拥有相同账本数量相对较多的节点的版本才是真实的数据版本。那些少部分不一致的节点账本不是真实的,而是被篡改的账本。系统会自动舍弃这部分认为被篡改过的账本,也就意味着如果你要篡改区块链上的数据内容,除非能够控制整个系统中的大部分节点。也就是通常所说的51%攻击,才能发动对账本数据的更改。
但是,当整个系统中的节点数量高达成千上万个,甚至数十万个时,那么篡改数据的可能性就会大大降低。因为,这些节点很可能分布在世界上每一个角落,理论上说,除非你能控制世界上大多数电脑,否则你没有机会去篡改区块链上的数据。
此外,另一个51%攻击的方法就是构建出和原来一样的系统一样多的节点(算力)的方式来攻击这个区块链系统(尽管重要的是要构建出足够大的算力,而不仅仅是节点的数量,但考虑到算力概念理解更加复杂,这里就以节点数量做比喻)。比如,该系统原来有10000节点,那么攻击者部署另外10001个节点,然后加入到这个区块链中系统中。由于攻击者已经获得了超过50%的控制权,已能够发动攻击。显然,这种攻击所付出的成本也取决于系统原来的大小。原来系统节点越多,攻击者付出的成本也越大。由于比特币是目前最庞大的区块链网络,据统计要构建出一个和现有比特币同样大型的网络系统,所付出的成本高达270亿美元。
但是攻击者还面临着另一个困境,一旦它成功发动攻击后,就会造成该系统的价值瞬间归零。也就是说,一旦攻击者成功篡改账本,由于全网能够立刻识别出账本数据不一致,导致所有人都意识到该系统账本已经是不可靠的账本,那么意味着该账本所记录的数据变得没有价值,该系统中代币也会变得毫无价值。也就是说,攻击者将无利可图。而对于国家而言,似乎也没有必要通过这种方式来攻击比特币这样的网络,国家完全可以通过直接宣布比特比违法来更简单地达到禁止比特币这一目的。
价值
大多数人都知道区块链和比特币关系密切,甚至有人会把区块链等同于比特币技术。事实上区块链仅仅是比特币的底层技术,是在比特币运行很久之后,才把它从比特币中抽象地提炼出来。从某种角度来看,也可以把比特币认为是区块链最早的应用。
比特币的创造者---中本聪在其2008年发表的经典论文《比特币:一种点对点网络的电子现金》中明确指出:传统金融体系不可避免地要依赖“第三方”机构(传统银行),这种传统的中心化金融机构是很难让货币像其他信息那样免费的进行传输。正是为了解决这些问题,中本聪创造性的提出了通过区块链技术建立一个去中心化、去第三方、集体协作的网络体系设想,而无需中心化的平台做信任的桥梁,区块链通过全网的参与者作为交易的监督者,交易双方可以在无需建立信任关系的前提下完成交易,实现价值转移。如果说互联网TCP/IP协议是信息高速公路,那么区块链的诞生意味着货币的高速公路第一次建设已经初步完成。