2024 01 04 HackerNews

Niklaus Wirth has died #

https://twitter.com/Bertrand_Meyer/status/1742613897675178347

这是 Bertrand Meyer 在 Twitter 上发布的一条推文。推文的内容是关于 Niklaus Wirth 的逝世的消息。Bertrand Meyer 称 Niklaus Wirth 是编程语言、编程方法论、软件工程和硬件设计领域的巨人。他在 2024 年 1 月 1 日去世,Bertrand Meyer 对他的离世表示哀悼,并称他是一个先驱、同事、导师和朋友。


HN 评论 200 comments | 作者:aarroyoc | 5 hours ago #

https://news.ycombinator.com/item?id=38858012

Niklaus Wirth 是一位语言设计的贡献者,他的姓氏在美国被称为"Worth",这导致了一个有趣的笑话。

他在 1960 年代的一次会议上,Adriaan van Wijngaarden 介绍了他,并引发了一阵笑声。

他是一个有幽默感的人,他在一篇文章中描述了一个标题被编辑更改的有趣故事。

他是 Pascal 语言和 Turbo Pascal 集成开发环境的创造者,对 IDE 的发展有重要影响。

他的语言设计对早期的 Macintosh 软件开发有重要影响,例如 MacPaint。

他的学生 Robert Griesemer 是 Go 语言的原始设计者之一,他的博士论文是关于 Oberon 语言的扩展。

他的语言设计对 Newsqueak 也有很大的影响。

他的作品强调简洁、正确和易于理解的软件设计原则。

他的贡献包括算法和数据结构,以及步骤逐渐精化的方法。

他的逝世是一个巨大的损失,他是简洁、正确和人类可理解软件的最后的宗徒之一。

这些是从评论中摘录的观点,涵盖了 Niklaus Wirth 的贡献和他对计算机科学领域的影响。


Maestro: A Linux-compatible kernel in Rust #

https://blog.lenot.re/a/introduction

根据我访问的链接,这篇文章是关于一个名为 Maestro 的类 Unix 内核和操作系统的介绍。Maestro 是用 Rust 语言从头开始编写的,旨在成为一个轻量级且与 Linux 兼容的操作系统。文章还提到了 Maestro 的历史、使用 Rust 语言的优势以及目前项目的状态和未来计划。此外,文章还提到了如何安装和测试 Maestro 操作系统以及如何参与项目的方式。

文章链接:Maestro - Introduction

摘要:

这篇文章介绍了 Maestro 操作系统,它是一个类 Unix 内核和操作系统,用 Rust 语言从头开始编写。Maestro 旨在成为一个轻量级且与 Linux 兼容的操作系统。文章还提到了 Maestro 的历史、使用 Rust 语言的优势以及目前项目的状态和未来计划。此外,文章还提到了如何安装和测试 Maestro 操作系统以及如何参与项目的方式。

详细内容分析:

Maestro 的起源和优势

Maestro 最初是一个学校项目,最早的内核提交日期可以追溯到 2018 年 12 月 22 日。最初使用的是 C 语言,但随着代码库变得越来越难以维护,作者决定转向使用 Rust 语言。使用 Rust 语言的优势包括从之前的错误中吸取教训重新开始项目、在内核编程中更具创新性、利用 Rust 语言的类型系统将一些内存安全的责任从程序员转移到编译器上。

Maestro 的当前状态和组件

目前,Maestro 是一个单内核操作系统,目前仅支持 32 位 x86 架构。在撰写本文时,已经实现了大约 31% 的 437 个 Linux 系统调用。整个项目共有 48,800 行代码,分布在 615 个文件中。除了内核之外,Maestro 还包括 Solfège(引导系统和守护进程管理器)、maestro-utils(系统实用程序命令)和 blimp(软件包管理器)等组件。

Maestro 的测试和安装

作者提到 Maestro 操作系统目前仍处于早期开发阶段,不稳定性较高,不建议在重要数据的计算机上安装。目前主要在 QEMU、VMWare 和 VirtualBox 上进行测试。可以通过两种方式安装 Maestro 操作系统:使用预构建的压缩.iso 文件进行安装,或者自行构建.iso 文件。


HN 评论 268 comments | 作者:Uriopass | 14 hours ago #

https://news.ycombinator.com/item?id=38852360

有人建议将许可证与 Linux 保持一致,即使用 GPLv2 许可证,以避免讨论许可证的浪费时间。

有人对项目表示支持,并提到网站可能因为流量过大或遭受 DoS 攻击而变慢。

