我正在查看加密的 zip 文件(使用 PKzip 格式),但我不明白加密方案是如何以二进制格式编码的。在我的研究中,我发现这篇论文概述了 PKzip 格式文件中使用的各种加密方案。我发现我一直在查看的加密文件与文章中概述的幻数格式 50 4b 03 04 匹配。根据论文,使用的加密方案类型可以从文件中文件名后面的 2 字节确定(“强加密”为 17 00,“WinZip AES 加密”为 01 99。它没有说明这样的签名用于“传统 PKWare 加密”。
我使用Keka创建了一个加密的 zip 文件来检查内容并查看使用了哪种加密。文中提到的两个幻数都没有出现在文件名后面,而是找到了字节 54 73。事实上,在我加密的明文文件中添加了更多字节后,我注意到加密后,这些字节只改变了一个一点点,表明它们实际上并不是所使用的加密方案的指标。我查看了 zipdetails 的输出以尝试查看是否有关于所使用的加密方案的更多详细信息,但输出只是表明文件已加密。是否有任何有用的工具来分析和确定加密 PKzip 文件中使用的加密方案?