MD5加密:(不可逆) 概念:MD5的全称是Message-Digest Algorithm 5(信息-摘要算法); 作用:是让大容量信息在用数字签名软件签署私人密匙前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。
两种方法实现md5加密:
1.使用org.apache.commons.codec.digest.DigestUtils的工具包,来实现加密;
DigestUtils.md5Hex("1234")
2.使用MessageDigest来获取实例,以及实现加密。
- MessageDigest messageDigest = MessageDigest.getInstance("MD5");
- messageDigest.update(str.getBytes());
- byte[] digest = messageDigest.digest();
MessageDigest 类为应用程序提供信息摘要算法的功能,如 MD5 或 SHA 算法。信息摘要是安全的单向哈希函数,它接收任意大小的数据,并输出固定长度的哈希值。
MessageDigest 对象开始被初始化。该对象通过使用 update 方法处理数据。任何时候都可以调用 reset 方法重置摘要。一旦所有需要更新的数据都已经被更新了,应该调用 digest 方法之一完成哈希计算。
对于给定数量的更新数据,
digest
方法只能被调用一次。在调用digest
之后,MessageDigest 对象被重新设置成其初始状态。