我有一个iOS7应用程序,该应用程序使用RNCryptor来确保所有文档都安全地存放和保护。

问题是,由于该应用有点偏执,因此它相当自由地使用加密,这似乎偶尔会导致双重加密。 (由于复杂的原因,主要与后台和/或终止有关。)

有没有一种简单的方法可以查看我的文件并进行测试以查看它们是否已经被加密(通过应用本身)?

更新:最后,我尝试了一个非常基本的尝试解密的选项。如果未加密,则会导致错误代码2“未知标头”,这表示未加密。

最佳答案

加密后,在已加密数据的开头添加一个标记。在对前哨进行加密测试之前,如果不存在,则不进行加密,否则对前哨进行加密并添加。

解密时,请在解密之前删除标记。

这种预先挂起的情况并不罕见,很多时候iv被预先挂起。

由于加密数据与randon数据是无法区分的,并且算法在各个实现中都是相同的,因此没有执行加密的特定实现的签名。

07-26 09:37