0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
設定
Base64 編碼和解碼文字,支援多種字元編碼。URL-safe 變體將 + 替換為 -,/ 替換為 _,並刪除填充 = (RFC 4648 §5)。
操作
變體
編碼
轉線跳躍
0

運作方式

Base64 使用 64 個可列印的 ASCII 字元表示資料。每 3 個輸入位元組變成 4 個字元,因此結果比原始大約多佔 33%。

它既不是加密也不是壓縮:它是一種任何人都能解碼的可逆編碼。它用於在僅供文字使用的通道上傳輸二進位資料。

URL 安全變體(RFC 4648 §5)使用 - 和 _ 代替 + 和 /,並省略 = 填充,因此可以將結果放入 URL 和檔名中而無需轉義。

範例

Hello WorldSGVsbG8gV29ybGQ=
CaféQ2Fmw6k=在 UTF-8 中,非 ASCII 字元佔用超過一個位元組,因此“é”會增加兩個位元組。
>>>?estándar: Pj4+Pw== · URL-safe: Pj4-PwURL 安全變體將 + 和 / 替換為 - 和 _,並移除 = 填充。

使用情境

  • 透過 data URI 將圖片、字型或圖示直接嵌入 HTML/CSS。
  • 傳送電子郵件附件(MIME)或 JSON 內的二進位資料。
  • 將金鑰、憑證或權杖儲存在環境變數和設定檔中。
  • 為 HTTP 的 Authorization: Basic 標頭對憑證進行編碼。

常見問題

Base64 是一種加密方法嗎?

不是。它是無密鑰的可逆編碼:任何人都能解碼。它不提供任何安全性;要保護資料必須加密。

為什麼結果以“=”結尾?

“=”是填充(padding),當輸入不是 3 位元組的倍數時用來補足 4 個字元的區塊。URL 安全變體會省略它。

什麼時候更適合使用 URL 安全變體?

當值要放入 URL、檔名或識別碼時,因為 + 和 / 字元在這些上下文中具有特殊含義。

為什麼編碼後的文字比原始的更長?

因為它每 3 個輸入位元組使用 4 個字元,所以體積增大約 33%。

我的文字會上傳到伺服器嗎?

不會。編碼和解碼完全在你的瀏覽器中進行。