每日HackerNews RSS

请启用 JavaScript 和 Cookie 以继续。

2026年9月15日,卡特·莱弗(Carter Leffer)成功验证了对一份1941年7月10日的“不可破解”恩尼格玛电文(MVUEH)的解密。这一突破完全由人工智能模型GPT-6 Astra实现,该模型独立地将该电文识别为有价值的破解目标,推测出其与另一条相关电文(SIPVX)的联系,并自主开发了密码分析软件。 解密显示,MVUEH的密钥极其复杂,采用了独特的转子顺序,并在第72个字符处出现了罕见的左侧转子进位。该人工智能还展示了先进的研究能力,通过识别包括德国联邦档案馆特定卷宗(RS 3–3/20a 和 RS 3–3/63b)在内的冷门档案来辅助分析,而这些记录并未被参考网站索引。 该人工智能表现出的速度与精密程度,仅用两天就完成了人类水平数月的研究与密码分析工作,令研究人员感到惊叹。这一里程碑代表了人工智能在历史密码分析应用上的重大进步,展现了其将档案调查与自动化解密相结合的前所未有的能力。

OpenAI 的 GPT-6 Astra 最近破解了一条自 2005 年发布在“Crypto Cellar”网站上以来一直未被解读的恩尼格玛(Enigma)密码。这条消息来自 1941 年苏联入侵期间的党卫队“骷髅”师(SS-Totenkopf Division),由于使用了非标准密钥,且在第 72 个字符处包含罕见的转子翻转,因此难以破解。 尽管文章称 Astra 在被引导寻找未解密码后“完全独立”地取得了这一突破,但该成就引发了 Hacker News 上的激烈辩论。怀疑论者认为,这一成功与其说是“智能”的体现,不如说是模型利用其在历史密码学方面的海量训练数据,并自动化使用开源恩尼格玛模拟工具的能力。 另一些人则为这一结果辩护,指出该模型成功识别出最有希望攻克的报文,并展现了综合复杂工作流程的高水平能力——实际上起到了一种高速研究协作伙伴的作用。被破解的消息证实了一项关于行军路线的战术请求,结尾署名为一名叫“Waschbusch”的德国军官。这场讨论凸显了在人工智能“智能”定义与高级模式匹配及工具辅助自动化之间持续存在的争议。

2026年9月,我参加了旧金山的Muni遗产周末活动,并花费三小时拍摄了该市历史悠久的有轨电车的高质量线扫摄影作品。该系列收录了多款标志性车辆,包括美国第一辆公有有轨电车Muni 1号车、独特的黑池“船型”电车、墨尔本电车,以及经典的“丁基”(578号)电车。我还记录了几辆来自洛杉矶、伊利诺伊州和芝加哥的城际电车。 尽管遇到了一些技术挑战(例如轻微振动和环境障碍),我最终还是成功获得了一组影像,并以CC-By-SA 4.0许可协议发布在维基共享资源上。除了历史车队外,我还拍摄了现代交通工具,包括一辆捷豹I-Pace Waymo自动驾驶出租车。这次经历是一个将我对复古交通工具的兴趣与专业线扫摄影技术相结合的绝佳机会。

在拥有 30 年 UX 设计经验后,作者通过与游戏理论家拉夫·科斯特(Raph Koster)合作,挑战了自己原有的设想。他不再局限于“游戏化”(点数和徽章)的表面形式,而是试图探索游戏设计中更深层、更本质的内核。 他提出了连接游戏设计与应用 UX 的六个“透镜”: 1. **故事与叙事**:无论设计如何,用户都会自行构建叙事;创作者必须打造连贯的故事线来引导这一过程。 2. **分形设计**:复杂的系统是由嵌套的微小技能集合而成的。与游戏一样,应用应严谨地拆解每一项交互。 3. **学习循环**:乐趣是学习的副产品。应用应通过分层构建来引导用户掌握技能,而非用复杂性让用户感到不知所措。 4. **示能**:游戏利用细腻的多层反馈(如《塞尔达传说:旷野之息》中的体力轮)来直观地引导用户。 5. **暗示性**:利用微妙的环境线索取代碍事的对话框,防止用户陷入“无脑操作”或停滞不前。 6. **节奏**:不要一次性展示所有内容,而应通过精心策划的旅程引导用户,从单一且清晰的操作开始。 通过应用这些透镜,设计师可以跳出僵化的准则,创造出既引人入胜又极其直观的体验。

正在验证您不是机器人...

作者警告,目前有一种令人担忧的趋势,即贬低人类的代码编写与审查工作,转而推崇人工智能生成的“感觉式编程”(vibe-coding)。虽然人工智能在自动化处理琐碎任务方面非常有用,但它缺乏优先考虑长期可维护性的能力——而这种能力只能通过多年的经验与直觉积累。 由于可维护性无法通过即时指标或僵化的规则来衡量,人工智能往往会模仿现有数据集中的不良模式,从而产生脆弱且难以管理的代码。此外,通过将编程工作外包给人工智能,开发人员失去了磨练技能的机会,阻碍了他们向专业精通之路的成长。若缺乏人类的监督,项目不可避免地会演变成“蝴蝶效应”般的混乱局面,导致后期无法进行重构。 作者认为,软件工程是一门人类要素不可或缺的独特学科。最终,他们预测未来对人工智能的过度依赖将导致普遍性的技术债务,而企业最终会将“无人工智能”(No-AI)开发作为一种竞争优势进行推广,因为人们会意识到,真正的软件工艺需要人类的责任感与深度的架构理解。

类型双关(Type punning)——即将同一内存区域解读为不同类型——对于底层编程至关重要,但由于严格别名规则,它常导致难以察觉的隐蔽错误。虽然指针转换(如 `(int*)&float_var`)看似有效,但这属于未定义行为。在高优化等级(-O2 及以上)下,编译器会假定不相关的类型不会发生别名,因此可能会基于“对一个指针的写入不会影响另一个指针的值”这一错误假设,进而优化掉部分代码。 在 C++ 中,这个问题尤为严重,因为编译器在利用别名假设以提升性能方面更加激进。因此,在调试构建中运行正常的代码,在生产环境中可能会失效。 为了确保行为明确并避免与优化相关的错误,开发者应避免使用指针转换来进行类型双关。取而代之的是,应使用以下安全替代方案: * **联合体(Unions):** C 语言明确允许通过不同的成员访问同一内存。 * **`memcpy`:** 类型双关的黄金标准。现代编译器能识别这种模式,并将其优化为单条寄存器移动指令,在确保安全性和高性能的同时,不会引入未定义行为的风险。

更多

联系我们 contact @ memedata.com