作者:Gigi

来源:https://dergigi.com/2021/06/13/bitcoin-is-an-idea/

原文使用 CC BY-SA 4.0 许可,只要保持原作者署名并以同样的许可发布成品,即可自由分享和改编。本译本也采用同样的许可。

This work is published with CC BY-SA 4.0 license.


“不必担心人们剽窃你的点子。如果你的想法是全新的,迟早你要强迫他们接受。” —— Hoard H. Aiken

“这斗篷下没有可供屠戮的躯体,有的只是思想。而思想是杀不死的。”

—— Alan Moore,《V 字仇杀队》

2008 年 10 月 31 日,整个人类社会的航道永远地改变了。随着一项革命性成果问世,一种不可阻挡的思想在全世界散播开来。这种思想如此深刻,如此离经叛道,以至于在诞生之初无人问津 —— 直至今日仍被很多人低估:那就是《比特币:一个点对点的电子现金系统》。

这篇署名中本聪(Satoshi Nakamoto)的论文在万圣夜出现,带来了一个注定会席卷全球的想法。虽然大部人仍认为比特币不过是种可能让人暴富的旁门左道 —— 完全没有意识到它会对我们的社会产生多么深远的影响 —— 但是日复一日,我们愈发清楚地认识到,比特币这种思想绝不会消失。

正如 Alan Moore 所言,“思想不似有形的物体,它永远不会消逝。思想是不朽的,没有形体、无处不在,就像所有神迹那样”。

就在 2008 年的万圣夜,中本聪带着他的思想颠覆了整个世界。比特币的问世让电子现金不再是空想。比特币带来的不只是一种思想,比特币网络上生成的每个新区块都在告诉我们:电子现金已成现实。我们将亲眼见证,这个新的现实会比许多人一开始想象的还要强大,因为它恰好在时机成熟之际,以势不可挡之势将一种新的经济范式推向世界。正如维克多·雨果(Victor Hugo)所言:“没有什么比适时而生的思想更强大。” 比特币的思想已经出现,比特币的时代已经到来。

适时而生的思想

“千军易拒,一念难防。”

—— 雨果

很多人误以为,比特币是凭空出现的。实际上,电子现金这种想法有一段悠久而精彩的过去。其中最著名的,当属一个以 “密码朋克(cypherpunk)” 之名为人所知的民间组织,他们撰写了大量文章来阐述匿名电子现金及其系统的实现方法,以及强大的密码学可能带来的普遍社会影响。这正是组织名字的由来:热衷于 密码学 的朋克 1

在 1992 年组织成立后,Eric Hughes、Timothy C. May 和 John Gilmore 创建了密码朋克邮件组,与更多有着不同背景的人讨论和分享他们对密码学、电邮转发器、匿名性、电子现金以及 “其它有趣玩意儿” 的看法。多年以后,一名昵称叫作 “中本聪” 的密码朋克选择了在一个类似的邮件组 —— cyrptography 邮件组 —— 中发表他的白皮书。

从他们的论文中,你可以明显看出,密码朋克尤其关注电子现金这一想法。早在 1993 年,Eric Hughes 就在《密码朋克宣言》中讨论了电子现金及其与隐私权的关系、对自由社会的重要意义:“出于隐私保护的需求,我们必须保证参与交易的每一方都只知道达成这笔交易所需的直接信息。因为任何信息都可能被传播,我们必须保证将信息泄漏降至最低。在大部分情况下,个人身份都不应凸显出来。我在便利店里买一份杂志,付现金给收银员时,对方根本没必要知道我是谁。”

电子现金的理念是,在数字世界里创造出跟现实世界里的现金一样的东西。也就是说,电子现金不需要提供身份信息,不需要登录某个平台,可以直接用来交换产品和服务,而且几乎是无法追踪的。

就连 IANA 2(负责定义 HTTP 状态码的标准化组织)也认可电子现金这一想法。我们都知道著名的 404 错误码,指资源无法访问。但很少有人知道还有个 402 错误码,指因为没有付费而无法访问资源。不过,由于电子现金那时还不存在,这个状态码只是 “以备今后之需”,直至今日也没有得到广泛使用。

密码朋克主要关注电子现金的隐私特性,其次才是货币性和经济特性。他们意识到了,隐私性对一个自由和开放的社会是绝对必要的。毕竟,截然相反的情形 —— 全面监控 —— 只会导致压迫和停滞,因为崭新的、有争议的思想无法得到发展。无论你以为自己拥有哪些自由,监视最终会让这些自由全都形同虚设。

“因此,开放社会中的隐私权需要匿名的交易系统。直至今日,现金仍是主要的匿名系统。匿名交易系统并非秘密交易系统,它可以让个人在且仅在有意愿时公开自己的身份,这就是隐私权的本质。”

—— Eric Hughes,《密码朋克宣言》

虽然比特币在许多方面都是革命性的,但其运行所依赖的一切 技术 工具早已存在:

  • 公钥密码学
  • 点对点网络
  • 数字签名
  • 密码学哈希函数
  • 密码学时间戳
  • 哈希链
  • 工作量证明

