1

我有一个问题,我有一个 iPhone 代码来转换 MD5 中的东西,我必须在 Android 中编写相同的代码。但问题是有一个方法名CCHMac,我不知道那是什么?它对两个字符串作为key & data执行了什么功能。JAVA/Android中是否有类似的方法?请向我建议任何有关相同的解决方案。

* iPhone 代码:

secret  = @"e24a6167409288f486a78271cc316c4f";
data = @"/v1/vehicles/get-make-models.json?sort=mpg&to=&filter=category&client-id=10030812&from=convertible";
(NSString  *)signRequestNSString  *)data
{
const  char  *cKey  = [secret  cStringUsingEncoding:NSASCIIStringEncoding];       
const  char  *cData = [data cStringUsingEncoding:NSASCIIStringEncoding];
unsigned  char  cHMAC[CC_MD5_DIGEST_LENGTH];
CCHmac(kCCHmacAlgMD5, cKey, strlen(cKey), cData, strlen(cData), cHMAC);
NSData  *HMAC = [[NSData  alloc] initWithBytes:cHMAC length:sizeof(cHMAC)];
NSString  *hash = [HMAC base64EncodedString];
    [HMAC release];
return  hash;
}

提前致谢。

4

1 回答 1

0

javax.crypto 包包含 HMAC 功能,尤其是 javax.crypto.Mac。

于 2012-05-09T19:44:57.757 回答