首页 > 代码库 > OC的DES加密,使与java的Cipher类用DES/CBC/PKCS5Padding方式的加密结果同样

OC的DES加密,使与java的Cipher类用DES/CBC/PKCS5Padding方式的加密结果同样

问题说明:

近期用到DES加密,而且要与java的Cipher类加密的结果保持一致。没研究过java的Cliper,但工作中Cipher依据DES/CBC/PKCS5Padding加密方式生成了一个字符串。

比較后发现,此字符串与将OC加密生成的NSData直接用字符串格式化([NSString stringWithFormat:@"%@",data])同样。所以就先这么用了。

代码例如以下:

#import "CommonCrypto/CommonCryptor.h"
+ (NSString *)encryptUseDES:(NSString *)plainText andKey:(NSString *)authKey andIv:(NSString *)authIv{
    const void *iv  = (const void *) [authIv UTF8String];
    NSString *ciphertext = nil;
    NSData *textData = http://www.mamicode.com/[plainText dataUsingEncoding:NSUTF8StringEncoding];"%@",data];
        NSCharacterSet *cSet = [NSCharacterSet characterSetWithCharactersInString:@"< >"];
        ciphertext = [[oriStr componentsSeparatedByCharactersInSet:cSet] componentsJoinedByString:@""];
    }
    return ciphertext;
}


OC的DES加密,使与java的Cipher类用DES/CBC/PKCS5Padding方式的加密结果同样