2010-06-29 56 views

回答

3

看那javax.crypto.Mac类。尝试使用Mac.getInstance("HmacMD5");,然后将init方法与您的密钥一起使用,然后使用updatedoFinal方法,就像使用MessageDigest对象一样。

+0

OK!其实我已经实现这一点,但它给了我一样,所以如果你已经实现或有任何示例代码,那么请给我“没有找到这样的算法”的消息。 ... – 2010-06-30 07:37:54

4

以下是工作代码。
生成的结果是一样的链接= http://hash.online-convert.com/md5-generator

public String calcHmac(String src) throws Exception { 

    String key = "d6fc3a4a06ed55d24fecde188aaa9161"; 
    Mac mac = Mac.getInstance("HmacSHA1"); 
    SecretKeySpec sk = new SecretKeySpec(key.getBytes(),mac.getAlgorithm()); 
    mac.init(sk); 
    byte[] result = mac.doFinal(src.getBytes()); 


    return Base64.encodeToString(result ,Base64.URL_SAFE); 
}