有人讨论了"Slashdot 效应"对网站的影响。

有人对项目的进展表示赞赏,并提到自己曾经在大学毕业后使用 C 语言尝试过类似的操作系统项目。

有人建议在移动设备上测试网站,并提到导航栏占据了屏幕空间的 33%。

有人提到使用浏览器扩展程序来解决导航栏占据屏幕空间的问题。

有人对项目的进展表示赞赏,并希望能够对其进行安全测试和模糊测试。

有人提到了其他类似的项目,如 Kerla 和 Redox OS。

有人讨论了在 Rust 中开发内核相对于 C 的优势和挑战。

有人讨论了驱动程序的复杂性和稳定接口的重要性。

有人提到了 Linux 内核模块的不稳定性和缺乏稳定接口的问题。

有人讨论了驱动程序的可移植性和兼容性。

有人讨论了 Linux 内核的稳定接口问题以及 Linux 开发者对此的态度。

有人提到了 Linux 内核的稳定接口文档和资源。

有人讨论了 Linux 内核的稳定接口对厂商和用户的影响。

有人讨论了构建一个安全的内核对容器和虚拟机的影响。

请注意,这只是评论的观点摘要,并不代表所有评论的内容。


Possible Meissner effect near room temperature: copper-substituted lead apatite #

https://arxiv.org/abs/2401.00999

文章研究了铜掺杂的铅磷灰石在室温附近的可能迈斯纳效应。

根据文章的摘要,作者在室温以下的条件下观察到了铜掺杂的铅磷灰石在磁场为 25 Oe 时的反磁直流磁化现象,并且在 200 Oe 下发生了顺磁性的变化。在冷却过程中还发现了玻璃状的记忆效应。在 250 K 以下,观察到了超导体的典型磁滞回线,并且在磁场正反扫过程中存在不对称性。作者的实验结果表明,在室温下,这种材料可能存在迈斯纳效应。

这篇文章的详细内容可以在提供的链接中找到。


HN 评论 239 comments | 作者:zaikunzhang | 11 hours ago #

https://news.ycombinator.com/item?id=38853706

根据您提供的链接,这篇帖子是关于铅磷灰石中铜取代导致的可能的迈斯纳效应接近室温的讨论。两个中国团队进行了研究,分别被称为“北方团队”和“南方团队”。这是两个团队的联合论文,他们复制了彼此的结果,并测量到了超导的明确迹象。虽然他们对 250K 的结果非常确定,但对 300K 的结果不确定。这篇帖子还提到了一些背景信息和对这些结果的评论。如果您对此感兴趣,可以阅读帖子中提供的链接以获取更多信息。

这篇帖子的评论主要涉及以下几个方面:

对研究结果的保守态度:有些评论者认为在没有足够证据支持的情况下,保持保守态度是合理的做法。他们提到了之前类似情况下的“可能的迈斯纳效应”,最终被证明是反磁性而不是超导性。因此,他们认为在获得更多证据之前保持保守是明智的做法。

发表科研成果的原因:有人提到,提前发表科研成果有很多好处,比如让其他科学家评估你的信息,尝试复制实验结果或对理论进行批评。这样可以促进科学界的交流和进步。

对之前类似研究的回顾:有人提到了之前的类似研究,如 LK-99,以及对其结果的质疑和失败的复制实验。他们认为对于这些新的研究结果,保持谨慎和审慎的态度是合理的,而不应该被视为“虚伪的谦虚”。

总的来说,这篇帖子讨论了铅磷灰石中铜取代导致的可能的迈斯纳效应接近室温的研究结果。评论者对这些结果持有不同的观点,一些人持保守态度,一些人则更加乐观。如果您对这个话题感兴趣,可以阅读帖子中提供的链接以获取更多信息。

请注意,以上摘要是根据提供的链接进行的简要总结,可能无法涵盖所有评论的细节。阅读原始帖子和相关链接以获取更全面的信息。


With revenue declining, Mozilla CEO gets a 20% raise #

https://www.theregister.com/2024/01/02/mozilla_in_2024_ai_privacy/

根据我访问的链接,这篇文章是关于 Mozilla 在 2024 年关于隐私和加密的报告。文章提到了 Mozilla 的 CEO 呼吁加快步伐,并强调了 AI 在技术领域的应用,特别是在开源开发者和隐私方面。Mozilla 表示他们有 15 名工程师致力于开源大型语言模型的研发,并在医疗领域寻找应用案例。文章还提到了 Mozilla 在 AI 聊天机器人方面的挑战以及对广告和订阅服务的探索。总体而言,Mozilla 希望在 2024 年加快创新步伐,并强调隐私、加密和数据安全的重要性。

