房东把续租合同推到唐屿面前的那一刻,他才第一次明白:毕业不是开始,是清算。
合同打印在一张很薄的 A4纸上,纸边微微卷起,像刚从潮湿的文件袋里抽出来。上面的数字却清楚得刺眼:月租七千二,押二付三,续签当天补齐。
房东站在门口,没有进屋。
他似乎也知道这间十二平米的城中村单间再多站一个成年人就会显得尴尬,于是只把合同往唐屿手里塞。
“你们两个刚毕业吧?我也不催你们。今晚十二点前给答复,明天还有人来看房。”
沈星禾刚从地铁站赶回来,帆布包被雨水打湿了一半。她没有先问多少钱,只看了一眼唐屿的脸。
唐屿把合同折起来,笑了一下:“还行,比上次涨得克制。”
“涨多少?”
“一千四。”
沈星禾把包放到椅子上。椅子的一条腿垫着一本旧书,书名叫《分布式系统原理》,是唐屿大学时买的二手教材。她盯着那本书看了两秒,像在确认什么东西是不是真的还能支撑重量。
“我们卡里还有多少?”她问。
唐屿打开手机银行。
屏幕亮起的一瞬间,他下意识把手机侧了一点。不是想瞒她,只是那个数字太小,小到不像两个成年人四年大学、一整个夏天实习和几十场面试之后该剩下的东西。
余额:6412.37。
还没扣信用卡。
还没交下个月社保。
还没算沈星禾母亲上周发来的检查费。
沈星禾坐到床沿,雨水顺着发尾滴在白色塑料拖鞋上。她没有责怪,也没有安慰,只说:“那就不续。”
“不续住哪?”
“先搬远一点。”
“远一点就是每天通勤三小时。你明天还有二面。”
“那你呢?你的 offer呢?”
唐屿没说话。
那封邮件下午三点二十七分发来,标题很礼貌:感谢你对本岗位的关注。正文更礼貌:综合评估后,我们决定暂不推进后续流程。邮件最后祝他前程似锦。
他把手机翻过去扣在桌上。
窗外是雨夜里的城中村,电线像湿掉的蛛网。远处金融中心的玻璃幕墙亮着,像另一种天气。那里有人在高层会议室里讨论增长、融资和下一轮 AI生产力。这里有人在算七千二的房租。
唐屿的微信在桌上震了一下。
不是 HR。
是大学同学群。
“兄弟们,别找工作了,链上新项目,三天十倍。”
下面跟着一张截图。黑底白字,K线竖得像一根针,项目名叫 NadirKey。群里有人发了火箭表情,有人说已经梭哈两千,有人说内测白名单还有二十个名额。
唐屿本来想划走。
沈星禾却先一步拿过手机。
“又是这种?”
“别看,垃圾信息。”
“你之前不是帮赵衡看过合约吗?”
“那是课设。他拿我的代码去参加比赛,跟这个不是一回事。”
沈星禾把截图放大。她不是那种看见“十倍”就兴奋的人。相反,她的眉头皱得很慢,像在读一份病历。
“这个项目方地址公开吗?”
唐屿怔了一下:“你什么时候会问这个了?”
“上个月你熬夜看链上浏览器,我在旁边背面试题。你说过,真正不会撒谎的不是人,是账本。”
“账本也只记录发生过什么,不记录人为什么这么做。”
“至少比群里的人诚实。”
她把手机递回去。
这句话让唐屿沉默了几秒。
他打开浏览器,输入项目方官网。页面做得很漂亮,霓虹蓝、星轨、火星基地、AI量化、DAO共建、下一代星际资产协议。所有词都像从未来借来的,唯独团队介绍空得像没装过人。
白名单入口需要连接钱包。
唐屿没有点。
他先复制了官网底部的合约地址,粘进链上浏览器。屏幕加载出一串交易记录。沈星禾搬了小凳子坐到他旁边,两个人挤在一张窄桌前,雨声把房间包起来,像临时搭了一间审讯室。
“看这里。”唐屿指着屏幕,“部署合约的地址,二十分钟前刚创建。”
“新项目不是都这样?”
“但它声称已经测试运行三个月。”
他继续往下翻。
部署地址的第一笔资金来自另一个钱包。那个钱包又来自交易所热钱包。再往上追,路径断了。正常。交易所出入金本来就会混在一起。
沈星禾却指了指另一行。
“这个地址为什么一直收到小额转账?”
唐屿凑近看。
那是一个尾号 0000dEaD的地址。
不是真的黑洞销毁地址,却故意起了一个像死亡地址的尾号。过去四小时里,它从几十个新钱包收到过金额极小的转账,每笔 0.0001到 0.003不等。单看没有意义,像测试。但这些转账之间隔着近乎固定的时间,像有人在给一台机器喂节拍。
“刷活跃?”沈星禾问。
“可能。”
“也可能是在确认哪些钱包是真人?”
唐屿侧头看她。
沈星禾的眼睛很亮,不是兴奋,是一种冷静的专注。她平时不太谈技术,更多时候像把唐屿那些熬夜说出来的东西存在脑子里,等到真的需要时再拿出来。
“如果我想骗一批刚毕业、手里只有几千块的人,”她说,“我不会只让他们转钱。我会先让他们连接钱包,领空投,签一个他们看不懂的授权。”
唐屿的手停在鼠标上。
“你刚刚说什么?”
“签授权。”
他点开白名单入口的网页源码,又抓了一次前端请求。页面上写的是“领取测试积分”,弹窗里却不是普通登录签名,而是一段授权合约调用。授权额度被包装成十六进制数字,普通人只会看到一串长得很像错误码的东西。
无限授权。
唐屿感觉后颈慢慢凉下去。
群里已经有人开始晒截图。
“已冲。”
“钱包显示扣了 gas,稳不稳?”
“我靠我积分到账了。”
赵衡单独给他发消息:“T仔,看到没?这波真能翻身。我已经拉了二十个人,你和嫂子要不要进?晚了没名额。”
T仔是唐屿大学时的网名,最早只是因为他姓唐,后来大家懒得改。沈星禾也跟着被叫成 T嫂。这个称呼过去像玩笑,现在在群聊里显得格外轻浮。
唐屿打字:“别签,授权有问题。”
赵衡回得很快:“别酸啊兄弟,我知道你最近工作不顺,但机会来了不能只会挑刺。”
唐屿盯着那行字,指节一点点收紧。
沈星禾按住他的手。
“别跟他吵。证据。”
“什么?”
“你不是说链上不会失忆吗?那就把它记下来。”
唐屿抬头看她。
她把湿发别到耳后,拿过自己的旧电脑,开机,风扇发出一声疲惫的嗡鸣。
“我查项目宣传页,你查授权和资金路径。我们不用证明他们是坏人,我们只证明他们现在让用户签了什么。”
唐屿忽然笑了。
不是轻松的笑。
是某种从胸口被硬拽出来的东西,带着狼狈,也带着一点不合时宜的活气。
“我们连房租都快交不起了,还管别人钱包?”
沈星禾看着他:“正因为我们快交不起房租,才知道那几千块对他们意味着什么。”
这句话把唐屿最后一点犹豫按死了。
接下来两个小时,他们没有吃晚饭。
唐屿把授权合约、部署地址、资金流向和死亡地址的小额转账整理成表。沈星禾截下官网宣传、白名单页面、社群话术和所谓“测试积分”的描述。她的面试题文档还开在后台,光标停在“请描述一次你主动解决问题的经历”下面。
凌晨十一点四十六分,唐屿写完一条长消息,发进同学群。
“这个项目的白名单不是普通登录签名,而是无限授权。合约地址、调用截图和链上记录如下。已经签过的人立刻取消授权,不要再转入任何资产。”
下面跟了六张图和三个链接。
群里静了八秒。
然后炸了。
有人骂项目方,有人问怎么取消授权,有人说自己钱包里只有一百多块无所谓。赵衡没有说话。十几秒后,群管理员撤回了唐屿的消息。
紧接着,唐屿被移出了群聊。
手机屏幕上只剩一行系统提示。
沈星禾看了看时间:“房东还有十四分钟。”
唐屿闭上眼。
他救不了所有人,也交不起这间屋子的续租款。
他甚至不能证明项目方一定会跑路。链上记录只能证明授权存在,证明资金路径异常,证明那个死亡地址正在被喂入微小的转账。它不能证明恶意,不能证明谁在幕后,也不能证明那些已经签名的人是自愿还是被话术推着走。
现实并不会因为他找出证据就给他让路。
十二点整,房东发来消息。
“还续吗?”
唐屿看着那两个字,半天没动。
沈星禾从他手里拿过手机,回了一句:“不续了。我们明天搬。”
发送成功。
像某种很小的判决。
唐屿靠在椅背上,忽然觉得房间里所有东西都轻了一点。不是压力消失,而是他们终于承认这间屋子不再属于他们。
凌晨十二点零七分,赵衡的私聊弹了出来。
“T仔,帮我看看,我钱包里的 USDT没了。”
唐屿猛地坐直。
紧接着,又一条消息跳出。
不是赵衡。
不是同学。
是一条来自链上监控机器人的推送。
地址 0x7c19...dEaD刚刚向唐屿的钱包转入 0.000001 ETH。
备注字段里只有一行字符:
“你看见我了。”

