標籤:
1 import sun.misc.BASE64Decoder; 2 import sun.misc.BASE64Encoder; 3 4 public class Base64Demo { 5 public static void main(String[] args) { 6 byte[] data = "yanglingzhi".getBytes(); 7 String result = new BASE64Encoder().encode(data); 8 System.out.println(result); 9 //String result2 = new BASE64Decoder().decodeBuffer(data);10 }11 12 }
當我沒有匯入正確的包之前,我以為要下載一個jar包,於是下載了Jar包然後匯入,但是匯入之後發現還是不能找到這個類。查資料之後,是因為BASE64密碼編譯演算法需要java內建的jar包,要自己匯入。匯入方法如下:
右擊項目,properties->
雙擊Access rules點擊add在輸入框中輸入** 倆個星號 然後Revolution選擇Accessible。一路OK。
然後就可以匯入相應的包了。
補充:密碼學綜述:
密碼學分類:
(1)訊息編碼:Base64
(2)訊息摘要:MD類 SHA類 MAC
(3)對稱密碼:DES 3DES AES
(4)非對稱密碼:RSA DH金鑰交換
數位簽章:RSASignature DSASignatrue
密碼學五元組:
明文,密文,密碼編譯演算法,解密演算法,密鑰
關於對稱密碼和非對稱密碼:
對稱密碼是指加解密使用相同的密碼體制
非對稱密碼是指加解密使用不同的密鑰--公開金鑰與私密金鑰
公開金鑰是基於數學函數的變換,而不是簡單的代替和置換,這個在第一次使用Github的時候遇到過,配置SSHkeys的時候要在指定地區粘貼一個公開金鑰。
java中常用的類:
(1)訊息編碼:BASE64Encoder(加密類) BASE64Decoder(解密類)
(2)訊息摘要: MessageDigest
(3)對稱密碼:KeyGenerator(金鑰產生器) SecretKey Cipher
(4)非對稱密碼:KeyPairGenertor KeyFactory PublicKey PrivateKey Cipher
(5)數位簽章:Signature
Base64演算法定義:
Base64是一種基於64個字元的編碼演算法,以任意8位位元組序列組合的描述形式,這種形式不易直接識別。經Base64編碼後的字元書是以4為單位的整數倍。
未完。
eclipse匯入BASE64Encoder類的方法