Skip to content
Go back

ChatGPT 连输入框都先过 Cloudflare:作者拆开了那段 | Hacker News 摘要 (2026-03-30)

Published:  at  08:24 PM

1. ChatGPT 连输入框都先过 Cloudflare:作者拆开了那段校验程序 (ChatGPT won’t let you type until Cloudflare reads your React state)

这篇文章逆向分析了 ChatGPT 页面里 Cloudflare Turnstile 的执行逻辑,指出它做的事情并不只是传统意义上的浏览器指纹校验。作者从网络流量中解出了数百段加密程序,发现校验项横跨三层:浏览器环境本身的 GPU、屏幕和字体信息,Cloudflare 网络侧看到的城市、IP 和边缘头信息,以及 ChatGPT 前端 React 应用内部的状态,例如路由上下文、loaderData 和 bootstrap 数据。也就是说,Turnstile 不只是要确认“你像一个真实浏览器”,还要确认“你像一个真正完成特定单页应用加载流程的浏览器”。这让简单伪造浏览器指纹但不完整渲染页面的机器人更难通过,也把前端应用状态正式纳入了反滥用体系。

原文链接:https://www.buchodi.com/chatgpt-wont-let-you-type-until-cloudflare-reads-your-react-state-i-decrypted-the-program-that-does-it/

论坛讨论链接:https://news.ycombinator.com/item?id=47566865

评论区里有 OpenAI Integrity 团队成员现身解释,称这些检查主要用于抵御机器人、抓取、欺诈和其他滥用行为,目标之一是把有限 GPU 资源优先留给真实用户,同时尽量把加载和首 token 延迟影响压到很低。社区一方面理解这类防护的现实必要性,另一方面也担心:当反滥用逻辑越来越深入到应用状态和前端运行细节时,普通用户其实很难知道自己为了“能输入一句话”到底交出了多少可观测性。


2. 美国警方用 AI 人脸识别错抓无辜女子,她被关了五个多月 (Police used AI facial recognition to wrongly arrest TN woman for crimes in ND)

CNN 报道称,一名田纳西州女子因为警方使用 AI 人脸识别工具错误锁定嫌疑人,被当作北达科他州一系列银行欺诈案的嫌犯逮捕并长期羁押,而她本人表示甚至从未去过该州。警方后来承认案件中存在“若干错误”,也表示会调整流程,但没有给出直接道歉。报道里最刺眼的地方不是只有算法识别失误,而是人类系统在后续环节几乎没有发挥应有的纠错作用:从生成线索、递交检方,到把跨州逮捕落实下去,一整条链路都让一个荒唐指控变成了现实惩罚。这类案件再次说明,当 AI 被引入执法识别场景时,风险从来不只是模型精度,而是“一个不可靠建议能否被制度无限放大”。

原文链接:https://www.cnn.com/2026/03/29/us/angela-lipps-ai-facial-recognition

论坛讨论链接:https://news.ycombinator.com/item?id=47563384

HN 上很多人把焦点放在更根本的问题上:就算先不谈 AI,难道没人去调查、不核实行程、不问最基本的不在场证据吗?也有人指出,公众不该把教训理解成“以后别去北达科他州”,而应该追问整套系统为什么会允许如此脆弱的证据链造成如此重的后果。社区普遍认为,这类案例暴露的并不是单点算法缺陷,而是人类机构对自动化线索过度信任后的系统性失灵。


3. C++26 定稿:标准委员会结束技术工作,最后争议仍在冒烟 (C++26 is done: ISO C++ standards meeting Trip Report)

Herb Sutter 的会议报告宣布,ISO C++ 委员会已经在 2026 年 3 月的伦敦会议上完成 C++26 的技术工作,剩余流程将进入国际审批和编辑整理阶段。文章回顾了本次会议的规模、子组工作和标准推进状态,标志着新一轮语言标准已经基本板上钉钉。从开发者视角看,这条新闻的重要性不只在“C++26 来了”,还在于它再次体现了现代 C++ 标准化的双重面貌:一边是持续引入新能力、修补旧坑、推动内存安全和库生态改进;另一边则是语言复杂度不断累积,让每次重大版本都带着“是不是又超预算了”的老问题。

