zoukankan      html  css  js  c++  java
  • javaMD5实现加密解密

    封装一个方法用于加密

         /**
         * md5加密
         * @param data
         * @return
         * @throws NoSuchAlgorithmException 
         */
        public static String md5(String data) throws NoSuchAlgorithmException {
            //信息摘要器                                算法名称
            MessageDigest md = MessageDigest.getInstance("MD5");
            //把字符串转为字节数组
            byte[] b = data.getBytes();
            //使用指定的字节来更新我们的摘要
            md.update(b);
            //获取密文  (完成摘要计算)
            byte[] b2 = md.digest();
            //获取计算的长度
            int len = b2.length;
            //16进制字符串
            String str = "0123456789abcdef";
            //把字符串转为字符串数组
            char[] ch = str.toCharArray();
            
            //创建一个32位长度的字节数组
            char[] chs = new char[len*2];
            //循环16次
            for(int i=0,k=0;i<len;i++) {
                byte b3 = b2[i];//获取摘要计算后的字节数组中的每个字节
                // >>>:无符号右移  
                // &:按位与
                //0xf:0-15的数字
                chs[k++] = ch[b3 >>> 4 & 0xf];
                chs[k++] = ch[b3 & 0xf];
            }
            
            //字符数组转为字符串
            return new String(chs);
        }

    主函数测试

    public static void main(String[] args) throws NoSuchAlgorithmException {
            
            String data = "跳梁小豆tlxd666";
            String result = md5(data);
            System.out.println("加密后:"+result);
    
        }
  • 相关阅读:
    java冒泡算法
    java时间操作
    Java重写构造方法
    正则Sub用法
    Python正则反向引用
    Django发送邮件
    Django导出excel
    Nginx编译安装
    年薪20万Python工程师进阶(7):Python资源大全,让你相见恨晚的Python库
    Go语言学习笔记
  • 原文地址:https://www.cnblogs.com/luoxiaodou/p/9708873.html
Copyright © 2011-2022 走看看