Wiki · 原理

不可退让的原则

去中心化的法权,依靠的是几条原则。

7.1

形态开放。协议的标准可以有许多个,产品可以有许多种,全部开源,任何人都可以取用,并按自己的想法修改和完善,用哪一个协议版本、合约版本或软件版本,由人们自己选择。

开源许可允许任何人复制、修改和再发布代码,分叉因此是开源世界的日常:一个项目的方向引起异议,异议者复制一份代码另起炉灶,两边各凭自己吸引到的用户与开发者延续下去。

2010 年,甲骨文收购 Sun 之后,OpenOffice 的大部分开发者复制了代码,另立 LibreOffice,今天大多数 Linux 发行版预装的办公软件就是后者。区块链把同一个原理用到了规则本身:链的规则写在开源的软件里,改规则的办法是发布新的版本,由每个运行节点的人自己决定升级到哪一个。

2017 年,比特币社区为区块大小争执了两年之后,一部分人按新的规则分出了比特币现金,两条链从那一刻起各自延续,各有各的使用者。每一次分叉都是树上多出的一根枝杈,异议因此总有去处,分歧在一次分叉里就能了结。

7.2

合约无主。合约一经部署即告定型,它的行为由代码一次写定,作者与任何人一样只能调用它。一件连其作者都无法更改的东西,也就不存在可以被施压去更改它的人。

一份有主人的合约,风险就落在主人的钥匙上。

2017 年,Parity 多签钱包的合约都依赖一份共用的库合约,这份库合约留着一个任何人都能调用的初始化函数;一名用户误把自己设成了它的主人,随后调用了它的自毁函数,约 51 万个以太币从此冻结在数百个钱包里,至今仍然躺在那里。

2022 年,Ronin 跨链桥的每一笔转账要由九个验证者中的五个签名放行,攻击者拿到了其中五把私钥,转走约 6 亿美元。钥匙可以被盗,也可以被误用,握着钥匙的人还可以被施压、被收买、被胁迫。

一份部署即定型的无主合约,像一块刻好的石碑:它的行为在刻下的那一刻就已写定,作者与任何人一样只能调用它,门上也就少了那把可以被人钓走的钥匙。

7.3

没有担保之外的信用扩张。协议中流转的每一笔钱都是已经押下的真钱;利息、债务和信用扩张都留在协议之外,任何人承担的风险,以其押下的数目为限。

1920 年代的美国股市里,买股票的人常常只付一成的保证金,其余九成向经纪商借来;银行把存款借给经纪商,经纪商再借给投机者,同一笔钱在链条上被当作好几笔在用。股价上涨时,杠杆把收益放大十倍;1929 年 10 月股价下跌,追加保证金的通知接踵而至,抛售引发更大的抛售,放出去的贷款变成坏账,银行接连倒闭,1930 年至 1933 年间约有九千家,无数储户的存款随之化为乌有。

七十多年后,同样的结构以更复杂的形态重现:次级抵押贷款被打包成证券,证券又被切分、再打包,层层衍生出新的证券,雷曼兄弟破产之前的杠杆约为三十倍。两次危机的形状相同:一座倒立的金字塔,塔尖上是一点点真钱,上面垒着层层承诺,底下的一块一松动,整座塔跟着倒下。如果协议里流转的每一笔钱都是已经押下的真钱,风险便以押下的数目为限,塔也就只有它真实的高度。

7.4

与旧秩序并存。它与现有国家主权体系下的一切并行运转;使用者以实用主义的视角比对每一项服务的定价和价值,并在国家的社会契约良好运转的情况下,遵守国家法律。主权国家提供的服务,与去中心化法权秩序提供者提供的服务,是平等的竞争关系。

亚当·斯密在《国富论》里记下过一段英格兰司法的往事:法官的收入大多来自诉讼费,各个法院于是都想把尽可能多的案子揽到自己这里来。原本只审刑事案件的王座法庭,借着一套说辞受理起民事诉讼;原本只管征收王室收入的财税法庭,也把一般的债务纠纷拉了过来。当事人因此可以在几家法院之间挑选,斯密认为,这种竞争或许正是英格兰法院后来令人称道的原因之一。

今天,国家的法院之间仍在为被选择而竞争:2004 年,迪拜国际金融中心设立了按英国普通法、以英语审理的法院,新加坡国际商事法庭于 2015 年设立,都是为了让跨国的当事人愿意把案子交给它们。治安同样如此,美国的私人保安人数早已超过警察,人们在国家提供的那一份之外,另外购买自己需要的那一份。国家与非国家的秩序提供者,最终都要站在同一排柜台后面,接受同一个人的挑选。

7.5

所有基础设施的建造者,均是普通的参与者。由于搭便车者在这里没有位置,所以对整个生态的贡献,直接等价于对个人在生态中处境的贡献。建造者们在生态中像其他任何人一样在其中提供服务,在格式上与昨天刚刚到来的人完全对等。

在这个系统里,写下合约的人调用合约、发出交易,与任何一个地址走同一条路,付同样的手续费;合约部署之后,作者在它面前的身份,与昨天刚刚到来的人一模一样。他从这个生态里得到的,只能来自他提供的服务被选择的次数,以及这个生态本身变得更好之后他自己处境的改善。

开源世界早就有这样一种建造者。许多开源软件的作者本身就是它的第一批用户:Linux 的开发者用它写代码,编辑器的作者用自己的编辑器写下一个版本,他们修好一个缺陷,首先省下的是自己的时间;修好的代码公开之后,所有人的处境也随之改善。对整个生态的贡献,与对自己处境的贡献,在这里是同一件事。