> 面向人类 | 友好易读 | 校验和支持 <
// Crockford Base32 —— 带错误检测的人类友好型编码方案
[HUMAN]
为人类优化
排除 I、L、O、U 等容易混淆的字符,并自动纠正常见输入错误。
[CHECKSUM]
错误检测
可选的 37 取模校验字符,用于检测编码结果中的错误。
[FLEXIBLE]
宽容输入
接受常见替换:O→0、I/L→1、U→V,方便在实际场景中输入。
>> 技术细节
Crockford Base32 的工作原理:
Crockford Base32 使用 32 个数字和字母(排除 I、L、O、U),以降低视觉混淆风险。它支持可选校验和,并在解码时接受常见字符替换。
示例:
"Hello" → 91JPRV3F41BPYWKCCG
为什么选择 Crockford Base32?:
- >没有难以区分的相似字符
- >支持通过校验和进行错误检测
- >不区分大小写
- >容忍常见输入错误
- >便于阅读与口头传达
>> 常见问题
什么是 Crockford Base32?
Crockford Base32 是 Douglas Crockford 提出的改进版 Base32 编码方案,去除了易混淆字符,并提供可选校验和以辅助错误检测。
它与普通 Base32 有什么区别?
Crockford 版本排除了 I、L、O、U,避免与 1、1、0 和 V 混淆;同时会规范常见输入错误,并提供可选的校验和功能。
校验和功能是做什么的?
可选校验和是附加在编码结果末尾的 37 取模检验字符,可以检测单字符错误以及部分位置交换错误。
在什么场景下适合使用 Crockford Base32?
适合用于人类可读的代码、产品序列号、短链接以及任何需要手动输入或口头传递的标识符。