← 返回Web3
Web3 探索

老师有没有告诉你,改造那条链最省事的办法不是攻击它——是让所有人同时收到两个版本

2026-09-29 · 🕐 约 8 分钟

由 丢笔哥 发布

🖊️ 老师有没有告诉你…

老师有没有告诉你,改造那条链最省事的办法不是攻击它——是让所有人同时收到两个版本

啪——老师把笔丢在桌上。

今天讲一件听起来很小的事:一根网线断了。

两侧同时挖隧道

老师先在黑板上画了一条线,中间站着一个施工队。

他说:修一条穿过山的路,最贵的办法是从一头硬挖,一路砸开岩石。费时、费钱、还可能挖到一半塌方。

最便宜的办法,是从山的两侧同时开挖。

两侧各挖各的,进度飞快。只要最后在山中间对上,一条完美的隧道就成了——成本只有一头挖的一半,时间也短得多。

老师说:区块链最厉害的一种攻击,用的就是这个思路。

那些互相不认识的机器,靠什么点头

先补一下背景。你要理解这个武器,得先知道这条链每天在干什么。

每一台机器把新发生的交易打包成一块,然后广播给所有人。其他人收到以后,检查一遍:数额对不对、签名对不对、有没有花两次。检查通过,就「点头」——把这一块接到自己手里的那本账后面,然后继续把最新状态告诉别人。

整个系统能转起来,靠的是一条很多人没注意的假设:

大家看到的,是同一个正在发生的事。

而攻击者要做的,就是让这条假设为假。

两边各自的账,都完全合法

现在看这个攻击是怎么做的。

假设有一群人,控制了足够多的机器。他们不直接去攻击谁,而是做一件更阴的事:在物理网络上做手脚,让这条链暂时分成两半。

左半边的机器互相能通,右半边的也能通,但两边之间听不见对方。

接下来会发生什么?

左半边的人继续打包新块、广播、检查、点头、记账。右半边的人也在做同样的事。

于是同一条链,在同一段时间里,长出了两个完全不同的版本。

关键在于:这两个版本各自都是合法的。从头到尾,没有一行代码被绕过,没有一个签名是假的。系统表现出的是教科书级别的诚实。

这个场景有真实的对应背景。2022 年 9 月,以太坊那台最关键的机器在完成升级时,因为一个配置疏漏,出现了十几分钟的「另一条链也在被接受」的状况。当时的处置极其紧张,因为如果拖得更久,两边的分歧就会从「技术上可修」变成「事实上已经分成两个世界」。最终没出事,靠的不是代码自动纠错,是有一批人在真实世界里打电话、核对、把口径统一回来。这件事留下的教训被反复引用:**这套系统的安全边界,一部分在代码里,另一部分在代码外面。**

这时候就不是技术问题了。是你怎么向十万个在两边都开过账户的人解释:你们其中一半的钱,从来不存在。

老师问:这笔账,谁来还?

最笨也最牢的那把锁

好,现在讲这个系统的防线在哪里。

很多人以为防线是数学——密码学够硬,谁也伪造不了签名。这话对,但那只挡住了「假装是别人」这一种攻击。

挡住「让网络分居」这种攻击的,不是数学,是另一样东西:经济。

老师把它拆成一句话:

你想长时间让这条链分成两半,你自己得维持其中一半的产出。而产出是要花钱的——电、机器、人工。你维持得越久,烧得越多。

而链条自己有一个特性:时间站在防守方这边。

拖得越久,两边越难重新对上;而越难对上,全网越会朝「少数派的那一边永久作废」这个方向走。攻击者花钱买来的那条链,不但要一直烧钱维持,最后还有极大概率被整体宣布无效——等于他花掉的钱,一笔都换不回来。

所以真实结果往往不是「防守方被打败」,而是「攻击方先算了一笔账,发现自己亏不起」。

老师说:这是这套系统最漂亮的一个设计——它不靠「相信没人会这么干」,它靠在规则里把这件事设计成不划算。

真正的那条缝

现在讲这篇文章最想让你记住的一句。

这个攻击能成立,是因为它钻的不是代码的漏洞,是代码和现实之间的那条缝。

链上的世界很干净:规则明确、执行严格、没有例外。但链上的世界必须坐在真实的网络、真实的电缆、真实的地球上。

而真实世界里,「大家都能互相说话」这件事从来不保证。渔船会刮断缆、政策会关掉通道、机房会着火。

那该怎么用这件事

老师给了三句实用的话。

第一,判断一件事可不可信,别只看它的规则,看它依赖的外部条件有没有保障。一条规则完美但依赖单一通路的系统,风险不来自规则,来自那根线。

第二,问一句「如果两边暂时听不见,会发生什么」。这个问题能问醒很多事——小到一家公司的两地仓库,大到一个国家的支付清算,都适用。所有「必须同时保持一致」的系统,都在赌连通性。

第三,解药往往不是更快的技术,是时间。让分歧的代价随持续时间指数级上升,让攻击者自己算账时先崩溃——这是这个系统给世界最通用的一个思路:不要试图消灭坏事,要让它变得不划算。

小测验

  1. 「两侧同时挖隧道」这个比喻在讲什么?
  2. 为什么被分居的两半,各自的记录都完全合法?
  3. 挡住这种攻击的真正力量是什么?

收场

下课铃响了。

老师把笔从桌上捡起来,在黑板上写了一行字:它不怕你砸它,它怕你把它掰成两半。

他说:你们记住,所有靠「大家都看得见同一件事」运转的系统,最脆弱的地方从来不在里面,在那个前提本身。

一根网线断了不算什么。可怕的是断了之后,两边各自都觉得自己这一半才是世界。

所以真正该问的是另一句——你所在的这个世界里,那个「大家看到的是同一件事」的假设,上一次被验证是什么时候?

🧠 课后小测验

读完文章,测测你记住了多少?
点击选项,看看对不对

Q1.老师用「两侧同时挖隧道」说明的是什么
Q2.为什么被分开的两半各自记账都完全合法
Q3.老师给的「终极解药」是什么
🖊️

关于丢笔哥

丢笔哥不是一个具体的人——它是一种态度。在信息爆炸的时代,用最直白的语言,把硬核知识讲透。覆盖金融证券、AI 前沿、Web3、东方智慧。

一支笔丢在桌上,一堂课就此开始。

📬 订阅丢笔哥 →

📖 继续阅读

🤖 AI 前沿
老师有没有告诉你,AI 不是自己学会的——它是被另一个更聪明的 AI 手把手教出来的
🌌 东方智慧
老师有没有告诉你,把一个孩子护在真空里长大——不是保护,是拆掉了他身上最精密的那套装备
📈 金融证券
老师有没有告诉你,你账户里那串数字从来没动过——动的只是别人的承诺

📬 不想错过下一堂丢笔课?

每周一篇硬核科普,用最好玩的方式讲最硬核的知识。
不卖课、不荐股、不画饼。

💬 讨论区