什麼是Base64 編解碼器?
Base64編碼/解碼器可以即時將文字轉換為Base64編碼或反向解碼。Base64常用於在HTML/CSS中嵌入圖片、編碼電子郵件附件、以文字形式傳輸二進位資料以及處理API認證權杖——所有處理都在你的裝置上私密完成。
編碼遵循標準 Base64 (RFC 4648):每 3 個位元組對應 4 個 ASCII 輸出字元,字元集為 A-Z、a-z、0-9、+、/,末端用 = 補齊。工具正確處理 UTF-8 文字(中文、emoji 來回不漏),也接受最大 5 MB 的檔案,輸出可直接貼進 HTML、CSS 或 JSON 的 data: URI。
使用方法
- 在輸入區域貼上或輸入純文字進行Base64編碼,或貼上Base64字串進行解碼。
- 使用方向切換按鈕在編碼和解碼模式之間切換。
- 一鍵複製結果——可以直接貼到程式碼、電子郵件或設定檔中使用。
何時使用
- 解碼 Basic Auth 標頭裡空白後的 user:pass,排查 API 驗證問題。
- 把小圖示或字型以 data URI 直接嵌入 HTML 或 CSS。
- 在 JSON 或 YAML 中塞入二進位資料(簽章、憑證、圖像位元組)時先轉 Base64。
結果
編碼「Hello, World!」→「SGVsbG8sIFdvcmxkIQ==」用於嵌入JSON資料。解碼「dXNlcjpwYXNz」→「user:pass」來檢查Basic Auth認證標頭。
常見問題
- 為什麼編碼後的輸出比原文長?
- Base64 把 3 個位元組變成 4 個 ASCII 字元,所以輸出多出約 33%。300 KB 圖片編碼後大約 400 KB 文字,加上 data URI 前綴。這是換取「純文字傳輸」要付出的代價。
- Base64 算加密或壓縮嗎?
- 都不算。這是編碼方式,任何人都能不用金鑰瞬間解碼。它的用途是讓二進位資料變成文字安全格式,不是用來藏祕密。輸出永遠比輸入大,不會更小。
- 為什麼解碼會報「無效 Base64」?
- 通常是字元少或多:= 補齊被刪掉了,或是 URL 安全變體(- 和 _ 取代 + 和 /),也可能夾雜了換行。重新完整複製,包括末尾的 =,再試一次。
- 可以編碼 PNG、PDF 之類的二進位檔嗎?
- 可以。透過上傳選檔,5 MB 以內的檔案會以位元組讀入並輸出 data URI(data:image/png;base64,...),可直接貼進 <img> 標籤或 CSS 的 background-image。
- 輸出跟 Python、Node 的 base64 一致嗎?
- 標準 Base64 完全相同。Python 的 base64.b64encode 與 Node 的 Buffer.from(str).toString('base64') 輸出一致。若對端要 URL 安全變體,把 + 換成 -、/ 換成 _ 即可。