作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我很好奇密码恢复如何用于受密码保护的文件。 And I want to know the exact flow of the 7-zip encryption mechanism.
7-zip
在 CBC 模式下使用 AES-256 加密算法,对文件或文件夹进行加密。 key 是根据用户提供的基于 SHA-256 哈希函数的密码生成的。 SHA-256 执行 219 (524,288) 次以增加穷举搜索的成本。此外,为了帮助降低字典攻击的风险,在生成哈希之前,将盐附加到原始密码短语。
我的第一个问题是 how does key_derivation function work to generate a 256-bit key
? IV 对于 AES CBC 模式的重要性是什么以及它是如何生成的?
我的第二个和 most important question
是如何验证 key 以解密 7-zip 存档?我的意思是它的 key_verification 函数是如何工作的?
最佳答案
key 推导函数在文件7zAes.cpp
的源码中,它被称为:
void CKeyInfo::CalculateDigest()
key_verification
方法,如果它存在。如果我找到了,我会告诉你的。
关于encryption - 7-zip 存档的加密机制如何实现 key_derivation 和 key_verification 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12470378/
我很好奇密码恢复如何用于受密码保护的文件。 And I want to know the exact flow of the 7-zip encryption mechanism.7-zip在 CBC
我是一名优秀的程序员,十分优秀!