ZIP 备份 (.zip)

PKWARE 标准

ZIP 是一种支持无损数据压缩的归档文件格式,允许将多个文件和目录打包到一个可传输的容器中。

将 ZIP 转换为 TAR

免费的浏览器端 ZIP 转 TAR 转换器。在您的设备上即时转换文件。

在线压缩 ZIP

隐私保护 - 文件不会离开您的设备

检查与元数据

操作系统和文件分析器通过检查开头的二进制字节序列来识别 ZIP 文件:

选择或将文件拖放到此处

隐私保护 - 文件不会离开您的设备

或粘贴 Ctrl+V
零网络传输隐私保证: 上传至外部服务器的数据为 0 字节。所有处理均在您的浏览器沙箱中本地完成。

字节级文件头签名 (魔数)

操作系统和文件分析器通过检查开头的二进制字节序列来识别 ZIP 文件:

十六进制签名 (偏移量 0):

50 4B 03 04

ASCII 表示形式: PK..

标准化: PKWARE APPNOTE / ISO/IEC 21320-1

技术规格

容器架构将多个文件与各自的压缩头组合在一起的归档容器
压缩方式Deflate (Method 8), Store (Method 0), BZIP2, LZMA, Zstandard
字节序所有签名头、CRC32 校验值和大小字段均采用小端字节序 (Little-Endian)
色彩空间不适用(任意文件的二进制容器)
通道与结构分层目录结构、元数据流和文件校验和
最大尺寸标准 ZIP:4 GB / 65,535 个文件;ZIP64:16 EB / 1800京个文件
透明度不适用
流式传输与渐进式加载文件末尾的中央目录支持无需解压即可即时列出文件

技术对比矩阵:ZIP 对比同类产品

技术属性ZIP (当前)7-Zip (7z)TAR.GZRAR
操作系统兼容性系统内置的 ZIP 支持因操作系统及版本而异;许多系统都提供自带工具。需要 7-Zip 或第三方应用程序Linux/macOS 原生支持;Windows 中需要工具需要 WinRAR 或 unrar 库
压缩效率中等(Deflate 算法)非常高(LZMA/LZMA2 算法)中等(在 tar 基础上使用 Deflate)高(RAR 专有压缩)
固实归档否(每个文件独立压缩)是(固实块可提高重复文本的压缩率)是(压缩整个 tarball)是(可选的固实模式)
选择性解压快速即时提取任意单个文件需要解压前面的固实块必须将数据流解压到目标文件如果是非固实则很快

常见损坏模式与十六进制恢复指南

归档实用程序报告"找不到中央目录结束签名"或归档无效。

根本原因: 下载截断,丢失了包含中央目录记录的最后几个字节。

恢复方法: 使用命令"zip -FF damaged.zip --out fixed.zip"从头扫描本地文件头并重建新的中央目录。

安全分析与解析器攻击向量

ZIP 安全的核心是 Zip Slip 路径遍历漏洞和解压炸弹。

已知攻击向量

  • Zip Slip:包含"../../"路径遍历的恶意文件名,可逃逸出目标解压目录。
  • Zip Bomb:展开后可达数 PB 零的微小归档(例如 42.zip 42 KB 展开后达 4.5 PB),通过耗尽磁盘和内存来使服务器崩溃。
  • 传统的 ZipCrypto 加密漏洞允许在几分钟内仅通过密文恢复密钥。

防御性最佳实践: 始终对解压文件路径进行净化,确保它们保留在目标文件夹内。解压不受信任的上传文件时,设置严格的最大字节数和文件数限制。请使用 WinZip AES-256 加密。

历史渊源与里程碑

2015ISO/IEC 21320-1 正式将 ZIP 确立为 EPUB、DOCX 和 JAR 文件的基准容器。
1998微软 Windows 98 Plus! 在系统中内置了对 ZIP 文件夹的本地解压支持。
1989由 Phil Katz 在与 SEA 就 ARC 展开法律诉讼后为 PKZIP 创建。

核心优势与特点

  • 全球所有操作系统原生支持,无需安装第三方软件。
  • 位于归档文件末尾的中央目录允许在不解压的情况下即时列出文件。
  • 可以有选择地提取单个文件,而无需解压整个归档。

技术局限与劣势

  • 无法跨平台可靠地存储 UNIX 文件权限或符号链接。
  • 非固实归档意味着对于大量相似文件,其压缩率低于 7z 或 tar.xz。
  • 标准的传统 ZipCrypto 加密在密码学上已被破解(必须使用 AES-256)。

趣味技术冷知识

  • ZIP 文件头中的"PK"代表 PKZIP 的发明者 Phil Katz。
  • 一些常见格式采用 ZIP 容器,包括 APK、JAR、DOCX 和 EPUB。
  • 由于 ZIP 允许在本地文件头之前或中央目录之后追加数据,因此多格式文件常以 ZIP 为容器,让同一文件可同时作为图像、JAR 或可执行文件运行。

常见技术问题

ZIP 和 7Z 有什么区别?

ZIP 在每个操作系统上都具有通用兼容性,无需安装额外软件。7Z 使用具有固实压缩功能的现代 LZMA/LZMA2 算法,可实现高出 30% - 50% 的压缩率,但在旧系统上需要第三方软件才能打开。

为什么查看 ZIP 文件内容的速度很快?

ZIP 在文件最末尾存储了一个"中央目录"。软件只需读取最后几千字节即可立即显示完整的目录树和文件名,而无需解压任何文件。

加密的 ZIP 文件能轻易被破解吗?

传统的 ZIP 加密(ZipCrypto)使用弱 96 位密钥流密码,可以使用 bkcrack 等明文攻击工具在几分钟内被破解。现代归档必须使用 WinZip AES-256 加密来保证密码学安全性。