密码处理
用户的密码通常不会直接以明文的形式保存到数据库中,而是会先经过处理,然后将处理之后得到的"密文"保存到数据库,这样能够降低数据库泄漏导致的用户账号安全问题。
密码通常会使用一些单向函数进行处理,如下图所示
常用于处理密码的单向函数(算法)有MD5、SHA-256等,Apache Commons提供了一个工具类DigestUtils
,其中就包含上述算法的实现。
使用该工具类需引入commons-codec
依赖,在common模块的pom.xml中增加如下内容
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
</dependency>
使用:使用Apache的DigestUtils
工具类
public Result saveOrUpdate(@RequestBody SystemUser systemUser) {
if(StringUtils.hasLength(systemUser.getPassword())){
//使用sha256的加密方式==》
systemUser.setPassword(DigestUtils.sha256Hex(systemUser.getPassword()));
}
systemUserService.saveOrUpdate(systemUser);
return Result.ok();
}
标签:systemUser,加密,处理,commons,密码,codec,DigestUtils
From: https://www.cnblogs.com/21CHS/p/18528883