免责声明:对密码学不熟悉。
我有一个使用OpenSSL加密数据的外部进程,现在使用盐。iPhone应用程序从服务器获取该数据,将其下载到应用程序的文档目录中,并需要解密它。iPhone OS不包括OpenSSL库。您可以自己构建它,但这很困难和棘手。我发现的“最简单”的解决方案(感谢Stackoverflow的帮助)是使用Security Framework的
是否有一种方法可以从加密数据中派生iv(对我来说,似乎会抵消额外的安全性)?还是我需要首先指定iv,并让iPhone应用程序知道它是什么?或者,只是不使用盐?
编辑1:澄清一下,我正在使用OpenSSL加密数据文件中的文本。使用OpenSSL的脚本加密文本,上传到Dropbox,然后应用程序从Dropbox下载文件,解析文件并尝试解密文本。
编辑2:是的,我正在使用OpenSSL命令行实用程序和
我有一个使用OpenSSL加密数据的外部进程,现在使用盐。iPhone应用程序从服务器获取该数据,将其下载到应用程序的文档目录中,并需要解密它。iPhone OS不包括OpenSSL库。您可以自己构建它,但这很困难和棘手。我发现的“最简单”的解决方案(感谢Stackoverflow的帮助)是使用Security Framework的
CommonCrypto/CommonCryptor.h
。但是用于解密数据的C函数需要iv才能正确解密。是否有一种方法可以从加密数据中派生iv(对我来说,似乎会抵消额外的安全性)?还是我需要首先指定iv,并让iPhone应用程序知道它是什么?或者,只是不使用盐?
编辑1:澄清一下,我正在使用OpenSSL加密数据文件中的文本。使用OpenSSL的脚本加密文本,上传到Dropbox,然后应用程序从Dropbox下载文件,解析文件并尝试解密文本。
编辑2:是的,我正在使用OpenSSL命令行实用程序和
-pass
选项。