第200章 四百行压成十七行,每一行都不能浪费(1 / 2)
请关闭浏览器的阅读/畅读/小说模式并且关闭广告屏蔽过滤功能,避免出现内容无法显示或者段落错乱。
压缩包图標卡在碎屏裂缝里。
灰毛衣盯著它看了十二秒。不是犹豫。是在等手稳。
保温杯刚放下,右手指尖还有零点几毫米的振幅。枸杞水凉透了,杯壁和指尖差不多温度,分不清是杯子凉还是手凉。
他点了解压。
进度条跑得快。手机內存不够,卡了两次。第二次弹出提示——“存储空间不足,建议清理大文件”。
灰毛衣把相册里327张外卖截图批量清了。
进度条跳到100%。
文件夹展开。三样东西。
第一个:oblivion_source_v1.0.b。
遗忘协议完整母本。二进位。1.7tb。
灰毛衣扫了一眼文件头,前四十八个字节的排列方式就够了——这不是拷贝。没有拷贝权限。是师兄一个字节一个字节看著、记著、再敲出来的。
1.7tb。
手抄。
四十七天。
他没打开。先看第二个。
第二个:log_day1-47.txt。纯文本。42kb。
格式很熟。师兄写日誌的习惯从读研就没变——日期用年月日不用时间戳,正文不分段,標点只有句號和逗號,偶尔一个感嘆號,表示他骂人了。
>day1。进来了。比想像的小。操作台键盘布局奇怪。回车键在左边。適应了十分钟。开始抄源码。
>day2。抄了3gb。速度太慢。发现接口內部数据以光子態存储。没有物理介质。我在用一部火星文对照表翻译外星字典。
>day3。手指麻了。键盘太硬。回车键要用力摁。右手小指起了泡。
day4到day11,技术记录。抄码进度。接口结构分析。穿插著一些短句。
>day7。没吃的。不饿。可能这里不需要吃东西。但想吃酸菜面。想得很具体。连调料包太咸都想起来了。
灰毛衣的拇指停在屏幕上。
三秒。
继续滑。
>day14。发现遗忘协议的底层逻辑不是刪除记忆。是刪除“你相信自己存在”这件事本身。非常优雅的设计。如果不是用来杀人的话。
>day15。开始想办法堵藉口。试了纯代码塞入。4小时后被消化乾净。证实猜想。软体堵不住。必须用硬体。
>day16。没有硬体。
>day17。有一个硬体。
五个字。
灰毛衣没往下滑。盯了很久。
day17。师兄想明白的日子。
>day18到day22。没有日誌。
五天空白。
>day23。想通了。没什么好纠结的。把源码抄完。把该留的留好。剩下的交给时间。
>day24。开始写告別。第一版写了八千字。太长了。刪了。重新写。第二版四千字。还是太长。第三版两千字。第四版六百字。第五版就那行。
“那行”是什么,灰毛衣知道。
“第二条命,换你活著。跑。”
八千字刪到十三个字。
刪了多少遍。
>day26。那个东西又来了。从深处走出来。站在三米外看我。银白色。没有脸。但我觉得它在笑。不確定。可能是我太久没见活物了。
>day27。它还在。我跟它说话。它不回。试著给它看我手机壁纸。壁纸是师弟拍的。实验室门口的柳树。它看了很久。
>day28。它问我你们还会做梦吗。
>day29。它坐在操作台边上不走了。坐了一整天。我抄码。它看著。偶尔歪头。像听不懂。但不打扰。挺乖的。
灰毛衣把手机翻过来。屏幕朝下扣在膝盖上。
四秒。翻回来。继续。
>day33。源码抄到89.4%。手指纹都磨平了。回车键油漆也掉了。银白色那个跟我絮叨了半天。它管说话叫“振动”。说自己以前很会“振动”。现在忘了大部分。只记得一段。
>day34。它说那段振动的內容是“好喝”。我没听懂为什么这两个字值得记。它也说不上来。就是忘不掉。
灰毛衣攥著手机。不紧。手指自然弯曲的力度。指甲没发白。呼吸十四次每分钟。正常值。
>day41。源码抄完了。1.7tb。全文手抄。没有错。检查了三遍。
>day42。开始叠代加密。
他往下滑的手停了。
回放。看了两遍。
“开始叠代加密。”
师兄在世的时候,两人共用一套自创的编码规则。本科时课上无聊编著玩的。火星文变体。加了几层数学变换。安全性约等於拿报纸糊金库大门。
但够用。两个人的秘密够用这种程度的锁。
day42。源码抄完的第二天。距离他用自己堵藉口还剩五天。他开始叠代加密。
>day42。第一次叠代。在原有基础上加入椭圆曲线。密钥长度翻倍。耗时9小时。不是因为难。是手指不太听话了。
>day43。接口开始反噬。头痛。像有人拿勺子舀脑浆。忘了手机锁屏密码。试了四次才想起来。今天的日期记不太清。但师弟的枸杞水配方还记得——十五颗。他数过。强迫症。
>day44。第二次叠代。把椭圆曲线替换成格密码。量子级。密钥生成逻辑比第一版简洁三分之一。因为我算不动了。脑子里能调用的东西越来越少。但越少就越不能浪费。每一行都得乾净。
灰毛衣盯著这六个字。“每一行都得乾净。”
他想起第一次看师兄底层代码时的判断——“笔法模仿他却更老练”。
不是更老练。
是更穷。
一个程式设计师把脑容量从100%烧到30%,剩下那30%写出来的代码,每一个字节都经过了取捨。没有冗余的资格。没有华丽的资格。
智能精准。只能最短路径。
所以看起来“更老练”。
>day45。第三次叠代。最终版。密钥生成逻辑缩到十七行。从第一版的四百行到十七行。脑子里只剩碎片了。忘了我妈长什么样。忘了导师的名字。忘了本科是哪个学校。
>记得的东西:师弟姓什么。枸杞十五颗。酸菜面调料包太咸。
>这三样够用了。密码用的是第三样。
灰毛衣把手机放在地上。
站起来。走到操作台前。弯腰。
回车键在左边。油漆掉了。露出灰色塑料基底。上面有指纹磨过的弧度。
他伸手按了一下。
硬。很硬。
手感和实验室那台二手联想的空格键差不多。师兄总用掌根拍空格,说手指按太累。被导师骂过。没改。
灰毛衣鬆开手指。坐回地上。拿起手机。
第三个文件。
文件夹。名字六个字加一个句號。
给师弟的。別哭。
加密。
密码输入框弹出来。没有提示。没有找回选项。
师兄说了。day45。密码用第三样。
灰毛衣打字:“调料包太咸”。
错误。
“酸菜面调料包太咸”。
错误。
他停了。
不对。这是第三次叠代后的加密。十七行逻辑。密钥种子要经过格密码变换才能输出最终密码。
他需要逆向还原师兄在“脑子只剩30%”时设计的那十七行。
灰毛衣翻回day44和day45的日誌。逐字看。三遍。
师兄脑子只剩碎片时,写密码用的素材只有三样——师弟姓什么,枸杞十五颗,酸菜面调料包太咸。不是密码本身。是密钥种子。
他在碎屏手机上打开空白文档。一行一行写。
前四行:標准格密码初始化。公式就那样。
第五到八行:师兄的简化路径。砍掉异常处理,砍掉溢出检测。一个快死的人不需要检测溢出。溢出了又怎样。
第九到十二行,他停了。哈希链。师兄第二次叠代用的標准sha,第三次脑子只剩碎片,他会换什么
灰毛衣翻回day43——“师弟的枸杞水配方还记得——十五颗。”
十五。自定义哈希,模为15。
第十三到十五行:格向量旋转。角度参数从三样东西里抽——性的unide值、十五、字符串编码长度。
第十六行:输出截断。截取前几位day45最后一句:“这三样够用了。”三。前三位。
第十七行:终结符。
他把十七行逻辑跑了一遍。碎屏手机处理器嗡嗡响。两秒后输出一串乱码——19位混合字符。
粘进密码框。
回车。
文件夹打开了。
---
一个文件。
视频。.avi格式。3.2b。时长4分17秒。