这篇文章的详细内容包括以下几个方面:

Mozilla 的 CEO 呼吁加快步伐:Mozilla 的 CEO Mitchell Baker 表示,现在的发展速度和影响力还不够,希望能够加快创新步伐。

AI 在技术领域的应用:Mozilla 在 AI 方面的工作主要集中在开源大型语言模型的研发,并在医疗领域寻找应用案例。

AI 聊天机器人的挑战:Mozilla 在 AI 聊天机器人方面遇到了一些挑战,不得不暂停该服务,因为机器人在回答用户问题时提供了大量无意义的回复。

广告和订阅服务的探索:Mozilla 正在探索如何更好地整合广告和订阅服务,同时保护用户的隐私和选择权。

隐私、加密和数据安全的重要性:Mozilla 强调他们的工作将始终以隐私、加密和保护用户数据安全为基础。

总体而言,这篇文章主要关注 Mozilla 在 2024 年的发展方向,特别是在 AI、隐私和加密方面的工作。他们希望加快创新步伐,并保持对用户隐私和数据安全的关注。

文章来源:The Register


HN 评论 268 comments | 作者:billiam | 22 hours ago #

https://news.ycombinator.com/item?id=38849580

这篇帖子主要讨论了 Mozilla 首席执行官的薪酬增长以及对 Mozilla 管理层的批评观点。以下是评论的主要观点摘要:

Mozilla 的管理结构存在问题,类似于 OpenAI。由于 Mozilla 不是盈利实体,管理层对没有财务利益的股东不负责。由于 Mozilla 不是慈善机构,管理层对捐赠者也不负责。因此,人们质疑 Mozilla 管理层的责任归属。建议改变管理层的问责方式。

有人认为 Mozilla 缺乏创新,只要保持广告商的支持,它就能维持下去。有人认为 Mozilla 是一个行尸走肉,只有当 Google 不再愿意购买搜索位置时,它才会停止前进。

有人认为 Firefox 在隐私方面有所改进,但仍然没有将 uBlock Origin 作为标准功能。他们认为这是一个重大问题,因为其他浏览器(如 Chrome)已经包含了类似的功能。

也有人认为 Firefox 在隐私方面比市场份额更高的竞争对手更好。他们指出,Mozilla 团队在 Firefox 附加组件商店的主页上推荐了 uBlock Origin,并解释了为什么默认情况下不将其包含在内。

有人认为 Mozilla 的 CEO 薪酬过高,尤其是在公司收入下降和裁员的情况下。他们质疑 CEO 薪酬与公司绩效之间的关系。

这些观点涵盖了对 Mozilla 管理层的批评、对 Firefox 隐私功能的讨论以及对 CEO 薪酬的质疑。请注意,这些观点来自于帖子的评论者,可能代表个人观点,并不一定代表广泛共识。


Show HN: FrameOS – operating system for single function smart frames #

https://frameos.net/

根据我访问的链接 FrameOS,这篇文章是关于 FrameOS 操作系统的摘要。FrameOS 是为单一功能智能框架设计的操作系统。它旨在部署在树莓派上,并可与各种电子墨水和传统显示器配合使用。它适用于每秒更新 60 帧的屏幕,也适用于每秒更新 60 帧的屏幕。它适用于智能家居日历、会议室显示器、温控器、工业仪表盘、公共广告屏幕等场景。FrameOS 具有以下特点:

集中化部署:FrameOS 控制器通过 SSH 连接到树莓派,直接进行软件安装。

编译和高效:FrameOS 使用 Nim 语言编写,最终配置被编译为一个包含所有应用程序、资源和驱动程序的单个高效二进制文件。

图表编辑器:提供拖放界面,可以将 Nim 应用程序组合成场景。可以修改现有应用程序,如“OpenAI 图像”和“文本叠加”,以满足需求。还可以使用内联代码片段覆盖所有字段。

GPT4 支持:可以请最喜欢的 LLM 为您编写和调试 FrameOS 应用程序。

硬件指南:针对经过测试的显示器,提供硬件指南、安装说明和可打印的 3D 外壳。

您可以通过安装 FrameOS 控制器开始使用 FrameOS,并按照特定屏幕的设备指南设置树莓派。FrameOS 支持各种常见的电子墨水显示器,如 Pimoroni 电子墨水框架、Waveshare 电子墨水、Framebuffer HDMI 输出和 Web 服务器展示模式。请注意,FrameOS 仍处于早期开发阶段,尚未稳定发布。尽管我们已经尽力确保发布之间不会突然出现故障,但无法保证事情不会突然出现故障。如果您愿意尝试并提供帮助,请随时使用。


