Apache Commons Codec 使用小結

jopen 10年前發布 | 1K 次閱讀 Java

    最近在做圖片下載的時候需要對圖片鏈接url做 SHA1運算后的結果 SHA1(url)當做圖片的名稱,并且按照SHA1結果的前2位、第3位分別當做一級目錄和目錄,例如 3129f49a746530a891854b171f38a1df3677cc47.jpeg存放的目錄結構: 31/2 /3129f49a746530a891854b171f38a1df3677cc47.jpeg

關于SHA1算法的介紹可以參看Wiki:http://en.wikipedia.org/wiki/SHA-1

這里簡單介紹一下通過 Apache Commons Codec 實現Base64/MD5/SHA1/SHA256等算法,代碼如下:

import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.digest.DigestUtils;

public class EncryptionUtils {

public static String base64Encode(String data){  

    return Base64.encodeBase64String(data.getBytes());  
}  

public static byte[] base64Decode(String data){  

    return Base64.decodeBase64(data.getBytes());  
}  

public static String md5(String data) {  

    return DigestUtils.md5Hex(data);  
}  

public static String sha1(String data) {  

    return DigestUtils.shaHex(data);  
}  

public static String sha256Hex(String data) {  

    return DigestUtils.sha256Hex(data);  
}  

/** 
 * @param args 
 */  
public static void main(String[] args) {  

    String base64 = base64Encode("ricky");  
    System.out.println("base64 encode="+base64);  

    byte[] buf = base64Decode(base64);  
    System.out.println("base64 decode="+new String(buf));  

    String md5 = md5("ricky");  
    System.out.println("md5="+md5+"**len="+md5.length());  

    String sha1 = sha1("test");  
    System.out.println("sha1="+sha1+"**len="+sha1.length());  
}  

} </pre>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!