【问题标题】:EXC_BAD_ACCESS while decrypting using CCDecrypt使用 CCDecrypt 解密时的 EXC_BAD_ACCESS
【发布时间】:2012-10-31 16:00:14
【问题描述】:

我正在尝试解密用 Java 加密的 ios 中的数据。以下是代码:

+(NSString*) decryptData:(NSString*) data:( NSData*) passKey {

    NSString * strKey = [Base64Util encodeBase64WithData:passKey];
    NSLog( @" decryption key: %@" ,strKey);

    //decrypt `data
    NSData * nsData = [Base64Util decodeBase64WithString:data];
    NSLog(@"here 1: %@",nsData);

    size_t numOfBytesDecrypted;
    size_t bufferSize = nsData.length + kCCBlockSizeAES128;
    NSMutableData * buffer = [NSMutableData dataWithLength:bufferSize];
    CCCrypt(kCCDecrypt, kCCKeySizeAES128, kCCOptionECBMode , derivedKey.bytes, derivedKey.length, Nil , passCodeData.bytes, passCodeData.length, buffer. mutableBytes, bufferSize, &numOfBytesDecrypted);

    return [NSData dataWithBytesNoCopy:buffer. mutableBytes length :numOfBytesDecrypted];

}

但是当 CCCrypt 函数执行时,它会抛出一个 EXC_BAD_ACCESS 代码 2. 我启用了 ARC。我无法找到错误的原因。我们将不胜感激。

【问题讨论】:

  • derivedKey ivar 是什么,它从何而来?另外,decryptData 参数的值是多少?不是data吗?能否请您酌情更正您的问题,以便我们提供帮助?

标签: iphone objective-c ios5 encryption


【解决方案1】:

我真的很傻。

第二个参数应该是kCCAlgorithmAES128

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多