Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 加密数据返回零字符串_Iphone - Fatal编程技术网

Iphone 加密数据返回零字符串

Iphone 加密数据返回零字符串,iphone,Iphone,我使用Rijndael加密算法,当我要加密它时,它在NSData中加密。我想把加密的NSdata转换成NSString。我试图将其转换为字符串,但它返回nil。任何人都有任何解决办法 我是这样做的 NSString *passphrase = @"super-secret"; NSStringEncoding myEncoding = NSUTF8StringEncoding; NSString *alphaPlain = @"This is a encryption test."; NSDa

我使用Rijndael加密算法,当我要加密它时,它在NSData中加密。我想把加密的NSdata转换成NSString。我试图将其转换为字符串,但它返回nil。任何人都有任何解决办法

我是这样做的

NSString *passphrase = @"super-secret";
NSStringEncoding myEncoding = NSUTF8StringEncoding;

NSString *alphaPlain = @"This is a encryption test.";
NSData *alphaDataPlain = [alphaPlain dataUsingEncoding:myEncoding];
NSLog(@"  SimpleText value : %@",alphaPlain);

NSData *alphaDataCypher = [alphaDataPlain AESEncryptWithPassphrase:passphrase];
NSString *alphaStringCypher = [[NSString alloc] initWithData:alphaDataCypher encoding:myEncoding];

NSLog(@"  Encrypted value : %@",alphaStringCypher);
它返回nil值


感谢

加密的数据不再是UTF8字符串,它只是一些字节序列,因此在UTF8失败时对其进行解码


你想用这根绳子做什么?如果只是出于日志记录/调试的目的,您可以使用
[myData description]
获取十六进制字符串(带有一些额外的空格以提高可读性)。如果您需要在需要文本表示的上下文中传输数据,那么将其转换为Base64将是一个好主意,请参阅以获取一种简单的方法。

加密的数据不再是UTF8字符串,而是一些字节序列,因此在UTF8失败时对其进行解码


你想用这根绳子做什么?如果只是出于日志记录/调试的目的,您可以使用
[myData description]
获取十六进制字符串(带有一些额外的空格以提高可读性)。如果您需要在需要文本表示的上下文中传输数据,将其转换为Base64将是一个好主意,请参阅以获取一种简单的方法。

您好,谢谢您的回复,需要加密字符串,因为我必须在服务器上传递。如果有其他sol.Hi,谢谢您的回复,加密字符串是必需的,因为我必须在服务器上传递。如果有任何其他sol。