原文链接:https://herbsutter.com/2026/03/29/c26-is-done-trip-report-march-2026-iso-c-standards-meeting-london-croydon-uk/

论坛讨论链接:https://news.ycombinator.com/item?id=47565365

评论区最热的争论围绕 contracts 等新特性展开。反对者觉得 C++ 的复杂度早已透支,再加入一套有潜在脚枪的新机制,只会让语言继续膨胀;支持者则认为标准整体收益巨大,不可能因为少数争议功能就否决整个版本。有人引用 Bjarne 的发言,指出一旦功能已经进了草案,后来再想把它拿掉,政治与程序成本都会高得多。讨论氛围很典型:大家都承认 C++ 仍在进化,但对它该进化成什么样,分歧越来越大。


4. 两个标签页吃掉 2.4GB 内存,LinkedIn 成了又一个网页性能反面教材 (LinkedIn uses 2.4 GB RAM across two tabs)

这条 HN 热帖从一个简单但刺眼的现象出发:仅仅打开两个 LinkedIn 标签页,浏览器就能吃掉大约 2.4GB 内存。原始帖子还顺带提到 AWS、Reddit 新版 UI、DeepL 等现代网页在内存、CPU 和渲染流畅度上的类似问题,触发了大量共鸣。虽然它不是一篇传统新闻报道,但价值恰恰在于把行业里长期被容忍的网页臃肿问题重新推到台面上。现代前端框架让“复杂应用先跑起来”变得越来越容易,但对应的性能预算、内存纪律和运行时复杂度控制,往往没有同步提升。结果就是用户在面对一堆看似普通的文本和表单界面时,却像在本地跑一套重量级桌面程序。

原文链接:https://news.ycombinator.com/item?id=47561489

论坛讨论链接:https://news.ycombinator.com/item?id=47561489

评论区迅速把 LinkedIn 现象扩大成更普遍的网页退化讨论。有人举 AWS 控制台、Reddit 新版和 DeepL 为例,说最近这类“看着不复杂,跑起来却像起飞”的页面越来越多;也有人怀疑,新一轮生成式 AI 辅助开发是不是正在让一部分性能糟糕但测试能过、视觉能交差的实现更容易流入生产。大家的共识不在于甩锅某个框架,而是觉得 Web 生态对资源浪费的容忍度已经高得失真。


5. Voyager 1 只靠 69KB 内存和一台 8 轨磁带机,仍在星际空间工作 (Voyager 1 runs on 69 KB of memory and an 8-track tape recorder)

这篇文章重新回望 Voyager 1 的工程奇迹:一艘 1977 年发射、原本只计划运行数年的探测器,如今仍在距离地球逾 150 亿英里的星际空间传回独特数据,而它的机载计算资源不过 69KB 内存和一套 8 轨磁带记录装置。放在今天看,这种配置几乎像玩具,但 Voyager 的成功恰恰说明,可靠系统并不总是建立在海量资源之上,而是建立在明确目标、极端约束下的系统工程、冗余设计和长期运维能力之上。文章把它描述成“最不可能的成功故事”并不夸张,因为在半个世纪时间尺度上仍可工作的硬件,本身就已经超出大多数现代消费电子的想象。

原文链接:https://techfixated.com/a-1977-time-capsule-voyager-1-runs-on-69-kb-of-memory-and-an-8-track-tape-recorder-4/

论坛讨论链接:https://news.ycombinator.com/item?id=47564421

