Apache Commons Codec 使用小結
最近在做圖片下載的時候需要對圖片鏈接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 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!