我正在查看加密的zip文件(使用PKzip格式),我不明白加密方案是如何以二进制格式编码的。在我的研究中,我发现this paper概述了PKzip格式文件中使用的各种加密方案。我发现我一直在查看的加密文件与本文中概述的幻数格式50 4b 03 04相匹配。根据该文件,使用的加密方案类型可以从文件中文件名后面的2个字节确定(“强加密”为17 00,“WinZip AES加密”为01 99.它没有说明这样的签名“传统PKWare加密”。
我使用Keka创建了一个加密的zip文件来检查内容并查看使用了哪种加密方式。文章中提到的魔术数字都没有出现在文件名之后,而是找到了字节54 73.实际上,在我加密的明文文件中添加了一些字节后,我注意到加密后,这些字节只改变了一个一点点,表明它们实际上并不是所用加密方案的指标。我查看了zipdetails的输出,试着看看是否有更多关于所使用的加密方案的细节,但输出只是说明文件是加密的。是否有任何有用的工具来分析和确定加密PKzip文件中使用的加密方案?
答案 0 :(得分:0)
使用7z
命令行工具并检查Method
。
$ 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