跳至主要內容
SPCXTools

Base64 編碼與解碼

在文字、檔案與 Base64 之間互相轉換,完整支援 UTF-8 與 Base64URL。

本機執行 — 檔案絕不會離開您的裝置

正在載入工具…

如何使用 Base64 編碼與解碼

  1. 1選擇 編碼 將文字轉換為 Base64,或選擇 解碼 將 Base64 還原為文字。
  2. 2在輸入框中輸入或貼上內容 — 輸出結果會即時更新。
  3. 3如果結果將用於網址、檔名或 JWT,請勾選 URL 安全 (Base64URL)。
  4. 4若要編碼檔案,請在檔案區塊選擇或拖放檔案;勾選 Data URL 即可取得能直接貼入 HTML 或 CSS 的字串。
  5. 5複製轉換結果,或在解碼模式下將解碼後的位元組下載為檔案。

Base64 編碼器與解碼器

Base64 是一種將任何資料(文字、圖片、PDF、金鑰等)僅用 64 個安全字元來表示的方式,這些字元包含:A–Z、a–z、0–9、+ 和 /。此工具可將文字與檔案編碼為 Base64,也能將 Base64 解碼回可讀的文字或原始檔案。所有轉換都在您的瀏覽器中即時完成,您貼上或選取的任何內容都不會被上傳。

主要功能

  • 將文字編碼為 Base64:具備完善的 UTF-8 處理能力,支援所有語言與表情符號。
  • 將 Base64 解碼為文字:容許換行、空白與缺少 padding — 這在從電子郵件或日誌 (logs) 複製內容時非常常見。
  • Base64URL 模式:產生網址安全 (URL-safe) 的輸出結果,常用於 JWT、OAuth 及許多 Web API。
  • 檔案轉 Base64:提供輸出完整 data: URL 的選項,可直接用於 <img src> 或 CSS 的 url()。
  • Base64 轉檔案:當內容為圖片或 PDF 等二進位資料時,可直接下載解碼後的檔案。

Base64 的應用場景

電子郵件附件。 MIME 標準會將附件進行 Base64 編碼,確保二進位檔案能順利通過專為文字設計的系統進行傳輸。

Data URL。 小型圖示與圖片可直接以 data:image/png;base64,… 嵌入 HTML 或 CSS 中,藉此省下額外的網路請求。

API 與設定檔。 憑證、加密金鑰或上傳的檔案等二進位資料,通常會轉換成 Base64 字串並包裝在 JSON 中傳送。Kubernetes 的 Secret 與許多環境變數也使用 Base64 來儲存資料。

身分驗證。 HTTP 基本驗證 (Basic Authentication) 會將 username:password 進行 Base64 編碼後傳送,而 JSON Web Token (JWT) 則是由三個經過 Base64URL 編碼的區塊所組成。若要解析 Token 內容,可以使用 JWT 解碼器。

Base64 的運作原理

編碼器每次會讀取 3 個位元組 (24 位元) 的輸入資料,並將其拆分為 4 個 6 位元的群組。每個 6 位元的值 (0–63) 會對應到 Base64 字母表中的一個字元。當輸入長度不是 3 的倍數時,輸出結果會在結尾補上一個或兩個 = 符號,使其總長度成為 4 的倍數。

由於每 3 個位元組會轉換成 4 個字元,Base64 編碼後的資料體積會比原始資料大約三分之一。這增加的容量,是為了讓二進位資料能安全通過純文字系統所付出的代價。

Base64 與 URL 編碼不同。如果您需要將任意文字放入查詢字串 (query string) 中,請改用 URL 編碼/解碼工具。若要檢查兩個檔案是否完全相同,可以使用 雜湊產生器 來比較它們的檢查碼 (checksum)。

常見問題

Base64 是一種加密方式嗎?
不是。Base64 是一種編碼(Encoding),而非加密(Encryption)。任何人都不需要金鑰就能解碼。它主要用於在純文字通道中傳輸二進位資料,絕對不能用來隱藏機密資訊。
為什麼 Base64 輸出的資料比輸入還要大?
Base64 會將每 3 個位元組轉換成 4 個字元,因此編碼後的資料會比原始資料大約 33%(加上最多兩個 = 填充字元)。
什麼是 Base64URL?
Base64URL 將 + 替換為 -,/ 替換為 _,且通常會省略結尾的 = 填充字元,讓字串能安全地用於網址和檔名中。JSON Web Tokens 就是使用 Base64URL。這裡的解碼器會自動支援這兩種變體。
支援表情符號(Emoji)和非英文文字嗎?
支援。文字在編碼前會先轉換為 UTF-8 位元組,解碼時也會以 UTF-8 處理,因此帶有重音符號的字母、中文、阿拉伯文、表情符號及其他字元都能正確還原。
我的檔案會被上傳嗎?
不會。檔案是透過瀏覽器的 File API 讀取,並直接在您的裝置上進行編碼。沒有任何資料會被傳送到伺服器。
為什麼解碼後的文字看起來像亂碼?
該 Base64 內容可能包含圖片、PDF 或壓縮檔等二進位資料,而不是純文字。請使用 下載檔案 來儲存解碼後的位元組,然後用合適的程式開啟該檔案。