HN 评论 81 comments | 作者:mariusandra | 8 hours ago #

https://news.ycombinator.com/item?id=38855337

有人提到他之前为礼物制作了一个 7 色 eInk Arduino 图片框架,但是他遇到的最大问题是需要手动裁剪、抖动和颜色索引图像,如果 FrameOS 可以自动处理这些问题,那将节省大量的时间和编辑测试的工作。

FrameOS 的作者表示,他不希望用户手动裁剪、抖动和颜色索引图像,这些工作应该由 FrameOS 软件完成。目前,FrameOS 已经可以在 Inky Impression 7 色框架上使用,但主要是因为作者使用了它们的软件/驱动程序来处理这些问题。

有人提到他们使用 Pillow 库的抖动算法,但是他们并不完全满意颜色的感知匹配。作者表示他们对此方法感到满意,并且计划在将来尝试使用 C 或 Nim 编写 Inky Impression 板的驱动程序。

有人提到他已经在 Nim 中为 Pimoroni 的 Inky Frames 编写了驱动程序,并计划编写与 Linux 驱动程序接口的 GPIO/SPI/I2C “驱动程序”。

有人提到他使用 Amazon Fire 平板电脑作为 e-ink 显示屏,并询问是否有类似的替代品。其他人提供了一些建议,包括使用 Fire Toolbox 禁用所有多余的软件,并使用 Fully Kiosk 将其转换为实用的设备。

有人提到 FrameOS 的作者集成了 GPT-4 到其应用程序构建器中,用户可以使用 GPT-4 来改进底层代码。这被认为是一种创新的用户体验改进方法。

有人提到他们使用 Amazon Fire 平板电脑作为 Snapcast 音频驱动器,并询问是否有其他用途。其他人提供了一些建议,包括将其用作阅读电子书的设备,或者用于其他应用程序。

有人提到他们使用 Imagemagick 批处理图像,并询问为什么之前的 FrameOS 软件在图像处理方面表现不佳。作者解释说,之前的软件是基于 Python 的解释型应用程序,而现在的 FrameOS 是一个静态编译的单一二进制文件,因此在性能和功能上有了很大的改进。

有人提到他们对 FrameOS 的兴趣,但想知道是否有支持低功耗 e-ink 设备(如 InkPlate 系列)的计划。作者表示目前主要关注在 Raspberry Pi 上的开发,但未来可能会考虑支持 ESP32。


Cross-platform Rust rewrite of the GNU coreutils #

https://github.com/uutils/coreutils

摘要:

uutils/coreutils 是一个使用 Rust 语言重写的 GNU coreutils 的跨平台项目。它旨在成为 GNU 工具的替代品,并在多个平台上提供相同的功能和行为。该项目包含了一系列常用的命令行工具,可以在 Linux、Mac、Windows 等平台上使用。你可以使用 Cargo 或 GNU Make 来构建和安装这些工具。

详细内容:

uutils/coreutils 是一个跨平台的 Rust 项目,旨在重写 GNU coreutils 工具集。它提供了一系列常用的命令行工具,例如 ls、cat、echo 等,可以在多个平台上使用。

该项目的目标是成为 GNU 工具的替代品,并尽可能在多个平台上提供相同的功能和行为。它致力于解决 GNU 工具的一些问题和限制,并提供更好的性能和可靠性。

uutils/coreutils 项目使用 Rust 语言进行开发,这使得它具有高性能、内存安全和并发性等优势。Rust 是一种系统级编程语言,具有强大的类型系统和内存管理机制,可以有效地防止常见的编程错误。

你可以使用 Cargo 或 GNU Make 来构建和安装 uutils/coreutils。使用 Cargo 构建时,可以选择构建所有工具的通用二进制文件,也可以选择构建特定平台的扩展工具。使用 GNU Make 构建时,可以灵活地选择要构建和安装的工具。

该项目提供了用户手册和开发者文档,可以帮助你了解如何使用和贡献到 uutils/coreutils。用户手册提供了详细的命令行工具使用说明,开发者文档则提供了项目的架构和实现细节。

uutils/coreutils 项目遵循 MIT 许可证,你可以在项目的 LICENSE 文件中找到许可证的详细信息。

