zoukankan      html  css  js  c++  java
  • SHA256加密算法封装[我的代码库]

    import java.security.MessageDigest;
    import java.security.NoSuchAlgorithmException;

    public class SHA256Test {
        public static final String ALGORITHM = "SHA-256";

        public static String SHA256Encrypt(String orignal) {
            MessageDigest md = null;
            try {
                md = MessageDigest.getInstance(ALGORITHM);
            } catch (NoSuchAlgorithmException e) {
                e.printStackTrace();
            }
            if (null != md) {
                byte[] origBytes = orignal.getBytes();
                md.update(origBytes);
                byte[] digestRes = md.digest();
                String digestStr = getDigestStr(digestRes);
                return digestStr;
            }

            return null;
        }

        private static String getDigestStr(byte[] origBytes) {
            String tempStr = null;
            StringBuilder stb = new StringBuilder();
            for (int i = 0; i < origBytes.length; i++) {
                // System.out.println("and by bit: " + (origBytes[i] & 0xff));
                // System.out.println("no and: " + origBytes[i]);
                // System.out.println("---------------------------------------------");
                // 这里按位与是为了把字节转整时候取其正确的整数,java中一个int是4个字节
                // 如果origBytes[i]最高位为1,则转为int时,int的前三个字节都被1填充了
                tempStr = Integer.toHexString(origBytes[i] & 0xff);
                if (tempStr.length() == 1) {
                    stb.append("0");
                }
                stb.append(tempStr);

            }
            return stb.toString();
        }

        public static void main(String[] args) {
            System.out.println(SHA256Encrypt("AAaa11"));
        }

    }

  • 相关阅读:
    Myeclipse导出war包
    报表移动端如何进行移动设备绑定与撤销
    MySQL检查运行的mysqld服务器是否支持OpenSSL
    JavaScript替换字符串中最后一个字符
    dns 添加域名
    连接linux系统sftp下载文件
    8.1 Optimization Overview
    Chapter 8 Optimization
    19.6.1 Partitioning Keys, Primary Keys, and Unique Keys 分区键,主键,和唯一健
    Web报表页面如何传递中文参数
  • 原文地址:https://www.cnblogs.com/leipei2352/p/2614131.html
Copyright © 2011-2022 走看看