zip 文件使用的加密算法是什么?

Sre*_*ram 2 c++ encryption algorithm zip

我只想知道用于生成用于加密 zip 文件的伪随机值的确切公式(或算法)。我正在尝试创建一个密码黑客(用于 zip 文件),我还需要知道如何验证我的程序生成的随机密码是否正确。我曾尝试在 Google 中搜索此问题的答案,但找不到直接的解决方案。

我正在尝试用 C++ 对这个 zip 黑客进行编程。

注意:通过公式(或算法)我的意思是:密钥推导函数。我只想尽快获得必要的信息,这就是我在这里发布的原因!

Pur*_*reW 6

不同版本的 zip 文件的做法不同,但基本上你有一个加密头,指定根据 zip 文件规范使用什么加密。

例如,强加密头如下所示,并在 AlgID 字段中指定加密算法。

4.5.12 -Strong Encryption Header (0x0017):

    Value     Size     Description
    -----     ----     -----------
    0x0017    2 bytes  Tag for this "extra" block type
    TSize     2 bytes  Size of data that follows
    Format    2 bytes  Format definition for this record
    AlgID     2 bytes  Encryption algorithm identifier
    Bitlen    2 bytes  Bit length of encryption key
    Flags     2 bytes  Processing flags
    CertData  TSize-8  Certificate decryption extra field data
                       (refer to the explanation for CertData
                        in the section describing the 
                        Certificate Processing Method under 
                        the Strong Encryption Specification)
Run Code Online (Sandbox Code Playgroud)