我正在构建一个将与服务器(php)通信的应用程序,并且我想加密这种通信(可能会使用 json)。经过大量搜索和阅读后,我找到了AESCrypt-Objc项目。在测试加密时(我正在使用网络工具AES 加密测试),我发现在加密结果中我丢失了 16 个字节的数据。这是我在 AES 项目中使用的示例:
要加密的字符串:“敏捷的棕色狐狸跳过了懒惰的狗”。密码:“12345678901234561234567890123456”
结果:
<7eda336b 82f3e279 ae7638fe cccfffc6 5fbef8da 6df76d97 67d8cfa8 5bce2ae9>
我的代码:
self.strnToBeEnc = @"The quick brown fox jumped over the lazy dog";
self.appKey = @"12345678901234561234567890123456";
NSData *data2 = [self.strnToBeEnc dataUsingEncoding:NSUTF8StringEncoding];
NSLog(@"%@", data2);
NSData *s2 = [data2 AES256EncryptedDataUsingKey:self.appKey error:nil];
NSLog(@"%@", s2);
网络工具:
相同的字符串和密码
结果:
<7eda336b 82f3e279 ae7638fe cccfffc6 5fbef8da 6df76d97 67d8cfa8 5bce2ae9 ca2ed34a 48f85af2 909654d5 b0de0fb7>
如您所见,我缺少一些字节...:) 我尝试在算法中添加到缓冲区,但没有成功。
有什么建议吗?谢谢
(如果问题不够详细,请告诉我)