BASE64編碼算法

簡單來說,就是用6 bit代替原來的8 bit(一個字節(jié))入蛆。

對"Man"編碼為"TWFu":

BASE64_1.png

ASCII碼

標準ASCII碼從0~127共128個字符私沮。

其中0~31琉闪、127這33個字符稱為控制字符邦泄。如0為NUL删窒,表示空字符;1為SOH顺囊,表示標題開始等肌索。

其余95個稱為可打印字符。48為0特碳,也就是數字0诚亚;65表示A,也就是大寫字母A等测萎。

BASE64

早期的一些傳輸協議只能傳輸可打印的ASCII碼亡电,但一個字節(jié)(8個bit)的可表示范圍為0~255共256種,如果一個Byte的值超過127硅瞧,那么就無法用ASCII碼表示了。

此時BASE64應運而生恕汇。

BASE64算法只支持64個可打印字符腕唧。包含大寫字母A~Z,小寫字母a~z瘾英,0~9共62個枣接,另外兩個字符在不同的系統中有所區(qū)別,標準BASE64編碼中為+/缺谴。

因為一共只有64種字符但惶,所以用6 bit足以表示所有的BASE64字符。

編碼

BASE64用6 bit可以表示了原本的8 bit字符湿蛔。但怎么用6 bit表示8 bit呢膀曾?增加字符的數量。6和8的最小公倍數是24阳啥,3 * 8 = 4 * 6添谊。這樣原來的3個字節(jié)可以用4個BASE64字符表示。也就是原來的3組拆成了4組來表示察迟,每組轉換成十進制斩狱,每個十進制對應一個BASE64字符。

將原來的3個Byte寫成24 bit扎瓶,按照高位到低位每6位組成一個BASE64字符所踊,不足24位時末位補0。當沒有匹配的8 bit字符的時候概荷,用=填充秕岛。

對"M"編碼結果為"TQ==":

BASE64_2.png

解碼

與編碼相反,只需要將對應4組6 bit分隔成3組8 bit,每組8 bit再表示成ASCII字符即可瓣蛀。

因此陆蟆,BASE64算法只是一種編碼算法,不能用于加密惋增。

Base64常用于在通常處理文本數據的場合叠殷,表示、傳輸诈皿、存儲一些二進制數據林束。

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市稽亏,隨后出現的幾起案子壶冒,更是在濱河造成了極大的恐慌,老刑警劉巖截歉,帶你破解...
    沈念sama閱讀 222,865評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件胖腾,死亡現場離奇詭異,居然都是意外死亡瘪松,警方通過查閱死者的電腦和手機咸作,發(fā)現死者居然都...
    沈念sama閱讀 95,296評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來宵睦,“玉大人记罚,你說我怎么就攤上這事】呛浚” “怎么了桐智?”我有些...
    開封第一講書人閱讀 169,631評論 0 364
  • 文/不壞的土叔 我叫張陵,是天一觀的道長烟馅。 經常有香客問我说庭,道長,這世上最難降的妖魔是什么焙糟? 我笑而不...
    開封第一講書人閱讀 60,199評論 1 300
  • 正文 為了忘掉前任口渔,我火速辦了婚禮,結果婚禮上穿撮,老公的妹妹穿的比我還像新娘缺脉。我一直安慰自己,他們只是感情好悦穿,可當我...
    茶點故事閱讀 69,196評論 6 398
  • 文/花漫 我一把揭開白布攻礼。 她就那樣靜靜地躺著,像睡著了一般栗柒。 火紅的嫁衣襯著肌膚如雪礁扮。 梳的紋絲不亂的頭發(fā)上知举,一...
    開封第一講書人閱讀 52,793評論 1 314
  • 那天,我揣著相機與錄音太伊,去河邊找鬼雇锡。 笑死,一個胖子當著我的面吹牛僚焦,可吹牛的內容都是我干的锰提。 我是一名探鬼主播,決...
    沈念sama閱讀 41,221評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼芳悲,長吁一口氣:“原來是場噩夢啊……” “哼立肘!你這毒婦竟也來了?” 一聲冷哼從身側響起名扛,我...
    開封第一講書人閱讀 40,174評論 0 277
  • 序言:老撾萬榮一對情侶失蹤谅年,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后肮韧,有當地人在樹林里發(fā)現了一具尸體融蹂,經...
    沈念sama閱讀 46,699評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,770評論 3 343
  • 正文 我和宋清朗相戀三年惹苗,在試婚紗的時候發(fā)現自己被綠了殿较。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,918評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡桩蓉,死狀恐怖,靈堂內的尸體忽然破棺而出劳闹,到底是詐尸還是另有隱情院究,我是刑警寧澤,帶...
    沈念sama閱讀 36,573評論 5 351
  • 正文 年R本政府宣布本涕,位于F島的核電站业汰,受9級特大地震影響,放射性物質發(fā)生泄漏菩颖。R本人自食惡果不足惜样漆,卻給世界環(huán)境...
    茶點故事閱讀 42,255評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望晦闰。 院中可真熱鬧放祟,春花似錦、人聲如沸呻右。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,749評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽声滥。三九已至眉撵,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背纽疟。 一陣腳步聲響...
    開封第一講書人閱讀 33,862評論 1 274
  • 我被黑心中介騙來泰國打工罐韩, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人污朽。 一個月前我還...
    沈念sama閱讀 49,364評論 3 379
  • 正文 我出身青樓散吵,卻偏偏與公主長得像,于是被迫代替她去往敵國和親膘壶。 傳聞我的和親對象是個殘疾皇子错蝴,可洞房花燭夜當晚...
    茶點故事閱讀 45,926評論 2 361

推薦閱讀更多精彩內容