评论区里很多人谈到的不是单纯的怀旧,而是一种带着敬意的尺度感。有人感叹 Voyager 并不靠今天那种惊人的算力取胜,魅力反而在于它的简洁与持久;也有人提醒,它的成功还离不开一个 175 年才出现一次的行星排列窗口和精妙的引力辅助设计。大家普遍把它看成一个工程和科学协同的高峰:技术并不华丽,却在时间与空间上延伸到了极致。


6. Miasma:给 AI 爬虫挖一个永远爬不出去的毒坑 (Miasma: A tool to trap AI web scrapers in an endless poison pit)

Miasma 是一个带点黑色幽默色彩的反爬虫工具。它的思路不是简单封锁,而是把被判定为恶意抓取的流量导向一个“毒数据喷泉”:服务器会持续吐出带有自指链接和误导内容的页面,让 AI 爬虫像掉进没有出口的训练数据沼泽一样越爬越深。项目强调自身很轻量,适合挂在公开网站前方,把一部分原本会消耗站点资源的抓取流量转移到一个专门为其准备的陷阱环境中。它折射出的是一个新的网络防御情绪:很多站长已经不满足于被动拦截,而是开始试图主动污染、拖慢、嘲讽式地反制那些大规模吞噬网页内容的抓取系统。

原文链接:https://github.com/austin-weeks/miasma

论坛讨论链接:https://news.ycombinator.com/item?id=47561819

社区并没有一边倒叫好。质疑者把它比作故意和电话诈骗犯耗上 45 分钟,怀疑这种做法是否真能形成有效威慑;更现实的担忧是,隐藏或误导性链接本身可能触犯搜索引擎政策,最后伤到的反而是站点自己的搜索排名。支持者则认为,在训练数据无差别掠夺的现实下,传统礼貌协议早已失灵,站长想要更激烈的防守并不奇怪。争议核心在于:这到底是有效防御,还是情绪价值更高的报复。


7. 一次手套接触,就可能把微塑料研究结果测高了 (Nitrile and latex gloves may cause overestimation of microplastics)

密歇根大学的研究指出,实验室里常见的丁腈和乳胶手套,可能会让微塑料测量出现系统性高估。原因不是手套本身直接释放出典型塑料碎片,而是在接触仪器和样品处理流程时,会留下名为 stearates 的残留物。这类物质在化学结构和视觉外观上都可能与微塑料相似,从而在检测中被误判。对微塑料研究来说,这个发现很关键,因为该领域的一个长期难题正是极低浓度下的污染控制与误差来源识别。换句话说,研究者原本为了避免赤手接触污染样本而戴手套,结果手套本身却可能成为新的混淆源,迫使实验流程重新设计材料与操作边界。

原文链接:https://news.umich.edu/nitrile-and-latex-gloves-may-cause-overestimation-of-microplastics-u-m-study-reveals/

论坛讨论链接:https://news.ycombinator.com/item?id=47561711

HN 评论里不少做过实验的人都对这个结论既惊讶又觉得熟悉,因为样本污染控制本来就是实验设计里最容易被低估、也最能毁掉结果的环节。有人分享自己在生物实验里会刻意使用陶瓷刀、塑料镊子等方式排除金属污染,说明成熟实验室对“工具本身会不会带来信号”本就高度敏感。大家普遍把这项研究看成一个提醒:微塑料领域很多惊人的数字,背后可能还埋着尚未完全排净的方法学噪声。


8. Pretext:把多行文本排版这件事,从 DOM 里拿出来单独做 (Pretext: TypeScript library for multiline text measurement and layout)

Pretext 是一个纯 JavaScript / TypeScript 库,专门解决多行文本测量和布局问题。它的关键思路是避开浏览器里昂贵的 DOM 测量操作,例如 getBoundingClientRectoffsetHeight,转而先对文本分段、缓存测量结果,再用纯算术方式完成换行和布局。作者声称它既快又准确,还能覆盖复杂的多语言文本场景,并且能渲染到 DOM、Canvas、SVG,后续还计划支持服务端。这个项目之所以引人注目,不只是因为 API 实用,而是因为它把一个浏览器早就“会做”的事情重新实现了一遍,目的却不是重复造轮子,而是为了掌控性能、批量布局和复杂文本场景中的确定性。

