默认情况下python库将使用MD5算法,因此你需要在Java中使用HmacMD5算法
pyhton版:
new后面参数为加密的key,以及待解密的字符串,第三位默认md5,可以选择其他比如
'md5', 'sha1', 'sha224', 'sha256', 'sha384', 'sha512'
import hmac
print hmac.new("keyValueGoesHere", "secretMessageToHash").hexdigest()
java版:
import org.Apache.commons.codec.binary.Hex;
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
public class HashingUtility {
public static String HMAC_MD5_encode(String key, String message) throws Exception {
SecretKeySpec keySpec = new SecretKeySpec(
key.getBytes(),
"HmacMD5");
Mac mac = Mac.getInstance("HmacMD5");
mac.init(keySpec);
byte[] rawHmac = mac.doFinal(message.getBytes());
return Hex.encodeHexString(rawHmac);
}
}