zoukankan      html  css  js  c++  java
  • java之md5加密算法

    /**
     * @author 
     *
     */
    public class MD5 {
    
        private static final String[] digital = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e",
                "f" };
    
        /**
         * 
         * <p>
         * Title: initMD5
         * </p>
         * <p>
         * Description: md5加密
         * </p>
         * 
         * @param txt
         * @return
         * @throws Exception String
         */
        public static String initMD5(String txt) throws Exception {
    
            // 获取封装MD5算法的核心类
            MessageDigest md5 = MessageDigest.getInstance("MD5");
    
            // 将明文经过md5加密后变成长度位16字节的数组----->32位的字符串(16进制)
            byte[] bytes = md5.digest(txt.getBytes("utf-8"));
            // 用来保存最终的密文
            String miWen = "";
            for (byte b : bytes) {
                int temp = b;
                if (temp < 0) {
                    temp += 256;
                }
                // 经过判断后,temp一定是正数
                int index1 = temp / 16;// 取商
                int index2 = temp % 16;// 取余
                miWen += digital[index1] + digital[index2];
    
            }
            return miWen;
        }
    
        /**
         * 
         * <p>Title: finalMD5</p>  
         * <p>Description: md5最终加密</p>  
         * @param txt
         * @return
         * @throws Exception
         * String
         */
        public static String finalMD5(String txt) throws Exception {
            return initMD5(initMD5(initMD5(txt + "md5" + txt) + "md5" + txt));
        }
    
        public static void main(String[] args) throws Exception {
            String miWen = MD5.finalMD5("123456");
            System.out.println(miWen);
        }
  • 相关阅读:
    安装和使用 PyInstaller 遇到的问题
    Mininet 系列实验(七)
    Mininet 系列实验(六)
    Mininet 系列实验(五)
    Mininet 系列实验(三)
    Mininet 系列实验(一)
    Linux进程间通信(消息队列/信号量+共享内存)
    bugku 输入密码查看flag
    bugku 头等舱
    bugku 你必须让他停下
  • 原文地址:https://www.cnblogs.com/wqk66/p/11232209.html
Copyright © 2011-2022 走看看