我们将在后续章节详细探讨上述概念。

中本聪没有发明什么绝妙的新算法或密码学元件。他只是发现了一种办法可以将现有技术巧妙地组合起来,并使用经济激励和博弈论来启动并保护这个系统。

这些密码朋克也都意识到了,即使基本的技术在理论上已经存在,仍有一些东西需要时间来孕育。1992 年,Timothy May 在《密码学无政府主义宣言》中写道:“用于这个场景的技术理论上已经存在了近十年 …… 但直到近期,计算机网络和个人电脑的性能才发展到让这些想法在现实中可以运用。下一个十年,计算机的性能会进一步发展,让这些想法变得经济实惠、变得无可阻挡。”3

虽然我相信比特币(网络)已无可阻挡,但是,真正无可阻挡的是比特币 这种思想本身。毕竟,Alan Moore 已经言简意赅地告诉了我们,思想免疫物理攻击。

诞生后的第一个十年,比特币从一种想法变成了软件实现,再变成概念验证项目,最后变成了小众的货币资产。在下一个十年,它可能会自成一股力量、跨越国界并颠覆我们对货币和价值的理解。不过,电子现金的想法不是比特币诞生时才出现的:在中本聪进入这个领域的数十年以前,电子时代的思想家们和匠人们就开始思考和修补这个概念了。

电子现金的历史

“许多人想当然地认为电子现金可以盖棺定论了,因为 1990 年代以来所有与之相关的公司都倒闭了。”

—— 中本聪

比特币有多神奇,其史前史就有多悠久。中本聪成功基于多种技术和协议构建出了比特币,其中一些技术可以往前追溯 50 年甚至更久。虽然 50 年对于技术来说已经是很长的一段时间了,但密码学比这还要久远,可以追溯到公元前 1900 年

很难说到底哪个模块才是最重要的,但最基础的模块可能是数字签名 4(Diffie & Hellman, 1976)和公钥密码学 5(Rivest, Shamir & Adleman, 1978)。没有这些思想,比特币就不可能存在。

It's a joke, Dan. Now lighten up and subscribe to my newsletter.

- 中本聪的贡献在于聚合、提炼和组装这些技术。 -

在比特币之前,人类也发明过多种电子现金系统,最终都失败了,失败原因也都大同小异。下面就是对探讨比特币特别有意义的项目:

  1. Ecash,David Chaum (1982)
  2. E-gold,Douglas Jackson and Barry Downey (1996)
  3. hashcash,Adam Back (1997)
  4. bit gold,Nick Szabo (1998)
  5. b-money,Wei Dai (1998)
  6. RPOW - Reusable Proofs of Work,Hal Finney (2004)

我们来好好研究一下这些系统,看看它们带来了什么,又失败在哪里。

Ecash (David Chaum, 1982)

Ecash 利用了数字签名来实现所有权,这种思想延续到了今天的比特币上。David Chaum 在 1982 年提出 Ecash 的设计,后来由他的公司做出了软件实现并运营了 3 年。但在 1998 年,他的公司还是破产了。Chaum 依然活跃在密码学领域。他是许多密码学技术的先驱,推动了许多隐私保护技术的进步。有一种加强比特币交易隐私的方案叫 “Chaumian CoinJoin”,正是为了纪念其贡献。虽然 Ecash 在密码学和技术上都很有趣,它并不是一种货币上的创新;最终,也因为它需要一个中心化的主体 DigiCash 公司(正是 Chaum 创立的公司)来运营而失败了。

E-gold (Douglas Jackson & Barry Downey, 1996)

E-gold 在密码学上没有什么突破性的东西,但它是第一种获得了关注的电子货币。虽然在此之前也有其它同类存在(如 OS-Gold、Standard Reserve、INTGold),但 e-gold 被认为是首个成功的电子货币,甚至被一些商家接受。在它最热门的时候,e-gold 有 500 万名用户,所处理的价值转移在 20 亿美元量级。除了 e-gold 是由黄金担保的以外,还有别的电子贵金属:e-silver(银)、e-platinum(铂)和 e-palladium(钯)。这些电子货币的消亡同样是因为它们有一个中心化的运营服务商:Gold & Silver Reserve 公司。美国政府对这家公司发起了诉讼,理由是这家公司运营未经许可的货币转账业务。最后,E-gold 项目也失败了,因为其运营主体是可以关闭的。

Hashcash (Adam Back, 1997)

Hashcash 的想法最初在 1997 年提出,其论文《Hashcash - A Denial of Service Counter-Measure(Hashcash:反 DoS 攻击的方案)》发表于 2002 年。Hashcash 也是让比特币得以形成的根本概念之一。虽然在 Aam Back 之前也有其他研究员 通过任务处理来施加成本 6 的想法(Dwork & Naor,1992),但中本聪在比特币白皮书里引用的是 Adam Back 的论文,正是这篇论文提出了我们今日所知的,工作量证明(proof-of-work)。据我所知,proof-of-work 这个术语首次出现在 Hashcash 的论文中 7

Hal Finney 是比特币早期的传奇人物之一。他对 Hashcash 的解释简洁而精辟:“Hashcash 是一种特定格式的文本字符串,其特殊性在于:对这个字符串运行 SHA-1 哈希算法之后,结果哈希值的开头是 N 个零,N 通常在 20 到 30 之间。Hashcash 把开头零字符的数量叫做 ‘碰撞’ 体积。因为 SHA-1 的特性,找到碰撞体积更大的字符串的唯一办法就是地毯式搜寻:一个接一个地不断尝试,直到你撞中大彩”8

举个例子,一个 hashcash 字符串:

1:20:040806:foo::65f460d0726f420d:13a6b8

其 SHA1 哈希值是一个有 5 个零开头的值 9

00000f91d51a9c213f9b7420c35c62b5e818c23e

哈希值开头的 0 的数量代表这个 hashcash 的价值。因为除了暴力尝试以外,没有别的找出高价值 hashcash 的办法,所以哈希值开头的零的数量与其生产成本(在电子世界,就是计算的成本)直接相关。

本质上,hashcash 利用了计算需要消耗现实世界资源和时间的特性。Back 提议以 “支付” 电子邮件的邮资作为 hashcash 的主要用途。虽然打击垃圾邮件可能是他的主要目的,但他也提出 Hashcash 可以用作一种电子现金,甚至为之规划了一条迁徙路线,使之可以整合到 Chaum 的 ecash 中。虽然比特币的工作量证明算法与 Hashcash 的略有不同(比如,使用连续两次的 SHA256,而不是一次 SHA1 计算),背后的原理是一样的:计算哈希值没有捷径可走,反过来说,就是必须付出时间和能量。Hashcash 利用了这个宇宙的特性:任何计算,也即对一个系统的任何改变,都需要能量。换句话来说:你骗不了物理规律。计算自始至终都不可能是免费的。

Hashcash 的天才之处在于,他发现并描述了一种计算函数:计算成本很高,验证成本却很低。你可以把 Hashcash 的谜题理解为数独游戏(Sodoku)或是魔方:求解很难,但验证起来很容易。虽然多种 hashcash 实现曾被用于防止滥发邮件,这个概念在中本聪用在比特币以前,也是乏人问津。

Bit gold (Nick Szabo, 1998)

“Bit Gold” 建立在 Adam Back 和 Hal Finney 的研究基础之上,可以说是比特币直系前辈 10。虽然从未有人实现过 Bit Gold 系统,但是 Szabo 所想象的、它在理论上的工作情形,与比特币实际上的工作情形非常接近。

顾名思义,Bit Gold 的目标是创造一种独立于任何权威主体的电子货币商品,这种商品反过来可以用作价值存储的手段,就像物理世界里的黄金一样。Sazbo 写道:“我极力主张的目标是,创建一种不依赖于任何中心化权威主体的长期价值存储手段,而且比黄金更加安全。” 11

“贵金属和收藏品 12因高昂的造价成本而具备一种无法伪造的稀缺性。…… 因此,如果有一种协议可以在几乎不依赖可信第三方的情况下在网络上创造一种无可伪造的昂贵比特,同时在存储、转移和鉴定上实现信任最小化,那就太好了。”

—— Nick Szabo

Szabo 反复强调的一点是,相比植根于密码学的解决方案,黄金存在诸多问题,而且非常不安全。例如,黄金存储的安全性上限就是门和墙。最终总有人能强行闯入并拿走这些黄金。运输过程也同样如此。只有付出非同寻常的努力,你才能保障黄金运输的安全性 —— 而且不论你花了多大的力气,也总有人能阻截你。验证过程同样问题重重,否则市面上怎么会有这么多主要成分是铅或钨的 “金条” ?随着时间的推移,这些缺点导致绝大多数黄金都集中到了金库和银行,又催生了新的一些问题。

“Bit Gold 实现了黄金的所有重要属性,同时避免了黄金困扰了人类几千年的不安全特性。”

—— Nick Szabo

设计目标并不是 Bit Gold 与比特币唯一的相似之处。它们的工作模式构想也很接近。诚然,两者有一些关键区别,但基本理念非常相似。

下面的七个步骤节选自 Bit Gold 论文,大致说明了这个系统要如何运行:

  1. 一个公开的比特串,称为 “挑战字符串”,被创造出来(详见步骤 5)。
  2. Alice 在自己的电脑上使用挑战字符串通过一种基准函数(benchmark function)创建工作量证明字符串。
  3. 工作量证明中包含安全的时间戳。这个机制需要以分布式的形式来运行,多个不同的时间戳服务同时提供服务,使得系统无需实质上依赖于某个时间戳服务。
  4. Alice 向一个分布式的产权登记处提交挑战字符串和带有时间戳的工作量证明,获得 bit gold。同样地,产权登记处也不需要实质上依赖某个服务商。
  5. 上一个创建的 bit gold 比特串为下一个要创建的 bit gold 比特串提供挑战字符串。
  6. Bob 只需检查存放在 bit gold 登记处的无可伪造的产权链,即可验证 Alice 是否是某个 bit gold 比特串的所有者。
  7. Bob 可以通过检查和验证挑战字符串、工作量证明字符串以及时间戳来评估一个 bit gold 比特串的价值。

Szabo 的方法与比特币有两处关键区别。第一个区别是,Bit Gold 需要两个独立的登记处:一个用于播报时间戳(标记 bit gold 的创建时间),一个用于记录产权(鉴别 bit gold 的所有者)。第二个区别是,bit gold 依赖于基准函数(而不是 单向函数)来创建工作量证明。Szabo 所提议的基准函数在计算上具有较强的稳定性:这类函数的计算难度对所有矿工来说差异不大。Szabo 花了很多时间来定义和发掘这样的函数,并试图用数学方式证明这些函数的每一种计算都需要花费至少一定数量的时间,无论计算者使用怎样的计算机架构 13。不过,因为计算机性能会不断提高,他也承认找出这样的函数是很难的:“一个潜在的重要问题没有解决:…… 这个世界缺少一种密码分析(cryptographically)上稳定的难题。”

缺乏一个稳定的基准函数导致了很多问题:用户之前创造的币在造价上与新创造的币不同,因为计算机的处理速度会随着技术的进步变得更快。因此,两种不同的币 —— 或按照 Szabo 的叫法,不同的 bit gold 字符串 —— 将拥有不同的价值。根据摩尔定律,那么比 B 币大两岁的 A 币的价值应该是 B 币的两倍,因为两年后,计算机的处理速度也翻倍了,所以制造一枚新币的难度减半了。另一个问题是 —— 如果 bit gold 变得非常值钱,那些在计算机技术上取得突破的人会秘而不宣,以囤积有效的 bit gold 并在市场上溢价出售。这会恶化通货膨胀问题,而通货膨胀问题也是 Szabo 发现了但未能解决的问题。

此外,Szabo 还正确地认识到了原来的方法如 Hashcash 和 MicroMint 14 存在的问题:(1)它们的价值依赖于权威参与者;(2)它们所用的哈希函数在密码学上是有缺陷的,也即缺乏密码分析意义上的稳定性。如上所述,后一个问题在 bit gold 中依然存在。

b-money (Wei Dai, 1998)

b-money 也跟 Szabo 的 bit gold 一样从未被实现过,只是一个停留在理论构想中的货币协议。虽然比特币是 b-money 所列举的愿景的一种可行实现,但看起来中本聪在构想比特币的核心设计时完全不知道 b-money。就像 Wei Dai 在 Less Wrong 论坛的一个帖子回复中所说的:“就我所知,比特币的创造者 …… 在自己从头建立起这个想法之前,完全没有读过我的文章。他是后来读了我的文章,才将它放到比特币白皮书的引用文献中的。所以我跟这个项目没什么关系。” 在 2013 年,Adam Back 评论了这段话,称他是在中本聪主动联系自己后向中本聪介绍了 Wei Dai 的 b-money。

在 Wei Dai 的提议中,他将自己设计这个系统的动机和盘托出。他批评了 Tim May 关于密码学无政府主义的想法,他写道 “在真正的密码学无政府主义世界中,政府不是暂时被摧毁,而是永久被禁止、永远没有存在必要的。在这个世界里,暴力威胁变得没有意义,因为暴力不可能实施;而暴力之所以不能实施,是因为参与者的真实姓名和物理位置不可得知”。

他列举了运行这个系统必需的五个模块:

  1. 货币的创造
  2. 货币的转移
  3. 合约的生效
  4. 合约的缔结
  5. 合约的执行

虽然 b-money 解决了电子现金的许多内在问题,但 Szabo 在 bit gold 中指出的问题仍然存在。Dai 在自己的提议中也提到了这一点:“b-money 协议比较麻烦一点是货币的创造。这一点需要所有保存账本的人表决和同意某种计算的开销。不幸的是,因为计算技术日新月异而且有些进展不会公开,这些信息可能不可得、不准确或者过时,所有这些都会给这套协议带来严重的问题。”

针对这个问题,Dai 提出的解决方案是创建一个子协议来专门负责货币的创造。参与者周期性地就应该创造多少货币达成共识,在一个由市场驱动的四步循环中集体合作:计划、竞标、计算、生成。因为 Dai 所提议的 b-money 形式从未被实现过,我们不清楚这个精心设计的货币创造方案能否如预期般运行。

RPOW:可重复使用的工作量证明 (Hal Finney, 2004)

顾名思义,Hal Finney 发现了一种办法让 Hashcash 的工作量证明代币可以 重复使用

根据 Hal Finney 最初的说明,我来解释一下这个方法是如何运作的:这个系统接收 hashcash 作为工作量证明(POW)代币,创造出 RSA 签名过的代币,叫作可重用的工作量证明(RPOW)代币。PROW 可以在人际间转移,而且每次转移都会创造出新的 RPOW 代币。每个 RPOW 代币都是一次性的,但是会创造出一个新的 RPOW 代币,看起来就像是同一个代币可以在人际间转移一样。

img

- RPOW 的所有权是通过信任最小化的服务商来转移的 -

本质上,用户可以通过 PROW 客户端软件来创造 RPOW 代币,该客户端接收 Adam Back 所发明的 Hashcash 软件生成的工作量证明字符串作为输入。然后,用户拿自己的私钥给这个字符串签上名,再交给一个 RPOW 服务器,服务器会将这个代币记录在这个用户的公钥名下。然后,该用户就可以通过签名一个 “转账指令” 把这个代币转移给另一个用户(的公钥)。服务器也会及时将这个代币登记到对应的私钥名下(译者注:原文如此,疑应为 “公钥名下”)。

通过他的文章,我们可以明显看出 Hal Finney 受到了 Nick Szabo 的启发(尤其是他关于 “bit gold” 和电子收藏品的想法),并在后者的工作上更进了一步。在讨论 RPOW 的潜在应用场景时,Hal 写道:“安全研究员 Nick Szabo 创造了 ‘bit gold’ 这个术语,指代可以证明创建成本很高的信息对象。他主张这种对象甚至可以用作某种支付系统的基础,在信息世界中担当黄金在物理世界中的角色。RPOW 让代币可以在人与人之间传递和交换,使得 POW 代币可以成为一种 bit gold 形式。” 15

Hal 的实现可以有效解决工作量证明代币的一个固有问题:POW 代币自身不是很适合用作货币。POW 代币只是哈希值(一些比特)而已,所以天然无法避免一币多花。有了 RPOW 服务器,Hal 就引入了信任最小化的中心化权威方,可以通过密码学方式决定所有权链。这使得 POW 代币可以重复使用,不过是按照有限、有序的方式。

虽然 PROW 的架构是官僚式的(即,客户端总是依赖于专门的服务器),用户对 RPOW 服务器的信任却是最小化的。之所以能做到这点,是因为 RPOW 服务器软件运行在一个 IBM 4758 安全的密码学协同处理器上,这是一种高度安全、抗篡改的 PCI 电路,以密码学方式保证了在服务器上运行的软件就是经过审计的公开版本。因此,任一 RPOW 服务器都是一个可由第三方分析和评估其安全属性的系统。换句话来说,RPOW 服务器是一种 透明的服务器,让 RPOW 系统在整体上是信任最小化的。任何人都知道让这个系统运作的代码以及相应的规则。

“知道源代码,就知道了规则。”

—— Hal Finney

所以,RPOW 系统包含哪些规则呢?根据 Hal 的说法,我们知道的有以下几种:16

  • 没有通胀
  • 没有后门
  • 保障隐私

“没有通胀” 这个规则应该理解为仅限于这个系统本身,即,任何 RPOW 服务器都只会根据收到的 POW 和 RPOW 代币创建等值的 RPOW 代币。因为用户可以通过 Adam Back 的 hashcash 创造新的 POW 代币,若以进入这个系统的 POW 代币数量计,通胀是有可能发生的,也是必然会发生的。

“为了执行这个零通胀规则,RPOW 服务器必须保证任一 POW 和 RPOW 代币都只能执行一次兑换。每个币都是先创建出来,然后在 RPOW 服务器上兑换出一个新的 RPOW 代币,再然后,这个旧的币就再也不能用了。RPOW 服务器执行这个规则主要靠的是追踪所有见过的 RPOW 和 POW 的记录。每当有人拿一个 RPOW 来兑换,RPOW 服务器都会拿它跟自己见过的所有 RPOW 比较。一旦 RPOW 服务器发现自己见过这个币,则表明这个人想要二次使用这个币,服务器会拒绝这个兑换请求。如果 RPOW 服务器之间没有见过这个币,就会将它与其它已经见过的币放在一起,然后给这个字符串签上名,创建出一个新的 PROW。”

“没有后门” 规则指系统的透明性。每个人都可以随时检查它是怎么工作的,里面没有暗箱。

“隐私保护” 规则很有趣。Hal 曾详细阐述了隐私是一种不可或缺的特性,提出使用 Tor 17 网络连接到 PROW 服务器并讨论了针对隐私的攻击(linkage 攻击)和隐私改进方案(比如盲签名)。在他的文章中,他进一步指出了两种额外的情形:(1)“所有者作恶” 和(2)“编程者作恶”。他提醒我们,任何旨在实现信任最小化货币交换的系统都要在 “可能存在作恶者” 的假设下设计和运行。

RPOW 是 hashcash 之后真正成功实现的系统之一。不过,可能是因为它需要运行 RPOW 服务器又缺乏相应激励,Finney 的可重用工作量证明代币没有得到关注,这个项目最终也终止了。

中本聪的突破

“我希望澄清一点:这些系统都死于其中心化控制特性。”

—— 中本聪

2009 年 2 月 11 日,中本聪在 P2P Foundation 论坛上发布了一个公告。P2P Foundation 聚焦于研究点对点技术及思想对社会的影响,对自己的定位是 “研究点对点替代方案的基金会”。因此,这是一个非常适合官宣像比特币这样的点对点货币的平台。

在 TA 的公告中,中本聪将比特币描述为一个 “点对点的电子现金系统”,它 “没有中央服务器和受信任的参与者”,因为 “一切都基于密码学证据,而不是信任”。

img

- 中本聪的比特币公告原文 -

他指出了我们当前的货币系统以及传统货币体系的许多固有问题:

  • 需要信任某个参与方
  • 央行造成的货币贬值
  • 信贷泡沫
  • 部分准备金银行制度
  • 隐私
  • 因运营成本而无法实现小额支付
  • 中间人

只要撇一眼这个清单,比特币的宏大格局就昭然若揭了。中本聪的目的不是解决某一个问题,而是一举解决多个问题。令人惊讶的是,他在一开始就做对了许多事情,因此实际上能够解决这里提到的大部分问题。他剩下要做的事情就是让其他人相信他的解决方案真的有用。

接着,深谙受众心理的中本聪开始介绍一般的计算机系统是如何解决类似的信任问题的,即,强大的密码学技术如何免去了对系统管理员(如何处置你的数据)的信任需要。你的文件加密之后,你就不再需要信任能够访问这个文件的人(不会作出恶意行为),因为他们需要你的口令来解密这个文件。换句话来说,我们将对人类的信任转移到了数学身上。这在点对点环境下是特别有意义的,正是因为强大的密码学,你才可以放心跟其他人 —— 包括未来的你自己 —— 交换机密数据,无需信任传递消息的任何中间人。

“终于,我们要能在货币上实现同样的效果了。”

—— 中本聪

为了更好地理解中本聪取得的突破,我们回顾一下之前有哪些事情已经可以做到了,以及其它系统的缺陷在哪里。下面就是比特币之前已经取得的技术成就:

  • 通过公钥密码学创建账户
  • 通过工作量证明实现奢侈属性无可伪造的代币
  • 通过数字签名证明所有权
  • 通过签名链来传递工作量证明代币

以下是在此之前做不到的事:

  • 不引入受信任的第三方来防止一币多花
  • 不引入受信任的第三方来限制供给量

中本聪认为,任何中心化控制的系统显然都会被政府叫停。因此,他想要开发的系统有一个压倒一切的目标:去中心化。

“政府很擅长砍掉中心化控制网络(比如 Napster)的头,但纯粹的点对点网络,如 Gnutella 和 Tor,似乎不受此威胁。”

—— 中本聪

这句话很好地概括了去中心化为何如此重要:无头可砍、无 CEO 可抓、无领袖可施压、无特定群体可传唤、也没有服务器可以关停。换句话来说,去中心化最大化了生存能力

不管是什么系统,一个中心化控制点就是一个漏洞,也很容易被攻击。受到足够激励的攻击者会发现并利用这些故障点。套用到货币上,那就是国家有充分的动机去叫停一个有竞争力的系统。这一点(也只有这一点)是导致比特币的设计如此难解、如此复杂的原因。以激励驱动的比特币架构将生存能力置于一切之上。你若要破坏它,必须同时破坏它的所有部分 —— 激进的去中心化系统对所有类型的破坏都有极强的抵抗力。

虽然在此之前的尝试 —— 尤其是 bit gold、b-money 和 PROW —— 都非常接近于比特币的最终设计,但所有系统都具有以下一个乃至多个缺点:

  • 需要中心化的所有权登记处来防止一币多花
  • 货币的价值依赖于一个中心化的权威方
  • 只有通过一个中心化的主体才能实现发行量的控制
  • (从计算上来说)不稳定的工作量证明函数

除了最后一点,所有的缺点都是不折不扣的缺陷,因为它们需要一个中心化的主体,这就带来了被 “砍头” 的风险。中本聪的天才之处在于让比特币无头可砍,其中也包括通过销声匿迹的方式将自己的 “头” 藏了起来。

同样,在信息时代,货币的根本问题可以归结为两个:稀缺性多重支付。虽然两者明显是相关的 —— 解决不了一币多花问题,何谈数字稀缺性 —— 但绝不是一回事。中本聪一次解决了两个问题:使用一个点对点网络作为非中心化的账本以及一个全局的时间链(timechain)来同步状态并动态调整工作量谜题的难度,从而实现密码分析稳定性,让货币的可预期发行成为可能。

他又进一步将发行、转移、验证的过程组合在一起,使参与者无需再信任第三方。比特币的天才之处就在于,每个节点随时都可以独立验证所有事项。套用 Hal Finney 的话来说:“知道源代码,就知道了规则。”

中本聪既去中心化了 Wei Dai 的 b-money 的所有功能(货币的创造和转移;合约的生效、缔结和执行),又解决了 Szabo 的 “bit gold” 的问题(币的价值依赖于一个中心化的权威方;哈希函数缺乏密码分析稳定性)。他采用了 Hal Finney 的 PROW 代币的想法,但又更进一步,创建了一种既是同质化的、又具备高度不可伪造奢侈性的电子资产,最终解决了上面提到的问题。就像 RPOW 系统,最终成为了一个没有通胀、没有后门、可以保护用户隐私的系统。

