如何在文件可可中存储盐和IV?

时间:2011-10-06 17:59:29

标签: cocoa encryption aes salt

所以我已经实现了盐和IV,但解密现在有点儿麻烦。当然,我同时需要salt和IV进行解密,但用户无法输入...我需要能够将salt和IV存储在加密文件中,然后检索salt和IV用户正在解密文件。我该怎么做呢?我将如何存储和检索该数据?

2 个答案:

答案 0 :(得分:2)

正如彼得所说,初始化向量和密钥派生的盐应该与加密文件一起存储在标题中。

不要为加密存储创建自己的ad-hoc文件格式,而是查看OpenPGP消息格式(由PGP和GnuPG以及其他程序使用)。它在RFC 4880中指定。您可能不必实现所有这些,但抓住应用程序所需的部分。

作为额外的奖励,用户可以使用PGP / GPG(使用正确的选项和密码/密钥)来解密数据,如果您的程序应该以某种方式停止工作。

答案 1 :(得分:0)

将它们与密文一起存储。你需要提出一个合适的文件格式来做到这一点;一个键控归档器将使它变得容易。