計算機里面的加解密其實是和編程語言無關(guān)的互例,而且隨著計算機的飛速發(fā)展,各種各樣的加解密筝闹、包括安全策略不斷變化媳叨。這里只介紹最簡單的,后面會有單獨的章節(jié)來單獨介紹加密关顷。
ApacheCodec里面包含了一些常用的加解密算法糊秆,可以直接調(diào)用。
代碼參見com.critc.CodecTest
:
public static void main(String[] args) {
//MD5加密
System.out.println("MD5加密:" + DigestUtils.md5Hex("abc"));
//sha加密
System.out.println("sha加密:" + DigestUtils.shaHex("def").toString());
//加密
String str = "abc"; // abc為要加密的字符串
byte[] b = Base64.encodeBase64(str.getBytes(), true);
System.out.println("base64加密:" + new String(b));
//解密
String str2 = "YWJj"; // YWJj為要解密的字符串
byte[] b2 = Base64.decodeBase64(str2.getBytes());
System.out.println("base64解密:" + new String(b2));
}
這里面要說明一下议双,MD5和sha是不可逆的痘番,一般用于密碼等敏感信息的加密,base64是可逆的聋伦,特別適合在http夫偶,mime協(xié)議下快速傳輸數(shù)據(jù)界睁。