所以我已经实现了盐和IV,但是解密现在有点麻烦了。当然,解密也需要盐和IV,但是用户不能输入...我需要能够将盐和IV都存储在加密文件中,然后在需要时检索盐和IV。用户正在解密文件。我将如何去做呢?我将如何存储和检索该数据?
最佳答案
正如彼得所说,初始化向量和用于密钥导出的盐应与加密文件一起存储在标头等中。
不用为加密存储创建自己的即席文件格式,而是查看OpenPGP消息格式(PGP和GnuPG以及其他程序都使用)。在RFC 4880中指定。您可能不必全部实现,但可以抓住应用程序所需的部分。
作为额外的好处,如果您的程序无法正常工作,则用户可以使用PGP / GPG(具有正确的选项和密码/密钥)来解密数据。