Encryption 如何确定zip文件的加密方案

Encryption 如何确定zip文件的加密方案,encryption,cryptography,zip,compression,pkzip,Encryption,Cryptography,Zip,Compression,Pkzip,我正在查看加密的zip文件(使用PKzip格式),但我不明白加密方案是如何以二进制格式编码的。在我的研究中,我发现了PKzip格式文件中使用的各种加密方案。我发现我一直在寻找的加密文件与文章中概述的幻数格式50 4b 03 04相匹配。根据该文件,使用的加密方案类型可以从文件中文件名后的2个字节中确定(17 00表示“强加密”,01 99表示“WinZip AES加密”)。该文件未说明“传统PKWare加密”的签名 我创建了一个加密的zip文件,用以检查内容并查看使用了何种加密。文章中提到的魔法

我正在查看加密的zip文件(使用PKzip格式),但我不明白加密方案是如何以二进制格式编码的。在我的研究中,我发现了PKzip格式文件中使用的各种加密方案。我发现我一直在寻找的加密文件与文章中概述的幻数格式50 4b 03 04相匹配。根据该文件,使用的加密方案类型可以从文件中文件名后的2个字节中确定(17 00表示“强加密”,01 99表示“WinZip AES加密”)。该文件未说明“传统PKWare加密”的签名


我创建了一个加密的zip文件,用以检查内容并查看使用了何种加密。文章中提到的魔法数字都没有出现在文件名后面,而是我找到了字节54 73。事实上,在我加密的明文文件中添加了一些字节后,我注意到加密后,这些字节我只是有点生气,暗示它们实际上不是所用加密方案的指示器。我查看了zipdetails的输出,试图看看是否有更多关于所用加密方案的详细信息,但输出只是说明文件已加密。是否有有用的工具来分析和确定加密方案在加密的PKzip文件中使用eme?

使用
7z
命令行工具并检查
方法

$ 7z l -slt /tmp/test.zip 

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=utf8,Utf16=on,HugeFiles=on,64 bits,8 CPUs x64)

Scanning the drive for archives:
1 file, 318 bytes (1 KiB)

Listing archive: /tmp/test.zip

--
Path = /tmp/test.zip
Type = zip
Physical Size = 318

----------
Path = etc/shells
Folder = -
Size = 179
Packed Size = 132
Modified = 2016-02-26 00:50:13
Created = 
Accessed = 
Attributes = _ -rw-r--r--
Encrypted = +
Comment = 
CRC = 57BC32BA
Method = ZipCrypto Deflate
Host OS = Unix
Version = 20
Volume Index = 0

你为什么想要加密方案,如果你不知道加密密钥,这将不会有帮助。首先,我想更好地理解zip文件的结构。我在这些zip文件中发现的内容与我读到的内容不匹配,我想知道原因。第二,根据加密方案,如果存在弱加密,知道密钥是无关的使用了加密方法(如我为传统pkzip加密方案引用的论文所示)。对于分组密码,即使不正确地使用它们,也会使其容易受到攻击(例如,使用ECB模式、使用CBC模式填充oracle攻击、在CTR模式下使用非随机非随机非单位等)