区块链无法彻底解决信任,它只是为人们提供一种替代选项
    0
原文
分类:安全 来源:链闻ChainNews 收藏
H
Posted

在 2008 年首次提出的比特币白皮书中 , 化名中本聪的人总结道:「我们提出了一个不依赖中介信任的电子交易系统。」他指的是区块链,比特币加密货币背后的系统。规避信任是一个伟大的承诺 , 但事实并非如此。是的,比特币消除了信用卡等其他支付系统所固有的某些可信的中介。但你仍然要相信比特币 —— 以及它的一切。

关于区块链以及它如何取代、重塑或消除信任 , 已经有很多著述。但是 , 当你分析区块链和信任时 , 你很快就会意识到,炒作远高于价值。区块链解决方案往往比它们要取代的方案还糟糕。

首先需要提醒的是,我所说的区块链 , 是指非常具体的东西 : 构成公共区块链的数据结构和协议。它们有三个基本要素。第一个要素是分布式而不是中心化账本(蓝狐笔记注:分布式有多份副本,中心化则只有一个账本), 这是记录所发生事情和事情顺序的一种方式。这个账本是公开的 , 也就是说任何人都可以阅读,而且不可变 , 也就是说 , 没有人可以改变过去发生的事情。

第二个要素是共识算法 , 这是一种确保账本的所有副本都相同的方法。这通常被称为挖矿,系统的一个关键部分是任何人都可以参与。它也是分布式的,这意味着你不必信任共识网络中的任何特定节点。无论是在数据存储还是在维护数据存储所需的能量方面 , 它也可能极其昂贵。比特币拥有迄今为止世界上最昂贵的共识算法。

最后 , 第三个要素是货币。这是某种有价值的数字代币 , 是公开交易的。货币是区块链的一个必要元素 , 以协调所有参与者。这些代币的交易存储在账本上。

私有区块链完全没什么意思 (我指的是使用区块链数据结构但不具有上述三个要素的系统)。一般来说,它们对谁可以与区块链及其功能进行交互有一些外部限制。这些都不是什么新鲜事 ; 它们是分布式的仅可附加 (append-only) 的数据结构,其中包含授权添加到其中的个人列表。在分布式系统领域共识协议已被研究 60 多年 , 仅可附加的数据结构也是如此。就我所知 , 它们只是名义上的区块链 ,
使用私链的唯一原因就是利用区块链进行炒作。

公共区块链的所有三个要素都结合在一起 , 成为一个提供新安全属性的网络。问题是 : 这真的有好处吗?这都是关于信任的问题。

信任对社会至关重要。作为一个物种 , 人类通过连接实现信任。没有信任 , 社会就无法运作 , 我们大多数人甚至不怎么深究它 , 这也说明当前基于信任的系统运作良好。

「信任」这个词有许多含义。有亲近的人之间的信任。当我们说我们信任朋友时 , 我们的意思是相信他们的意图,并知道这些意图所带来的行动。还有一种对不太亲密的人的信任——我们可能不认识一个人 , 也不知道他们的动机,但我们可以相信他们未来的行为。区块链使这种信任成为可能,例如我们不知道比特币的矿工 , 但我们相信他们将遵循挖矿协议 , 并使整个系统正常工作。

大多数区块链爱好者对信任的定义有一种不自然的狭隘。他们喜欢用一些流行语 , 比如「我们信任代码」(In code we trust)、「我们信任数学」(In math we trust) 和「我们信任加密货币」(In crypto we trust)。这里的信任 (trust) 其实是作为验证 (verification) 存在。但验证与信任并不一样。

2012 年 , 我写了一本关于信任和安全的书 , 叫《骗子和局外人》。在其中,我列出了四种非常通用的系统,它们是人类用来激励值得信赖的行为的系统。前两者是道德和声誉。问题是,它们只在一定规模的人群内有效。原始系统对小型社区来说已经足够好 , 但较大的社区则需要委托 , 以及更多的形式主义。

第三是机构。机构有规则和法律 , 诱导人们按照群体规范行事 , 对不这样做的人实施制裁。从某种意义上说 , 法律使声誉正式化。最后,第四个是安全系统。这些都是我们采用的多种安全技术 : 门锁和高大的围栏、报警系统和警卫、取证和审计系统等。

这四个要素协同工作 , 以实现信任。以银行业为例 , 金融机构、商家和个人都关心自己的声誉,这可以防止盗窃和欺诈。围绕银行业各个方面的法律法规让每个人都遵纪守法,包括在欺诈的情况下控制风险的备用方案。从防伪技术到互联网安全技术,人们有很多安全系统。

在他 2018 年的著作《区块链和信任的新架构》中 , Kevin werbach 概述了四种不同的「信任架构」。首先是对等信任。这基本上相当于我提到的「道德和声誉体系」: 一对彼此信任的人。他说的第二个是利维坦(蓝狐笔记 Cipher 注:leviathan, 神话中的巨大怪兽 , 这里指大型组织)信任,这与我提到的机构信任相对应。你可以从人类的合同系统中看到这一点,合同系统使得彼此不相信的各方能够签订协议,因为他们都相信政府系统将有助于解决纠纷。他提到的第三个是中介信任。一个很好的例子是信用卡系统,它允许彼此不信任的买卖双方从事商业活动。他说的第四个信任体系结构是分布式信任。这是新兴的信任类型,尤其在特定安全系统中,它就是区块链。

区块链所做的是将对人和机构的一些信任转移到对技术的信任上。你需要信任密码学、协议、软件、计算机和网络。你需要绝对信任他们,因为他们往往是单点失败(蓝狐笔记 cipher 注:这里是指一个环节的失败导致整个系统失败)。

