MD5 서명 암호화 (다시 자바 전화 SMS 플랫폼 인터페이스의 문자 메시지를 보낼 수)

MD5Util 방법

코드를 복사
코드를 복사
패키지 com.funcanteen.business.action.pay.util; 

수입 java.security.MessageDigest의; 

Public 클래스 MD5Util { 

    개인 정적 스트링 byteArrayToHexString (바이트 B []) { 
        StringBuffer를 resultSb = 새의 StringBuffer (); 
        대해 INT (I = 0; I는를 <b.length를, 난 ++) 
            resultSb.append (byteToHexString (b [I])); 

        () resultSb.toString를 리턴; 
    } 

    개인 정적 문자열 byteToHexString (바이트 b) { 
        INT N = B; 
        경우 (N <0) 
            , N + = 256; 
        INT (D1) = N / 16; 
        INT D2 = N의 16 %; 
        hexDigits [D1] + hexDigits [D2]을 리턴; 
    }

    공공 정적 스트링 MD5Encode (문자열 원점 문자열 charsetname) { 
        문자열 resultString = NULL; 
        시도 { 
            resultString = 새로운 문자열 (원점); 
            MessageDigest 등 MD = MessageDigest.getInstance ( "MD5"); 
            경우 (charsetname == 널 || "".equals (charsetname)) 
                resultString = byteArrayToHexString (md.digest (resultString 
                        .getBytes ())); 
            다른 
                resultString = byteArrayToHexString (md.digest (resultString 
                        .getBytes (charsetname))); 
        } 캐치 (예외 예외) { 
        } 
        resultString를 반환; 
    }
    
    개인 정적 최종 문자열 hexDigits [] = { "0", "1", "2", "3", "4", "5", 
        "6", "7", "8", "9", " A ","B ","C ","D ","E ","F "}; 
}
코드를 복사

 

코드를 복사

2 : 서명 포장 방법

코드를 복사
   //设置签名
    공공 문자열 getSignature (지도 <문자열, 문자열>지도) { 
        StringBuffer를 SB = 새로운 StringBuffer를 (); 
        대한 (의 Map.Entry <문자열, 문자열> 나 : map.entrySet는 ()) { 
            . sb.append (me.getKey ()) ( "=")를 추가 & "(추가 (me.getValue은 ()) 추가.. "); 
        } 
        sb.append ( "키 =")에 추가 ( 'XXXXXXXXXXXXXXXXXXXX. "); 
        MD5Util.MD5Encode (sb.toString (), NULL) 반환; 
    }
코드를 복사

3 : 콜 서명 방법

코드를 복사
                //要发送给用户的模板信息
                트리 맵 <문자열, 문자열> = josnMap 새로운 트리 맵 <문자열, 문자열> (); 
                josnMap.put ( "이름", stallApply.getAccountName ()); 
                문자열 jsonData = JSON.toJSONString (josnMap); 
                //封装组装签名
                지도 <문자열, 문자열>지도 = 새로운 트리 맵 <문자열, 문자열> (); 
                문자열 타임 스탬프 = System.currentTimeMillis는 () / 1000 + ""; 
                map.put ( "JSON", jsonData); 
                map.put ( "모바일"stallApply.getMobile ()); 
                map.put ( "templateCode", "SMS_74665033"); 
                map.put ( "타임 스탬프", 타임 스탬프);
코드를 복사

 

 
 
 
가기 좋은 텍스트  내 관심사 

MD5Util 방법

코드를 복사
코드를 복사
패키지 com.funcanteen.business.action.pay.util; 

수입 java.security.MessageDigest의; 

Public 클래스 MD5Util { 

    개인 정적 스트링 byteArrayToHexString (바이트 B []) { 
        StringBuffer를 resultSb = 새의 StringBuffer (); 
        대해 INT (I = 0; I는를 <b.length를, 난 ++) 
            resultSb.append (byteToHexString (b [I])); 

        () resultSb.toString를 리턴; 
    } 

    개인 정적 문자열 byteToHexString (바이트 b) { 
        INT N = B; 
        경우 (N <0) 
            , N + = 256; 
        INT (D1) = N / 16; 
        INT D2 = N의 16 %; 
        hexDigits [D1] + hexDigits [D2]을 리턴; 
    }

    공공 정적 스트링 MD5Encode (문자열 원점 문자열 charsetname) { 
        문자열 resultString = NULL; 
        시도 { 
            resultString = 새로운 문자열 (원점); 
            MessageDigest 등 MD = MessageDigest.getInstance ( "MD5"); 
            경우 (charsetname == 널 || "".equals (charsetname)) 
                resultString = byteArrayToHexString (md.digest (resultString 
                        .getBytes ())); 
            다른 
                resultString = byteArrayToHexString (md.digest (resultString 
                        .getBytes (charsetname))); 
        } 캐치 (예외 예외) { 
        } 
        resultString를 반환; 
    }
    
    개인 정적 최종 문자열 hexDigits [] = { "0", "1", "2", "3", "4", "5", 
        "6", "7", "8", "9", " A ","B ","C ","D ","E ","F "}; 
}
코드를 복사

 

코드를 복사

2 : 서명 포장 방법

코드를 복사
   //设置签名
    공공 문자열 getSignature (지도 <문자열, 문자열>지도) { 
        StringBuffer를 SB = 새로운 StringBuffer를 (); 
        대한 (의 Map.Entry <문자열, 문자열> 나 : map.entrySet는 ()) { 
            . sb.append (me.getKey ()) ( "=")를 추가 & "(추가 (me.getValue은 ()) 추가.. "); 
        } 
        sb.append ( "키 =")에 추가 ( 'XXXXXXXXXXXXXXXXXXXX. "); 
        MD5Util.MD5Encode (sb.toString (), NULL) 반환; 
    }
코드를 복사

3 : 콜 서명 방법

코드를 복사
                //要发送给用户的模板信息
                트리 맵 <문자열, 문자열> = josnMap 새로운 트리 맵 <문자열, 문자열> (); 
                josnMap.put ( "이름", stallApply.getAccountName ()); 
                문자열 jsonData = JSON.toJSONString (josnMap); 
                //封装组装签名
                지도 <문자열, 문자열>지도 = 새로운 트리 맵 <문자열, 문자열> (); 
                문자열 타임 스탬프 = System.currentTimeMillis는 () / 1000 + ""; 
                map.put ( "JSON", jsonData); 
                map.put ( "모바일"stallApply.getMobile ()); 
                map.put ( "templateCode", "SMS_74665033"); 
                map.put ( "타임 스탬프", 타임 스탬프);
코드를 복사

 

추천

출처www.cnblogs.com/Alex80/p/11256801.html