Spring项目中对密码进行MD5盐值加密

首先需要在pom.xml中添加shiro的依赖,因为需要借助shiro中的api来实现加密,依赖文件如下所示;

	<!-- https://mvnrepository.com/artifact/org.apache.shiro/shiro-spring -->
        <dependency>
            <groupId>org.apache.shiro</groupId>
            <artifactId>shiro-spring</artifactId>
            <version>1.7.1</version>
        </dependency>

版本可根据springboot的改变而有所改动,可以通过网站https://mvnrepository.com/artifact/org.apache.shiro/shiro-spring中找寻适合自己版本的依赖

其次就是具体代码的实现,此处仅是测试,具体代码及说明如下所示;

		//password就是需要加密的原密码
        String password="123456";
        //使用java.util包下UUID中的api生成随机的字符串,这个字符串就是salt,也就是盐值
        String salt= UUID.randomUUID().toString();

        //SimpleHash(String algorithmName, Object source, Object salt, int hashIterations)
        //algorithmName--加密方式--我们选择MD5
        //source--需要加密的原数据--即上方定义的password
        //salt--盐值--增强加密强度
        //hashIterations--加密的次数--增强加密强度
        SimpleHash simpleHash = new SimpleHash("MD5",password,salt,1);

        //再将获得到的加密后的程序转换为16进制形式,方便存入数据库
        String newpwd = simpleHash.toHex();

        //打印加密后的密码
        System.out.println("MD5盐值加密后的密码为:"+newpwd);
        //控制台输出结果--MD5盐值加密后的密码为:db5c50842347b584758e6615215435e5

以上,仅供学习参考

你可能感兴趣的:(笔记,Java基础,shiro,java,maven,spring,boot)