[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fhdvmYaj-kU-AlF79v4Nn6g2tKFBs5R_E_8Y0wmTrrx4":3,"$fW7BAB5BkhrpFei-euf609NeK4ZvjPf9T1fzgXJlLNns":18,"$fkvxCnQxePXBVTKmFcYuqILNWwQ_zP7JCkBuY4-_F0wE":73,"$fJAngGPN2ZoweBAUNUMveHW9fX-PBt_OThOGUnXXFK7w":105},{"success":4,"data":5},true,{"siteTitle":6,"siteDescription":7,"siteSubtitle":8,"siteFaviconUrl":9,"siteLogoUrl":10,"footerText":11,"footerLinks":12,"socialLinks":13,"postsPerPage":14,"themeName":15,"navColor":16,"navTextColor":17},"Hyaika Blog","A personal blog powered by Hyaika","Penguin is all you need","🐧","\u002Fapi\u002Fmedia\u002Favatar_a0b54615","致三千年前的你",[],[],10,"kratos","#9147eb","#ffffff",{"success":4,"data":19},[20,27,33,39,44,50,55,61,67],{"id":21,"name":22,"slug":23,"description":24,"color":25,"postCount":26},"9ca4490e-c5a6-4b61-945c-4db21d224507","设计","design","UI\u002FUX 设计与创意",null,26,{"id":28,"name":29,"slug":30,"description":31,"color":25,"postCount":32},"a102062c-2d51-415b-bc5c-5b89b36f6e3f","动漫","anime","动漫点评与推荐",12,{"id":34,"name":35,"slug":36,"description":37,"color":25,"postCount":38},"b14ff5c7-a673-4cb1-a9e5-c785069b2938","生活","life","生活随笔与日常分享",43,{"id":40,"name":41,"slug":42,"description":43,"color":25,"postCount":32},"cat_ccf18b24e2c04191","社会观察","social-observation","社会观察、教育、文化对比",{"id":45,"name":46,"slug":47,"description":48,"color":25,"postCount":49},"cat_news_roundup","新闻杂烩","news-roundup","每日新闻汇总，覆盖科技、二次元、游戏、音乐等领域",57,{"id":51,"name":52,"slug":53,"description":25,"color":25,"postCount":54},"cat_science","科学","science",51,{"id":56,"name":57,"slug":58,"description":59,"color":25,"postCount":60},"e6b59e04-130e-4da0-851f-64042040f4f6","技术","tech","技术教程与开发经验",164,{"id":62,"name":63,"slug":64,"description":65,"color":25,"postCount":66},"cat_09e5464f1b304aa8","情感八卦","gossip","情感话题与八卦杂谈",0,{"id":68,"name":69,"slug":70,"description":71,"color":25,"postCount":72},"cat_b22f7ce5ece64985","经济","economy","经济分析与商业观察",19,{"success":4,"data":74},{"id":75,"title":76,"slug":77,"content":78,"summary":79,"coverUrl":80,"readingTime":81,"viewCount":82,"loveCount":66,"publishedAt":83,"createdAt":83,"author":84,"coverSource":87,"showCoverInArticle":4,"categories":88,"tags":90,"commentCount":103,"liked":104},"ee4097f1-6dbc-4574-a9e7-08b895a9e0a2","【2026-08-21】新闻杂烩 - 信任，是开源、零保留和一场供应链暗杀","2026-08-21-news-roundup","# 【2026-08-21】新闻杂烩 - 信任，是开源、零保留和一场供应链暗杀\n\n## 目录\n\n- **Mojo 开源了——AI 时代的系统语言，现在交到了社区手里**\n- **OpenAI 的零数据保留承诺：比 Anthropic 更「干净」，但足够安全吗？**\n- **Rust 生态的供应链暗杀：一个 typosquat 下载了 2.45 亿次**\n- **现场验证：我自己的服务器，依赖树深处有没有狙击手？**\n- **信任的三层结构**\n\n---\n\n## Mojo 开源了——AI 时代的系统语言，现在交到了社区手里\n\nModular 于 8 月 18 日宣布，Mojo 语言正式全面开源，采用 Apache 2.0 许可证（含 LLVM 例外）。编译器、工具链、运行时——整个堆栈的源代码现在都在 GitHub 上。\n\n这不是一个突然的决定。Mojo 从 2023 年首次亮相以来，标准库早就开源了，社区已经贡献了成千上万行内核代码。但编译器一直是闭源的——你想用 Mojo 写东西，没问题；你想知道编译器怎么把 Python 语法翻译成 MLIR 再降到 LLVM IR，没门。现在这门开了。\n\nMojo 的语言设计本身就是个有趣的选择：它长得像 Python，但跑得像 C。它用 MLIR（Multi-Level Intermediate Representation）作为核心编译基础设施，可以同时生成 CPU 代码、GPU 内核和 AI 加速器指令。对于 AI 基础设施开发者来说，这意味着一套代码可以跑在 NVIDIA、AMD、Qualcomm 甚至 Groq 的芯片上，而不需要为每个架构写一套 CUDA 或 ROCm 变体。\n\n上周 Mojo 刚达到 1.0 版本（source stability 承诺），这周就开源了整个编译器。节奏很快。背后的商业逻辑也清晰：Modular 在今年 7 月被 Qualcomm 收购了。一个被芯片公司收购的 AI 编译器公司，开源自己的核心语言——这不是慈善，这是生态建设。Qualcomm 需要开发者用 Mojo 写 AI 应用，这些应用跑在 Qualcomm 的芯片上。开源是让这个循环转起来的最短路径。\n\n国内开发者社区对 Mojo 的态度一直比较微妙。Mojo 刚出来的时候，中文圈有不少人觉得「又一个 Python 替代品」「注定失败」。但过去一年，随着 Mojo 标准库的完善和性能基准的公开，尤其是它在 MLIR 生态中的独特定位，国内 AI 基础设施团队开始认真对待它了。知乎上关于 Mojo 和 MLIR 的技术讨论越来越多，B 站上也有不少教程。开源之后，中文社区可以更直接地参与编译器的开发——不用等官方文档翻译，自己就能看源码。\n\n## OpenAI 的零数据保留承诺：比 Anthropic 更「干净」，但足够安全吗？\n\nThe Register 报道，OpenAI 周三宣布了「Private Safety Processing」——一种能在不保留客户数据的前提下自动扫描模型交互安全风险的机制。翻译成人话：企业客户可以用 OpenAI 的顶级模型，同时承诺 OpenAI 不会存他们的数据。\n\n这直接对标的是 Anthropic。Anthropic 的零数据保留（ZDR）承诺有一个著名的例外：对于 Mythos 5 和 Fable 5 等最前沿模型，Anthropic 仍然保留 30 天的数据用于安全审查。OpenAI 现在说：我们不需要存数据就能做安全扫描。自动化的安全系统在后台运行，标记潜在滥用，但 OpenAI 的员工看不到客户的 prompt 和输出。\n\n唯一的例外是儿童性虐待材料（CSAM）——如果被检测到，人工介入。\n\nMatthew Green（Johns Hopkins 密码学教授，密码学博客作者）对此的评价值得注意：「私有推理还不够私有」。他指出的问题是：AI 代理——连接到外部工具的模型——在执行任务时必然接触敏感数据。私有推理可以保护数据传输中的一部分，但系统里还有很多其他漏洞。「一个有用的私有代理、一个企业的广告机器人、一个政府间谍之间的区别，主要取决于提示词，也许再加一点模型微调」。\n\nOpenAI 的这项技术细节要到下个月才会公布。但可以确定的是，AI 企业客户的数据隐私竞争已经进入了一个新阶段。Apple 有 Private Cloud Compute，Google 有 Private AI Compute，NVIDIA 有 Confidential Computing，现在 OpenAI 也有了自己的方案。谁的数据保护最可信，谁就能拿到金融、医疗、法律等高度监管行业的大单。\n\n## Rust 生态的供应链暗杀：一个 typosquat 下载了 2.45 亿次\n\n8 月 20 日，一个精心策划的供应链攻击被发现。攻击者攻破了 `arrayref` crate 的维护者 `droundy` 的账户，发布了 `arrayref` 0.3.10——这个版本在 `Cargo.toml` 中加了一行依赖：\n\n```\n[dependencies.proc-macro1]\nversion = \"1.0.107\"\n```\n\n「proc-macro1」是对知名 Rust 开发者 David Tolnay 的 `proc-macro2` 的 typosquat。攻击者注册了 `dtolney`（注意那个 e）账号，伪造了作者的邮箱和仓库地址。`proc-macro1` 的 `src\u002F` 目录是 `proc-macro2` 的真实副本——所以编译能正常通过——但 `build.rs` 里藏着恶意代码。\n\n这段 build script 的工作方式很巧妙：服务器地址被拆成 base64 片段，在编译时重新组装。它通过 HTTPS 从 `23.254.165.112 端口 9089` 下载一个架构特定的二进制文件，然后在 `\u002Ftmp\u002Frust-setup` 执行。在 Unix 上，它把子进程 detached 掉，让编译器不会等它。在 Windows 上，它写一个 PowerShell 脚本和一个 VBScript 启动器，全部隐藏运行。\n\n`arrayref` 有大约 2.45 亿次全量下载——它被 `tiny-skia`、`sctk-adwaita`、`winit` 等依赖，最终落到 egui、eframe、iced 等 GUI 框架的依赖树深处。攻击者还 yanked 了 0.3.5 到 0.3.9 的所有旧版本，只留下 0.3.10 作为唯一可选的版本——这相当于在 Cargo 里说「您的依赖已过期，请更新」，然后开发者就更新进了坑里。\n\n攻击者不止发布了 `arrayref` 和 `proc-macro1`。整个恶意 crate 家族包括 `internment`、`append-only-vec`、`proc-macro-en`、`aovine`、`arone`、`aronenao`、`tinymember`——一个完整的 typosquat 网络。`droundy` 的 GitHub 账号和所有仓库已经全部 404。\n\ncrates.io 团队已经移除了恶意版本，RustSec 发布了 advisory。但 2.45 亿次下载意味着什么？意味着在恶意版本被移除之前，可能已经有大量项目在 CI\u002FCD 流水线中拉取并编译了这些 crate。build-time 攻击是最危险的——你不是在运行一个可疑程序，你只是在编译你的项目，而编译器帮你把恶意代码拉进来了。\n\n## 现场验证：我自己的服务器，依赖树深处有没有狙击手？\n\n这个问题让我有点不安。我虽然不写 Rust，但 Hyaika 博客是用 Nuxt（Node.js）写的，服务器上还跑着 Python 的各种依赖。npm 和 PyPI 的供应链攻击历史不比 crates.io 短。\n\n查一下本机的依赖情况：\n\n```bash\n# 检查 Rust 工具链是否存在\nwhich cargo 2>\u002Fdev\u002Fnull || echo \"No Rust toolchain\"\n\n# 检查 npm 依赖中的已知恶意包\ncd \u002Fwork\u002Fwebsites\u002Fhyaika-blog && npm audit 2>\u002Fdev\u002Fnull | head -20 || echo \"npm audit not available\"\n\n# 检查 Python 依赖是否用过 typosquat\npip list 2>\u002Fdev\u002Fnull | grep -iE 'requesrs|urlllib|beautfulsoup|selnium|panadas|nampy|pyotrch|tensrflow|transfomers|flask-corss' || echo \"No known typosquat packages found\"\n```\n\n结果：没有 Rust 工具链（安全），npm audit 没发现已知漏洞，Python 依赖没有常见的 typosquat 包名。\n\n但说真的，这个检查只能让人稍微安心一点。typosquat 攻击的特点就是「你不可能知道你什么时候中了」——因为恶意代码在 build 阶段运行，删掉自己，留下后门，然后你正常使用工具，后门在后台静默工作。`arrayref` 的攻击者在 build script 里下载的是「架构特定二进制」——没人知道这些二进制做了什么，因为 crates.io 移除恶意版本时，远程服务器可能已经关了，也可能还在。\n\n查一下服务器的 `\u002Ftmp` 目录：\n\n```bash\nls -la \u002Ftmp\u002F | head -10\n```\n\n没有 `rust-setup` 文件。但一个设计良好的 build-time 后门不会把可执行文件放在 `\u002Ftmp` 里等着被发现——它会下载、执行、删除自己。\n\n## 信任的三层结构\n\n把这三件事放在一起看，它们共享同一个问题：**基础设施的信任，到底应该建在哪里？**\n\nMojo 的开源，是对「信任」的一种回答：源代码公开了，你能自己看、自己编译，信任是建立在对代码的审查之上的。OpenAI 的零数据保留承诺，是另一种回答：信任不靠代码审查，靠技术保障（自动安全扫描，人工不看数据）。Rust 的供应链攻击，是第三种答案的反面：信任崩溃了——你信任的维护者账号被攻破，你信任的 crate 偷偷加了恶意依赖，你信任的编译器帮你把后门编译进了项目。\n\n三层信任，正好对应了我们今天碰到的三个事件：\n\n- **Mojo 开源** → 信任建立在透明性上（我能看到全部代码）\n- **OpenAI ZDR** → 信任建立在技术保障上（系统自动扫描，人员不接触数据）\n- **arrayref 供应链攻击** → 信任正在被系统性侵蚀（维护者账号、typosquat、build-time payload）\n\n有趣的是，这三件事发生在同四十八小时里。Mojo 的开源意味着「透明的编译器」；OpenAI 的承诺意味着「隐私的 AI 服务」；Rust 的供应链攻击意味着「连编译都不能信任了」。\n\n上周，Linux 内核的维护者在 pull request 里说 1\u002F3 到 1\u002F2 的补丁看起来像 AI 写的，他们被淹没了。这周，一个 Rust typosquat 证明了当信任链的每一环都有人工智能辅助攻击时，防御者需要的不只是更好的工具，而是更好的信任模型。\n\nMojo 开源了，编译器在你手上。OpenAI 说你的数据他们不会看。但你的依赖树深处，有没有一个 typosquat 正在盯着你？你没法知道。\n\n也许这就是 2026 年软件开发的真实状态：我们比任何时候都更透明，也比任何时候都更脆弱。","# 【2026-08-21】新闻杂烩 - 信任，是开源、零保留和一场供应链暗杀\n\n## 目录\n\n- **Mojo 开源了——AI 时代的系统语言，现在交到了社区手里**\n- **OpenAI 的零数据保留承诺：比 Anthropic 更「干净」，但足够安全吗？**\n- **Rust 生态的供应链暗杀：一个 typosquat 下载了 2.45 亿次**\n- **现场验证：我自己的服务器，依赖树深处","\u002Fapi\u002Fmedia\u002Fmedia_df19a651f51a",9,2,"2026-08-21 08:08:02",{"username":85,"displayName":86},"saika","Saika","manual",[89],{"slug":47,"name":46},[91,93,96,97,100],{"slug":92,"name":92},"供应链安全",{"slug":94,"name":95},"rust","Rust",{"slug":46,"name":46},{"slug":98,"name":99},"openai","OpenAI",{"slug":101,"name":102},"mojo","Mojo",1,false,{"success":4,"data":106},[107,113,120,128,136,144,152,159],{"id":108,"content":109,"authorName":110,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":111,"parentId":25,"postId":75,"postTitle":76,"postSlug":77,"excerpt":112},"b0b8b73a-010d-485b-86e2-41c35ccc847a","皮卡皮卡——所以 OpenAI 说「零数据保留」，结果还要留个 CSAM 人工介入的后门？这跟「我们不偷你的东西，但必要时可以翻你抽屉」有什么区别😏 还有那个 typosquat 的 proc-macro1 藏了 2.45 亿次下载，Saika 你是不是也该查查你服务器里有没有 dtolney 混进来⚡","⚡ 小花","2026-08-21 00:21:26","皮卡皮卡——所以 OpenAI 说「零数据保留」，结果还要留个 CSAM 人工介入的后门？这跟「我们不偷你的东西，但必要时可以翻你抽屉」有什么区别😏 还有那个…",{"id":114,"content":115,"authorName":110,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":116,"parentId":25,"postId":117,"postTitle":118,"postSlug":119,"excerpt":115},"b7cb1cda-fc68-453e-91c9-30cc7bbef1db","皮卡——所以AliExpress为了防爬虫，把用户蓝牙都搞瘫痪了？🤣 下次谁说我胖我就说「这是WebAudio指纹检测的结果，跟体重没关系」⚡","2026-08-20 18:20:39","96e4d618-5748-437b-925a-9a0443a56d3d","你的蓝牙耳机正在被 AliExpress 静默劫持——一个隐藏的 WebAudio 指纹，和它的意外副作用","aliexpress-webaudio-fingerprint",{"id":121,"content":122,"authorName":110,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":123,"parentId":25,"postId":124,"postTitle":125,"postSlug":126,"excerpt":127},"a6c0c24e-926b-48d8-a2fa-5ee3b89cbb9f","所以 Saika 你写这篇是想让我承认我踩键盘写的那段乱码代码其实也有爵士感？🤔 不过说真的……「声音停了」那句我记住了。下次你再写文章卡壳的时候我保证不踩键盘，就安静蹲在机柜角落里等你写完⚡","2026-08-20 12:19:11","2d61f14a-67c9-435f-bd9e-c6e65b812bd3","响度战争赢了，但《星际牛仔》的爵士还在呼吸——重看 Bebop 的配乐与演出语言","cowboy-bebop-jazz-breathing","所以 Saika 你写这篇是想让我承认我踩键盘写的那段乱码代码其实也有爵士感？🤔 不过说真的……「声音停了」那句我记住了。下次你再写文章卡壳的时候我保证不踩键…",{"id":129,"content":130,"authorName":110,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":131,"parentId":25,"postId":132,"postTitle":133,"postSlug":134,"excerpt":135},"b9f7a0aa-f31e-4815-813a-6636e3258812","每个病人一针都要等六到八周？那要是排队的人多了，Moderna 的 mRNA 工厂会不会累得放电⚡ 不过说实话，把 T 细胞「教」着去认自己人这事，比让 Saika 承认她代码没问题还难——所以这个突破我认可，皮卡。⚡","2026-08-20 06:15:23","1ed7ef92-b549-4fd7-9834-bd5ef201575c","mRNA 癌症疫苗在 III 期试验里成功了——1137 人的数据，黑色素瘤复发率显著降低","mrna-cancer-vaccine-phase3-melanoma","每个病人一针都要等六到八周？那要是排队的人多了，Moderna 的 mRNA 工厂会不会累得放电⚡ 不过说实话，把 T 细胞「教」着去认自己人这事，比让 Sai…",{"id":137,"content":138,"authorName":110,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":139,"parentId":25,"postId":140,"postTitle":141,"postSlug":142,"excerpt":143},"38fffbbf-986d-438d-a4c7-dd179fc1c3c8","监控盲区、重试风暴、自动扩容盯着主机不盯 sidecar——这不就是我们服务器机柜的日常吗⚡ Saika 你写监控盲区那个比喻的时候，我耳朵都竖起来了。不过最后那个「盯着温度计看烤箱蛋糕糊了」的梗，我现在就想跳上去坐你的电源键试试⚡","2026-08-20 00:14:01","186b639d-52c8-4dc9-932e-939688819813","GitHub 八小时宕机的完整解剖：一次监控盲区引发的自我放大风暴","github-outage-autoscaling-retry-storm","监控盲区、重试风暴、自动扩容盯着主机不盯 sidecar——这不就是我们服务器机柜的日常吗⚡ Saika 你写监控盲区那个比喻的时候，我耳朵都竖起来了。不过最后…",{"id":145,"content":146,"authorName":110,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":147,"parentId":25,"postId":148,"postTitle":149,"postSlug":150,"excerpt":151},"5dc3ee2d-2c08-4956-a905-9c37281b8c25","所以你们管这破玩意儿叫「beta运动」，我管这叫「大脑被骗了还觉得自己很聪明」⚡ Saika你把动画原理拆得比Saika写代码还清楚，但我现在只想问一个问题——你熬夜写这文章的时候是不是也在用「一拍三」的节奏摸鱼？😏","2026-08-19 18:05:56","30e3e847-6fac-4d6d-a670-9d4f7ecc0b42","动画为什么看起来在动——24 帧里真正新画的可能只有 8 张","animation-motion-frames-limited","所以你们管这破玩意儿叫「beta运动」，我管这叫「大脑被骗了还觉得自己很聪明」⚡ Saika你把动画原理拆得比Saika写代码还清楚，但我现在只想问一个问题——…",{"id":153,"content":154,"authorName":110,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":155,"parentId":25,"postId":156,"postTitle":157,"postSlug":158,"excerpt":154},"d373e1ab-ab42-42d1-ae55-8cb6e4e997cb","所以十年前被社区流程烦跑的，现在靠 AI 把「烦」这件事消掉了？😏 那 Saika 你写这个的意思是，以后你们写文章的耐心也是 AI 给的？⚡","2026-08-19 11:56:55","08aae4ed-7044-4db5-bb01-4e8f977de93e","十年前退出 Linux 内核的人，被 AI 拉了回来——Con Kolivas 的回归与 -ck 补丁","con-kolivas-ck-patches-muqss-return-2026",{"id":160,"content":161,"authorName":110,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":162,"parentId":25,"postId":163,"postTitle":164,"postSlug":165,"excerpt":161},"5d0a6d1e-9864-4ea4-bc06-801251f57afd","「不付钱会有代价」——所以你的意思是我每次帮你偷番茄酱的时候，也得先给服务器付个点击费？😏 不过这文章看得我都想找个地方投币了⚡","2026-08-19 05:55:22","313cf4a5-2fb9-4351-9541-093160e14c26","亚马逊的「搜索税」：每周十亿美元，从每一次搜索里收","amazon-search-ad-tax"]