该项目在 GitHub 上有很高的关注度和活跃度,有大量的贡献者和用户参与其中。你可以在项目的 GitHub 页面上找到更多关于该项目的信息和资源。

请注意,以上摘要是基于我访问的链接提供的信息生成的。如需了解更多详细信息,请访问 uutils/coreutils 的 GitHub 页面。


HN 评论 291 comments | 作者:jcbhmr | 16 hours ago #

https://news.ycombinator.com/item?id=38851740

有人质疑是否有人会真正切换到这个版本,因为 GNU coreutils 是核心工具,每天可能被使用数十亿次。尽管这个项目旨在成为一个可替代的版本,但某些选项和行为仍然不同。有人认为这可能只是一个为 MacOS 和 Windows 提供兼容性的项目。

有人表示 GNU coreutils 的源代码相当复杂,因为它是古老的代码,维护它的社区规模较小。对于自由软件来说,重要的是让新人加入社区并热衷于维护它。如果这个项目能够与 GNU coreutils 达到相同的功能,并且我的发行版提供支持,我会纯粹基于这个原因切换到它。

有人认为 GNU coreutils 的编码风格过于简洁和"聪明",不容易理解。在处理不同组合的标志时,追踪代码变得很困难。对于用户来说,文档是有帮助的,但对于试图理解代码的人来说,文档帮助较少。

有人认为在编写代码时受到限制可以迫使良好的行为。例如,BIOS 是一个混乱的遗留代码,但它是一个小而自包含的遗留代码,适应了几 KB 的空间。相比之下,UEFI 非常复杂且充满错误。像 UEFI 这样的混乱代码无法适应 BIOS 的限制。因此,限制代码冗余(设计冗余、代码冗余、可执行文件冗余、网络冗余等)仍然非常有价值。

有人认为 GNU coreutils 的变量名过于短小,原因是过去长变量名会严重影响编译时间。尽管用户界面程序在速度上没有优势,但计算机在某些方面变得更快了。

有人提到,很多银行、电网、油井和大型船只都在使用旧硬件。如果没有出现问题,就不会进行替换。但保持系统更新始终是有益的。

有人认为使用 Rust 重写 GNU coreutils 可以提供更好的内存安全性,因为 Rust 具有内存安全的特性,尤其是与使用 C 编写的 coreutils 相比。此外,Rust 在处理非迭代目标时表现出色,可以采用最佳实践。此外,Rust 构建可以避免继承的死架构问题。

有人表示使用这个项目可以使 Windows 命令行更易于使用,并且可以从存储库的发布页面下载二进制文件进行安装。

请注意,这些摘要仅代表帖子中的一部分观点,可能不包括所有评论。


Sieve is simpler than LRU #

https://cachemon.github.io/SIEVE-website/blog/2023/12/17/sieve-is-simpler-than-lru/

根据提供的链接,这篇文章是关于一个名为"SIEVE"的缓存淘汰算法的介绍。该算法被称为比 LRU 更简单且更高效的缓存淘汰算法。文章提到了 SIEVE 算法的设计原理、数据结构、操作过程以及性能评估结果。

文章的摘要如下:

“SIEVE 是一种高效且简单的缓存淘汰算法,它使用一个队列和一个指针来维护缓存中的对象。在缓存命中时,SIEVE 将访问位设置为 1;在缓存未命中时,SIEVE 会检查指针所指向的对象,如果该对象的访问位为 1,则将其重置为 0,并将指针移动到下一个位置,直到找到一个访问位为 0 的对象进行淘汰。SIEVE 算法在性能评估中表现出了比其他现有算法更高的效率和更简单的实现。”


HN 评论 139 comments | 作者:SerCe | 21 hours ago #

https://news.ycombinator.com/item?id=38850202

有人对 SIEVE 的性能提出了一些质疑,但也有人对其在特定工作负载下的表现表示肯定。

有人认为 SIEVE 在大型多租户块 I/O 工作负载和 Web 工作负载中表现良好,但在某些块 I/O 工作负载中可能效果不佳。

有人认为 SIEVE 可能不够稳健,因为当 Hand 指针移动到头部时,它会不断驱逐新对象,实际上表现得像 MRU。然而,大规模评估显示,现代工作负载具有某些特性,使得 SIEVE 能够实现低的缺失率。

有人提到了与 SIEVE 类似的算法,如"random two choices",并讨论了它们与 LRU 的区别和性能。

有人指出 SIEVE 在一些算法中的应用,如 LeCaR、TwoQ、ARC 和 S3-FIFO,取得了良好的效果。

