Base編碼及其作用

Base64編碼的作用:

由于某些系統中只能使用ASCII字符。Base64就是用來將非ASCII字符的數據轉換成ASCII字符的一種方法。

Base編碼表

a-z A-Z 0-0 + / =(等號是用來末尾填充的)


image.png

具體實現

Base64要求把每三個8Bit的字節轉換為四個6Bit的字節(38 = 46 = 24),然后把6Bit再添兩位高位0,組成四個8Bit的字節,也就是說,轉換后的字符串理論上將要比原來的長1/3。
舉例:
轉換前 aaaaaabb ccccdddd eeffffff
轉換后 00aaaaaa 00bbcccc 00ddddee 00ffffff

其他說明

1.標準base64只有64個字符(英文大小寫、數字和+、/)以及用作后綴等號;

2.base64是把3個字節變成4個可打印字符,所以base64編碼后的字符串一定能被4整除(不算用作后綴的等號);

3.等號一定用作后綴,且數目一定是0個、1個或2個。這是因為如果原文長度不能被3整除,base64要在后面添加\0湊齊3n位。為了正確還原,添加了幾個\0就加上幾個等號。顯然添加等號的數目只能是0、1或2;

4.嚴格來說base64不能算是一種加密,只能說是編碼轉換。使用base64的初衷。是為了方便把含有不可見字符串的信息用可見字符串表示出來,以便復制粘貼;

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 原文地址:http://blog.csdn.net/benbenxiongyuan/article/details...
    Caiaolun閱讀 2,135評論 3 0
  • 概述 之前一直對加密相關的算法知之甚少,只知道類似DES、RSA等加密算法能對數據傳輸進行加密,且各種加密算法各有...
    Henryzhu閱讀 3,048評論 0 14
  • 昂首仰望天空, 星空依舊深邃; 思緒回蕩, 紅塵分外苦楚; 從古至今, 世人迷亂, 重利益而輕人寰; 官宦弄權, ...
    峰之喃閱讀 282評論 1 13
  • Description Given a non-empty array of non-negative integ...
    Nancyberry閱讀 208評論 0 0
  • 番茄工作法讓我們25分鐘專注的只做一件事。然后休息5分鐘,這5分鐘要完全的放松,不能看微信或做一些用腦的事情。番茄...
    DZ2015閱讀 121評論 0 0