乐于分享
好东西不私藏

都在吹 AI 一天做个区块链 App 就能躺赚,我做了 6 个,结果管钱的那几个全成了黑客的提款机

都在吹 AI 一天做个区块链 App 就能躺赚,我做了 6 个,结果管钱的那几个全成了黑客的提款机

6 个上链开发任务 · 433 项规则逐个体检 · 纯 Python 标准库可复现 · 开源 wei011/onchain-ai-reality-check

前几天刷到一篇文章,说得我心里直痒痒。

一个开发者,用 AI 编程工具,一天之内做出了 100% 全链上的小游戏、音乐 App、视频托管应用,还顺手搭了个作品集网站。流程被总结成一句话:对话式编程——你说一句,AI 生成代码方向,自动搭组件、搭页面、搭逻辑,一键发布。

文章结尾问了一句:「当技术狂奔时,你准备好跟上节奏了吗?」

这句话很煽,但我盯着它看了半天,心里冒出来的是另一个问题:

「做出来」,就等于「敢上链」吗?

先说一句大白话:所谓「区块链 App」,核心就是一段叫智能合约的代码——它替你保管用户的钱、按规则发钱。App 的界面再花哨,真正管钱的就是这段合约。

而这两件事——「做出来」和「敢上链」——听起来像一件事,其实差着十万八千里。尤其是在区块链上:你的代码不是跑在某台可以随时重启、随时打补丁的服务器上,而是公开、不可篡改、还直接管着钱。一个普通 App 写错了,最多用户骂两句、你连夜改 bug;一段管钱的合约写错了,可能是几百万美金在一个区块的时间里被人搬空,而且改不了、追不回。这就是为什么我说它「成了黑客的提款机」——不是夸张,是字面意思。

所以「AI 让上链开发变简单」这句话,到底是真便宜,还是只把最不值钱的那段路修平了?

我决定别吵架,直接写个程序去验。

我干了一件事:把这句话变成一道可以打分的题

吵「AI 行不行」没意义,因为双方说的根本不是同一件事。鼓吹的人说的是「能不能做出一个能跑的东西」,泼冷水的人说的是「这东西敢不敢真上线」。

那就把它拆开,分别打分。

我挑了 6 个有代表性的上链开发任务,从最简单的发币(ERC20)、铸 NFT,到投票、资金托管,再到那篇文章里点名的「全链上小游戏」(抛硬币赌正反),最后是难一点的代币锁仓释放。每个任务我都准备了两份合约:

· 一份叫 naive——模拟「AI 一句话生成的第一版」那种风格:功能都对,demo 里跑得很欢;

· 一份叫 hardened——模拟「老老实实打磨到敢上主网」的版本。

然后写了个评分器,从 5 个维度给每份合约打分:结构(能不能编译)、功能(该有的函数事件全不全)、安全(重入、权限、随机数、整数溢出这些链上致命项)、可部署可维护

我把前两项合成一个 「起步分」——衡量「你做出来一个能跑的东西没有」;把后三项合成一个 「敢上线分」——衡量「这玩意儿你敢不敢把钱放上去」。

整套东西纯 Python 标准库,零依赖。一次跑完,评分器对这 12 份合约执行了 433 次规则判定——谁都能跑、能复现、能逐条看到每一分是怎么扣的。

跑出来的数字,比我想的还干脆

6 个任务跑完,AI 第一版的成绩是这样的:

指标
AI 第一版
打磨到能上线的版本
起步分(做没做出来)
88.7
100
敢上线分(敢不敢上链)
29.4
89.1

你品一下这两个数。AI 第一版「做出一个能跑的东西」——接近满分;但「敢把真金白银放上去」——不及格里的不及格。中间这将近 60 分的鸿沟,就是「做出来」和「敢上链」之间,那段没人替你修的路。

如果再把各维度单独拎出来,更刺眼:

维度
AI 第一版均分
功能完整
94
结构 / 编译
80
可部署
69
可维护
57
安全7

功能 94 分,安全 7 分。而在链上,安全这一栏的分数,约等于「你的钱还在不在」。

它不是不会写,是你没让它写

最有意思的是去翻 AI 第一版到底栽在哪——因为这些坑,没一个是「AI 写不出来」,全是「你没说,它就默认不写」。

那个抛硬币小游戏,就是文章里吹的「全链上小游戏」。AI 给的版本,用 block.timestamp % 2——拿区块时间戳的奇偶——来决定正反面。demo 里你自己玩,爽得很。可一旦上链,区块时间戳是公开可预测的,抢跑机器人能算准这一把是正是反,专挑赢的下注,几个区块就把你的奖池抽干。这一项安全分直接 0。

那个资金托管合约,退款函数是「先把钱打出去,再改账本状态」。这是区块链历史上最经典的重入漏洞——攻击者能在你还没记账的瞬间,递归地把钱一遍遍提走。2016 年那场让以太坊分叉的 The DAO 事件,就是栽在这。

那个代币锁仓合约,算「能领多少」的公式写得很漂亮,但忘了记「已经领过多少」——于是同一份额你反复点「领取」,可以超额领走。

连最简单的发币,转账都不检查余额够不够、不挡零地址,还用了老版本编译器(没有自动溢出保护)。

看出规律了吗?AI 把「Happy Path」——一切顺利时的主流程——写得又快又对。但它默认不写的,全是「当有人想黑你时会发生什么」。因为你只对它说了「做一个抛硬币游戏」,没说「做一个抢跑机器人也偷不到钱的抛硬币游戏」。而在链上,后面那半句,才是全部的难度所在。

所以,这事到底靠不靠谱?

我的结论不站任何一边,因为数据已经说得很清楚了:

AI 真的把「上链开发的起步」打到了地板价。过去你要装一堆工具、配一堆环境、读一周文档才能跑出第一个合约,现在一句话就有了。这个革命是真的,对想入门的人是天大的好事。

但 AI 几乎没有降低「敢上链」的门槛。决定一个链上应用能不能碰真钱的,是安全和工程严谨度——而这恰恰是它最爱跳过的部分。那 88.7 到 29.4 的落差,不会因为模型再聪明一点就自动填上,因为它缺的不是「能力」,是「你有没有意识到要让它做」。

AI 让你能在一天内「做出来」,但没法让你在一天内「敢上链」。那篇文章描绘的「一天全链上 App」,更可能是个惊艳的 demo,而不是一个能放心装着别人的钱跑的产品。两者之间,隔着的不是几个小时,是安全意识、是测试、是审计——是 AI 替你跳过、但市场不会替你跳过的那 60 分。

回到那篇文章结尾那句话——「当技术狂奔时,你准备好跟上节奏了吗?」我的版本是:技术让「做出来」狂奔,但「靠不靠谱」还得靠人慢慢走。别被一天做四个 App 的爽文晃了眼,真正值钱的,从来是后面那段没人替你修的路。

代码、6 个任务的对照合约、评分器、完整报告都开源了,纯 Python 标准库,python3 verify.py 一行复现全部数字,你也能换成自己的合约打分:

GitHub:github.com/wei011/onchain-ai-reality-check

(顺便说一句:这篇文章里的所有数字,也是 AI 帮我跑出来的。AI 很能干——前提是你得知道该让它验什么。)