使用RNCryptManager通过CoreData解密NSData

时间:2013-03-19 15:06:54

标签: ios objective-c core-data encryption nsdata

我从未与数据加密有任何关系,所以我开始work with this code

我做过任何事情,如果我加密某些NSData并直接解密NSData,它就可以正常工作。但是很难理解这段代码是如何工作的。任何人都可以帮助我,这将是一件好事。

我会在NSData中存储一些加密的CoreData并将其从CoreData加载到DeCrypt它,但如果我这样做,我得到了这个输出:

  

2013-03-19 15:31:07.197 En-Decrypt + CoreData [2603:c07] + [RNCryptManager AESKeyForPassword:salt:],/ Users / main / Desktop / En-Decrypt + CoreData / En-中的断言失败解密+ CoreData / RNCryptManager.m:110   2013-03-19 15:31:07.198 En-Decrypt + CoreData [2603:c07]由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'无法为密码创建AES密钥:-1'

我上传了sample xcode project here

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

在数据中,您需要保存saltiv值。这是解密所必需的。 因此,修改您的数据模型:
enter image description here

并使用加密数据保存saltiv