原文链接:https://github.com/chenglou/pretext

论坛讨论链接:https://news.ycombinator.com/item?id=47556290

评论区普遍对技术实现难度表示惊叹。有人总结得很到位:问题本质是要在“不真正把文字先渲染上屏”的前提下,预测浏览器将如何断行、如何处理不同字符与语言规则,然后把结果做得足够接近真实布局。大家觉得这件事之所以难,是因为它并不是简单缓存宽度,而是把浏览器文本排版中的大量隐含规则重新搬进了一套可控、可复用的程序模型里。


9. 出租车和救护车司机的阿尔茨海默病死亡率更低?BMJ 论文引发热议 (Alzheimer’s disease mortality among taxi and ambulance drivers (2024))

BMJ 这篇群体横断面研究分析了美国 2020 到 2022 年死亡证明与职业数据的关联,发现出租车司机和救护车司机死于阿尔茨海默病的比例显著低于总体人群,而其他交通相关职业并没有同样明显的现象。论文提出的一种解释是,这类职业持续要求空间导航和路线规划,可能与认知储备或脑功能维持存在某种关联。需要强调的是,研究只是观察到统计相关性,并没有证明职业本身会预防阿尔茨海默病,也无法排除健康选择、职业生涯差异等多种混杂因素。但它仍然把一个很有传播力的问题抛了出来:长期密集使用空间记忆和路线推理,是否会对晚年认知衰退风险产生影响?

原文链接:https://www.bmj.com/content/387/bmj-2024-082194

论坛讨论链接:https://news.ycombinator.com/item?id=47559481

HN 上一位前急救员的留言让这项研究一下子更有画面感。他回忆在 GPS 普及前,急救人员必须在高压时限内翻厚厚的地图册找路线,这几乎就是职业基本功。评论区里多数人接受“可能有关联但远谈不上因果”的谨慎态度,同时也提醒别把结果神化成简单建议。大家感兴趣的是,这类研究让抽象的“认知锻炼”第一次和极具体的职业技能联系了起来。


10. OpenBSD 在 Motorola 88000 上的故事:一段被遗忘的 RISC 旁支史 (OpenBSD on Motorola 88000 Processors)

这篇长文回顾了 Motorola 88000 架构及其 OpenBSD 移植史。它把 88000 放在更大的处理器谱系里来看:在广为人知的 68000 与后来更成功的 PowerPC 之间,Motorola 曾经押注过这一支 RISC 架构,希望借更可扩展的设计追上性能竞赛。但 88000 最终没能兑现预期,逐渐被主流产业路线抛下。文章的趣味在于,它不仅讲“失败的架构”,还讲这些被主流遗忘的硬件如何在开源系统世界里获得第二人生。OpenBSD 在这类冷门平台上的持续移植与维护,某种程度上像在为一整段计算史做档案保存:不仅保存代码能运行,也保存技术选择当年的纹理。

原文链接:http://miod.online.fr/software/openbsd/stories/m88k1.html

论坛讨论链接:https://news.ycombinator.com/item?id=47543186

评论区充满老派硬件迷的考古热情。有人提到 88000 手册是自己理解 RISC 的启蒙,也有人讨论苹果当年为什么最终没选这条路线,认为更多是公司博弈和产业联盟,而不完全是技术优劣问题。大家喜欢这篇文章,部分原因正是它让那些几乎被市场彻底抹去的架构重新浮出水面,提醒人们计算史从来不只有胜利者谱系。


Suggest Changes

Next Post
别对文件系统下狠手,要对 AI 代理下狠手 | Hacker News 摘要 (2026-03-29)