您的位置:首页 > 移动开发 > IOS开发

ios aes 加密 与 nodejs aes 不一样 解决方法

2016-06-02 00:00 309 查看
以往加密采用的是

NSData* data = [[string dataUsingEncoding:NSUTF8StringEncoding] dataEncryptedUsingAlgorithm:kCCAlgorithmAES128
key:[[AesObject getKey:key] dataUsingEncoding:NSUTF8StringEncoding]
initializationVector:nil
options:kCCOptionECBMode|kCCOptionPKCS7Padding
error:&status];
NSString* sec = [NSString hexStringfromData:data];

//这里用的是NSData+CommonCrypto.m封装的方法
//主要原因是由于key不对引起的
//将原来计算长度的方法改为:
case kCCAlgorithmAES128:
{
if ( keyLength <= 16 )
{
[keyData setLength: 16];
}
else if ( keyLength < 24 )
{
[keyData setLength: 24];
}
else
{
[keyData setLength: 32];
}

break;
}

//这样就可以了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: