base64 加密原理 解密原理


假設需要加密的字符串是Jasmine

 

具體轉換步驟:

第一步   將待轉換的字符串轉為一個個字符
第二步  計算每一個字符對應的ASCII碼十進制
第三步  計算出十進制對應的二進制,若不足8位,在前面添加0進行補全
第四步  將8位的二進制碼,按照6個6個一組划分,若不能整除6,在最末添加0補足6位
第五步   計算對應的十進制編碼
第六步   按照base64表,查看對應的字符
第七步   將加密后的字符3個3個分成一組,不足3位的添加=進行補全
第八步   得到最終結果

同時得到base64位加密后的特征:
長度是3的倍數
只含有65中字符,大寫的A至Z,小寫的a至z,數字0到9,以及3種符號+/ =,=最多兩個,且在末尾

 

 

轉換表如上

 

 

sun.misc.中自帶Base64的加密和解密函數
public class TestBase {

    String a = "Jasmine";
    String b= "SmFzbWluZQ==";


    @Test
    public void Test() throws IOException {
        BASE64Encoder encoder=new BASE64Encoder();
        String content=new String(encoder.encodeBuffer(a.getBytes("UTF-8")));
        BASE64Decoder decoder = new BASE64Decoder();
        String content2 =new String(decoder.decodeBuffer(b),"UTF-8");
        System.out.println(content);
        System.out.println(content2);
    }



}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM