一轮漾着清辉的时钟高悬于空,
宣告时刻没有对错。
—— 罗伯特·弗罗斯特,《我与夜晚熟稔》(1928)
咱们仍未猜透时刻这个巨大的谜题。时刻不过是一个概念;咱们乃至不知道它是否真的存在……
——Clifford D. Simak,《莎士比亚的星球》(1976)
俗话有云,时刻便是金钱。反之,金钱也是时刻:时刻便是人类体内存储的一切经济能量。然而,时刻和金钱之间的联系远比乍看之下复杂得多。假如创造金钱不需求时刻,金钱就不成其为金钱,至少无法长时刻发挥金钱的作用。再想深一层,追寻信息国际的事物便是追寻时刻。
当金钱数字化,咱们有必要就时刻的界说到达共识,这便是问题所在。或许你觉得报时无非便是瞥一眼周围的时钟那么简略。假如仅仅处理日常作业,你这么想也行。可是,假如要让一个全球的、人们在其中各行其是的分布式网络同步推动状况,报时就成了巨大的难题。假如时钟无法信赖,你该怎么取得正确的时刻?假如你的体系跨过星系,你该怎么树立时刻的概念?在没有时钟的国际,你该怎么衡量时刻?时刻终究是什么?
为了解答这些问题,咱们有必要进一步了解时刻的概念,以及比特币是怎么自创时刻单位(出块时刻,也便是咱们一般所说的区块高度)的。咱们将探究的问题包含:为什么计时最终会与记账联系起来?为什么去中心化体系中没有肯定时刻?比特币是怎么运用因果联系和不可预测性来界说 “现在” 这一时态的?
记时器现已屡次为文明社会带来巨大改变。正如 Lewis Mumford 在 1934 年所说:“工业时代最重要的机器不是蒸汽机,而是时钟。” 如今,计时器再一次推动现代文明产生变革:信息时代最重要的机器不是核算机,而是时钟。这个时钟便是比特币。
追寻
“让孩子学习数东西,然后取得数字的概念。在计数的时分,这些东西就能够当作都是一模相同的,它们或许是单个目标或一组目标。”
—— David Eugene Smith,《初等数学教学》(1900)
总的来说,咱们能够经过两种办法来追寻物品:物理标志物和账本。你能够直接运用实际国际中的物品,例如,贝壳、硬币或其它有形的东西(来表达相应的数量);也能够经过在一张纸上记下现已产生的事来仿制国际的状况。
幻想一下,你是一个牧羊人,想要保证每只羊都会回来家中。你能够为每只羊戴上项链,每当有一只羊回家,你就取下那个项链,挂在棚子里。假定每个项链都会挂到一个独自的挂钩上,只需挂钩都挂满了,就阐明一切羊都到家了。当然了,你也能够每次都数一遍,然后列一张表。然而,每当你开始数之前,你都要从头列一张表,避免重复计数或漏计。
钱银本质上便是用来追寻债款的东西。总的来说,迄今为止充任过钱银的东西可分为两类:物理制品和信息列表。更通俗一点的说法便是,标志物和账本。
理解这两类钱银的本质差异很重要。我要在此作出明确阐明:物理标志物 直接 表明事物的状况;账本则 间接 反映事物的状况。二者各有优缺点。例如,标志物是物理的、分布式的,账本是信息化的、中心化的;标志物本质上是免信赖的,账本不是。
在数字国际,咱们只能运用账本(虽然总有许多 “大师” 想让你相信还有其他办法)。这是 信息 国际,不是物质国际。即便你将某类信息界说为 “标志物”,它依然是一段写入硬盘或某种信息存储前言的可塑信息,以信息记录的形式出现出来。
一切数字信息本质上都是账本,这便是产生 “一币多花” 问题的根源。信息从不直接表明国际的状况。此外,信息的移动也意味着信息能够仿制。信息存在于某个当地。要想 “移动” 信息,你有必要将它仿制到另一个当地,然后将原有信息删去。物质国际则不存在这种问题,移动便是移动,并不意味着仿制。信息国际不具有这种特征。假如你想将信息从表 A “移动至” 表 B,你有必要将信息从表 A 仿制到表 B。除此之外,没有其它办法。
另一种思路是 “专一性”。物理标志物是独特的原子组合,不能轻易仿制。朴实的信息不具有这一特征。只需你能够阅读某个信息,你就能够将它完美仿制出来。因而,咱们能够得出这样一个结论,物理标志物具有独特性,数字标志物不具有。我乃至认为 “数字标志物” 一词有待商榷。标志物能够表明秘密信息,但绝不会表明绝无仅有、不可仿制的信息。
这种特征差异表明,信息实际上是无法 “移交” 的。数字标志物不或许像物理标志物那样搬运,由于你无法确认原一切者是否破坏了信息。和一切信息相同,数字标志物只能像主意相同被传播。
“……假如你有一个苹果,我也有一个苹果,咱们能够交换苹果,换完之后仍是一人一个苹果。可是,假如你有一个主意,我也有一个主意,咱们交换完之后,每人就有两个主意。”
—— Charles F. Brannan (1949)
物理标志物(咱们称之为物理不记名资产,或 “现金”)不会面临这种窘境。在实际国际中,假如你给了我一枚硬币,你就失去了这枚硬币。这世上没有魔法能够仿制这枚硬币,要让我得到一枚硬币,就有必要把一枚硬币交给我。物理国际的规矩阻挠了一币多花。
虽然非数字国际的确存在多重花费的情况(臭名远扬的诈骗犯 George Parker 就曾靠着一房多卖牟利,卖的仍是布鲁克林大桥等地标建筑),可是这需求精心设计的骗局和简略上当的买家。数字国际就不相同了。
在数字国际,由于咱们总是在与信息 打交道,多重花费是一个固有的 问题。但凡仿制过文件或运用过仿制粘贴功能的人都知道,信息是能够完美仿制的,并且它不会与保存该信息的前言绑定。假定你有一张数码照片,你能够将它仿制 100 万次,将其中一些副本存入 U 盘,并将其发送给成千上万的人。完美的副本是能够完成的,由于能够运用完美的批改手段,消除一切瑕疵。最重要的是,仿制几乎是零本钱的,并且副本与原件之间无法差异。
再说一遍:信息只存在仿制一说。数字信息是无法从 A 移动 至 B 的,只能从 A仿制 到 B。假如仿制成功,再将A 处的原件删去,才干叫 “移动”。这便是为什么多重花费问题如此棘手。没有权威机构,就无法以不带对手方危险的办法将任何信息从 A 搬运给 B。咱们有必要相信原件会被删去。一个天然的副作用便是,就数字信息而言,咱们无法确认存在多少副本,以及这些副本都在哪里。
因而,数字标志物永远都无法充任钱银运用。标志物因其独特的物理构造而难以仿制,然后具有牢靠性。到了数字国际,这一优势化为乌有。在数字国际,标志物是不可信的。由于信息的固有特性,数字钱银的仅有可行形式只能是账本,而非标志物。因而,数字钱银不得不面临时刻问题。
标志物是不带时刻特点的,账本不是
“看得见的东西是一时的,看不见的东西是永恒的。”
——Paul of Tarsus, Corinthians 4:18b
对于物理标志物来说,买卖是在什么时分产生的(你的钱是从哪里来的)并不重要。你的兜里要么有钱,要么没有。要么花掉,要么不花。花钱的仅有前提便是兜里有钱。剩下的全交给自然法则。从这个意义上来说,物理标志物是无需信赖且不带时刻特点的。
对于账本来说,物理占有就没那么重要了。办理账本的人需求保证一切账目都有条不紊。本来由物理规则(你无法花费不属于你的钱,也不能重复花费同一笔钱)赋予的特征有必要由人为拟定的规矩来强制完成。正是这些规矩(而非物理规则)在保持账本的有序运作。
从物理规则转向人为拟定的规矩便是问题的症结所在。后者是能够修正和破坏的,前者则不然。例如,你无法 “假造” 一枚什物金币,你得从地底下挖出金子。可是,你能够在纸上假造金币。你只需求在账本上增加一个条目,声称自己有一些金币就行。假如是央行,只需求在电脑上敲几个键,就能够增发数万亿美元。(金融从业人称之为 “再典当”、“部分准备金制度” 和 “量化宽松” —— 可是千万不要被这些花里胡哨的术语弄糊涂了,它们本质上都是造假钱。)
为了保证账本以及办理账本的人没有招摇撞骗,咱们有必要定时对账本进行独立审计。对账本中的每个条目进行核算不是什么了不起的事 。审计员要能查看过去的账簿,来保证账本的牢靠性和有用性。没有牢靠的时刻戳,咱们就无法验证账本的内部一致性。咱们有必要树立一个机制来确认买卖次序。
假如没有一个肯定的时刻概念,咱们就无法确认买卖次序。假如无法确认买卖次序,咱们就无法保证账本没有假造。除此之外,还能有什么办法来证明你具有多少钱?还能有什么办法来保证一切账目都井然有序?
标志物和账本之间的差异凸显了追寻时刻的必要性。在物理国际,钱银是不带时刻特点的人工制品,能够在无人监督的情况下用于买卖。在数字国际中,符号钱银需求时刻戳。
中心化的钱银符号
“时刻能刻上一切印记,也能抹去一切印记。”
——Yahia Lababidi (b. 1973)
处理多重花费问题(保证每笔数字转账仅产生一次)最常见的办法是创立一个中心化买卖列表。一旦你有了一个中心化买卖列表,你就有了能够充任仅有真相来历的账本。这时,处理多重花费问题就很简略,只需仔细查看买卖列表,保证每条账目都正确无误即可。这便是 PayPal、Venmo、Alipay 以及全球一切银行(包含央行)处理多重花费问题的办法:权威机构。
“这一进程的问题在于,收款人难以查验,之前的某位持有者是否多重花费过某一笔钱。一般的处理方案是,引入可信的第三方权威,或相似铸币厂之类的机构,来对每一笔买卖进行查验,以避免多重付出……该处理方案的问题在于,整个钱银体系的命运完全依赖于铸币厂的运营方,由于每一笔买卖都要经过该铸币厂的确认,这个铸币厂就比如是一家银行。”
—— 中本聪,《白皮书》
需求留意的是,中本聪无法让信息变得无法仿制。比特币的每个部分(源代码、账本、用户的私钥)都是能够仿制的。这一切都是能够仿制并篡改的。然而,中本聪成功创立了一个体系,让违背规矩的副本变得毫无用处。比特币网络经过执行复杂的机制,来决议哪些副本有用,哪些副本没用。正是该机制为数字国际带来了稀缺性。这个机制就比如一支舞蹈,需求控制节奏。
即便是中心化账本,也有必要选用统一的时刻追寻办法,才干处理多重付出问题。当一笔买卖产生时,咱们有必要知道买卖方、买卖金额,以及最重要的,买卖时刻。在信息范畴,没有时刻戳就无法符号钱银。
“有必要强调的一点是,由于咱们一直未能处理分布式体系中事情与时刻点的相关问题,去中心化账本无法完成,直至中本聪创造出了处理方案。”
——Gregory Trubetskoy(2018)
去中心化的时钟
“时刻会带走一切。”
—— 埃斯库洛斯(公元前 525 至 456 年)
时刻和次序有着十分密切的联系。正如 Leslie Lamport 在 1978 年的论文《分布式体系中的时刻、时钟和事情次序》中所述:“时刻概念是咱们思想办法的基石。它源自一个更基础的概念,即,事情的产生次序。” 由于短少一个中心协调时刻点,“先”、“后” 和 “一起” 等看似直观的概念都没了参照。用 Lamport 的话来说:“ ‘先产生’这一概念界说的是分布式多进程体系中不变的那部分事情次序。”
换言之:假如咱们不能让某个人来担任办理时刻(授时),那么咱们怎么确认事情产生的次序?假如没有一个中心参照系,咱们怎么才干取得一个牢靠的时钟?
你或许认为这个问题很简略处理,由于每个人都能够运用他们自己的时钟。可是,只有在每个人的时钟都精确无误(且人人都遵守规矩)的情况下,这个办法才有用。在一个人们有对立、有利益冲突的体系中,每个人都运用自己的时钟会是场灾祸。并且,根据相对论,这一办法无法跨过空间。
来个思想试验:假定你生活在一个每个人都自己跟踪事情产生次序的国际中,你能够怎样欺骗其他人呢?你能够伪装你今日发送的一笔买卖其实是昨日的(仅仅由于某个原因而推迟),这样你今日花掉的钱就仍是你自己的。由于每个去中心化体系本质上都是异步通信,上述场景不仅仅理论上的思想试验。音讯的确会推迟,时刻戳会不精确。再加上相对论效应和宇宙的天然速度限制,咱们很难在没有中心化权威机构或观察者的情况下辨别事情的先后次序。
“Who's there? Knock knock.”(“咚咚咚!”“谁啊?”)
—— 经典谐音梗
为了更好地阐明这个问题,咱们来看一个详细的例子。幻想一下,你和你的商业伙伴都能够拜访你公司的银行账户。你的业务遍布全球,因而你是在瑞士开的银行账户,你自己住在纽约,而你的商业伙伴住在悉尼。你这边的时刻是 1 月 3 日,你正在宾馆惬意地度过周末夜晚。你的商业伙伴那儿的时刻现已是周一上午,她决议运用同享银行账户的借记卡买早餐。当时卡上余额为 615 美元。当地时刻为上午 8:21。她的早餐花了 27 美元。
于此一起,你打算用另一张相关该银行账户的借记卡付出住宿费。此时卡上余额为 615 美元。当地时刻为下午 5 : 21。住宿费是 599 美元。
也便是说,你们在同一时刻刷了卡。会产生什么事?(物理学家们,请原谅我运用了 “同一时刻” 这一表述,此处咱们暂时忽略相对论效应,以及宇宙中不存在肯定时刻这一现实。别的,咱们还要假定同步事情概念是存在的。比特币本身就现已够复杂了!)
银行的中心账簿很或许是一前一后收到这两笔买卖的,这样你们中必定有一个成了幸运儿,另一个成了倒霉蛋。假如中心账簿恰好在同一瞬间(精确到毫秒)收到这两笔买卖,银行就有必要决议由谁来花费这笔钱。
那么,假如没有银行会怎么样?谁来决议买卖先后?假如不仅仅你们两个,而是成百乃至上千人一起买卖会怎么样?假如你不信赖这些人该怎么办?假如有人想要作恶,比如将自己的时钟拨慢,伪装自己的买卖是几分钟前的,该怎么办?
“咱们需求一种与时刻有关的东西来创立公认的排序,并在不依赖于任何中心协调者的情况下维护仅有的历史记录。”
——Giacomo Zucco, 《发现比特币》(2019)
这便是为什么以往一切关于数字现金的测验都离不开中心化注册表。也便是说,咱们有必要信赖某个人,才干正确决议事务的次序。咱们需求中心化参加方来充任中心化时钟。
比特币处理这一问题的办法是从头界说时刻。比特币是经过区块,而非秒来衡量时刻的。
以区块为时刻单位
帝王息争,乃时光之风貌;
将谎言戳穿,让真相大白;
将岁月印记,给往事封印;
将黑夜坚守,唤拂晓醒来;
将伪君子惩治,直至其悔改;
—— 莎士比亚,《鲁克丽丝受辱记》(1709)
一切时钟都依赖于规矩的进程,也便是咱们常说的 “嘀嗒(读秒声)”。从本质上来说,老爷钟发出的滴答声与现代石英钟和原子钟发出的嗡嗡声没有任何差异。详细来说,咱们运用钟表中某个部件摇摆或振荡的次数来衡量秒或分钟。
大型摆钟的钟摆很长,摇摆起来很显着。更专业的小型时钟则需求特别部件。时钟的振荡频率(“嘀嗒” 的频率)取决于其使用场景。
大多数时钟的振荡频率都是固定的,以便精准报时。然而,有些时钟的振荡频率是可变的。例如,节拍器就能够预先设置振荡频率,一旦设置完成,就会按照恒定频率打拍子。比特币每次 “嘀嗒” 的时刻间隔都不同,由于其内部机制存在概率性。不过,二者的目的都相同:演奏音乐,让舞蹈能够继续。
老爷钟 | ~0.5 Hz(Hz “赫兹”表明周期性事情在一秒内产生的次数) |
---|---|
节拍器 | ~0.67 Hz 至 ~4.67 Hz |
石英表 | 32768 Hz |
铯 133 原子钟 | 9,192,631,770 Hz |
比特币 | 一个区块(0.00000192901 Hz* 至 ∞ Hz**)
* 创世块(6 天) |
眼前的比特币不便是一个时钟吗?中本聪的确暗示过,整个比特币网络就像一个时钟,用他的话来说,一个分布式时刻戳服务器。
在这篇论文中,咱们将提出一种经过点对点分布式时刻戳服务器来为一组买卖的产生次序生成核算证明,然后处理多重付出问题。
—— 中本聪,《比特币:一种点对点的电子现金体系》(2009)
从比特币白皮书最终的参考文献来看,时刻戳显然是一大底子问题。在 8 篇参考文献中,有 3 篇与时刻戳有关:
-
《怎么为数字文档加上时刻戳》,S. Haber,W.S. Stornetta(1991)
-
《论怎么提高数字时刻戳的效率和牢靠性》,D. Bayer,S. Haber,W.S. Stornetta(1992)
-
《怎么设计一个信赖最小化的安全时刻戳服务》,H. Massias,X.S. Avila,J.-J. Quisquater(1999)
正如 Haber 和 Stornetta 在 1991 年所述,数字时刻戳便是运用核算进程让用户(或敌对方)无法向前或向后更改数字文档的日期。不同于纸质文档,数字文档易于篡改,并且篡改时并不一定会在物理前言上留下任何显着的迹象。在数字国际,假造和篡改能够到达无懈可击的地步。鉴于信息的可塑性,为数字文档增加时刻戳成了一个十分复杂的进程。直觉的处理方案底子不起作用。以文本文档为例,仅仅简略地在文档结尾加上一个日期是底子没用的,由于任何人(包含你自己)都能够轻而易举地修正日期。更何况,你一开始就能够假造日期。
(未完)
视野开拓
短缺与缺乏不同,缺乏是指某物品的需求使价格或代价高于零。-《经济解释(二〇一四合订本)》