以前我做了三重DES加密,通过定义一个方法,使用字符串密钥文件加密一些数据
+ (NSData *)tripleDESEncryptWithKey:(NSString *)key dataToEncrypt:(NSData*)convertedData {}.
现在,我同样在做 AES 256 加密。但这一次,我不能使用字符串作为键。我需要使用从资源文件中获取 NSData
NSData *keyData = [NSData dataWithContentsOfFile:keyPath];
由于我需要将此密钥作为参数传递,因此我尝试将其转换为字符串
NSString *key = [[NSString alloc] initWithData:keyData encoding:NSUTF8StringEncoding];
但它返回NULL。那么,如何使用数据密钥进行 AES 256 加密?
编辑:我知道我不应该使用 UTF8 编码,因为数据文件是由字符串的 Base64 编码制成的。所以现在的问题是,如何从 keyData 使用 Base64 获取字符串键?