MD5加密

Posted alongg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MD5加密相关的知识,希望对你有一定的参考价值。

因为时间和精力的原因,退了一步,在张哥的教导下,我偶然知道MD5的存在,而因为sql注入的原因,使得程序需要进行加密,后续还可以加盐

这里简单运用下MD5

代码如下,先创建一个MD5工具类

package MD5;

import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class MD5Utils {
    /**     * 使用md5的算法进行加密     */    
    public static String md5(String plainText) {
        byte[] secretBytes = null;
        try {
            secretBytes = MessageDigest.getInstance("md5").digest(
                    plainText.getBytes());
            } catch (NoSuchAlgorithmException e) {
                throw new RuntimeException("没有md5这个算法!");
                }
        String md5code = new BigInteger(1, secretBytes).toString(16);// // 16进制数字
        // 如果生成数字未满32位,需要前面补0
        for (int i = 0; i < 32 - md5code.length(); i++) {
            md5code = "0" + md5code;
            }
        return md5code;
    }
    /** *二次加密     */
    public static String convertMD5(String inStr) {
        char[] a = inStr.toCharArray();
        for (int i = 0; i < a.length; i++) {
            a[i] = (char) (a[i] ^ ‘t‘);
        }
        String s = new String(a);
        return s;
    }
}

然后进行测试

package MD5;

public class test {
    public static void main(String[] args) {
        /**
         * 测试
         */
        String name=MD5Utils.md5("root");
        String password=MD5Utils.md5("123456");
        System.out.println(name);
        System.out.println(password);
        String name2=MD5Utils.convertMD5("root");
        System.out.println(name2);
        
        //测试
        if(name.equals(MD5Utils.md5("root"))) {
            System.out.println(true);
        }else {
            System.out.println(false);
        }
        //测试
        if(name2.equals(MD5Utils.convertMD5("root"))) {
            System.out.println(true);
        }else {
            System.out.println(false);
        }
    }
}

程序运行结果图

技术图片

 

 

 

龙欺

以上是关于MD5加密的主要内容,如果未能解决你的问题,请参考以下文章

MD5加密C#和js代码加密结果不同

MD5加密的代码

Java实现MD5加密及解密的代码实例分享

MD5 加密方法

jmeter如何使用使用MD5加密?

急求 MD5的加密解密算法,用C++实现的源代码 高分答谢