压缩原理和压缩工具推荐

前言

在网络上很多的资源都是以压缩包传播的,压缩包怎么使用按理来说应该是个常识,但是生活中还是有很多人并不清楚,也因此闹了许多笑话,被流氓软件坑钱……

后面我也会有一些资源是使用压缩包的,所以把这个放在前面来说。

什么是压缩包

压缩包是一种特殊的文件格式,顾名思义,其主要作用是将一个或多个文件/文件夹进行打包,并应用压缩算法处理,减少其总体占用的存储空间。压缩包格式很多,常见的有ZIP、RAR和7z。

为什么要压缩文件?
  • 节省存储空间: 显著减小文件体积,便于存储和备份。
  • 文件归档: 将众多零散的文件或整个目录结构打包成一个单一文件,方便管理、传输和共享。
  • 文件加密与保护: 大多数压缩软件支持使用密码对压缩包进行加密(如 AES 加密),保护文件内容不被未授权访问。
  • 分卷压缩: 将大型压缩包分割成多个指定大小的较小文件(分卷),便于通过容量受限的媒介(如早期软盘、邮件附件限制)传输。
  • 文件完整性校验: 部分压缩格式(如 RAR, 7z)支持添加恢复记录或使用更健壮的校验和,有助于在数据损坏时尝试修复或检测传输错误。

常见的解压缩软件

软件名称 特点 支持的主要格式 (创建/解压) 链接/备注
Bandizip 界面现代,功能强大且免费(标准版有广告,付费专业版无广告),支持超快解压、密码管理、修复损坏压缩包。 极广: Zip, 7z, RAR, ALZ, EGG, TAR, ISO, GZ, XZ, LZH, ARJ, CAB, VHD… https://www.bandisoft.com/bandizip/
7-Zip 开源免费,无广告,压缩率高(尤其 7z 格式),集成到右键菜单方便。 创建: 7z, XZ, BZIP2, GZIP, TAR, ZIP, WIM 解压: RAR, ARJ, CAB, CHM, ISO, LZH… https://www.7-zip.org/
WinRAR 商业软件(有免费试用版,过期后仍可免费使用解压功能),RAR 格式的官方支持者,功能全面稳定。 创建: RAR, RAR5, ZIP 解压: 几乎所有常见格式 https://www.win-rar.com/
Windows 内置支持 Win10/11 原生支持打开 .zip 文件(如同文件夹),也可通过“发送到 > 压缩文件夹”创建 .zip 仅支持 ZIP 格式 (创建和解压) 无需额外安装,但功能非常基础
PeaZip 开源免费,跨平台(Windows, Linux),支持众多格式,界面可配置性强。 极广: 7z, ZIP, TAR, GZ, BZ2, XZ, RAR, ISO, DEB, RPM… https://peazip.github.io/
NanaZip 基于 7-Zip 的现代开源分支,适配 Windows 11 风格,支持上下文菜单预览等新特性。 同 7-Zip https://github.com/M2Team/NanaZip

[!TIP]

现在主流推荐的一般是经典的WinRAR和开源的7z,两款软件都很优秀。但是我更推荐使用Bandzip,界面更加好看和现代化,功能十分强大,日常使用绰绰有余,值得注意的是,免费版本会弹出广告,但也只在打开软件时,完全可以接受。还有RAR格式具有专利,压缩算法和格式由 Alexander Roshal 开发,其所有权和专利属于 RARLAB(WinRAR 的开发商)

所以WinRAR 是唯一可以官方合法创建 .rar 文件的软件(需购买或遵守其试用条款)。

[!IMPORTANT]

有些时候,会遇到分卷压缩的情况,除了第一个文件,其它的末尾是数字序号结尾,这个需要把这些文件放在同一个文件夹再使用7z或者Bandzip直接对第个文件解压就行。

[!CAUTION]

需要加密的话,压缩包一般常用两种加密方式,传统的ZipCrypto和安全性更高的AES-128/256ZipCrypto的兼容性更高,Windows可以直接解密,而AES-128/256需要安装其他压缩软件才可以。7z只支持AES-128/256

传奇人物Philip Katz趣闻

垄断与共享相斗,商业与自由相争

有一个人,20 来岁就在计算机领域惊艳世人,本应意气风发,却生活得潦倒不堪,似乎除了非凡的计算机才能外,全然一无所有,在他短暂的计算机生涯中,只留下了一样如今几乎存在于所有计算机的发明——zip压缩格式。

1981 年,微软推出 MS-DOS 电脑操作系统,互联网初现雏形,计算机用户的交流大都倚赖 BBS 作为交流平台,通过 BBS 在站点间传递文本信息,或者上传软件到站点供其他用户下载,但传输速率极低,接入标准不达 15kbit/s ,比现今的校园网还校园网。

同时,当时的个人电脑储存空间也极低,左右不过百来兆,因此,在那个年代,人们对一个高质量压缩软件的渴求异常热烈。

