当前位置:网站首页>为抵制 7-Zip,列出 “三宗罪” ?网友:“第3个才是重点吧?”
为抵制 7-Zip,列出 “三宗罪” ?网友:“第3个才是重点吧?”
2022-07-03 16:21:00 【程序猿DD_】
整理 | 郑丽媛、出品 | CSDN(ID:CSDNnews)
谈及电脑必装软件有哪些时,压缩软件绝对算一个。由于各人需求不同,其选择的压缩软件也不尽相同,如 WinRAR、360 压缩、7-Zip、BandiZip、快压等,其中完全免费且开源的 7-Zip 就深受许多用户青睐。
作为一款开源压缩软件,7-Zip 发布于 1999 年,大多数源代码都基于 GNU LGPL 许可协议下发布,使用了 LZMA 与 LZMA2 算法使其拥有极高的压缩比,小巧的体积也是一大优势。
(图片来自7-Zip中文官网)
然而,近日一位名为 Paul 的开发者却发表了一篇呼吁抵制 7-Zip 的文章,其标题给出的理由是:“有限”的开源 & 安全问题。
我们创建了一个高质量的技术交流群,与优秀的人在一起,自己也会优秀起来,赶紧点击加群,享受一起成长的快乐。另外,如果你最近想跳槽的话,年前我花了2周时间收集了一波大厂面经,节后准备跳槽的可以点击这里领取!
Paul 给 7-Zip 定下“三宗罪”
然而,在整体看过这篇文章后便可发现,Paul 给 7-Zip 定下的是“三宗罪”。
第一宗罪:“有限”的开源
正如开头所说,大多 7-Zip 的源码均基于 GNU LGPL 许可协议发布,其开源属性理应毋庸置疑。
而 Paul 认为 7-Zip 开源“有限”的点在于:7-Zip 的代码没有托管在 Github、Gitlab 或其他任何公共代码托管平台上,只能在其官方 Sourceforge 页面的 src.7z 中找到,而且“没有历史、没有提交者、没有名字、没有文档,只是一个存档”。
关于这个唯一托管了 7-Zip 源码的 Sourceforge 平台,Paul 直言其声誉不好:“Sourceforge 曾被指控在 Windows.exe 文件和自解压文件中包含间谍软件和恶意软件。”
而对于“没有历史、没有提交者、没有名字、没有文档”这点,Paul 也揣测道,这可能是因为 7-Zip 的作者不希望开发者通过源码构建应用,有了提交历史将更容易跟踪任何更改和恢复任何错误的部分,同时也更容易运输一些“隐藏的黑暗元素”,如隐藏的遥测或后门。
第二宗罪:存在安全问题
在 Paul 看来,7-Zip 不仅过去存在许多漏洞,此前曝出的提权漏洞 CVE-2022-29072 至今也仍未修复,明显存在安全隐患。Paul 还引用了 2012 年作者回应用户建议的言论:“现在没有时间做这些事情,也许以后我会看看。”
除此之外,Paul 还指出 7-Zip 的安装程序似乎从未设置签名——“签名可验证供应商并防止坏人安装软件”。
第三宗罪:软件作者是俄罗斯开发者
抵制 7-Zip 的第三个理由 Paul 没有在标题中体现:7-Zip 是由俄罗斯开发者 Igor Pavlov 所开发的,“当前局势下为了声援乌克兰,最好不要使用俄罗斯软件”。
在举出以上“三宗罪”后,Paul 最后还推荐了一些 7-Zip 的替代品,如 PeaZip、NanaZip,还有与 7-Zip 相当的 Zstd(Zstandard)等。
网友:“一些阴谋论罢了”
Paul 这番抵制 7-Zip 的言论在 reddit 论坛上引起了不少讨论,但从评论情况来看,Paul 的目的没有达成:大多数人都认为 Paul 的理由站不住脚,并抨击 Paul 的“阴谋论”。
讨论帖中,点赞数最高的是一位名为 qvop 网友的评论:
即便 7-Zip 源码没有在 Github、Gitlab 等平台上托管,那又怎样?它仍然是开源的,没有任何规定要求开源就一定要在某些特定平台上托管代码,我看是 Paul 自己的认知有问题。
实际上,7-Zip 在 Sourceforge 上的源码是有一些(相对较少的)文档的,包括变更日志和关于如何编译程序及其一些内部工作的描述。而且,如果开发者只想单独开发、不想寻求贡献,那么这些不必需的东西开源也没用。
Paul 认为 7-Zip 作者故意不让开发者通过源码构建应用的说法也几乎是“阴谋论”,因为目前没有任何证据支持这一说法,相反 7-Zip 方面有超过 20 年的开发和维护记录。
此外,因为 7-Zip 作者的国籍而放弃使用开源软件更是愚蠢至极,尤其目前没有任何迹象表明其作者有何相关冲突立场。
总而言之,对我来说,这篇文章就是一个大杂烩,其中还掺杂着一些权利和阴谋论。
除此之外,许多网友也对 Paul 发表的这篇博文予以讽刺:“一句话总结就是,发帖者不喜欢 7-Zip的作者名字”、“不为这篇文章辩护,作者就是个白痴”、“我会继续使用它的,谢谢,我没有看到任何停止使用它的理由”。
“开源无国界”一直是开源界所呼吁的口号,然而在当前国际形势下,这句口号似乎已有些站不住脚了:GitHub 封禁俄罗斯开发者账户、起家于俄罗斯的 NGINX 开源项目宣布禁俄……这些事件本就令众多开源爱好者对“开源”的本质提出质疑,Paul 呼吁抵制 7-Zip 的第三个理由更是令许多人无法理解:“难道说以后我们在选择使用开源软件时要考虑作者国籍吗?这真的很奇怪。”
那么,你对于 Paul 的言论有何看法?你平时常用的压缩软件又是什么呢?
参考链接:
https://nixsanctuary.com/boycott-7-zip-limited-open-source-security-issues/
https://www.reddit.com/r/opensource/comments/vkjl80/boycott_7zip_limited_open_source_security_issues
推荐阅读
··································
你好,我是程序猿DD,10年开发老司机、阿里云MVP、腾讯云TVP、出过书创过业、国企4年互联网6年。从普通开发到架构师、再到合伙人。一路过来,给我最深的感受就是一定要不断学习并关注前沿。只要你能坚持下来,多思考、少抱怨、勤动手,就很容易实现弯道超车!所以,不要问我现在干什么是否来得及。如果你看好一个事情,一定是坚持了才能看到希望,而不是看到希望才去坚持。相信我,只要坚持下来,你一定比现在更好!如果你还没什么方向,可以先关注我,这里会经常分享一些前沿资讯,帮你积累弯道超车的资本。
边栏推荐
- 用同花顺炒股开户安全吗?
- Principles of several common IO models
- 手机注册股票开户安全吗 开户需要钱吗
- Client does not support authentication protocol requested by server; consider upgrading MySQL client
- Golang 匿名函数使用
- Deep understanding of grouping sets statements in SQL
- [list to map] collectors Tomap syntax sharing (case practice)
- 8 tips for effective performance evaluation
- ThreeJS 第二篇:顶点概念、几何体结构
- Pyinstaller is not an internal or external command, nor is it a runnable program or batch file
猜你喜欢
Rk3399 platform development series explanation (WiFi) 5.54. What is WiFi wireless LAN
[web security] - [SQL injection] - error detection injection
TCP拥塞控制详解 | 3. 设计空间
Slam learning notes - build a complete gazebo multi machine simulation slam from scratch (II)
Record windows10 installation tensorflow-gpu2.4.0
Slam learning notes - build a complete gazebo multi machine simulation slam from scratch (III)
ASEMI整流桥UMB10F参数,UMB10F规格,UMB10F封装
8个酷炫可视化图表,快速写出老板爱看的可视化分析报告
Getting started with Message Oriented Middleware
2022年Q2加密市场投融资报告:GameFi成为投资关键词
随机推荐
How to initialize views when loading through storyboards- How is view initialized when loaded via a storyboard?
The difference between calling by value and simulating calling by reference
利用MySQL中的乐观锁和悲观锁实现分布式锁
Slam learning notes - build a complete gazebo multi machine simulation slam from scratch (I)
手机注册股票开户安全吗 开户需要钱吗
The mixlab editing team is recruiting teammates~~
About text selection in web pages and counting the length of selected text
Redis high availability and persistence
8 tips for effective performance evaluation
Getting started with Message Oriented Middleware
Embedded development: seven reasons to avoid open source software
Remote file contains actual operation
How to thicken the brush in the graphical interface
Interviewer: how does the JVM allocate and recycle off heap memory
高等数学(第七版)同济大学 习题2-1 个人解答
Slam learning notes - build a complete gazebo multi machine simulation slam from scratch (III)
Why does the std:: string operation perform poorly- Why do std::string operations perform poorly?
Chinese translation of Tagore's floating birds (1~10)
初试scikit-learn库
【LeetCode】94. Middle order traversal of binary tree