当前位置:首页 >  开发者 >  MD5加密工具MD5Utils

MD5加密工具MD5Utils

使用MD5对密码进行加密和加盐1publicclassMD5Utils{2privatestaticfinalintSIGNUM=1;3/**4*hex值5*

使用MD5对密码进行加密和加盐

 1 public class MD5Utils {
 2     private static final int    SIGNUM      = 1;
 3     /**
 4      * hex值
 5      */
 6     private static final int    HEX_FLAG    = 16;
 7     /**
 8      * 签名的长度
 9      */
10     private static final int    SIGN_LENGTH = 32;
11     /**
12      * 填充值
13      */
14     private static final String FILL_CHAR   = "0";
15     /**
16      * md5 32位加密方法
17      *
18      * @param input
19      * @return
20      */
21     public static String getMd5(String input) {
22         try {
23             MessageDigest md = MessageDigest.getInstance("MD5");
24             byte[] messageDigest = md.digest(input.getBytes(Charset.forName("UTF-8")));
25             BigInteger number = new BigInteger(SIGNUM, messageDigest);
26             String hashtext = number.toString(HEX_FLAG);
27             while (hashtext.length() < SIGN_LENGTH) {
28                 hashtext = FILL_CHAR + hashtext;
29             }
30             return hashtext.toUpperCase();
31         } catch (NoSuchAlgorithmException e) {
32             throw new RuntimeException(e);
33         }
34     }
35 
36     public static void main(String[] args) {
37 
38         // 方式一: 使用自定义的MD5加密工具类
39         String password = MD5Utils.getMd5("abc123ABC");
40         System.out.println("password:"+ password);
41 
42         // 加盐,随机生成6位数字和字母混合的字符串
43         String salt = RandomStringUtils.randomAlphanumeric(6);
44         System.out.println("salt:" + salt);
45 
46         String saltPassword = MD5Utils.getMd5("abc123ABC" + salt);
47         System.out.println("saltPassword:" + saltPassword);
48 
49         // 方式二: 使用springboot自带的MD5加密封装类DigestUtils
50         String pwd = DigestUtils.md5DigestAsHex("abc123ABC".getBytes());
51         System.out.println("pwd:" + pwd.toUpperCase());
52     }
53 }

输出结果:

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,
如果涉及侵权请联系站长邮箱:support@yingtwo.com 进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

原文链接:none

最近更新

68.C++中的const
68.C++中的const

编写程序过程中,我们有时不希望改变某个变量的值...

封神榜哪个版本游戏
封神榜哪个版本游戏

PC上的荡神志、刀剑封魔录、封神榜之英雄无敌P...

硬盘怎么清洁
硬盘怎么清洁

给笔记本电脑硬盘清理灰尘的方法如下:1、用螺丝...

410m和7670哪个好
410m和7670哪个好

首先三款笔记本的处理器都是i52450m,内存...

手机2k17乔丹怎么获得
手机2k17乔丹怎么获得

NBA2k17选择乔丹先创建MC人物,打三局大...

多态、抽象类、接口练习:愤怒的小鸟
多态、抽象类、接口练习:愤怒的小鸟

需求说明:模拟实现愤怒的小鸟,定义鸟叫的接口,...

rx480配什么amdcpu
rx480配什么amdcpu

rx480可以搭配酷睿i3-6100cpu,酷...

6s主要的指导是什么
6s主要的指导是什么

6s指的是什么6s指的是什么,在现实生活中,6...

手机里dst什么意思
手机里dst什么意思

将时间在正常情况下提前一小时,如果实行“夏令时...

斗鱼1鱼翅等于多少鱼丸
斗鱼1鱼翅等于多少鱼丸

100鱼丸=100g,1T=1000kg=10...