如何進行Base64編碼和解碼

開發者

學習什麼是Base64編碼、何時使用它、如何將文字或文件編碼為Base64並解碼回來——包含實際範例。

什麼是 Base64?

Base64 是一種將「任意位元組(binary)」轉換成「純文字」的編碼方式,只使用 64 個可列印的 ASCII 字元:A–Z、a–z、0–9、加號(+)與斜線(/)。它的設計目的是讓圖片、PDF、壓縮檔、金鑰這種非文字資料,也能安全地通過只接受文字的系統,例如電子郵件正文、URL 查詢字串、JSON 欄位或 XML 屬性。Base64 並不是加密:任何人都可以解碼還原。代價是體積會變大約 33%——每 3 個輸入位元組會變成 4 個輸出字元。

日常常見應用

  • 網頁的 Data URI

    小圖或字體可以直接嵌進 CSS 或 HTML:data:image/png;base64,iVBORw…,省去一次額外的 HTTP 請求。

  • Email 附件(MIME)

    Email 協議設計時只支援 7-bit ASCII,所以任何二進位附件都會在郵件正文裡以 Base64 編碼。

  • JSON / XML 裝載二進位

    當 API 必須在 JSON 欄位裡回傳檔案或金鑰時,Base64 是標準包裝方式,因為 JSON 字串不能直接存放原始位元組。

步驟指南

1

了解Base64

Base64使用64個ASCII字符(A-Z、a-z、0-9、+、/)將二進制數據編碼為文字字符串。它不是加密——是編碼。任何人都可以解碼它。它用於通過純文字通道安全地傳輸二進制數據。

2

將文字編碼為Base64

開啟我們的Base64工具,在輸入欄位貼上您的文字,然後點擊編碼。例如:"Hello, World!" 編碼為 "SGVsbG8sIFdvcmxkIQ=="。

3

將Base64解碼為文字

在解碼欄位貼上Base64字符串,然後點擊解碼。工具將其轉換回原始文字。末尾的填充字符(=)是格式的一部分。

4

常見使用場景

在HTML/CSS中嵌入圖像(data URI):data:image/png;base64,iVBOR... 編碼電子郵件附件(MIME)。在HTTP基本認證標頭中傳遞憑證。在JSON中儲存二進制數據。

5

Base64URL與標準Base64

Base64URL使用-代替+,用_代替/,使字符串對URL安全。JWT使用Base64URL編碼。我們的工具支持兩種變體。

使用免費工具

Base64 編解碼工具

常見問題

Q: Base64會增加文件大小嗎?

A: 會——Base64編碼使數據大小增加約33%。3字節的輸入變成4個Base64字符。

Q: Base64和加密是一樣的嗎?

A: 不是。Base64是編碼,不是加密。它不提供任何安全性——任何人都可以在不使用密鑰的情況下解碼它。對於安全性,請在編碼前使用加密(AES、RSA等)。

Q: "="填充符號是什麼意思?

A: Base64每次編碼3字節為4個字符。如果輸入長度不是3的倍數,則添加=字符作為填充以完成最後一個4字符塊。