【发布时间】:2015-04-03 20:31:58
【问题描述】:
我已使用此代码通过 RNcryptor 成功加密了一个文本文件
NSFileManager *filemgr;
NSData *databuffer;
filemgr = [NSFileManager defaultManager];
NSString *destPath = @"Users/DivyaDinesh/Downloads/abcde";
databuffer = [filemgr contentsAtPath: @"Users/DivyaDinesh/Downloads/abcd" ];
NSError *error;
NSData *encryptedData = [RNEncryptor encryptData:databuffer
withSettings:kRNCryptorAES256Settings
password:@"ABC123"
error:&error];
[encryptedData writeToFile:destPath atomically:YES];
然后我尝试使用此代码解密相同
NSString *destPath1 = @"Users/DivyaDinesh/Downloads/abcdg";
NSData *encryptedData = [NSData dataWithContentsOfFile:@"Users/DivyaDinesh/Downloads/abcde"];
NSError *error;
NSData *decryptedData = [RNDecryptor decryptData:encryptedData withPassword:@"ABC123" error:&error];
[decryptedData writeToFile:destPath1 atomically:YES];
我得到一个空白文本文件作为输出,我在这里做错了什么?请帮忙
为什么?如何解决这个问题任何人都可以提供解决方案
【问题讨论】:
-
那么
error参数呢?decryptedData看起来像什么?解密中没有看到的kRNCryptorAES256Settings参数呢?所以也许:NSData *decryptedData = [RNDecryptor decryptData:encryptedData withSettings:kRNCryptorAES256Settings password:@"ABC123" error:&error];? -
我试过了,实际上我从这个链接highaltitudehacks.com/2013/09/26/…得到了这个想法并修改了它
-
请检查文件是否损坏,是否显示为 82 字节或类似的大小?您是否尝试过读取相应文件的内容并将其放入
NSString?请尝试并留下回复。 -
@Mukund 是的,我确实尝试将读取文件的数据打印为字符串,但它显示为空。我用这个链接developer.apple.com/library/ios/documentation/Cocoa/Conceptual/…
标签: objective-c cocoa encryption rncryptor