了解一下金融系统(financial system)和银行系统(banking-type system)的区别,有助于我们理解为什么比特币要这样运行。本质上,金融系统要能做到下列事项:

  • 账户创建:用户可以创建账户并证明自己的身份。
  • 记录所有权:这个系统要能记录谁拥有哪些资金。
  • 证明所有权:需要某种认证程序来确认一个用户实际上拥有这些资产,以便用户可以向自己和其他人证明所有权事实。
  • 转移所有权:用户要能转移资产的所有权。
  • 安全性:系统要能确保所有权记录、计算机网络和用户数据都是安全的。

除了这些,要成为一个货币系统,还需要具备以下特性:

  • 稀缺性:货币应该难以制造,就像 Nick Szabo 说的,其制造应该具有无可伪造的奢侈耗费特性。
  • 可控发行量:新的货币单元应该在一段很长的时间里均匀发行,使之在参与者之间形成有机的分布。
  • 可审计性:独立的第三方能够审计货币供给量(以及整个系统的安全性)。

中本聪找到了一种办法来去中心化上述所有功能,是一种融合了点对点技术、密码学、概率论、博弈论、物理学和经济激励的方案。换言之,感谢这个宇宙的数学和物理定律,中本聪得以打造出一个全局同步(non-local)的系统。

我们仔细看看这些特性,以及比特币是如何成功将它们去中心化的,以求更准确的认识:

  • 账户创建:感谢公钥密码学,用户账户的创建可以完全去中心化。任何人在任何时间都可以创建一个甚至多个密钥对,来与比特币系统交互。没有注册表格,也没有权威机构审核或拒绝,也没有服务器让你登录。本质上,创建一个比特币账户就是生成一个很大的随机数(用作私钥)。你甚至可以用丢硬币,或者摇色子的方式来生成,只要你知道自己在干什么(以及你的硬币和色子是均质的)。
  • 记录所有权:在比特币网络中,每个全节点都有一份所有权记录的副本。这个激进的方法简单直接地消灭了中心化登记处的需要,并最大化了系统的生存能力:如果人人都是登记处,你就不知到从何关起。
  • 证明所有权:就像之前那些项目,比特币也是用密码学签名来证明所有权的。只要你拥有签名消息的私钥,你就能证明对应的公钥及其关联的资产都属于你。不需要中心化的权威机构来出示身份证明。
  • 转移所有权。所有权的转移是通过一条签名链来实现的,就像 Hal Finney 的 RPOW 系统一样。有区别的是,RPOW 需要中心化的服务器,而比特币不需要,因为每个全节点都保存(和验证)了所有权转移的整个链条。
  • 安全性。比特币的安全性体现在许多不同的方面,所有方面都依赖于一种或多种密码学,而这些密码学又依赖于(非常大的)大数字的力量。其他人猜测出你的私钥,或辨认出哪个地址属于你的概率几乎是零,要想不靠必要的暴力搜索找到一个有效区块哈希值的概率同样是零。强大的密码学和矿工在挖矿中累积消耗的能源保护了用户的资产和网络的公正性。迄今为止,系统自身从未遭到劫持,成了有史以来最安全的计算机网络。你的比特币只能在极端情况下受到有意义的攻击,比如你自己保管或托管给第三方的私钥可能被盗。
  • 稀缺性:因为比特币是第一种可实际使用的、无需中心化实体来防止多重花费的解决方案,它也首次实现了数字世界里的稀缺性。中本聪可以选择任意一个最终的通胀率,但他选择的是。结果是,比特币的发行量最多只有 2100 万,不可能有更多了。这一点对比特币和这个世界来说意味着什么,我们将在第七章中探讨。
  • 可控发行:比特币以调整挖矿难度的办法,去中心化地实现了可控发行率。难度调整也是解决密码分析不稳定问题的办法,用中本聪写在白皮书里的话来说:“为了对冲未来硬件性能的提升和运行节点的兴趣变化所带来的影响,工作量证明的难度会根据一个移动平均值来调整,目标是维持每小时出现的区块的平均数量。如果网络生成区块的速度太快了,难度就会增加。” 网络的挖矿奖励会在大约 2140 年结束,在结束之前,每个有效的区块都会增发新的比特币,而新的区块平均每 10 分钟出现一个。比特币的供应量在其诞生之时就已经预先决定,可以说,这就是比特币最有价值的属性。没有别的资产拥有比特币这样的特性:无可争议、不会偏离的供给量计划。

简而言之,数学使得这个系统的所有重要功能都能实现去中心化,而热力学定律又赋予了强大的安全性保证。此外,经济激励和博弈论起到了粘合剂的作用。

“最终成果是一个没有单点故障的去中心化系统。用户保管自己的私钥,在彼此之间直接转移货币,而点对点网络会帮我们检查有无多重支付。”

—— 中本聪

中本聪也意识到了,现实世界里面能够以免信任方式与计算机系统联系起来的资产只有能源,没有其它。所有其它东西 —— 不论是黄金、纸质证书、房地产还是草莓 —— 要引入它们就必须重新引入一个受信任的第三方,因为电子世界和物理世界天然脱节。必须有人来保证现实世界的资产与其在数字世界里的表示 —— 本质上就是一个列表 —— 同步更新且实时更新。这就是我们所谓的 “断言问题(oracle problem)” 。而工作量证明以一种巧妙、迂回的方式解决了这个问题:使用能源(物理学)作为基础事实。你可以把断言问题理解为 GIGO 原则的一个变种:输入的是垃圾,输出的就是垃圾。你没有别的办法,只能信任维护这个记录的人会如实记录。换句话来说:你永远无法确认手头的数据代表了现实,除非这种现实植根于计算本身。

