查看原文
其他

干货 | 比特币学术谱系,Part-3

Arvind & Jeremy 以太坊爱好者 2021-06-22


Part-1:时间戳、默克尔树、拜占庭容错

Part-2:工作量证明




以公钥作为身份


文首解释了安全的账本能够降低创建数字货币的难度。让我们重温一下这个例子。Alice 想付钱给 Bob ,她将这笔交易广播给所有的比特币节点。一笔交易就是一个字符串:含有 Alice 想要支付给 Bob 某笔钱的编码以及 Alice 签名的声明。最后由矿工将这份已签署的声明纳入账本,这样就能让这笔交易成真。要注意的是,这一过程完全不需要 Bob 的参与。我们发现交易中明显不存在 Alice 和 Bob 的身份;只包含二者的公钥。这在比特币中是一个很重要的概念:公钥是这个系统中唯一的身份类型。交易在公钥之间转移价值,后者被称为 地址 。

为了“证明”一个身份,你必需知道相应的密钥。只要生成一个新的密钥对,你就可以创建出一个新的身份,不受中央权威机构或中央注册系统的控制。你不需要注册用户名或是通知其他人你使用了哪个名称。这就是去中心化身份管理的概念。比特币没有指明 Alice 应该如何将她的名称告诉 Bob ——这不属于比特币系统。

这一设想历史悠久,最早由数字货币之父 David Chaum 提出,与现如今都大多数支付系统截然不同。事实上,它还是 Chaum 在积极推动匿名网络发展的过程中提出的。他在 1981 年所著论文《论无法追踪的电子邮件、回信地址和数字假名》中写到:“数字‘假名’就是公钥,用来验证对应私钥的匿名持有者的签名。”

只有凭借公钥才能知道消息接收方这一设想显然存在一个问题:没有办法将信息发送到正确的计算机上。因此,Chaum 提出的设想效率很低,尽管可以在一定程度上以牺牲匿名性为代价来提高效率,但是这种低效性问题是无法彻底解决的。同样地,比特币相比中心化的支付系统也非常低效:包含所有交易的账本由系统中的每个节点维护。比特币以牺牲效率为代价以实现安全性,因此“无偿“获得了匿名性(即以公钥作为身份)。Chaum 在 1985 年的论文 11 中进一步推进了这一设想。在这篇论文中,他提出了基于普遍的假名制实现隐私保护型电子商务以及“盲签名”,即数字货币背后的主要技术理念。

在比特币白皮书之前,关于 b-money 和 bit gold 的文章也讨论过以公钥作为身份的设想。然而,基于这一设想的很多研究工作以及 Chaum 本人后续对于电子货币的研究都偏离了这一设想。密码学朋克对于隐私保护型通信和商务非常感兴趣,他们也接受了假名制,并称之为 nym 。然而他们认为, nym 不只是加密身份(即公钥),而是与公钥相关的电子邮件地址。同样地,Ian Goldberg 在其博士论文中虽然认可了 Chaum 的设想,却也建议 nym 应该是带有证书的人脑可记忆昵称,这篇论文为后人的许多匿名通信研究奠定了基础 20。因此,比特币经证明是最成功的 Chaum 设想实例。


区块链


到目前为止,本文尚未介绍区块链,据传它是比特币的主要发明。请不要惊讶,其实中本聪从没提到过区块链。区块链一说没有标准的技术定义,而是涵义广泛的术语,用来指代与比特币及比特币账本有不同程度上相似性的系统

讨论得益于区块链的实例应用有助于阐明区块链这一术语的不同用法。首先,可以考虑为一组银行之间的交易创建一个数据库后端,由中央银行在一天结束之时结算交易并结清账款。在这样一个系统内,只有少数几个身份明确的参与方,中本聪的共识机制就大材小用了。因为账户是以传统货币计价的,所以也不需要区块链货币了。另一方面,链接型时间戳显然是有用的,至少能在网络延时的情况下确保全球交易顺序的一致性。状态复制也很有用:银行会知道自己本地的数据副本与中央银行用来结算的账本一样。这样就为银行免去了目前必不可少但成本又很高的账本核对过程。

