码迷,mamicode.com
首页 > 其他好文 > 详细

MD5加密

时间:2020-05-21 00:23:15      阅读:47      评论:0      收藏:0      [点我收藏+]

标签:try   生成   运用   mat   name   code   ESS   get   public   

因为时间和精力的原因,退了一步,在张哥的教导下,我偶然知道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加密

标签:try   生成   运用   mat   name   code   ESS   get   public   

原文地址:https://www.cnblogs.com/alongg/p/12927250.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!