pub fn decrypt_package(
encrypted_bytes: &[u8],
password: &str,
) -> Result<Vec<u8>>Expand description
解密加密的 ZIP 包。
§流程(MS-OFFCRYPTO §2.3.4.11 解密方向)
- 解析加密的 ZIP,读取 EncryptionInfo + EncryptedPackage;
- 从密码派生哈希 + blockKey 派生解密 secret_key 的密钥;
- IV = passwordSalt 的前 16 字节;
- 解密得到 secret_key;
- 验证密码(可选):解密 verifierHashInput/Value 并验证;
- 从 secret_key + keyDataSalt 派生数据解密密钥;
- IV = keyDataSalt 的前 16 字节;
- 解密数据。
§参数
encrypted_bytes:加密的 ZIP 字节流;password:解密密码。
§返回
解密后的原始 ZIP 字节流(可被 Presentation::load_bytes 加载)。