格子党简明区块链科普

哪怕最菜鸟的格子党都会知道,软件的几个基本要素,例如:

1、正确性

2、安全性

3、性能

4、可靠性

5、合规性等等

有一种特性是无法通过事先的手段进行保证,并且有意无意的被我们忽略的,那就是:”你确定最终的结果会如实按照设计的逻辑得到的吗“(我们称为因果性)。实际上,只有控制住软件运行平台的人才知道答案,例如传统的C/S、B/S模式的S端,用户不知道啊,只能信任S端,这种信任其实是一种简化与假设。然而当S端不可信时,我们如何来保证因果性?

由于业务逻辑的复杂性,一个最简单最通用的想法就是,客户端运行同样一套一模一样的系统,然后对结果进行比对。

然而,这不现实啊,用户根本负担不起这样的系统,另外,出现争议听谁的?

于是,我们会想,可以找其他土豪帮忙啊?

但是,土豪就可信吗?(联合作恶)

没问题,我们可以多找几个土豪同时干(分布式系统/开源软件)

土豪又不是慈善家,凭什么给你帮忙,服务器不要用电么?

当然有好处啦,系统创造一些虚拟的资产或者服务费(挖矿、交易费)

万一土豪们一起干坏事咋办?(联合作恶)

那就搞点激励与惩罚机制,给他们制造竞争与矛盾,让他们联合不到一起咯。(博弈、共识机制、51%法定集合)

那万一不幸大多数节点都被少数人控制了怎么办?(挖矿垄断)

那也有办法,人是靠不住了,只能靠科学。因果性本质上是时间,时间的本质是不可逆,不可逆的本质是熵垒,计算机系统里面什么东西可以作为熵垒?唯有算力啊!于是有了PoW,大幅提高可逆性的成本。这种情况下,当前是靠不住了,历史还是靠得住的。

坏人的计算能力提高了也能逆转历史啊,怎么办?那就每隔一段时间(一个区块),重新在原来的熵垒之上叠加一个新的熵垒(Hash),进一步强化过去的熵垒(形成链状结构)。

什么,整个链都能逆转?别逗了,你当现在的有钱人都闲的蛋疼吗?

——于是,成功的把对S端的信任假设,转换为对于区块链系统的具有高概率的确定性认知。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181108G22Y8C00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

同媒体快讯

扫码关注腾讯云开发者

领取腾讯云代金券