Chainlink

作者:扎克-赫斯, Zack Hess Read in English Chainlink是Eth上一个名为LINK的子货币(subcurrency),以及javascript和golang中的一堆工具。Chainlink的目标是制作预言机(oracle)。这些预言机(oracle)将为区块链提供数据,这样我们就可以有依赖于足球比赛结果或欧元价格等事件的合约。 Chainlink的安全策略不是很好。他们似乎认为,如果他们描述了足够多的不同机制,就没有人能够在纠结的混乱中找到一个错误。 幸运的是,我已经开发了一个简单的计算信任模型: 信任理论。我们可以使用这个信任模型来快速找出Chainlink是否可以成为一个安全的预言机(oracle)。 我们将使用一个关键的概念来简化这个分析,即一个机制的安全性只能是它最薄弱的部分。正如Chainlink白皮书中所说。“任何系统的安全由其最薄弱的环节的安全性决定” 将不同的预言机(oracle)安全机制叠加在一起几乎总是一个坏主意,因为所产生的机制将和最不安全的组件机制一样不安全。

在Chainlink中实现的oracle in-security的层次是:。

  • api数据源
  • 数据源汇总
  • 非消耗性的声誉
  • 可消费的声誉
  • 认证
  • 可信赖的硬件

api数据源 #

Chainlink团队已经意识到,信任一个中央api供应商并不是一个安全的预言机(oracle)。从 chainlink 白皮书中可以看出,“当然,没有完全值得信赖的数据源。由于有问题的网站、作弊的服务提供商或诚实的错误,数据可能被良性或恶意地破坏。” 特别是,运行api的中心人物可以选择随着时间的推移改变所提供的数据,或者将不同的数据交给oracle的不同部分,以导致oracle参与者失去声誉。这样一来,控制api的人不仅可以破坏自己api的数据,还可以导致oracle系统的其他部分出现故障。

信任一个api数据源是4.1级的安全。

数据源汇总 #

当你从多个来源汇总数据时,这被称为投票协议。投票协议在区块链的背景下被很好地研究。

维塔利克写了这篇伟大的论文,解释了从多个来源汇总数据并不能增加该数据的安全性。https://vitalik.ca/general/2019/04/03/collusion.html

数据源聚合是4.1级安全。

预言机(oracle)的非消耗性信誉 #

Chainlink的预言机有一种声誉,他们不能相互花费。比如他们节点的分配请求总数的记录。

不可花费的声誉实际上降低了预言机(oracle)的安全性,因为它增加了参与退休攻击的经济激励。

如果没有办法出售声誉,而一个人想从预言机(oracle)中退休,那么退休攻击(retirement attacks)是他们将其声誉价值转化为可消费形式的唯一途径。

非消耗性的信誉是4.1级的安全。

预言机(oracle)可消费的声誉 #

可消费的信誉是Augur和比特币Hivemind中使用的安全系统。这是唯一一层有可能提供更多安全与中心化可信第三方的链路。

只要预言机(oracle)所拥有的信誉值大于预言机(oracle)所判断的赌注总数,那么这个系统就有3.1级的安全性。

保持声誉的高价值意味着使用预言机(oracle)数据的人需要向预言机(oracle)支付交易费用。从长远来看,这是不可能执行的,因为人们会编制使用预言机(oracle)数据的寄生虫合同,而不向预言机(oracle)支付特权。

一旦有足够的寄生虫合同,那么3.1级的安全将被打破,而机制将处于4.1级

认证 #

相信一个中心化的数据源来告诉你另一个中心化的数据源是否值得信任。这根本不能提高安全性,两个中心化的数据源都可能对你撒谎。4.1级安全。

可信赖的硬件 #

一个人怎么能知道他们发送的请求是由真正可信的硬件响应的,还是由被虚拟化的假飞地响应的? 真正可信的硬件会有一个由硬件制造商嵌入的私钥,不破坏硬件就不可能提取私钥。所以你可以联系硬件制造商,并下载一份他们创建的所有硬件的公钥清单。你可以用这些公钥来验证一个签名确实是在受信任的硬件中创建的。 问题是,我们信任硬件制造商。他们可以在他们的硬件中保存私钥的副本,允许他们签署任何信息,所以对我们来说,这将看起来像受信任的硬件产生的信息。硬件制造商可以向列表中添加更多的公钥,即使这些公钥并不对应于他们生产的任何硬件。这使硬件制造商有能力运行一个他们可以使之说谎的预言机(oracle)。

如果硬件制造商可以破坏预言机(oracle)系统,那么最终政府会通过法律来迫使硬件制造商破坏预言机(oracle)。他们会以 “拯救儿童”、“防止恐怖主义犯罪 “等为借口。

受信任的硬件是4.1级的安全。

结论 #

像Chainlink这样的4.2级预言机(oracle)系统比@AugurProject和@BitcoinHivemind这样的3.2级预言机(oracle)更昂贵,更不安全。这比Amoveo等2.2级预言机(oracle)系统更不安全,更昂贵。