Base32 编解码工具

文本与 Base32 双向转换,支持 RFC 4648 标准变体与 Crockford Base32 变体。Crockford 模式可选生成或校验校验和,识别用户输入错误。完美支持中文与 Emoji,数据仅在浏览器本地处理。

Base32 结果0 字 · 0
所有数据仅在你浏览器内处理,不会上传到任何服务器。

常见问题

什么是 Base32?与 Base64 有何区别?

Base32 是一种将二进制数据编码为可打印 ASCII 字符的方案,每 5 字节(40 位)数据编码为 8 个字符。与 Base64 相比,Base32 字符集更小(32 vs 64),编码后体积更大(约 60% 膨胀 vs 33%),但具有以下优势:①不区分大小写,适合口述、电话、手写场景;②字符集仅含字母与数字,无 +///= 等特殊符号,URL 友好;③更易被二维码、OCR 系统识别。

什么是 RFC 4648 标准 Base32?

RFC 4648 是 IETF 制定的 Base16/Base32/Base64 编码规范。标准 Base32 字符集为 A-Z2-7(共 32 字符),不足 8 字符的尾部用 = 填充。该规范广泛应用于 TOTP 共享密钥(如 Google Authenticator)、DNS 主机名编码、P2P 协议握手等场景。

什么是 Crockford Base32?适用于什么场景?

Crockford Base32 是 Douglas Crockford 设计的变体,字符集为 0-9A-Z 去除 I/L/O/U(共 32 字符)。解码时 I/L 归一化为 1O 归一化为 0,避免易混字符导致的输入错误。不使用 = 填充。适用于账号号码、订单号、密钥指纹、许可证密钥等需要人工输入且对错误容忍度低的场景。

Crockford 校验和如何工作?

Crockford 规范支持在编码末尾附加 1 个校验字符。校验值 = (字节序列视为大整数) mod 37,映射到字符表 0-9A-Z*~$=U(共 37 字符)。本工具在编码时勾选「附加校验和」会在结果末尾追加该字符;解码时勾选「校验校验和」会自动验证末位字符是否符合期望值,不匹配则提示「数据可能被误输入」。校验和可识别大部分单字符替换错误与部分换位错误。

Base32 解码时大小写敏感吗?

不敏感。本工具在解码时自动将输入归一化为大写再查表,无论输入是小写、大写还是混合大小写都能正确解码。这是 RFC 4648 与 Crockford 共同的设计:Base32 字符集本身不区分大小写,解码器应接受任意大小写组合。

Crockford 模式下 I/L/O/U 字符如何处理?

Crockford 规范将易混字符归一化:I/i/L/l 全部解码为数字 1O/o 解码为数字 0U/u 不在编码字符集内(仅作为校验字符表的一员),出现在数据部分会被识别为非法字符。这种归一化设计让用户在输入时即使误输 O0,工具仍能正确解码。

什么场景适合用 Base32 而非 Base64?

TOTP 共享密钥:Google Authenticator、TOTP 应用要求 Base32 编码的密钥;②账号/订单号:需要人工输入或口述的标识符,Base32 不区分大小写、无特殊字符,错误率更低;③二维码短链:Base32 字符集仅含字母与数字,二维码编码效率高于含特殊符号的 Base64;④OCR 识别:自动识别系统对纯字母数字的识别率更高;⑤无障碍场景:屏幕阅读器对字母数字的朗读更清晰,+// 等符号容易引起歧义。

数据会上传到服务器吗?

不会。本工具完全在浏览器内运行,所有编码/解码/校验和逻辑由 JavaScript 在你本地执行,输入内容不会发送到任何服务器。