MessageDigest 的功能和用法
- 各个方法的使用方法
- public static MessageDigest getInstance(String algorithm) throws NoSuchAlgorithmException
- public static MessageDigest getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
- public void update(byte[] input)
- public byte[] digest()
- public static boolean isEqual(byte[] digesta, byte[] digestb)
- SUN 提供的常用的算法名称有:
各个方法的使用方法
-
public static MessageDigest getInstance(String algorithm) throws NoSuchAlgorithmException
- algorithm - 所请求算法的名称
MessageDigest md = new MessageDigest(); md = md.getInstance("sha-1");
返回实现指定摘要算法的 MessageDigest 对象。
-
public static MessageDigest getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
- algorithm - 所请求算法的名称
- provider - 提供者的名称。
返回实现指定摘要算法的 MessageDigest 对象。
-
public void update(byte[] input)
使用指定的 byte 数组更新摘要。
-
public byte[] digest()
通过执行诸如填充之类的最终操作完成哈希计算。在调用此方法之后,摘要被重置。
-
public static boolean isEqual(byte[] digesta, byte[] digestb)
比较两个摘要的相等性,做简单的字节比较
注意:Provider可以通过 Java.security.Security.getProviders() 方法获取已注册提供者列表。比较常用的有“SUN”
SUN 提供的常用的算法名称有:
- MD2
- MD5
- SHA-1
- SHA-384
- SHA-512