信任的分层

区块链爱好者总爱提起:比特币在人类历史上第一次解决了去中心化的信任问题。这个提法既对,又不对。

广义上讲,这句话没有错。在比特币发明之前,一个成员间互不信任的群体对事物达成共识必然依赖对某个权威的信任。银行是个典型的例子。没有社会对银行系统的普遍信任,就不能建立起一个足以支撑货币流通的共识。比特币的贡献在于,在所有的参与者互不信任的情况下,不依赖类似于银行的中心化机构,用密码学和聪明的激励工程(incentive engineering)源源不断的输出信任,达成了同样足以支撑货币流通的共识。比特币的价值,就在于其首创去中心化信任产生机制的历史地位,先行一步的网络效应,以及无人可以绝对控制的抗监管性。

然而,人们不会说驴车的发明解决了人类的交通问题。信任的种类无穷无尽,且各有其语境。似乎至今没有区块链项目声称解决了婚姻的信任问题。比特币解决的信任问题非常具体:如何在没有中心化权威的情况下决定比特币资产的归属。整个比特币系统是围绕这个具体的目标而设计的。如其核心概念UTXO便是以量化资产为目的的。比特币脚本(Bitcoin Script)也人为的简单化,因为对货币归属这个单一领域的编码或许并不需要一个复杂的,图灵完备的语言。

自然而然的,人们想把这种产生去中心化信任的机制引入到货币之外的领域。若干智能合约平台(以“以太坊”为代表)的目标就是让这类想法的实现变的相对简单。对于智能合约,有两种截然不同的态度。一种认为这代表着未来,长远来看意味着去中心化组织将大量取代现有机构,从而提高效率,减少腐败,促进公平正义。另一种认为智能合约的重要性被大大高估,因为智能合约只能在所有信息都源于链上(on chain)时才可能顺利执行。一旦执行的过程中需要链下(off chain)信息源,智能合约的意义会立刻大打折扣。因为现实生活中,任何比较复杂的应用都需要链下信息,所以智能合约的应用场景便非常有限。目前似乎并没有一个完美的办法将链下信息以一个去中心化形式可信任的引入到链上,虽然类似于Augur和Gnosis之类的项目一直在这个领域作出了努力。对智能合约的这种怀疑并不奇怪。区块链的本质是用来解决某种信任问题,如果在解决这个信任问题的过程又碰到信任问题,便有可能进入死循环。

但或许事情永远都是没有想的那么好,但也没有想的那么差。退一步看,比特币其实也可以看做一个有链下信息源的那种复杂智能合约。比特币的链下信息就是此时此刻全网算力的分布情况。比特币最大的历史贡献就是利用了工作量证明这么一个聪明的激励工程手段以去中心化的形式可信任的将这个链下信息成功的转移到链上,从而建立了包括矿工,用户,交易所,钱包提供商在内的庞大的去中心化组织。从某种角度上,智能合约要解决的最重要最核心的问题,就是如何在各自领域以精妙的激励工程手段去促成这种链上链下信息的转换。比特币对链下信息的要求是单一的,并且没有交互性,尚且需要如此巧妙的设计才能解决这个问题。可以想象如果设计一个稍微复杂的智能合约,譬如让两个互不信任的人买卖商品,要需要多么精妙的激励工程才能解决各种不愉快的情况。很难想象未来会有一个通用的手段可以解决所有的问题,因为人们在各种场景下的行为动机都是不一样的。Augur或者Gnosis这样的预言市场(prediction market)利用市场经济这个无形的手的思路或许是对的,但还是显得离开具体问题有点远,并且有时或许过于直接。比特币是以非常间接的形式拿到需要的链下信息的。所以江总要是看到了一定会说:图样图森破。

信任是分层的。智能合约平台解决了代码执行层面的去中心化信任问题。智能合约们必须通过激励工程解决自己这个层面上的信任问题。信任如安全,整个系统的可信任性取决于最短板那层的可信任性。所有解决不了这个问题的智能合约项目都是耍流氓。

Written on April 8, 2018