我正在尝试将这段 C 代码转换为 Cocoa,我正在努力弄清楚如何。
char *deskey = "123 456 789 101 112 131 415 161";
unsigned char key[16];
memset(key, 0, sizeof(key));
sscanf(deskey, "%o %o %o %o %o %o %o %o",
(int*)&key[0], (int*)&key[1], (int*)&key[2],
(int*)&key[3], (int*)&key[4], (int*)&key[5],
(int*)&key[6], (int*)&key[7]);
我试过使用 NSMutableArray 和 NSData 但没有运气。我能够扫描字符串并提取数字,但我不确定之后如何存储到 NSData 中。
NSMutableArray *enckey = [[[NSMutableArray alloc] init] autorelease];
NSScanner *scanner = [NSScanner scannerWithString:self.deskey];
int pos = 0;
while ([scanner isAtEnd] == NO) {
if ([scanner scanInt:&pos]) {
[enckey addObject:[NSString stringWithFormat:@"%o", pos]];
}
else {
NSLog(@"Your DES key appears to be invalid.");
return;
}
}
基本上试图将 ascii DES 密钥转换为字符串以用于三重 DES 加密。非常感谢任何帮助,谢谢!