下一章 上一章 目录 设置
119、第119章:深夜的偷渡网络
斯坦福 ...
-
斯坦福格林图书馆的地下室有一种独特的氛围——不是安静,是那种被无数知识压迫着的沉默。空气里飘浮着旧纸张、灰尘和微弱的电子设备散热的气味。灯光是节能LED的冷白光,照在一排排深棕色的橡木书架上,投下长长的、锐利的阴影。
沈清辞坐在最角落的一台公共电脑前。屏幕上显示着国内一个技术论坛的登录页面。这个论坛他高中时常逛,讨论编程、算法、还有一些……灰色地带的技术话题。
他知道自己在冒险。刘律师明确说过:不要用任何可能被监控的方式联系国内。公共电脑、匿名账号、加密连接——这些都不能保证安全。
但他控制不住。
已经五个月了。从六月底离开京都到现在,五个月。146天。3504小时。这些数字像刻在他脑子里一样,每天自动更新。
他不知道陆星衍怎么样了。不知道他是否考上了华清大学——应该考上了,陆星衍那么聪明。不知道他是否还在生气——应该还在生气,毕竟他不告而别。不知道他是否……已经忘了他。
这种“不知道”比知道最坏的消息还折磨人。因为想象的空间太大了。可以想象陆星衍恨他,也可以想象陆星衍在等他;可以想象陆星衍已经开始了新生活,也可以想象陆星衍还在寻找他。
而真相,被太平洋和一道无形的防火墙隔开了。
沈清辞深吸一口气,手指在键盘上敲击。他注册了一个临时账号,用户名是乱码:“x7f9k2m”。密码也是乱码。邮箱用的是一次性邮箱服务,十分钟后会自动注销。
然后,他在论坛的“寻人启事”板块发了一个帖子:
“寻找华清大学数学系或计算机系新生陆星衍。如有认识者,请私信。有重要信息转达。谢谢。”
很简短。很模糊。但如果有认识陆星衍的人看到,应该能认出来。
他点击“发布”。
页面刷新,显示:“发帖成功。请注意,本论坛禁止发布个人信息,违规内容将被删除。”
成功了。现在,只需要等待。
沈清辞盯着屏幕,心跳很快。他想象着:也许某个华清大学的学生正好在逛这个论坛,也许他认识陆星衍,也许他会告诉陆星衍“有人在找你”,也许……
突然,电脑屏幕黑了。
不是断电——旁边的电脑还亮着。不是死机——因为三秒后,屏幕重新亮起,出现了Windows的启动画面。
强制重启。
沈清辞的后背渗出冷汗。他环顾四周,图书馆里很安静,只有远处几个学生在看书。没有人注意他。
但管理员台那里,一个戴着眼镜的中年白人大叔正看着他,眼神警惕。
沈清辞知道,自己触发了某种监控。可能是论坛的关键词触发了图书馆网络的警报,可能是“华清大学”“陆星衍”这些中文词汇被标记了,可能是……
他站起来,假装镇定地收拾书包。手指在微微发抖。
走到出口时,管理员叫住了他:“Excuse me, young man.”
沈清辞转身:“Yes?”
“Are you a student here?”管理员问。
“Yes. Stanford. Computer science.”
管理员打量了他一下:“That computer you were using... it had a security alert. Did you try to access any... unusual websites?”
“Just a forum,”沈清辞说,尽量保持平静,“For programming discussions. In Chinese.”
“Chinese forums can be tricky,”管理员说,语气很温和,但话里有话,“Some are monitored. For your own safety, maybe stick to English sites.”
为了你的安全,也许只上英文网站。
沈清辞听懂了潜台词:别惹麻烦。别做可能被监控的事。
“I understand,”他说,“Thank you.”
他走出图书馆。夜风很冷,吹在脸上像细小的针。天空是深蓝色的,星星很少,月亮被云层半遮着,像一只半闭的眼睛在监视大地。
第一次尝试,失败。
而且被警告了。
沈清辞走回宿舍,脚步很快,像在逃离什么。
---
凌晨1点20分,宿舍
Raj已经睡了,轻微的鼾声在黑暗中起伏。沈清辞坐在自己的书桌前,台灯调到最暗,笔记本电脑的光映在他脸上。
第一次尝试失败了。但他不能放弃。
他需要一个更隐秘的方法。一个真正匿名、加密、难以追踪的方法。
他在网上搜索“encrypted email service”。结果出来很多:ProtonMail, Tutanota, Hushmail... 都是号称端到端加密、不保留日志、保护隐私的邮件服务。
他注册了一个ProtonMail账号。用户名是随机生成的字符串。不需要手机验证,不需要真实信息。
然后,他写了一封邮件:
“阿衍,是我,清辞。我在美国,安全。不能详细解释,但请你相信:我没有忘记你,没有抛弃你。我在想办法回来。等我。”
写完,他盯着收件箱地址栏。
陆星衍的邮箱是什么?高中时他们用QQ邮箱。陆星衍的是:luxingyan@qq.com。他还记得。但那个邮箱还能用吗?陆星衍还会看吗?
即使会看,即使收到了,这封加密邮件需要陆星衍也有ProtonMail账号才能解密阅读。而陆星衍为什么要用加密邮件服务?他没有这个需求。
所以这很可能又是一封永远不会被看到的信。
但沈清辞还是输入了那个邮箱地址,点击发送。
邮件发送成功。屏幕上显示:“您的邮件已加密发送。只有拥有密码的收件人才能阅读。”
很好。现在,他需要让陆星衍知道密码。
但怎么通知?怎么告诉他“我用ProtonMail给你发了加密邮件,密码是xxxx”?
这是一个悖论:要安全地通信,需要双方都使用安全工具;但要让对方使用安全工具,需要先不安全地通信。
沈清辞靠在椅背上,感到一阵深深的无力。
技术可以解决很多问题,但解决不了“如何在不被监控的情况下建立第一次联系”这个最基本的问题。
就像你想给一个人送一把锁,但首先得把钥匙送给他——而送钥匙的过程本身就不安全。
他关掉邮箱,继续搜索。
这次,他搜索“anonymous SMS service”。匿名短信服务。
结果更复杂:有需要比特币支付的,有需要Tor浏览器访问的,有需要层层代理转发的。这些服务大多在暗网上,操作复杂,风险高,而且……昂贵。
但沈清辞看到了一个可能:有一个服务号称可以通过多个国家的虚拟号码转发短信,完全匿名,按条收费,支持比特币支付。
一条短信,一美元。如果用比特币支付,更难追踪。
一美元。对现在的沈清辞来说,不少钱。但……值得。
他需要比特币。需要下载钱包,需要购买比特币,需要……很多他不熟悉的操作。
但他决定试试。
因为这是最简单直接的方法:发一条短信到陆星衍的手机上。即使陆星衍可能换了号码,即使可能收不到,但至少……他尝试了。
至少,在某个平行宇宙里,那条短信可能被收到。
至少,他可以告诉自己:我尽力了。
---
凌晨3点15分
沈清辞已经折腾了一个多小时。他下载了比特币钱包,注册了一个交易所账号(用假信息),用信用卡买了十美元的比特币——这是他信用卡的剩余额度。
过程很复杂,每一步都有验证,有风险提示,有“您确定要继续吗”的警告。
但他继续。
终于,他有了0.0015比特币,大概十美元。然后他找到了那个匿名短信服务的网站,页面很简陋,全是技术术语,像九十年代的网站。
他按照指示:输入要发送的号码——陆星衍的中国手机号。输入短信内容。选择支付方式:比特币。
短信内容他想了很久。不能太长,不能太具体,但要让陆星衍知道是他。
最终,他输入:
“我在斯坦福,安全。不能联系,但我在想你。清辞。”
十五个字。加上标点,十九个字符。足够简洁,足够……深情。
然后,他支付了0.0001比特币,大概0.67美元。
交易确认。屏幕上显示:“短信已加入发送队列。预计送达时间:1-24小时。注意:我们不保证送达率,不提供送达确认。”
不保证送达。不提供确认。
沈清辞盯着那句话,突然笑了。笑声很轻,但充满苦涩的荒谬感。
他花了几个小时,冒着风险,花了钱,结果只是一场赌博。一场甚至不知道有没有对手的赌博。
但他做了。
他关掉所有网页,清空浏览器历史,清除缓存,重启电脑。
然后,他躺在床上,盯着天花板。
窗外,帕洛阿尔托的夜晚很安静。远处偶尔传来火车经过的声音,低沉的,像大地的叹息。
沈清辞闭上眼睛。他想,如果陆星衍收到了那条短信,会怎么想?
会相信吗?会以为是恶作剧吗?会……立刻回拨那个虚拟号码吗?
但虚拟号码是临时的,可能已经注销了。即使回拨,也打不通。
所以这又是一条单向的信息。像漂流瓶,扔进大海,不知道会不会被捡到,不知道捡到的人会不会看,不知道看了的人会不会相信。
多么绝望的沟通方式。
但这是他唯一能做的。
---
凌晨4点30分
沈清辞还没睡着。他在想,陆星衍现在在做什么?京都时间比这里快十六小时,现在是晚上八点半。陆星衍可能在自习室,可能在宿舍,可能在……想他吗?
他想起高中时,有一次陆星衍发烧,他翘课去照顾他。陆星衍躺在床上,脸红红的,眼睛湿漉漉的,说:“清辞,我难受。”
他说:“活该,谁让你打球出汗不换衣服。”
陆星衍就笑,虽然笑得虚弱:“那你别管我啊。”
但他还是管了。买药,倒水,量体温,一直守到陆星衍睡着。
现在,如果陆星衍生病了,谁照顾他?
如果陆星衍难过了,谁安慰他?
如果陆星衍……想他了,谁知道?
沈清辞感到一阵尖锐的心痛,像有人用冰锥刺进他的胸腔。
他想给陆星衍打电话。想听他的声音,哪怕只是“喂”一声。想告诉他“对不起”,想告诉他“我在等你”,想告诉他……一切。
但他不能。
因为安全。因为保护。因为……爱。
多么讽刺。因为爱,所以要远离。因为在乎,所以要消失。
沈清辞翻了个身,脸埋在枕头里。
枕头很软,但不够。他需要……陆星衍的肩膀。需要靠上去,需要闻到那种阳光和薄荷混合的味道,需要听到心跳声。
但他什么都没有。只有枕头。只有黑暗。只有……等待。
他慢慢睡着了。做了个梦。
梦里,他在一个电话亭里,拨通陆星衍的号码。电话接通了,他听到陆星衍的声音:“喂?”
他说:“阿衍,是我。”
陆星衍沉默了几秒,然后说:“清辞?你在哪里?”
“我在美国,”他说,“我给你发了短信,你收到了吗?”
“收到了,”陆星衍说,“‘我在斯坦福,安全。’我收到了。”
“你相信吗?”他问。
“相信,”陆星衍说,“因为我知道你不会骗我。”
“我在等你,”他说,“等我回来。”
“我等你,”陆星衍说,“永远等。”
然后电话断了。他站在电话亭里,听着忙音,但心里很温暖。
因为陆星衍收到了。因为陆星衍相信。因为陆星衍在等。
这个梦太美好了。美好到他醒来时,发现枕头上湿了一片。
他哭了。在梦里哭了,在现实里也哭了。
因为梦是假的。因为短信可能没收到。因为陆星衍可能不相信。因为……他不知道陆星衍是否在等。
他坐起来,看向窗外。天还没亮,但东方已经开始泛白。新的一天要开始了。
他该去上课了。该继续假装正常的生活了。
他站起来,走到墙边,看着那张地图,看着那条红线。
手指轻轻抚摸京都的位置。
“阿衍,”他轻声说,“如果你收到了那条短信,请相信。如果你没收到……也请相信。”
“我在等你。在斯坦福,在安全的地方,在……努力地活着。”
“等到能回去的那一天。”
“等到能亲口告诉你一切的那一天。”
“等到……我们能重新开始的那一天。”
“我等你。”
“永远等。”
他转身,开始收拾书包。课本,笔记本,笔,水杯。
生活还要继续。等待还要继续。
虽然很难,虽然孤独,虽然……可能永远没有回应。
但爱不需要回应。爱只需要存在。
就像那条短信。即使没被收到,即使没被相信,即使……消失在虚空里。
但它存在过。被写过,被发送过,被……爱过。
---
上午Gates大楼
沈清辞坐在CS106B的课堂上,听教授讲二叉搜索树。阳光透过窗户照进来,很温暖。同学们在认真记笔记,偶尔提问。
一切都很正常。很学术。很……斯坦福。
但沈清辞的心在别处。在想着那条短信。在想它是否送达,在想陆星衍是否看到,在想……那个梦是否预示着什么。
他拿出手机——不是诺基亚功能机,是他偷偷留着备用的旧iPhone,没插卡,但可以连Wi-Fi。他打开浏览器,输入那个匿名短信服务的网站。
没有新消息。没有送达确认。什么都没有。
只有一行字:“短信ID:XK9F7J2H。状态:已发送。送达状态:未知。”
未知。
这就是他的现状:在未知中等待。在不确定中坚持。在黑暗中……相信光明。
他关掉手机,抬头看黑板。
教授正在写一个递归遍历二叉树的算法。代码很优雅,逻辑很清晰。
沈清辞想,如果人生也能像算法一样就好了。有明确的输入,有确定的输出,有清晰的步骤,有……可预测的结果。
但人生不是算法。人生是……未知。是随机。是意外。
就像他没想到会突然来美国,没想到会不能联系陆星衍,没想到会……在斯坦福的阳光下,过着阴影里的生活。
但他接受。因为他别无选择。
他只能继续。继续学习,继续生活,继续……等待。
等到未知变成已知。
等到随机变成必然。
等到意外变成……重逢。
他会等到的。
因为爱,是世界上最强大的算法。
即使输入是分离,输出也一定是……团聚。
至少,他这么相信。