灵光乍现

“镇压消灭不了思想。只有无视它们、拒绝思考、拒绝改变,才能消灭它们。这正好就是我们的社会在做的事!”

—— Ursula K. Le Guin

研究比特币的史前史,你会发现多重支付和电子世界的稀缺性并不是容易解决的问题。中本聪的突破在于发现了一种解决这两个问题的实用方法(而不是学术概念)。第一个问题用全局共享的时间链来解决,而时间链的同步是通过一个竞争性的抽奖程序来激励的;第二个问题则用难度调整区块奖励减半来解决。比特币使用了其前辈最突出的理念(数字签名、可重用的工作量证明、点对点网络)并以天才的方式将它们组合起来,创造了一种全新的东西:没有单点故障的去中心化系统。

在比特币里面,移除任何一部分都会导致整个系统崩溃。没有时间链,就没有去中心化的办法来检查多重支付。没有区块奖励定期减半的机制,挖矿算法就不具备密码分析稳定性,使得矿工生产比特币的速度会越来越快。许多密码朋克都梦想有一种电子现金。而中本聪把这个念头推到了前人达不到的高度,实现了一种几乎不可阻止的系统。无论未来数十年会发生什么,这个世界已经彻底改变,每个人都要适应一个存在比特币的世界。

比特币是一种理念,生逢其时。越来越多的个人、公司,甚至政府,开始以比特币为本位。中本聪的思想有不可阻挡的重力,这一点日益显著。在实现自己的思想时,他也证明了,困扰电子现金数十年的问题 —— 多重支付电子物品稀缺性 —— 有现实的解决方案。比特币软件的发布开启了一个可能长达数十年,但受到非常强大的激励结构驱动的历程。一个不可阻挡的思想,嵌进了软件的代码中。这种激励结构,驱动了比特币的生存。比特币多存活一天,人类离不受国家掌控的自由货币就近了一步。

让世界接受这个最强大的想法还需要一些时间。但有趣的是,时间也是比特币在根本上有意义的原因之一,因为中本聪的主要洞见就是:如何以一种去中心化的方式维护一个时间机器中文译本)。许多人认为这个问题是无解的。事实证明,前人只是没有找对方法。

脚注

  1. “密码朋克(cypherpunk)” 是一个有趣的合成词,结合了 “cipher(加密和/或解密消息的算法)” 和 “cyberpunk(赛博朋克,由 Philip K. Dick、William Gibson、Ridley Scott 等人的文学作品衍生出的一个科幻小说子类别)”。
  2. Internet Assigned Numbers Authority(互联网号码分配机构)
  3. Timothy C. May,The Crypto Anarchist Manifesto(密码学无政府主义者宣言)
  4. Diffie and Hellman, 1976, New directions in cryptography(密码学中的新方向)IEEE, PDF
  5. Rivest, Shamir, Adleman, 1978, A method for obtaining digital signatures and public-key cryptosystems (数字签名和公钥密码学系统的一种实现方法)(ACM, PDF
  6. Dwork and Naor, 1992, Pricing via ProcessingPDF
  7. “hashcash CPU 消耗函数所计算出的 token 可以用作一个工作量证明”,见 http://www.hashcash.org/papers/hashcash.pdf
  8. Hal Finney, RPOW Theory
  9. 你可以自己使用在线工具(比如 DuckDuckGo)来尝试一下,或者你可以在电脑里面输入下列的命令行,看看结果:echo -n 1:20:040806:foo::65f460d0726f420d:13a6b8 | sha1sum
  10. 在他的一些非常早期的文章,比如这个 README 文件中,中本聪把比特币写成 “BitCoin”,暗示了这个词应该被理解为两个独立的单词。
  11. 从 bit gold 早期的不完整白皮书来看,Szabo 引入了 “奢侈性无可伪造的资产” 的概念,将事务的稀缺性与其制造过程的耗费度关联起来。
  12. https://nakamotoinstitute.org/shelling-out/中文译本
  13. 见他在 Intrapolynomial Cryptography 上的作品。
  14. MicroMint 是Ronald L. Riverst 和 Adi Shamir(也即是 RSA 中的 A)提出的两种小额支付方案之一。另一种方案叫做 PayWord。两种方案都致力于实现非常小额资金的高效支付,延伸了前人比如 Glassman 等人在 Millicent 上的工作。这个想法也是巧妙运用公钥密码学和哈希值来生成货币:“一个币就是一个比特串,其有效性是任何人都可以容易检查的,但其制造是很难的”。
  15. https://nakamotoinstitute.org/finney/rpow/index.html,亦见:https://nakamotoinstitute.org/shelling-out/
  16. https://nakamotoinstitute.org/finney/rpow/slides/slide010.html
  17. The Onion Router,torproject.org