您的位置:首页 > 健康 > 养生 > 公司网页设计图_区块链app定制_陕西seo公司_热点新闻最新消息

公司网页设计图_区块链app定制_陕西seo公司_热点新闻最新消息

2025/3/6 17:11:59 来源:https://blog.csdn.net/2302_79900935/article/details/145987945  浏览:    关键词:公司网页设计图_区块链app定制_陕西seo公司_热点新闻最新消息
公司网页设计图_区块链app定制_陕西seo公司_热点新闻最新消息

摘要算法:

同样的明文,经过同样的摘要算法,得到的结果是一样的

验证方法:验证经过摘要算法处理后的结果,如果密文一样那么就认为明文是一样的

//数据库存储的一定是密文,用户输入的是明文;把用户输入的明文经过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((salt+password).getBytes());String finalPassword=salt+securityPassword;return finalPassword;}public static boolean verify(String inputPassword, String sqlPassword) {if(sqlPassword==null||sqlPassword.length()!=64){log.error("数据库中的密码格式不对");return false;}String salt=sqlPassword.substring(0,32);String secretPassword=DigestUtils.md5DigestAsHex((salt+inputPassword).getBytes());return sqlPassword.equals(salt+secretPassword);}
}

因为有些用户的密码设置的较为简单,所以应该先加一个随机盐值之后再组合起来进行MD5加密,加密后将密文和盐值组合起来存入数据库中以达到对用户密码加密的结果

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com