MD5的典型应用是对一段信息(Message)产生信息摘要(Message-Digest),以防止被篡改。比如,在UNIX下有很多软件在下载的时候都有一个文件名相同,文件扩展名为.md5的文件,在这个文件中通常只有一行文本,大致结构如: MD5 (tanajiya.tar.gz) = 0ca175b9c0f726a831d895e269332461
我们常常在某些软件下载站点的某软件信息中看到其MD5值,它的作用就在于我们可以在下载该软件后,对下载回来的文件用专门的软件(如Windows MD5 Check等)做一次MD5校验,以确保我们获得的文件与该站点提供的文件为同一文件。利用MD5算法来进行文件校验的方案被大量应用到软件下载站、论坛数据库、系统文件安全等方面。
MD5加密其实很简单引用了maven的依赖后一个方法就可以实现了
废话不多说,上依赖
<dependency> <groupId>commons-codecgroupId> <artifactId>commons-codecartifactId> <version>1.6version> dependency>
添加依赖后,直接在密码上调用方法就可以了DigestUtils.md5Hex(MD5.PASSWORD);
import org.apache.commons.codec.digest.DigestUtils;public class MD5 { public static final String PASSWORD ="TomTong"; public static final String SOLT="nb666"; public static final String SQl = "md5"; public static void main(String[] args) { String admin = DigestUtils.md5Hex(MD5.PASSWORD); String s = DigestUtils.md5Hex(admin+MD5.SOLT); System.out.println("______第一次加密__________"); System.out.println(admin); System.out.println("__________第二次加密____________"); System.out.println(s); System.out.println("_____________第三次加密_________"); String s1 = DigestUtils.md5Hex(s + MD5.SQl); System.out.println(s1); }
我这里为了更加安全加密了三层,打印出来是这样子的,可以直接保存到数据库中了