栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

MD5加密数据 -- 升级加盐的使用 ( md5有点咸~ ) 保护数据安全 (详解)【一看就懂】

MD5加密数据 -- 升级加盐的使用 ( md5有点咸~ ) 保护数据安全 (详解)【一看就懂】

        在信息量爆棚的大数据时代,越来越多的企业开发了属于自己的网站、app。使用这些软件都需要用户登录后才能使用,那么用户的信息在后台如何被保护就成为了一大问题。

        本文主要讲解如何在用户注册时使用md5加密来保护信息。

主角登场:在spring核心包的MD5密码工具类---DigestUtils

该类下的方法:

这里我们主要使用该类下 返回值为 String 的 md5DigestAsHex (byte[] bytes) 方法。

测试及效果如下:

我们将生成的字符串复制到 md5解密网站 查看是否一致:

附上md5解密网站链接:md5解密网站 

但是细心的朋友在测试时会发现,固定的密码每次通过这种方式加密后所生成的字符串都是一致的:(如图所示)

那么就会造成很大的安全隐患,失去了加密的意义。此时就需要我们通过加 “盐” 的方式来对密码进行再处理升级 (md5有点咸~)

复制进 md5加密网站 后:查询结果如下

附上测试代码:

 //  定义一个静态常量 盐 salt
 private static final String salt = "edg qwerdf win";
 public static void main(String[] args) {
     //  简单的测试,定义密码为123
     String pwd = "123";
     //  将用户键入的密码与盐进行字符串拼接,
     //  拼接的方式有多种,盐的定义也有多种,自定义即可
     String finalPwd = pwd + salt;
     //  调用该类下返回值为String的方法,并将finalPwd转换为byte[]类型
     String s = DigestUtils.md5DigestAsHex(finalPwd.getBytes());
     //  打印生成的字符串并查看效果
     System.out.println(s);
     System.out.println(new Date());
 }

        这样一来,我们便完成了真正意义上的对后台数据的加密处理。将加盐后的字符串存入数据库即可实现对用户密码的保护。当然,盐需要管理员记录以便于企业内部使用,后续会出对盐加密后数据的处理方式以供用户登录。


如有错误,欢迎指正

Thanks

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/439154.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号