其次,也可以考虑将区块链应用于资产管理,例如通过建立一个注册表来追踪金融证券、房地产等资产的所有权。使用区块链会增强互操作性并降低准入壁垒。我们想要的是一个安全的全球化注册表,最好还能允许公众参与。从根本上来说,这就是 20 世纪 90 年代和 21 世纪的时间戳服务致力于达成的目标。如今,公有链提供了一个很有效的途径(数据本身或存储于链下,只将元数据存储于链上)。还有很多应用也得益于时间戳或是抽象化“公告板”,最典型的用例是电子投票。

以资产管理为例。假设你想要通过区块链进行资产交易,而不仅仅是将交易记录在上面。要想实现这一点,一方面要求这个资产是以数据化的形式发布在区块链上的,另一方面要求区块链支持智能合约。在这种情况下,智能合约解决了“公平交易”的问题,确保资产转移和付款同时进行。概括来说,如果所有必需的输入数据(资产及其价格等)都在存储在区块链上,智能合约可以对复杂的业务逻辑进行编码

智能合约

智能合约的构想是将 数据 放入一个安全的账本中,并将其扩展至 计算 。换言之,它是一种针对正确实行公开指定程序的共识协议。在智能合约程序所规定的限制条件下,用户可以调用这些程序中的函数,函数代码由矿工依次执行。用户无需重新计算就可以相信输出值,还可以自行编写程序来执行其他程序的输出值。在与加密货币平台结合的情况下,智能合约变得尤为强大,因为特定程序可以处理货币——持有、转账、销毁,甚至在某些情况下加印货币。

比特币在编写智能合约时使用的是一种限制性编程语言。“标准”交易(即,将货币从一个地址转移到另一个地址)指的是用这种语言写的一段简短脚本。以太坊提供的是一种许可性更高的强大语言。

智能合约的概念是 Nick Szabo 于 1994 年 41 提出的,因效仿法律合同而得名,区别在于前者是自动执行的。( Karen Levy 31 和 Ed Felten 16 批评了这一观点。)Szabo 很有先见之明地将智能合约作为数字货币协议的扩展,并认识到拜占庭协议和(各参与方的)数字签名可以用来构建区块。加密货币的成功为智能合约赋予了实用性,也掀起了一波研究热潮。例如,编程语言的研究人员已经调整了他们的方法和工具,可以自动发现智能合约中的漏洞,并编写可证实是正确的智能合约。




将区块链资产映射到应用上不仅能让我们感知其潜力,还能破除我们的盲目崇拜。首先,许多人提议区块链应用,尤其是在银行业,不要采用中本聪的共识机制。他们更倾向于采用账本数据结构和拜占庭协议(由上文可知,其历史可追溯至上世纪 90 年代)。由此,区块链是一种突破性新技术的谣言便不攻自破。不过,这些关于区块链的炒作促使银行开始集体部署共享账本技术,就像那则“石头汤”寓言一样。对于去中心化账本的作用,比特币是一种高度可见的证明。Bitcoin Core 项目提供了一种便利的代码基,在必要之时可以做出相应调整。

其次,还有一种很常见说法是,区块链比传统注册表更安全——这种说法具有误导性。原因在于,系统或平台的总体稳定性必须与终端安全性——用户和设备的安全性——区别开来。没错,区块链的系统风险或许低于许多中心化机构,不过其终端安全性风险远远高于许多传统机构。区块链交易近乎是即时且不可逆的,而且在公链上采用的是匿名设计。对于区块链上的股票注册表来说,如果用户(或股票经纪人或代理人)丢失了自己的私钥——无非就是丢了手机或电脑中毒之类的——等同于丢失了资产。比特币自诞生以来不乏黑客攻击、盗窃和诈骗之类的黑历史,这方面的安全性实在堪忧——据估计,流通中的比特币至少有 6 % 被盗过一次以上 39

许可链

虽然本文已经强调了私有链和许可链遗漏了许多区块链的创新之处,但这并不意味着要抹杀它们的有趣之处。许可链限制了哪些人可以加入网络、创建交易或是挖矿。尤其是在只能由一些可信参与者担任矿工的情况下,可以抛弃工作量证明机制,转而采用更传统的拜占庭容错机制。因此,很多研究都集中于拜占庭容错,致力于解决以下问题:我们能否用哈希树来简化共识算法?假设有网络只会在特定几种情况下瘫痪怎么办?




