我的朋友告诉我使用"HMACSHA256“算法,我使用了以下代码:
SecretKey signingKey = new SecretKeySpec("123".getBytes(), "HMACSHA256");
Mac mac = Mac.getInstance("HMACSHA256");
mac.init(signingKey);
byte[] digest = mac.doFinal("ABCDEF".getBytes());
System.out.println("HMA : "+digest.length);我只想知道:
1)上面的实现看起来是标准的"HMACSHA256“吗?
2)输出(摘要)为256位或16 bytes.Is。
如果我们使用HMACSHA256算法,我们需要多少字节作为输出。
发布于 2012-02-16 21:00:53
HMAC摘要的输出位数等于基础算法生成的位数。
您的代码看起来很好,并且生成了正确的摘要大小。您可以阅读有关加密散列here的更多信息。
https://stackoverflow.com/questions/9311443
复制相似问题