当这种信任被证明是错误时 , 就没有追索权了。如果你的比特币交易被黑客攻击 , 你可能损失所有资金。如果你的比特币钱包被黑客入侵,你将损失所有资金。如果你忘记了你的登录凭据 , 你将损失所有资金。如果你的智能合约代码中存在错误 , 你将损失所有资金。如果有人成功地破解区块链安全,你将损失所有资金。在许多方面 , 信任技术比信任人更困难。你是相信人类的法律系统还是相信计算机代码的细节(而你没有专业审计这些代码)?

区块链爱好者指出 , 更传统的信任形式成本很高 —— 比如银行手续费。但区块链信任的成本也很高 ; 只不过这种成本被隐藏了。对于比特币来说,这种成本就是挖矿的成本、交易费用和巨大的资源浪费。

区块链并不能消除人类对信任机构的需要。总会有一个巨大的范围,它光靠技术是无法解决的。人们仍然需要掌控,总是需要在系统之外进行治理。这一点在关于比特币区块大小的争论中 , 或者在修复针对以太坊的 DAO 攻击中,都是显而易见的。我们总是需要有在特定条件下推翻规则的能力,也总是需要有能力对永久性规则进行修改。只要硬分叉存在可能——当系统外部的人试图改变它时——人们就需要掌控。

任何区块链系统都必须与其他更传统的系统共存。例如 , 现代银行业的设计是可逆的。比特币不是。这使得两者难以兼容 , 结果往往是不安全。Steve Wozniak 因为忘记了这一点而被诈骗了 7 万美元的比特币。

区块链技术往往是中心化的。比特币理论上可能基于分布式信任 , 但实际上 , 这是不正确的。几乎所有使用比特币的人都必须信任为数不多的钱包,并使用为数不多的可用交易所。人们必须信任软件和操作系统以及计算机,一切使用比特币所需要运行的服务。我们看到了对钱包和交易所的攻击。我们已经看到了木马、网络钓鱼和密码猜测。犯罪分子甚至利用人们修复手机系统缺陷的机会来窃取比特币。

此外 , 在任何分布式信任系统中 , 都有后门方法,被中心化用来潜入系统。在比特币系统中,只有少数几个矿工控制大多数算力,且只有一家公司提供大部分挖矿硬件,以及只有少数几家交易所占据了绝大多数交易量。就大多数人而言,与比特币互动就是通过这些中心化系统。这也使对区块链系统发起攻击成为可能。

这些问题不是当前区块链应用中的错误,它们来自区块链行业固有的运行方式。对其系统安全性的任何评估都必须考虑整个社会技术系统。太多的区块链爱好者专注于区块链自身的技术,而忽略了其他的社会技术系统。

在某种程度上,人们不使用比特币 , 是因为他们不信任比特币。这与密码学或协议无关。事实上 , 在这个系统中,如果你忘记了私钥或偶然下载了恶意软件就会失去一辈子的储蓄 , 那么也许这个系统并不特别值得信赖。而这时再怎么解释 SHA-256 是如何防止双花的,也无济于事。

同样 , 在某种程度上,人们使用区块链,是因为他们信任区块链。人们根据比特币的声誉决定是否拥有比特币 ; 即使是那些拥有比特币的投机者也是如此,他们拥有比特币是因为他们认为比特币会让他们一夜暴富。人们根据声誉选择加密货币钱包 , 或交易所。我们甚至基于算法声誉来评估和信任支撑区块链的密码学。

要了解这可能会失败 , 请看看使用区块链的各种供应链安全系统。区块链并不是其中任何一个的必要特征。他们之所以成功,是因为每个人都有一个单一的软件平台来输入他们的数据。尽管区块链系统建立在分布式信任的基础上 , 但人们不一定接受这一点。例如 , 一些公司不信任 IBM / maersk 系统 , 因为它不是公司自己的区块链。

不理性?也许吧 , 但信任就是这样运作的。它不能被算法和协议所取代。它还含有很多社会层面的复杂因素。

尽管如此 , 区块链能在某种程度上消除对信任的需求,这种想法依然存在。最近 , 我收到了一家公司的电子邮件 , 该公司使用区块链实现了安全消息传递。邮件中上说:「像我们所做的那样 , 使用区块链消除了对信任的需求。」这种情绪表明 , 作者误解了区块链的作用和信任的运作方式。

你需要一个公链吗?答案几乎可以肯定是不,你不需要。区块链可能无法解决你认为可以解决的安全问题。它解决的安全问题可能不是你遇到的问题 (操纵审核数据可能不是你的主要安全风险)。对区块链的错误信任本身可能就是一种安全风险。低效率,特别是在规模扩展方面 , 可能不值得。我已经研究了许多区块链应用 , 它们都可以在不使用区块链的情况下实现相同的安全属性 —— 当然,这样它们就不会有很酷的名字了。

老实说 , 加密货币用处不大。它们只是被投机者用来寻求快速致富、以及不喜欢法币的人和进行黑市交易的人所利用。

要回答我们是否需要区块链的问题 , 问问自己 : 区块链是以任何有意义的方式改变了信任体系,还是只是将其转移?它是否只是试图用验证来取代信任?它是加强现有的信任关系 , 还是试图与之对立?信任如何在新系统中被滥用,这是否比在旧系统被滥用更好或是更糟?最后 : 如果你完全不使用区块链 , 你的系统会是什么样子?

如果你问自己这些问题 , 很可能会选择不使用公共区块链的解决方案。这将是一件好事 —— 尤其是当炒作消散的时候。

x

添加到收藏