📝 输入内容
📤 处理结果
RFC4648 标准 · Crockford · z-base-32 · 中文 UTF-8 支持
Base32 使用 32 个可打印 ASCII 字符(标准字母表为大写字母 A~Z 与数字 2~7)对任意字节数据进行编码:把数据的二进制串按 5 个比特一组切分,每组转成十进制后对应字母表中的一个字符。由于数据以字节(8 bit)为单位而分组为 5 bit,编码总长是 40 bit(5 与 8 的最小公倍数)的倍数,不足时在末尾用 = 补位(每个 = 对应 5 个比特),因此编码后长度约为原来的 8/5 倍(160%)。
| 对比项 | Base32 | Base64 |
|---|---|---|
| 膨胀率 | 160%(8/5) | 约 133%(4/3) |
| 字母表 | A-Z、2-7 | A-Z、a-z、0-9、+、/ |
| 大小写敏感 | 否(全大写) | 是 |
| URL 安全 | 好(无 + /) | 需 URL 变体替换 + / |
| 典型场景 | TOTP 两步验证密钥、DNS 记录、文件名 | 邮件附件、网页内嵌图片、HTTP Basic |
Base32 牺牲了约 27% 的空间换取「不区分大小写、易朗读、易人工抄写、不易混淆 0/O 与 1/I」的特性,适合对人类可读性要求高的场景。
ABCDEFGHIJKLMNOPQRSTUVWXYZ234567 —— 最通用,TOTP 谷歌验证器密钥即采用它。0123456789ABCDEFGHJKMNPQRSTVWXYZ —— 去掉 I、L、O、U 避免与 1、0 混淆,解码时把 0→O、1→I、8→B 容错。ybndrfg8ejkmcpqxot1uwisza345h769 —— 全小写,选取易于区分和书写的字符,常用于 P2P 与人机转录场景。以单字节字符 % 为例:其二进制为 100101,补足 8 位得 00100101;按 5 bit 切分为 00100 和 101,后者不足 5 位末尾补 0 得 10100;查表分别对应 E 和 U;凑满 40 bit 还差 30 bit(6 组),故输出 EU======。解码则是逆过程:去掉 = 后把每个字符还原成 5 bit 二进制串,从头按 8 bit 切分得到原始字节。
选择「编码」或「解码」模式并粘贴内容即实时出结果;点击「⇄ 交换」把结果送回输入框反向验证。两步验证(2FA)添加密钥时看到的 JBSWY3DPEHPK3PXP 这类字符串就是标准 Base32。所有转换均在浏览器本地完成,不会上传任何数据。