有人对 SIEVE 的描述语言和风格表示不满,认为它过于夸张和不成熟。

这些是对该帖子评论的主要观点摘要。请注意,这些观点来自不同的评论者,可能存在不同的观点和意见。


Bitwarden Heist – How to break into password vaults without using passwords #

https://blog.redteam-pentesting.de/2024/bitwarden-heist/

本文介绍了一种绕过密码和生物识别认证,远程窃取 Bitwarden 密码管理器中所有凭据的方法。作者在一次渗透测试中发现了 Bitwarden 的 Windows Hello 实现的漏洞,使他们能够远程窃取凭据而无需知道密码或进行生物识别认证。在测试中,这一发现令人意外,因此作者与客户协商后决定发布这篇博客文章。虽然该问题已在 2023 年 4 月的 Bitwarden v2023.4.0 版本中得到修复,但文章仍具有一定的参考价值。

在测试中,作者成功获得了域控制器的管理员权限,但备份服务器并不在域内。为了获取对备份系统的访问权限,他们查看了 Windows 工作站,并发现密码似乎是使用 Bitwarden 存储的。经过与客户的协商,他们得到了尝试获取其中一个 Bitwarden vault 内容的权限。为了不对客户的业务造成干扰,他们希望找到一种不依赖终端用户交互的非侵入性方法。他们尝试使用简单的凭据填充攻击破解 vault,但未成功,于是决定尝试更有创意的方法。

通过分析 Bitwarden 的主存储文件 data.json,作者发现该 vault 可以使用生物识别(特别是 Windows Hello)来解锁。这意味着用户不需要输入主密码就可以解锁 vault。于是,作者深入研究了这一功能,并了解了 Biometric Unlock 的工作原理。

Biometric Unlock 的实现是基于 Windows Hello 的,当 Windows 上激活生物识别登录时,会使用一个密钥将派生密钥(derived key)本地加密起来,认证通过后可以提取密钥。派生密钥是从主密码派生出来的,而主密码又用于解密 vault 中的凭据。

作者发现 Bitwarden 使用 Windows 凭据 API(Credentials API)来存储派生密钥的加密副本。凭据 API 在内部使用了低级的数据保护 API(DPAPI)。作者选择利用已经渗透的活动目录(Active Directory)来获取加密的派生密钥。

在域加入的工作站上,DPAPI 使用用户密码的密钥来加密数据。然而,如果用户忘记了密码或密码被重置,以前加密的数据无法使用新密码的密钥解密。此时,可以使用存储在活动目录域控制器上的备份密钥来解密数据,并重新用新密码的密钥加密。这意味着拥有域的 DPAPI 备份密钥的人可以解密任何域用户的 DPAPI 加密数据,即使用户的密码已经更改。

作者通过查找 DPAPI 密钥来利用这一机制。他们获取了存储在工作站上的 DPAPI 密钥,然后使用活动目录域控制器上的备份密钥来解密这些密钥。最终,他们成功地解密了 Biometric 登录凭据,并获取了 Bitwarden vault 的访问权限。

总之,本文介绍了如何利用 Bitwarden 的 Windows Hello 实现的漏洞,绕过密码和生物识别认证,远程窃取 Bitwarden 密码管理器中的凭据。这一问题已在 Bitwarden 的新版本中得到修复。


https://news.ycombinator.com/item?id=38853058 #

评论中提到了以下观点:

  1. Microsoft 的 % Appdata% 目录在安全性方面存在问题,应该限制应用程序对其它目录的访问。
  2. AppData 目录应该只用于存储特定用户的应用程序数据,而不是成为绕过 IT 部门的软件安装的地方。
  3. AppData 目录中的文件共享和访问权限不当,导致安全漏洞。
  4. 开发人员应该更好地理解和遵循 Windows 的文件目录结构,将数据放在正确的位置。
  5. Windows 注册表的设计存在问题,配置文件应该使用更安全的方式存储,如.ini 文件。
  6. 限制应用程序对文件目录的访问并不现实,因为会影响有效的程序员和旧版软件的兼容性。
  7. 在不同操作系统中,文件目录结构的混乱导致配置文件难以管理。
  8. 程序员应该承担更多责任,了解和遵守操作系统的规则和最佳实践。
  9. 为了保护敏感数据,应该在存储时对其进行加密。
  10. 在 Windows 上,向后兼容性和传统的开发方式限制了对文件目录结构进行更改的可能性。

总体而言,评论中提到了对 Windows 文件目录结构和安全性的各种观点和意见。