如何在去中心化参与者中创建共识
扫描二维码
随时随地手机看文章
长期以来,区块链一直在软件行业的壁垒之外引起共鸣。每天都传播着比特币价格指数的发展相关的消息,同时初创企业也正在竞相以这项技术为基础创建出令人震惊的业务模式。
但我们对这项技术又真正知多少呢?
在2008年金融危机爆发的风口浪尖,以假名中本聪(Satoshi Nakamoto)活动的个人或一组人向一份邮寄名单发送了一篇题为“比特币:一种点对点的电子现金系统(Bitcoin: A Peer-to-Peer Electronic Cash System)”的白皮书。这篇白皮书中对拜占庭将军问题——一个令虚拟货币理论家都会为之摇头的问题——提出了一个实用的解决方案。
在去中心化参与者中创建共识
拜占庭将军的问题起源于君士坦丁堡于1453年被奥斯曼帝国攻陷的历史传说。当时只有在各方面精心策划的部队移动的帮助下,才能顺利攻占这座设防巩固的城池。而为了达到这个目标,奥斯曼帝国的将军们就不得不依靠信使传递信息。
然而,关于攻击时刻的决定受到一个关键细节的严重阻碍:由于一些将军想要在苏丹面前诋毁其他将军,因此他们会故意提供虚假信息唆使其他人过早发动攻击。而自那时起,任何将军都无法确定收到的信息是否可靠。
这个问题的关键就是共识的问题,源自个别决策者无法相互信任这一事实。
货币与中间人的作用
价值的数字化交易也同样适用这种情况。我们如何达成共识,避免虚拟美元不会被支付两次?到目前为止,这个答案已经不能再简单了:让第三方中间人监督所有交易;换言之,就是银行。
但这种模式也并不总是一帆风顺的。以SWIFT代码形式传输的国际支付由于涉及各方过多,通常都需要几天的时间进行处理。这就增加了交易成本,使一次性小额付款也变得十分不方便。能够取消交易这种选择也会存在隐患;为了尽量减少欺诈行为,不可逆转服务的提供商需要收集关于客户的更多信息,但这通常都超出了必要信息的范畴。
然而对于实体价值交易,这个问题已经在很大程度上得到了解决。举个例子说明:如果Alice想要支付Bob一定数额的资金,那么她给他一个代表相应价值的防伪货币就足够了。Alice不可能使用相同的货币同时进行两次单独的付款。
目前已经有很多尝试将实体货币的原则转化到数字领域中,也都取得了不同程度的成功。而比特币则是首个在很大程度上满足这些要求的。
加密签名和数字价值
为确保数字货币只能由其合法所有者使用,比特币使用了公钥加密技术。这涉及到由随机生成的数字组成的私钥,但相应地又会导出一个公钥。但反过来看,公钥却不能用于导出相应的私钥。从私钥和一组数据中会生成数字签名。公钥使用户能够确定签名是从相应的私钥中导出的,但却不需要知道具体签名是什么。
此外,比特币还使用了加密的哈希函数,这会将大量数据字符串转换为固定长度的数据值,或称为哈希。良好的哈希函数的特征在于高度的安全性,并且可以使用尽可能少的相同哈希来分配各种输入量。
与加密相比,这一过程无法逆转。当应用于相同的输入量时,哈希函数总是产生相同的哈希,但相同的哈希却不能被认为是原始输入量所有。每次对输入数量的更改都会产生完全不同的哈希。因此,哈希也称为数字指纹。
比特币系统中的货币最终就是数字签名的组合。当所有者(Alice)对此前交易的哈希和接收者(Bob)的公钥进行数字签名时,货币就能够转移。而为使Bob确定Alice并未将其货币用于另一笔交易中,所有的交易都是公开的。
达成共识的数学竞赛
比特币通过点对点网络实现了这一点。一个网络节点将各种交易汇编到一个区块中,并由此生成一个哈希,然后在通过时间戳来释放哈希。每个区块都包含来自前一区块的哈希,从而形成一个链条:也就是区块链。
这就让我们回到了“拜占庭将军问题”:所有节点必须先对已经发生的交易,以及是否应该将另一个区块添加到链中达成一致。这一过程的比特币使用的是所谓的工作量证明机制。要向链中添加额外区块,需要相应的计算机节点来解决复杂的数学难题。首先找到解决方案的节点随后再与所有其他节点共享。一旦解决方案得到所有节点的验证,每个节点都会将该区块添加到其区块链的副本中。然后,该过程将再次重新开始。
为了顺应网络中不断变化的总算力,问题的难度会不断调整,这样每隔约10分钟就可以将新的区块添加到链中。如果同时发现两个区块,那么就由发现的下一个区块确定将保留那个子链。最长的链会获得胜利。
由于必须针对区块的每个变化重新解决这些难题(对于所有后续区块也是如此),因此链条越长就越安全。若要对区块链进行更改,攻击者必须在将新区块添加到区块链之前再次解决所有区块的数学难题。因此,目前以银行形式存在的信任要素也被包含在了区块链的数学逻辑中。
价值网络
区块链起着分布式公共日志的作用,记录不可逆的交易。用户能够快速且经济高效地验证并审计他们的交易,无需经过中间人。
区块链技术用例绝不会仅限于比特币。区块链远超价值传输——“价值网络”。数据库能够最终确定所有权的归属。所有能够转化成数字孪生体(digital twins)的资产类型都可以被包括在区块链中:钻石、建筑物、货物交付——存在着无穷的可能性。
这种创新是颠覆性的还是递增的取决于业务领域。在公司内部或之间达成共识就意味着一种演变,而公有区块链的用例有可能彻底转变现有的市场。
区块链用例之一的Everledger是一家从事钻石数字孪生的初创企业。这些数字孪生体将由40个数据点计算得来,并存储在区块链之上,从而实现从首次开采到成为珠宝的整个过程中追踪钻石的所有权。而目前已有超过100万颗宝石实现了数字化保护——这是一个真正的成功案例。