【问题标题】:Possible to have a password-protected/weak-encrypted ZIP file with a data descriptor?可能有一个带有数据描述符的受密码保护/弱加密的 ZIP 文件吗?
【发布时间】:2021-11-02 07:21:36
【问题描述】:

是否有可能拥有具有数据描述符的 ZIP 文件,因此每个文件的压缩大小在其数据之后,并通过 ZIP 的“弱”加密机制对其进行密码保护?

上下文:正在为 Python 开发流式解压缩功能,特别是添加解密支持。无法依赖数据之前已知的压缩大小,这使得它......尴尬。

【问题讨论】:

    标签: python zip compression zlib deflate


    【解决方案1】:

    是的。

    UEsDBC0ACQAIAPBaJFMAAPBa//////////8BABQALQEAEAAAAAAAAAAAAAAAAAAAAAAAiTFa
    LaeEC1Hn3rkwrUpSKqBmSpAtoQ1LulBLBwidP2y1GQAAAAAAAAAOAAAAAAAAAFBLAQIeAy0A
    CQAIAPBaJFOdP2y1GQAAAA4AAAABAAAAAAAAAAAAAACwEQAAAAAtUEsFBgAAAAABAAEALwAA
    AGQAAAAAAA==
    

    Info-ZIP's zip 制作:

    echo -n 'hello, hello!\0' | zip -e | cat > foo.zip
    

    (密码:foo)

    【讨论】:

    • 啊,谢谢...我看到它有一个数据描述符。但我意识到我对它的含义有点困惑。出于某种原因,我认为这意味着数据的压缩大小在数据之后的数据描述符中可用。但是,在这种情况下,我看到它在数据之前可用(在“额外”数据区域中)
    • 不必。我已经用一个没有那个的 zip 文件更新了答案。
    • 谢谢!请问,这个文件是怎么制​​作的?
    • 谢谢! (另外,我可能错误地解析了文件,但到目前为止,它看起来 doesn't 在数据描述符的开头有可选签名,我认为我没有以前见过)
    • 它确实有数据描述符签名。
    猜你喜欢
    • 1970-01-01
    • 2012-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-22
    • 1970-01-01
    相关资源
    最近更新 更多