Base64 是什麼?
Base64 是一種把任意資料(文字、圖片、二進位檔)轉成只有英文字母、數字和 +、/、= 的編碼方式,讓資料能安全放進只接受文字的地方。常見用途包括 Email 附件、網頁中的 data: 圖片、HTTP Basic 驗證標頭、JWT 等。編碼後的長度大約是原本的 4/3 倍。
如何使用
- 按「編碼」或「解碼」選擇方向,按下的按鈕會亮起。
- 在左邊輸入內容。開啟「自動轉換」時,停止輸入後會自動產生結果。
- 按「結果放回輸入」可以把結果移到左邊,並自動切換成相反方向,方便確認能否轉回原文。
原文格式:文字或 Hex
- 文字(UTF-8):一般文字,中文、Emoji 都能正確處理。
- Hex:用十六進位表示原始位元組,例如
ff fe 00。解碼結果不是文字(例如圖片、加密後的資料)時,選擇 Hex 就能看到內容。
標準 Base64 與 URL-safe Base64
| 標準 Base64 | URL-safe Base64 | |
|---|---|---|
| 第 62、63 個字元 | +、/ | -、_ |
| 結尾補位 | 用 = 補到 4 的倍數 | 通常省略 = |
| 常見用途 | Email、data URL、一般資料交換 | 網址參數、檔名、JWT |
解碼時兩種格式都接受,缺少 = 也能解碼,不需要另外切換。
範例
- 文字
Hello 世界編碼後是SGVsbG8g5LiW55WM - Hex
ff fe 00編碼後是//4A,URL-safe 模式則是__4A
檔案與 Base64 互轉
- 檔案轉 Base64:把圖片、PDF 等檔案拖曳到輸入區,或按「選擇檔案」(最大 10 MB)。開啟「加上 data URI 前綴」會產生
data:image/png;base64,...,可以直接放進 HTML 的<img src>或 CSS。 - Base64 轉回檔案:解碼結果是圖片等二進位資料時,按「解碼後下載成檔案」。檔案類型依
data:前綴判斷,沒有前綴時依檔案開頭判斷 PNG、JPEG、GIF、WebP、PDF、ZIP 等。 - 檔案只在你的瀏覽器中讀取,不會上傳。
常見問題
Base64 是加密嗎?
不是。Base64 只是換一種表示方式,任何人都能直接解碼,不能用來保護密碼或機密資料。需要防止被讀取時,請使用真正的加密;需要驗證資料沒被竄改時,可使用 HMAC。
解碼時顯示「二進位資料,不是 UTF-8 文字」?
代表解出來的內容不是文字,可能是圖片、壓縮檔或加密後的資料。把「原文格式」改成 Hex,就能看到原始位元組。
為什麼結尾有一個或兩個 =?
Base64 每 3 個位元組會編成 4 個字元。原始資料長度不是 3 的倍數時,最後會用 = 補齊,讓長度變成 4 的倍數。