SpringBoot实现Mysql使用MD5进行密码加密示例

网友投稿 1500 2023-01-25

SpringBoot实现Mysql使用MD5进行密码加密的示例

SpringBoot实现Mysql使用MD5进行密码加密的示例

项目开发中为了保护用户隐私安全,一般都会用MD5进行密码加密

以下就简单举例SpringBoot 实现mysql使用MD5进行密码加密做一个简单的例子

看下数据库,这边简单做了用户表进行测试

pom.xml添加依赖引用

commons-codec

commons-codec

org.apache.commons

commons-lang3

3.8.1

创建unit包创建md5加密类,进行密码加密

package com.wyh.unit;

import java.security.MessageDigest;

import java.security.NoSuchAlgorithmException;

/**

* @date 2021/4/20 23:34

*/

public class Md5Utils {

/*

* md5算法进行密码加密

* */

public static String code(String str){

try{

//1.获取MessageDigest对象 生成一个MD5加密计算摘要

MessageDigest md = MessageDigest.getInstance("MD5") ;

/*

str.getBytes()

* 使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中.

此方法多用在字节流中,用与将字符串转换为字节。

* */

// 计算md5函数 使用指定的字节数组更新摘要md

md.update(str.getBytes());

/*

* digest()最后确定返回md5 hash值,返回值为8的字符串。

* 因为md5 hash值是16位的hex值,实际上就是8qpOXk位的

* */

byte[] byteDigest = md.digest() ;

int i ;

StringBuffer buf = new StrqpOXkingBuffer("") ;

//遍历byteDigest

//加密逻辑,可以debug自行了解一下加密逻辑

for(int offset = 0 ; offset

i = byteDigest[offset] ;

if(i < 0)

i += 256 ;

if(i < 16)

buf.append("0") ;

// BigInteger函数则将8位的字符串转换成16位hex值,用字符串来表示;得到字符串形式的hash值

buf.append(Integer.toHexString(i)) ;

}

return buf.toString() ;

}catch (NoSuchAlgorithmException e){

e.printStackTrace();

return null ;

}

}

}

添加页面

<%--

Date: 2021/4/21

Time: 0:04

--%>

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

i = byteDigest[offset] ;

if(i < 0)

i += 256 ;

if(i < 16)

buf.append("0") ;

// BigInteger函数则将8位的字符串转换成16位hex值,用字符串来表示;得到字符串形式的hash值

buf.append(Integer.toHexString(i)) ;

}

return buf.toString() ;

}catch (NoSuchAlgorithmException e){

e.printStackTrace();

return null ;

}

}

}

添加页面

<%--

Date: 2021/4/21

Time: 0:04

--%>

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

用户名

账号

密码

Controller添加方法

@RequestMapping("/addUser")

public String addUser(User user){

//MD5方法对密码进行加密处理

String password= Md5Utils.code(user.getPassword()) ;

user.setPassword(password);

int i = userService.addUser(user);

if(i>0){

return "redirect:/showAllUser";

}

return "";

}

进行添加测试,这边我输入的密码是123456

查看数据库

进行解密可以去:https://cmd5.com/

复制数据库的加密密码即可

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:混合app开发框架代码(混合app开发框架代码是多少)
下一篇:SpringBoot整合MongoDB的步骤详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~