长沙网络公司网站,响应式网站 企业模版,北京网站设计提供商,wordpress远程上传媒体文件摘要算法#xff1a;
同样的明文#xff0c;经过同样的摘要算法#xff0c;得到的结果是一样的
验证方法#xff1a;验证经过摘要算法处理后的结果#xff0c;如果密文一样那么就认为明文是一样的
//数据库存储的一定是密文#xff0c;用户输入的是明文#xff1b;把…摘要算法
同样的明文经过同样的摘要算法得到的结果是一样的
验证方法验证经过摘要算法处理后的结果如果密文一样那么就认为明文是一样的
//数据库存储的一定是密文用户输入的是明文把用户输入的明文经过MD5处理后和数据库的内容进行对比结果一样就认为密码正确
网站解密MD5的原理是将一些较常见的密码经过MD5处理后的结果存储下来之后再与我们输入的需要解密的MD5数据进行比对达成的 盐值 salt
明文salt复杂明文再将复杂明文进行MD5加密
在随机盐值的基础上如何进行验证待验证的明文这个随机盐值在进行MD5加密之后和数据库的密文进行对比//用户注册时要把这个随机盐值存储下来
Slf4j
public class SecurityUtils {public static String encrypt(String password) {String salt UUID.randomUUID().toString().replace(-,);String securityPassword DigestUtils.md5DigestAsHex((saltpassword).getBytes());String finalPasswordsaltsecurityPassword;return finalPassword;}public static boolean verify(String inputPassword, String sqlPassword) {if(sqlPasswordnull||sqlPassword.length()!64){log.error(数据库中的密码格式不对);return false;}String saltsqlPassword.substring(0,32);String secretPasswordDigestUtils.md5DigestAsHex((saltinputPassword).getBytes());return sqlPassword.equals(saltsecretPassword);}
}
因为有些用户的密码设置的较为简单所以应该先加一个随机盐值之后再组合起来进行MD5加密加密后将密文和盐值组合起来存入数据库中以达到对用户密码加密的结果