許虎虎 開發者工具集
50%

Base64 編碼


輸入文字進行Base64編碼

Size : 0 , 0 Characters

Base64 編碼:

Size : 0 , 0 Characters
Base64 編碼

Base64 編碼 是一種將二進位資料轉換為 ASCII 字符串的編碼方式。這個編碼方法的目的是將二進位數據轉換為文本格式,並且能夠以可讀的 ASCII 字符傳輸和儲存,這樣的編碼對於許多需要跨平台傳輸二進位數據的應用場景(如電子郵件、HTTP 請求、URL 編碼等)都非常有用。

Base64 編碼的基本原理
Base64 將每 3 個字節(24 位元)的二進位資料轉換為 4 個字符,每個字符對應 6 位元的二進位數據。這樣的方式可以確保編碼結果始終是可顯示的 ASCII 字符,並且在傳輸過程中不會遇到不兼容的字符問題。

Base64 字符集
Base64 使用 64 個字符進行編碼,這些字符包括:

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
其中:

字母 A-Z 代表 0-25
字母 a-z 代表 26-51
數字 0-9 代表 52-61
字符 + 代表 62
字符 / 代表 63
Base64 編碼的過程
Base64 編碼的基本過程如下:

將資料轉換為二進位數據:首先,將要編碼的資料(如文字或二進位文件)轉換為二進位數據(bit)。
將資料分成 6 位元的組:將每 3 個字節(24 位元)分成 4 個 6 位元的組,每個 6 位元對應 Base64 字符集中的一個字符。
填充處理:如果資料的長度不是 3 的倍數,Base64 編碼會使用填充字符 = 來填充,使得編碼結果的長度為 4 的倍數。
Base64 編碼的範例
假設我們要將字串 "hello" 編碼為 Base64。

將字串轉換為二進位數據:

h → 01101000
e → 01100101
l → 01101100
l → 01101100
o → 01101111
所以,hello 的二進位表示是:

01101000 01100101 01101100 01101100 01101111
將二進位數據分為 6 位元的組:

yaml

011010 000110 010101 101100 011011 000110 1111
將每 6 位元組對應到 Base64 字符集中的字符:

011010 → a
000110 → G
010101 → l
101100 → s
011011 → x
000110 → G
1111 會被補充為 == 填充字符(這是因為它不完整,需要兩個填充字符)
最終的 Base64 編碼結果是:aGVsbG8=