Base64 解碼與編碼工具

貼上文字或 Base64 字串,選好分頁,就能立刻複製結果。

使用方式

在 API 回應、設定檔或電子郵件標頭裡看到一長串英數字,想用 Base64 解碼看看裡面寫了什麼,這個頁面不必安裝任何程式就能處理。上方有「編碼」和「解碼」兩個分頁,選好之後把內容貼進輸入框,結果就會立刻顯示在下方。

編碼時可以輸入任何文字,繁體中文、注音符號、日文或表情符號都沒問題。工具內部以 UTF-8 處理,中文不會變成亂碼。解碼時直接貼上手邊的字串即可,中間的空白和換行會自動略過,URL-safe 格式的「-」與「_」也能辨識。如果輸入格式不正確,畫面會顯示明確的錯誤訊息,而不是一堆看不懂的結果。完成後按下複製按鈕,就能把結果放到剪貼簿。

整個轉換過程都在你的瀏覽器裡進行。就算是檢查登入權杖或公司內部資料,也不會傳送到外部伺服器。

Base64 的運作原理

Base64 是一種只用文字字元來表示二進位資料的方法。它把輸入每 3 個位元組(24 位元)分成一組,再切成 4 段各 6 位元。每段 6 位元對應 0 到 63 的數字,接著換成由大寫字母、小寫字母、數字、「+」與「/」組成的 64 個字元之一。最後如果剩下 1 或 2 個位元組,就用「=」補齊長度。

輸入 位元組數 Base64 結果
abc 3 YWJj
中 3(UTF-8) 5Lit

因為 3 個位元組會變成 4 個字元,編碼後的資料大約比原本多出 33%。中文字在 UTF-8 裡通常佔 3 個位元組,所以一個中文字剛好對應 4 個 Base64 字元。變體 base64url 把「+」改成「-」、「/」改成「_」,而且常常省略「=」,目的是讓結果能直接放進網址或檔名。

請特別注意:Base64 不是加密。它沒有金鑰,也不會隱藏內容,只是把同一份資料換一種寫法。

實用情境與小技巧

Base64 在網頁開發中隨處可見。資料 URI 會在 data:image/png;base64, 後面接上小圖片,直接嵌進 HTML 或 CSS。電子郵件透過 MIME 規格,把附件轉成文字後寄出。由於 JSON 不能直接放二進位資料,很多 API 在傳送檔案時,會把檔案轉成 Base64 字串放進 JSON 酬載。

HTTP 的 Basic 驗證標頭會把「帳號:密碼」寫成 Base64,因為很容易還原,一定要搭配 HTTPS 使用。JWT 則由三段以句點分隔的 base64url 組成,把前兩段解碼就能看到標頭和聲明內容。

分辨的小訣竅:一個字串只包含英文字母、數字和少數符號,而且結尾是「=」或「==」,那它很可能就是 Base64。如果解碼後出現無法閱讀的字元,原始資料大概是圖片之類的二進位檔案。

常見問題

Base64 可以用來保護密碼嗎?

不行。Base64 是編碼而不是加密,任何人不需要金鑰就能馬上還原。要保護機密資料,請使用 AES 等真正的加密方式。

為什麼解碼時會出現錯誤?

通常是字串裡混入了 Base64 不使用的字元、內容被截斷,或解碼出來的位元組不是有效的 UTF-8。

像 JWT 那樣的 URL-safe Base64 也能解碼嗎?

可以。解碼分頁接受 base64url 使用的「-」和「_」,也會自動忽略空白與換行。

我輸入的內容會傳到伺服器嗎?

不會。所有轉換都在你的瀏覽器裡完成,資料不會離開你的裝置。