AND:如何正确理解区块链里的51%攻击?

原文标题:《每个人都对51%攻击有误解?》

作者:DankradFeist

翻译:Blockunicorn

请原谅标题中的挑衅。显然不是每个人都弄错了。但是足够多的人,我认为写一篇关于这个主题的文章很好。

有一种说法是,如果你控制了比特币、以太坊或其他区块链中超过50%的算力,那么你就可以在网络上做任何你想做的事。股权证明的类似重申是,如果你控制了三分之二以上的股权,你就可以做任何事情。你可以拿走别人的硬币。您可以打印新硬币,这不是真的。

让我们讨论一下51%攻击可以做什么:

他们可以阻止您使用该链,即阻止他们不喜欢的任何交易。这叫做审查制度。他们可以恢复链,即撤销一定数量的区块并改变其中的交易顺序。他们不能做的是改变系统的规则。这意味着例如:

在区块链系统的规定之外,他们不能简单地印刷新代币;例如,比特币目前给每个新的区块生产者6.25?BTC;他们不能简单地将其变成100万个BTC。他们不能从没有私钥的地址消费代币。他们不能制作比共识规则允许更大的区块。这并不是说51%的攻击没有破坏性。他们仍然是非常糟糕的攻击。重新排序允许双花硬币,这是一个相当大的问题。但是他们能做的事情是有限的。

美国FDA政策蓝图:应研究如何利用区块链跟踪产品:金色财经报道,美国食品药品监督管理局(FDA)周一公布了一项针对食品安全的新计划,在发布的一份政策蓝图中引用了区块链技术在跟踪产品中的潜在作用。根据该蓝图文件,总体计划的主要组成部分是使用新兴技术来增强现有系统并构建新系统。文件称,当研究行业如何通过数字方式跟踪飞机、行程共享和包装货物的实时移动,或者企业如何利用大数据来识别趋势时,很明显,FDA和利益相关者应该研究如何利用新技术,包括但不限于人工智能、物联网、传感器技术和区块链。[2020/7/15]

现在,包括比特币和以太坊在内的大多数区块链如何确保这一点?如果矿工开采违反规则的区块会怎样?或者大多数股权签署了一个违反规则的区块?

区块链安全模型

有时人们声称最长的链是有效的比特币或以太坊链。这有点不完整。当前链头的正确定义是:

总难度最高的有效链。因此,在接受应使用链来表示当前历史记录之前,客户端需要验证两个属性:

掌柜调查署 | 竞争之下平台币会如何发展?:4月14日16:00,AAX交易所CEO Thor Chan将携带新上线的平台通证AAB做客金色财经掌柜调查署,一起来看竞争之下,平台币会如何发展。更多详情点击原文链接查看。[2020/4/14]

1.它必须是有效的。这意味着所有状态转换都是有效的;例如在比特币中,这意味着所有交易只花费之前未花费的交易输出,coinbase只收到交易费用和区块奖励等。

2.它必须是难度最高的链条。通俗地讲,这是最长的链,但不是以区块来衡量,而是在这条链上花费了多少总挖矿算力。

这听起来可能有点抽象。问谁来验证第一个条件,即链上的所有块都应该是有效的,这是合理的?因为如果只是矿工也验证了这条链是有效的,那么这就是同义反复,我们并没有真正得到任何东西。

但区块链不同,让我们看看为什么,从普通的客户端/服务器数据库架构开始:

请注意,对于典型的数据库,用户信任数据库服务器。他们不检查响应是否正确;客户端确保根据协议对其进行有效格式化,仅此而已。客户端是“哑巴”:它无法验证任何内容。

大咖零距离 | 宝二爷,李笑来的成功我们能复制吗?该如何抓住减半行情?:3月3日18:00,金色盘面邀请币圈KOL老俞说币做客金色财经《大咖零距离》直播间,将分享《宝二爷,李笑来的成功我们能复制吗?该如何抓住减半行情?》,敬请关注,欲进群观看直播扫描海报二维码报名即可![2020/3/3]

然而,区块链架构看起来像这样:

所以让我们总结一下这里发生的事情。有生产链的矿工。有一个点对点网络——它的作用是确保一个有效的链总是可供所有人使用,即使某些节点不诚实。还有一个客户端,他将交易发送到P2P网络,并从网络中的其他节点接收最新的链更新。它们实际上是网络的一部分,还将通过转发块和交易做出贡献,但这在这里并不重要。

重要的部分是用户正在运行一个完整的节点,如其客户端中的圆柱体所表示的那样。每当客户端获得一个新块时,就像任何其他节点一样,无论是矿工还是P2P网络中的一个节点,他们都会验证该块是否是有效的状态转换。

如果它不是有效的状态转换,则该块将被忽略。这就是为什么矿工在网络中尝试挖掘无效状态转换的意义很小的原因。大家只会无视。

声音 | 日本金融厅长官:针对区块链等分布式金融系统,如何确保公众利益已成为新课题:据日经新闻消息,今日在日本福冈举行的G20峰会上,日本金融厅长官远藤俊英发表演讲指出“监管规则可能抑制创新,监管规则也会跟不上技术变革”。此外,以区块链技术为首的分布式金融系统在没有金融机构充当中介的情况下,可能实现顾客和市场参与者之间的直接交易,因此金融机构的地位存在下降的可能性,在这种情况下,如何确保公众利益已成为新的课题。[2019/6/8]