1985 年一家名为 SEA 的公司开发了 MS-DOS 环境下第一个应用 LZW 算法的 ARC 压缩软件,一时风头无两。LZ77 并无专利限制,效果更佳的 LZ78 和 LZW 则有所限制,使用了专利算法的 ARC 自然是一款付费软件。

也许是早早地觉醒了「互联网精神」之魂,不满 ARC 近乎垄断的状况,Katz 将 ARC 汇编重写为 PKARC 软件,完全兼容 ARC, 并且压缩速度更快,效果更好。

Katz 将 PKARC 以非强迫性注册的共享软件进行发放,并在一段时间后大大挤压了 ARC 的份额。SEA 公司原本希望 Katz 能将软件授权给他们,可惜洽谈无果,1988 年 SEA 将 Katz 告上法院,败诉的 Katz 依旧因不愿让 PKARC 成为商业软件而拒绝与 SEA 合作。

可以说是因祸得福,又或者是命中该历此劫一般,少年意气被彻底激发,Katz 立志要写出一种全新算法,大有不报此仇誓不为人的决绝与孤勇。在放弃专利算法 LZW 和 LZ78 的情况下,Katz 日以夜继地刻苦攻克难关,推出了后来被定义为DEFLATE的全新算法,以及建立于此算法基础上的 zip 压缩格式

1989年,Katz 以其创立公司 PKWare 的名义推出 PKZIP,在压缩比、压缩率全面碾压 ARC 的情况下,少年心性进一步体现在 PKZIP 不兼容 ARC 并且将其作为自由软件发放,并在之后将 zip 算法公开,这个决定终结了数据无损压缩的垄断,真正造福了万千计算机用户。

不出意外,前无古人的 zip 格式迅速成为了计算机的压缩标准,影响至今,PKWare 声名大噪,而 ARC 则在不久后泯然,销声匿迹。

敏感而压抑的人生

看过他与 ARC 的斗争,也许会以为 Katz 是一位恣意潇洒、爱憎分明的年轻人,实则不然,至少不全然。

他极度敏感,情感也十分压抑,害怕与人接触,处理不好与亲人的关系,与公司同事也甚为陌生。母亲 5 年不与他联系,同事只能偶尔在公司展览会见到他,他几乎将自己完全封闭,与世隔绝。

常年流连于脱衣舞吧,时常在深夜抱着熟识的脱衣舞女痛哭,却无法言语表达。

嗜酒,从 1991 年开始因为醉驾多次被捕,曾企图逃避法庭的传唤,一个人秘密居住。

「我从未见过那房间开灯,感觉很吓人」,居住在当时 Katz 住所街道对面的邻居说道。

1997 年, Katz 的住所因为恶臭引起邻居投诉,警察及官员持令破门而入才终于使这间公寓重见光明。

前去搜捕的官员被所见的一片狼藉震惊,「膝盖那么深的垃圾,酒瓶子,罐头瓶子,腐烂的快餐四处都是,这人究竟怎么了,堕落成这个样子。」

然而这次行动,却宛如掘墓一般,将 Katz 的暗无天日赤裸裸地掏开,在似乎正义又温暖的阳光下无情地灼烧,让他已经异常脆弱的精神再次沸腾。

「他们劫掠了他的房间,而且将发现的一切告诉了他们公司所有的人。他的母亲知道了,每个人都知道了。」

2000 年 4 月 14 日,Katz 被发现死于公寓,死时手里仍拿着酒瓶。

留传在网上的只言片语,还原不出 Katz 当时的精神状态,我们却不得不去想,他究竟经受过哪些痛苦过往,肩负着怎样的沉重压力,才活得如此身心俱疲。

以至于后世看来,Philip Katz死于堕落(毒品、酒和性)。一句话寥寥带过,读起来如此不堪。

Katz 自小安静,长相普通,性格不讨喜,所以不合群,常是同学们指指点点的对象。然而我想,即便身处孤独,他也一直是个善良的人,不然不会有人在悼念他的邮件中说道,感谢他屡次相救;更不会有舞女愿对《圣经》起誓,说道 Katz 是她见过最无害、最无私的人。

然而 Katz 的醉驾拒捕、生活潦倒等行径都堪称经典反面教材,是非功过,难以评判。从为数不多的篇章中拼拼凑凑,唯一能在 Katz 身上确定的,就是那说出来玄而又玄的「互联网精神」。

开放、平等、自由,像是一个乌托邦,虚摆在俗世中央,所有人都可以触碰,却不是每个人都能成为有缘人,千万人中只一二,譬如无偿开放万维网的 Tim Berners-Lee,为公共知识共享而斗争至死的 Aaron Swartz ,以及不愿 PKZIP 沦为商业软件的 Philp Katz 等。

zip 作为压缩格式,仍留存于世界各个角落,在如今诸多压缩格式中依然首屈一指,然而它身上所描摹的历史,人与事、血与泪,随着逝者已矣、成王败寇,已然鲜有人知。

[!IMPORTANT]

本文部分内容引用自 “创次方”(微信 ID:chuangcifang1)原创内容,原文版权归创次方所有。