最近我们用到的ecb模式(明文、密文、密匙都为64bit,都为八个字符)的DES加密解密,加密是用网上找的一篇c语言学的。
链接:http://hi.baidu.com/camel520duck/blog/item/1e20ad11a88c8073cb80c41b.html ,该程序用VS2010上的win32上运行,没有任何问题,并且感觉很不错。
为了在objective-c中嵌套,只改了最后main() 函数,其他的函数没有任何改变,直接按照调用的:
-(NSData *) encryptAboutPlainText:(unsigned char *)cPlainText key:(unsigned char *)key{
NSMutableData *totalData=[[NSMutableData alloc] initWithBytes:NULL length:0];
bool pSubKey[16][48];
unsigned char cCipherText[8];
bool bCipherText[64];
SetSubKey(pSubKey, key);
EncryptOfDES(cCipherText,cPlainText,pSubKey);
ByteToBit(bCipherText,cCipherText,64);
for(int i=0;i<64;i++){
if(bCipherText[i]){
NSLog(@"1");
}else{
NSLog(@"0");
} }
for (int i=0; i<8; i++) {
NSLog(@"%d",cCipherText);
}
[totalData appendBytes:cCipherText length:8];
return totalData;
}
------解决方案--------------------
已经回站内信了