无法通过 RNCryptor 解密文本文件
Cannot decrypt a text file via RNCryptor
我已经使用此代码通过 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];
我得到一个空白文本文件作为输出,我在这里做错了什么?请帮忙
为什么?如何解决这个问题谁能给出解决方案
好的,如果是这样,那么我认为您的文件已损坏或系统未获取它。做一件事,尝试加解密另一个文件,试试能不能行。
它有时会在 mac 中发生,当您尝试在 textedit 中的 mac 中创建一个文本文件时,当您将其保存为 somefile.txt 时,出现警告并显示 "cannot save this document with extension txt to the end of the name"
就像那样,请注意,当您尝试使用名称末尾的“.txt”扩展名保存它时,它就会发生。
我在 textedit 中创建了一个文件,当我像你在问题中所说的那样加密时,我得到它的大小为 82 字节,然后我在文本编辑中创建了另外 2 个文件并加密它们它们也包含相同的大小 82。并且我无法解密相同的文件,解密后的文件大小显示为 0 字节,根本没有任何内容。我不知道你是否得到解密文件为 0 字节。
然后我给了一个在我的 mac 书中不存在的文件作为要加密的源文件。令我惊讶的是,我得到了一个加密文件,其名称与我提供的一样,而且大小也是 82 字节!
然后对于解决方案,在 textedit 中创建一个文本文件并保存为 rtf,然后转到您在系统中存储它的地方,并将文件重命名为这样。
如果您的文件名为 somefile,则将其重命名为 somefile.txt。
现在尝试再次进行加密和解密,它会起作用:-)
我已经使用此代码通过 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];
我得到一个空白文本文件作为输出,我在这里做错了什么?请帮忙
为什么?如何解决这个问题谁能给出解决方案
好的,如果是这样,那么我认为您的文件已损坏或系统未获取它。做一件事,尝试加解密另一个文件,试试能不能行。
它有时会在 mac 中发生,当您尝试在 textedit 中的 mac 中创建一个文本文件时,当您将其保存为 somefile.txt 时,出现警告并显示 "cannot save this document with extension txt to the end of the name"
就像那样,请注意,当您尝试使用名称末尾的“.txt”扩展名保存它时,它就会发生。
我在 textedit 中创建了一个文件,当我像你在问题中所说的那样加密时,我得到它的大小为 82 字节,然后我在文本编辑中创建了另外 2 个文件并加密它们它们也包含相同的大小 82。并且我无法解密相同的文件,解密后的文件大小显示为 0 字节,根本没有任何内容。我不知道你是否得到解密文件为 0 字节。
然后我给了一个在我的 mac 书中不存在的文件作为要加密的源文件。令我惊讶的是,我得到了一个加密文件,其名称与我提供的一样,而且大小也是 82 字节!
然后对于解决方案,在 textedit 中创建一个文本文件并保存为 rtf,然后转到您在系统中存储它的地方,并将文件重命名为这样。
如果您的文件名为 somefile,则将其重命名为 somefile.txt。
现在尝试再次进行加密和解密,它会起作用:-)