1. 程式人生 > >【微信開發-JavaWeb】SHA1演算法

【微信開發-JavaWeb】SHA1演算法

微信開發-SHA1演算法

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;
    }
}