您现在的位置是:首页 > 精选知识 >正文

今日md5加密算法介绍及md5加密算法的java实现

发布时间:2022-07-10 21:36:22禄全致来源:

导读大家好,小常来为大家解答以上问题。md5加密算法介绍及md5加密算法的java实现很多人还不知道,现在让我们一起来看看吧!1、MD5算法是典型的...

大家好,小常来为大家解答以上问题。md5加密算法介绍及md5加密算法的java实现很多人还不知道,现在让我们一起来看看吧!

1、MD5算法是典型的消息摘要算法,其前身有MDMD3和MD4算法,它由MDMD3和MD2算法改进而来。

2、不论是哪一种MD加密算法,它们都需要获得一个随机长度的信息并产生一个128位的信息摘要。

3、如果将这个128位的二进制摘要信息换算成十六进制,可以得到一个32位的字符串,因此我们加密完成后的16进制的字符串长度为32位。

4、下面我们将通过java代码来实现md的加密代码并进行测试。

5、jdk自身所带的支持md2以及md5的加密实现。

6、本篇都将介绍如何编写。

7、首先我们在myeclipse首页导航菜单处点击File,然后选择new,然后选择Java Project。

8、进入创建java项目界面。

9、然后在项目创建界面输入本次测试所用的项目名称:MdJDKUtil,选择JRE环境本篇选择为1.7,选择完毕后点击Finish。

10、完成项目的创建。

11、然后右击项目,选择new,然后选择class。

12、进入创建实体类界面。

13、具体操作如下图所示。

14、然后在新建类界面,输入本次用的包名称:com.md,类名称为:md5JdkUtil,勾选自动生成main函数。

15、以上信息填写完毕后,点击Finish,完成实体类的创建。

16、具体操作如下图所示。

17、由于本篇中md加密后的信息最终以16进制输出,因此我们首先编写byte数组转换为16进制并以字符串形式展现。

18、首先我们创建方法名称:convertByteToHexString,此方法要一个传入参数为byte数组,并最终返回String类型。

19、具体代码实现如下图所示。

20、然后我们编写md2加密算法的实现。

21、方法名称为:md2Jdk,此方法需要传入一个参数String(原始信息),返回为String(加密后信息)。

22、此方法内加密核心主要利用了jdk自带的MessageDigest类,此类位于:java.security包下。

23、具体实现代码如下图所示。

24、然后我们编写md5加密算法实现。

25、方法名称为:md5Jdk,同样需要传入一个参数String(原始信息),返回为String(加密后信息)。

26、此方法的核心方法同md2一样也是利用了MessageDigest类的方法。

27、具体实现如下图所示。

28、下面我们编写测试类。

29、在main函数内调用写好的两个加密方法:md2Jdk,md5Jdk。

30、传入相同的参数hello jdk md。

31、分布对加密后的信息进行输出。

32、具体实现代码如下图所示。

33、最后我们运行程序查看结果。

34、可以看到md2以及md5加密算法的结果,加密后信息长度都为32位16进制。

35、由于此方法不可逆,因此没有解密方法。

36、具体效果如下图。

本文到此结束,希望对大家有所帮助。

标签:

上一篇
下一篇