Base32 编解码
我要提建议文本与 Base32 互转;支持标准字符集与扩展十六进制(base32hex)、大小写与补位开关,全程本地处理。
相关工具
这个工具是做什么的
Base32 用 32 个可打印字符表示二进制数据,把每 5 位映射成一个字符,因此结果只包含字母与数字、天然不区分大小写,也便于人工抄写与口头传递。它常见于双重验证(TOTP)的密钥、部分扫码协议,以及只接受字母数字的配置项;代价是比 Base64 长约 20%。本工具在本机用本地引擎完成转换,输入内容不会离开你的设备。
使用方法
- 编码:选「编码」,粘贴要转换的文本,按需选择字符集、输出大小写与是否补位。
- 解码:选「解码」,粘贴 Base32 字符串,字符集保持「自动识别」大多即可。
- 复制结果。解码会自动忽略换行、空格与连字符,也能接受省略补位或小写的写法。
常见问题
- 为什么编码结果会变长?
- Base32 每 5 位取一个字符,而 1 个字节是 8 位,因此需要更多字符才能表达同样多的数据,通常比原文本长约 60%、比 Base64 长约 20%。换来的是只用大写字母与数字,便于人工输入。
- 标准 Base32 和 base32hex 有什么区别?
- 标准字符集是 A-Z 加 2-7;扩展十六进制(base32hex,RFC 4648 §7)是 0-9 加 A-V。base32hex 的字符顺序与十六进制一致,排序结果与原字节顺序相同,因此更适合做键值排序。两者编码同一个字节会得到完全不同的字符串。
- 自动识别是怎么判断的?
- 标准集含 W/X/Y/Z 且不含 0/1/8/9,base32hex 恰好相反,所以字符串里出现 0、1、8、9 就判为 base32hex,否则按标准解码。若字符串只由两者共有的字符组成(2-7 与 A-V),无法区分,会自动按标准处理;这时请手动指定字符集。
- 补位「=」可以省略吗?
- 解码时可以省略,也可以是小写、中间带空格或换行、用连字符分组,本工具都会先规范化再解码。但如果是给别的系统使用,建议保留标准补位,兼容性最好。
- 中文和 emoji 支持吗?
- 支持。文本先按 UTF-8 编码成字节再做 Base32,因此中文、日文、emoji 都能正确往返。
- Base32 是加密吗?
- 不是。Base32 只是编码,任何人都能还原。它提供的是可传输性与可抄写性,不是保密性。