Base32 編碼器/解碼器
已解碼文字
已編碼的 Base32
技術細節
Base32 編碼器/解碼器的運作方式
工具功能說明
Base32 編碼器/解碼器可在 Base32 格式與原始資料之間進行轉換。Base32 是一種二進位轉文字的編碼方案,使用 32 個可列印的 ASCII 字元(A–Z 與 2–7)。它的設計以人類易讀且不區分大小寫為目標,因此適用於無法使用小寫字母的環境,或需要由人手抄寫編碼字串的情境。常見用途包括雙因素驗證應用程式的 TOTP 密鑰,以及大小寫不敏感系統上的檔案系統路徑。
常見的開發者使用情境
開發者會在產生與 Google Authenticator 等驗證器應用程式相容的 OTP/TOTP 密鑰時使用 Base32 編碼;也會在建立可安全用於 URL 與檔名的精簡識別碼時使用;以及在為無法處理任意位元組值的系統編碼二進位資料時使用。解碼則常用於從 OTP 密鑰中取出原始位元組,或驗證從第三方服務收到的 Base32 編碼負載。
資料格式、型別或變體
標準 Base32(RFC 4648)使用字母表 A–Z 與 2–7,並以 = 作為填充,使輸出長度成為 8 個字元的倍數。Base32hex 使用字母表 0–9 與 A–V,以符合自然排序順序。編碼後的輸出約比原始輸入大 60%。在像是 TOTP 密鑰等情境中,有時可以省略填充。此工具在解碼時可同時處理標準與含填充的變體。
常見陷阱與邊界情況
Base32 不區分大小寫,因此解碼器在處理前應將輸入正規化為大寫。無效字元(A–Z 與 2–7 之外的任何字元)會導致解碼錯誤。請勿將 Base32 與 Base32hex 混淆——它們使用不同的字母表並產生不同的輸出。當規範要求時必須包含填充字元;有些實作會默默接受缺少填充,而另一些則會失敗。
何時使用此工具 vs 程式碼
在需要快速進行 Base32 編碼與解碼時,尤其是處理 TOTP 密鑰或在開發期間檢視已編碼的負載,請使用此瀏覽器工具。用於正式環境的應用程式,請使用語言原生的函式庫,例如 base32(Python)、hi-base32(JavaScript)或 Apache Commons Codec(Java),以確保編碼可重現、經過測試,並整合到你的建置流程中。