我有一个问题,我有一个iPhone的代码来转换MD5中的东西,我必须在Android中编写相同的代码。但问题是有一个方法名称 CCHMac ,我不知道那是什么?它在两个字符串上执行的功能为键&数据即可。 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;
}
提前致谢。
答案 0 :(得分:0)
javax.crypto包中包含HMAC功能,尤其是javax.crypto.Mac。