此外,还有很多重要的考量因素是围绕身份和公钥构架、访问控制,以及存储在区块链上的数据的保密性的。这些问题很大程度上不会出现在公链上,也不会出现在传统的拜占庭容错文献里。

最后,还需要解决的工程问题是,如果为实现高吞吐量扩展区块链,以及如何将区块链融入供应链管理和金融技术等应用。

 

经验总结


本文对比特币的溯源为从业者和学者提供了丰富的(补充性)经验教训。从业者应该对过度夸大比特币的论调持怀疑态度。正如文中所言,引起业内轰动的诸多比特币概念,如分布式账本和拜占庭协议,实际可追溯至 20 多年以前。我们应认识到,要解决某个问题不一定要突破创新——前人的研究论文中或有“遗珠”可寻

恰恰相反,至少在比特币的研究上,学术界很排斥外来的激进想法。比特币白皮书虽然吸纳了许多前人的想法,但是比多数学术研究都要新奇。此外,中本聪并不在意学术界的同行评议,没有充分联系其学术谱系。因此,比特币被学术界忽视数年之久。许多学术圈子基于理论模型或过往系统的经验妄加否定比特币的可行性,尽管事实已经证明了这一点。

即便对于热门的研究领域来说,研究文献中的想法仍会被逐渐遗忘或是无人赏识,尤其是在超越时代的情况下,这种情况屡见不鲜。从业者和学者最好能温习一下旧的想法,或能借鉴到当前的系统中。比特币之所以如此特别、如此成功,不是因为它使用了任何前沿技术,而是因为它融合了许多之前互不相关的研究领域的想法。这并非易事,毕竟这需要将互不相关的术语和设想联系起来,不过这确实提供了很有价值的创新蓝图。

若能学会如何辨别过度炒作的技术,从业者必将从中获益。关于过度炒作有以下几个衡量指标:看不出技术创新之处;公司强行蹭热点而造成其产品的技术术语定义不明;搞不懂解决了什么问题;尬吹技术解决了某些社会问题,或是具有很大的经济/政治意义。

相比之下,学术圈很难实现成果变现。例如,不幸的是,原先的工作量证明研究人员并没有因为比特币的热度而受益,很可能是因为圈外人对此知之甚少。学术圈对发布代码和校企合作等行为奖励不足。

实际上,原先的工作量证明学术圈直至现在(2017年)都没有认可比特币!与现实相结合不仅能带来好处,还会减少重复发明并提供新的灵感来源。




致谢

由衷感谢 Adam Back 、Andrew Miller、Edward Felten、Harry Kalodner、Ian Goldberg、Ian Grigg、Joseph Bonneau、Malte Möser、Mike Just、Neha Narula、Steven Goldfeder 和 Stuart Haber 对本文的宝贵建议。 

注解:

[11]: Chaum, D. 1985. Security without identification: transaction systems to make Big Brother obsolete. Communications of the ACM 28(10): 1030-1044; https://dl.acm.org/citation.cfm?id=4373.

[16]: Felten, E. 2017. Smart contracts: neither smart nor contracts? Freedom to Tinker; https://freedom-to-tinker.com/2017/02/20/smart-contracts-neither-smart-not-contracts/.

[20]: Goldberg, I. 2000. A pseudonymous communications infrastructure for the Internet. Ph.D. dissertation, University of California Berkeley; http://moria.freehaven.net/anonbib/cache/ian-thesis.pdf.

[31]: Levy, K. E. C. 2017. Book-smart, not street-smart: blockchain-based smart contracts and the social workings of law. Engaging Science, Technology, and Society 3: 1-15; http://estsjournal.org/article/view/107.

[39]: Reuters. 2014. Mind your wallet: why the underworld loves bitcoin; http://www.cnbc.com/2014/03/14/mind-your-wallet-why-the-underworld-loves-bitcoin.html.

[41]: Szabo, N. 1994. Smart contracts; http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart.contracts.html.



原文链接: 

https://queue.acm.org/detail.cfm?id=3136559

作者: Arvind Narayanan & Jeremy Clark

翻译&校对: 闵敏 & 阿剑


你可能还会喜欢:

科普 | 区块链是什么鬼?

干货 | 金融合约与智能合约

观点 | 不完全合约与区块链


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存