我有这种解码方法:
-(NSString *)decrypt:(NSString *)encryptedTextValue withSecret:(NSString*)secret
{
NSData *encryptedData = [NSData base64DataFromString:encryptedTextValue];
NSData *decryptedData = [encryptedData decryptedAES256DataUsingKey:[[secret dataUsingEncoding:NSUTF8StringEncoding] SHA256Hash] error:nil];
NSString *plainText = [[NSString alloc] initWithData:decryptedData encoding:NSUTF8StringEncoding];
return plainText;
}
和decryptedAES256DataUsingKey 方法,是这样的:
- (NSData *) AES256EncryptedDataUsingKey: (id) key error: (NSError **) error
{
CCCryptorStatus status = kCCSuccess;
NSData * result = [self dataEncryptedUsingAlgorithm: kCCAlgorithmAES128
key: key
options: kCCOptionPKCS7Padding
error: &status];
if ( result != nil )
return ( result );
if ( error != NULL )
*error = [NSError errorWithCCCryptorStatus: status];
return ( nil );
}
我也有哈希,即:
wnXGfwFQr4463RLAczVJGw==
有人可以告诉我如何将其解码为原始字符串吗?我也有密钥,但我不明白我应该如何 ecnode 来解码哈希。