java的加密方式有很多中,現在給大家分享一個Base64加密的方式
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
package
com.crypt;
import
sun.misc.BASE64Decoder;
import
sun.misc.BASE64Encoder;
/**
* BASE64加密解密
* @author YUANWEi
*/
public
class
BASE64 {
/**
* BASE64解密
*
* @param key
* @return
* @throws Exception
*/
public
static
byte
[] decryptBASE64(String key)
throws
Exception {
return
(
new
BASE64Decoder()).decodeBuffer(key);
}
/**
* BASE64加密
*
* @param key
* @return
* @throws Exception
*/
public
static
String encryptBASE64(
byte
[] key)
throws
Exception {
return
(
new
BASE64Encoder()).encodeBuffer(key);
}
}
|
為什么要使用Base64加密呢?
Base64編碼的作用:由於某些系統中只能使用ASCII字符。Base64就是用來將非ASCII字符的數據轉換成ASCII字符的一種方法。它使用下面表中所使用的字符與編碼。
而且base64特別適合在http,mime協議下快速傳輸數據。
base64其實不是安全領域下的加密解密算法。雖然有時候經常看到所謂的base64加密解密。其實base64只能算是一個編碼算法,對數據內容進行編碼來適合傳輸。雖然base64編碼過后原文也變成不能看到的字符格式,但是這種方式很初級,很簡單。
Base64編碼方法要求把每三個8Bit的字節轉換為四個6Bit的字節,其中,轉換之后的這四個字節中每6個有效bit為是有效數據,空余的那兩個 bit用0補上成為一個字節。因此Base64所造成數據冗余不是很嚴重,Base64是當今比較流行的編碼方法,因為它編起來速度快而且簡單
轉自:http://www.osblog.net/wangxp/154.html