许多用户运行自己的节点来与以太坊或比特币等区块链进行交互。许多社区已将此作为其文化的一部分,并非常重视每个人都在运行自己的节点,因此他们是验证过程的一部分。事实上,你可以说大多数用户,尤其是那些有很多价值的用户,运行全节点真的很重要;如果大多数用户变得太懒惰,那么矿工可能会突然被诱惑产生无效区块,这种模式将不再成立。

类比:三权分立

你可以把这想成有点像自由民主国家的权力分立——政府有不同的部门,仅仅因为你在其中一个部门中占多数并不意味着你可以做任何你想做的事情喜欢并无视所有法律。矿工或权益持有者有权在区块链中订购交易;他们没有权力简单地对社区规定新规则。

声音 | Circle首席执行官:加密和区块链产业是对公民社会最终如何运作基础的再设计:据Cointelegraph消息,Circle首席执行官Jeremy Allaire在世界银行集团和国际货币基金组织(IMF)2019年春季会议上表示,加密和区块链产业是对公民社会最终如何运作的基础根本性的重新设计。Allaire认为,加密和区块链产业不仅关乎数字支付,还关乎一种新的基础设施,用于记录重要信息,并为构建解决方案提供一个更加去中心化、更具弹性的基础。[2019/4/12]

但是所有的区块链都是这样工作的吗?这是个好问题。需要注意的是,这仅在完整节点易于运行时才有效。作为普通用户,如果这意味着必须花5,000美元购买另一台计算机并且永久需要1GBit/s的互联网连接,那么您根本不会这样做。即使你可以在某些地方获得这样的连接,让它被你的区块链节点永久阻塞可能不是很方便。在这种情况下,您可能不会运行自己的节点,这意味着您将信任其他人为您做这件事。

想象一下,一条链的运行成本如此之高,以至于只有质押者和交易所才能运行一个完整的节点。你刚刚改变了信任模型,大多数质押者和交易所可以联合起来改变规则。不会与用户就此进行辩论——如果用户根本无法控制链,他们就无法领导分叉。他们可以坚持旧规则,但除非他们开始运行完整节点,否则他们不知道是否使用满足他们想要的规则的链来回答他们的请求。

这就是为什么总是围绕增加区块大小的争论——每次这样做,都会增加运行自己节点的人的负担。对于矿工来说,这不是什么大问题——与实际的挖矿操作相比,运行节点的成本很小——因此它将权力的平衡从用户转移到矿工。

轻客户端呢?

好的,但是如果您只想使用加密货币支付咖啡费用怎么办?你打算在手机上运行一个完整的节点吗?

当然,没有人预料到这一点。而用户不会。在这里,轻客户端开始发挥作用。轻客户端是更简单的客户端,不验证整个链——它们只验证共识,即总难度或投票给它的股份数量。

换句话说,轻客户端可以被诱跟踪包含无效块的链。对此有一些补救措施,包括数据可用性检查和欺诈证明。据我所知,目前还没有链实施这些,但至少以太坊将来会这样做。

因此,使用具有数据可用性检查和欺诈证明的轻客户端,我们将能够在不需要所有用户运行完整节点的情况下提供区块链安全模型。这是最终目标,任何手机都可以轻松运行以太坊轻客户端。

那么侧链呢?

侧链现在是一个热门话题。看起来它们是一种提供缩放的简单方法,没有汇总的复杂性,简单的说:

创建新的权益证明链。与以太坊建立双向桥梁。利润!请注意,侧链的安全性几乎完全依赖于桥接——即允许一条链了解另一条链状态的结构。毕竟,如果你能主链上的桥,桥链上的所有资产现在都属于邪恶先生,那么股权证明链上的全节点是否有不同的想法都没有关系,所以一切都在桥上。不幸的是,网桥的状态与轻客户端相同。他们不验证正确性,而只验证共识条件的大部分。然而,有两件事比轻客户端更糟糕:

1.桥接用于非常高价值的交易,如果可以,大多数用户会选择全节点。

2.不幸的是,没有办法像我们为轻客户端所做的那样加强桥接——原因是它们无法验证数据可用性检查。

第二点非常微妙,可以轻松填写另一篇或两篇博文。但简而言之,网桥无法进行数据可用性检查,没有这些,欺诈证明也大多无用。使用零知识证明,您可以通过要求桥接器包含所有块正确的证明来获得改进——不幸的是,这仍然受到一些数据可用性攻击的影响,但这是一个改进。

总而言之,侧链具有与以太坊和比特币等区块链不同的、弱得多的安全模型。它们无法防止无效的状态转换。

这一切都与分片有关吗?

事实上,所有这些都与分片有很大关系。我们需要分片来扩展的原因是因为它是在不提高运行全节点的门槛的情况下扩展的唯一方法,同时尽可能地保持区块链的完整安全保证。

但是如果你只是撤销所有的历史呢?然后你仍然可以窃取所有的比特币/以太币/等。从理论的角度来看,在非检查点工作量证明链上,确实通过不还原某些交易,而是还原所有交易,您仍然可以获得所有比特币。好的,所以你不能打印一万亿比特币,但你仍然可以得到所有存在的比特币,所以这很好,对吧?

我认为这一点非常理论化。这些社区中的任何一个都接受修改其历史数年的分叉的概率恰好为零。在所有可能的渠道上会有大量的争吵,很快得出的结论是人们应该拒绝这一点,并同意有效的链应该是已经存在的链。

通过权益证明和最终确定,这种机制将变得正式——客户永远不会恢复最终确定的区块。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

[0:15ms0-7:698ms