zoukankan      html  css  js  c++  java
  • MD5,sha1加密工具类

    /**
         * 利用MD5加密
         * @return String  加密后的字符串
         * @param str  待加密的字符串
         * @throws NoSuchAlgorithmException   异常
         * @throws UnsupportedEncodingException  异常
         */
        @SuppressWarnings("finally")
        public String Md5(String str) {
            String newstr = "";
            //1.确定计算方式
            MessageDigest md5;
            try {
                md5 = MessageDigest.getInstance("MD5");
                BASE64Encoder base64Encoder=new BASE64Encoder();
                //2。加密后的字符串
                newstr = base64Encoder.encode(md5.digest(str.getBytes("utf-8")));
            } catch (NoSuchAlgorithmException e) {
                e.printStackTrace();
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }finally{
                return newstr;
            }
        }
    /**
         * sha1加密
         * @param str 返回加密字符串
         * @return
         */
        public static String getSha1(String str) {
            if (str == null || str.length() == 0) {
                return null;
            }
            char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
            try {
                MessageDigest mdTemp = MessageDigest.getInstance("SHA1");
                mdTemp.update(str.getBytes("UTF-8"));
    
                byte[] md = mdTemp.digest();
                int j = md.length;
                char buf[] = new char[j * 2];
                int k = 0;
                for (int i = 0; i < j; i++) {
                    byte byte0 = md[i];
                    buf[k++] = hexDigits[byte0 >>> 4 & 0xf];
                    buf[k++] = hexDigits[byte0 & 0xf];
                }
                return new String(buf);
            } catch (Exception e) {
                return null;
            }
        }
    勿忘初心 得过且过
  • 相关阅读:
    SetROP2
    FillRect与FrameRect用法
    MFC(继续画图,孙鑫C++第十讲笔记整理)
    海康威视DS-4100、4000HC 系列板卡SDK编程指南
    C--算法与数据结构--顺序表操作
    HTML 5--adding paragraphs
    HTML 5--基础
    temp--文件夹中的文件处理
    Java--蓝桥杯真题(二)
    Java--蓝桥杯真题
  • 原文地址:https://www.cnblogs.com/xpf1009/p/9227310.html
Copyright © 2011-2022 走看看