我使用来自 nicerobot 的 objc 的 github NSData+AES 的 AES 库
我的代码如下:
-- AESLib.h
--
#import <Foundation/Foundation.h>
#import <CommonCrypto/CommonCrypto.h>
@interface AESLib : NSObject
-(NSData *) encodeAES:(NSData *) argSource;
@end
-- AESLib.m
--
-(NSData *) encodeAES:(NSData *) argSource
{
NSString APIV1_AES_KEY = @"//AAAAAAAAAAAAAAAAAAAAAA"; // 24 char
NSString APIV1_AES_IV = @"//BBBBBBBBBBBBBB"; // 16 char
NSData *key = [NSData dataWithBytes:APIV1_AES_KEY.UTF8String length:strlen(APIV1_AES_KEY.UTF8String)];
NSData *iv = [NSData dataWithBytes:APIV1_AES_IV.UTF8String length:strlen(APIV1_AES_IV.UTF8String)];
NSData *encData;
@try {
encData = [argSource encrypt:key withInitial:iv andPadding:kCCOptionPKCS7Padding];
// Error Here
return encData;
}
@catch (NSException *exception) {
NSLog(@"Exception : %@", [exception reason]);
}
return nil;
}
//错误
> XCode trigger error 2013-10-22 16:15:58.206 Aessample[2913:c07]
> -[NSConcreteMutableData encrypt:withInitial:andPadding:]: unrecognized selector sent to instance 0x7523300 2013-10-22 16:15:58.207
> Aessample[2913:c07] Exception : -[NSConcreteMutableData
> encrypt:withInitial:andPadding:]: unrecognized selector sent to
> instance 0x7523300
为什么会发生这个错误?
--- 添加到 NSMutableString
谢谢 NSMutableString。
我确实再次尝试了您的答案,但我的代码仍然触发相同的错误。
请再次帮助 NSMutableString。