首页 / 百科 / Base32

Base32

编码

A–Z 与 2–7 组成的 32 字符编码

Base32 是 RFC 4648(2006)定义的编码方案,使用 A–Z 与 2–7 共 32 个字符表示二进制数据,常用于两步验证密钥与大小写不敏感、需人工抄写的场景。

什么是 Base32

Base32 把每 5 个字节(40 位)切分为 8 组各 5 位,每组用一个字符表示,字符表为 A–Z 加上数字 2–7(刻意排除了 0、1、8、9,避免与 O、I、B 相混淆)。长度不是 5 字节整数倍时以 = 补齐。与 Base64 相比体积膨胀更多(约 60%),但换来三个特性:全字母、大小写不敏感、无易混淆字符。

典型用途

最广为人知的用途是 TOTP 两步验证:Google Authenticator 等应用扫描或输入的密钥就是 Base32 编码(RFC 6238 生态约定)。此外 ONC/BEP 文件哈希、磁力链接的 btih、部分 DNSSEC 记录也用它。

标准与变体

现行标准是 RFC 4648(2006),其前身是 RFC 3548(2003)。另有 z-base-32(专为人类易读设计,2007,Mnet 项目提出)与 Crockford Base32(排除 I、L、O、U 并允许连字符分段)等变体,解码前要确认用的是哪一套字符表。

相关工具

相关词条