【问题标题】:ZIP file specification encryption headerZIP 文件规范加密标头
【发布时间】:2021-01-28 18:02:41
【问题描述】:

我正在阅读 zip 文件 specification,但没有说明存档中文件的加密标头的结构。表头顺序是这样的:

[本地文件头1] [加密头1] [档案资料1] [数据描述符1]

在本地文件头之后,规范说明了以下内容,同时跳过了加密头部分:

紧跟文件的本地头 应该放置文件的压缩或存储数据。 如果文件已加密,则文件的加密标头 应该放在本地头文件之后和文件之前 数据。 [本地文件头][加密头]系列 [文件数据][数据描述符]对每个文件重复 .ZIP 存档。

我正在寻找这个加密头的结构,因为这个规范没有解释它。有谁知道这是怎么回事?

【问题讨论】:

    标签: file zip file-format


    【解决方案1】:

    6.1 传统PKWARE解密

    ...

    6.1.3 每个加密文件在开始时都会额外存储 12 个字节 定义该文件的加密头的数据区域。这 加密头最初设置为随机值,然后 本身使用三个 32 位密钥加密。关键值是 使用提供的加密密码进行初始化。在每个字节之后 被加密,然后使用伪随机数更新密钥 生成技术与相同的 CRC-32 算法相结合 在 PKZIP 中使用并在本文档的其他地方进行了描述。

    ...

    解密标头的规范取决于使用的加密算法。有一个传统的 PKWARE 加密(标准),但它已经过时,因此应该使用自定义加密/解密。

    【讨论】:

      【解决方案2】:

      RAR 5.0 archive formathttps://www.rarlab.com/technote.htm 看起来不错的文档

      您可能会发现它对项目sharpcompress 很有帮助: https://github.com/adamhathcock/sharpcompress/tree/master/src/SharpCompress/Common/Zip

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-12-26
        • 2011-05-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多