← 返回Web3
Web3 探索

你以为区块链上最可靠的是“不可篡改”。其实最可靠的东西藏在一个你从来没听过的地方:一群数学家正在用五十年前发明的方法,证明代码里的bug永远不会出现。

老师有没有告诉你,区块链上最值钱的不是代币——是一行被数学证明过永远不会出错的代码

2026-07-26 · 🕐 约 9 分钟

丢笔哥 发布

🖊️ 老师有没有告诉你…

老师有没有告诉你,区块链上最值钱的不是代币——是一行被数学证明过永远不会出错的代码

区块链想用数学替代信任,但数学本身也需要被信任——你能把信任一层一层往下推,但永远推不到底。

想象一下:你写了一段程序,然后在它上线之前,不是跑一百遍测试——而是用一个数学证明告诉全世界:这段代码在所有可能的情况下都不会出错。

:::story title="那个价值千万的逗号"
2017年,以太坊上一个叫Parity的多签钱包合约因为一个被删掉的库函数,导致价值超过1.5亿美元的以太币被永久锁定。不是被盗了——是所有人包括创建者都无法取出来。原因?合约里一段代码引用了一个共享库,有人不小心把这个库“自杀”了,所有依赖它的钱包全部变成死合约。如果当时有人对这段依赖关系做过形式化验证,系统会在依赖库被删之前就发出警报。但没人做。不是技术上做不到,是大家觉得“测试已经过了,不会有问题”。那1.5亿美元至今还锁在那几个地址里。每次以太坊价格创新高,就有人去查那些地址的余额,然后叹一口气。
:::

数字世界里最贵的东西不是代码——是“证明这段代码不会错”

你有没有想过一个问题:银行转账错了可以打电话撤销,支付宝被盗刷了可以申诉理赔。但如果智能合约里出现一个bug,转走的钱就是真的转走了——没有人能帮你“回滚”。这不是区块链的缺点,是它的底层设定:代码就是法律。那问题来了:你怎么保证这段“法律”没有漏洞?传统软件行业的答案是——测试。写一万个测试用例,覆盖所有你能想到的场景。但你知道这有什么问题吗?你只能测试你知道的东西。真正的灾难永远来自你不知道你不知道的东西。2016年那个叫The DAO的智能合约被黑客转走了360万个以太币,不是因为测试不够,是因为设计者从没想过“有人会利用递归调用的时间差”。测试能抓住你想到的错误。数学证明能抓住你没想到的错误。

数学家发明了一种“代码的安全证书”——比你想象的老一百年

1969年,英国计算机科学家托尼·霍尔提出了一套叫“霍尔逻辑”的方法,用来数学化地证明一段程序在执行前后满足某个性质。你可以把它理解为:不是让程序跑一遍看看对不对,而是用数学推导的方式证明它在所有可能的情况下都是对的。这件事当时听起来像天书。但五十年后,它变成了区块链上最值钱的技术之一——叫“形式化验证”。以太坊基金会每年花几百万美元请专业团队做这件事。为什么?因为以太坊上跑着上千亿美元的资产。一个bug等于一场金融地震。常规测试像在棋盘上走几步看看会不会踩雷。形式化验证像是在棋局开始之前用数学证明:你的每一步都不会走到雷区。同样的原理,NASA在送宇航员上太空之前,也是用形式化验证来证明飞船控制软件不会在半空中死机。

为什么不是所有智能合约都在用这套方法?因为它比你想象的贵一百倍

形式化验证有一个反直觉的特点:证明一段代码正确的时间,通常比写这段代码的时间长三到五倍。一个简单的代币合约,程序员三天能写完。但要完整验证它没有bug,可能需要一个专业团队干两周。这就像你造一栋房子花了三个月,但做安全检测花了一年。大部分项目等不起。更扎心的是:形式化验证本身也需要人来写“证明”。如果写证明的人犯了错呢?你证明了A合约在条件B下不会出bug,但万一条件B本身就不完整呢?这就是“证明的证明”问题——你永远需要信任写证明的那个人。你看,区块链想用数学替代信任,但数学本身也需要被信任。这才是这个领域最迷人又最无奈的地方:你能把信任一层一层往下推,但永远推不到底。

你每天都在做一个类似“形式化验证”的事——只是你没意识到

你出门之前摸口袋检查钥匙、手机、钱包——这就是一种形式化验证。你不是在“测试”,你是在用一个固定的检查清单(钥匙?有。手机?有。钱包?有。)来证明你出门不会出问题。同样的,飞机起飞前飞行员要逐项检查几十个开关——这不是测试,是形式化验证:通过穷举所有可能出错的条件,来数学化地证明这架飞机在所有预设场景下都是安全的。区块链上做形式化验证的人,做的事跟你摸口袋检查钥匙一模一样。区别只是:你的钥匙就三样,一个智能合约的“钥匙”可能有几百个状态变量。你要检查的不是“有没有带手机”,而是“有没有一个状态能让攻击者在不付钱的情况下拿走你的钱”。原理一样,只是规模和代价差了几个数量级。

最终你会发现:区块链努力消灭的东西,恰恰是它最需要的东西

区块链的终极理想是“trustless”——不需要信任任何人的系统。但形式化验证的存在本身就在说一件事:你仍然需要信任写验证工具的人、信任审阅证明的人、信任定义“正确”是什么的人。区块链没有消灭信任。它只是把所有分散的信任集中到了一个更锋利的点上——从“我相信这个银行”变成了“我相信这段代码和验证这段代码的数学家”。这是进步吗?是的。因为你至少可以审计代码,但你审计不了一家银行的内部操作。但这也是一个永恒的提醒:人类文明不可能完全脱离信任运行。你最多只能把信任推到离你最远的地方——推到那行被数学证明过的代码里,推到那个你永远看不到但理论上可以去验证的证明文件里。


小测验

1. 形式化验证和普通软件测试的最大区别是什么?

查看答案 正确答案:B

2. 为什么不是所有智能合约都用形式化验证?

查看答案 正确答案:B

3. 形式化验证的存在说明了什么关于区块链的根本矛盾?

查看答案 正确答案:B
🖊️

关于丢笔哥

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

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

📬 订阅丢笔哥 →

📖 继续阅读

🤖 AI 前沿
老师有没有告诉你,AI的终极秘密不是它多聪明——是它只做了一件事:压缩
你有没有想过,为什么AI能写文章、画图、写代码、翻译——这些看起来完全不同的事,它用「同一个大脑」就干了?答案比你想象的简单一万倍:它不是学会了这些技能,它只是把全世界的信息压缩成了一个文件。
🌌 东方智慧
老师有没有告诉你,宇宙里最稳定的系统,其实一直站在悬崖边上
1987年,三个物理学家在实验室里玩沙子,发现了一个让所有「稳定」这个词的定义都失效的现象。而你身体里、股市里、甚至你的婚姻里——同一件事正在发生。
📈 金融证券
老师有没有告诉你,「房价还能重新上涨吗」这个问题本身就是你亏钱的原因
你问「房价还能涨吗」的时候,其实不是在问市场——你是在问一个已经被你的大脑偷偷改过答案的问题。而这个问题本身,比房价涨跌更值钱。

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

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

💬 讨论区