md5加密原理图解(md5加密原理)

你们好,最近小未来发现有诸多的小伙伴们对于md5加密原理图解,md5加密原理这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。

1、 MD5算法是一种典型的消息摘要算法。它的前身是MD2、MD3、MD4算法,是由MD4、MD3、MD2算法改进而来。

2、 无论是哪种MD加密算法,都需要得到一个随机长度的信息,生成一个128位的信息摘要。如果将这个128位的二进制摘要信息转换成十六进制,就可以得到一个32位的字符串。

3、 因此,我们加密后的十六进制字符串的长度是32位。

4、 接下来我们将通过java代码实现md的加密代码,并进行测试。Jdk自己的加密实现,支持md2和md5。本文将介绍如何写作。首先,我们在myeclipse主页的导航菜单上点击File,然后选择new。

5、 然后选择Java项目。进入创建java项目的界面。

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

7、 然后右键单击该项目,选择“新建”,然后选择“类”。进入创建实体类界面。具体操作如下图所示。

8、 然后在新建类界面,输入包名:com.md和类名:md5JdkUtil,勾选自动生成主函数。完成上述信息后,单击Finish完成实体类的创建。具体操作如下图所示。

9、 因为本文中md加密的信息最终输出的是十六进制,所以我们先写字节数组将其转换成十六进制,并以字符串形式显示。首先,我们创建方法名:convertByteToHexString,

10、 这个方法需要一个传入参数为byte的数组,最后返回一个String类型。具体代码实现如下图所示。

11、 然后我们编写md2加密算法的实现。该方法的名称是:md2Jdk。这个方法需要传入一个参数字符串(原始信息),并以字符串(加密信息)的形式返回。

12、 该方法中的加密核心主要使用jdk自带的MessageDigest类,该类位于:java.security包下。具体实现代码如下图所示。

13、 然后我们写md5加密算法。方法名为:md5Jdk,还需要传入一个参数字符串(原始信息),并以字符串形式返回(加密信息)。

14、 这个方法的核心方法和md2一样,也是使用MessageDigest类的方法。具体实现如下图所示。

15、 让我们写一个测试类。在主函数中调用两个写好的加密方法:md2Jdk和md5Jdk。传入相同的参数hello jdk md. Distribution输出加密的信息。具体实现代码如下图所示。

16、 最后,我们运行程序来查看结果。可以看到md2和md5加密算法的结果,加密信息的长度是32位十六进制。由于这种方法是不可逆的,所以没有解密方法。具体效果如下图。

以上就是md5加密原理这篇文章的一些介绍,希望对大家有所帮助。

免责声明:本文章由会员“金楠一”发布如果文章侵权,请联系我们处理,本站仅提供信息存储空间服务如因作品内容、版权和其他问题请于本站联系

金楠一
免责声明:本文章由会员“金楠一”发布,如果文章侵权,请联系我们处理,本站仅提供信息存储空间服务;如因作品内容、版权和其他问题请于本站联系