Base 系列编解码工具支持 Base32、Base58、Base62、Base64、Base85、Base91、Base122、Base32768 共 8 种算法,可对文本或文件进行编码与解码,所有运算在浏览器本地完成。不同算法针对不同场景设计:Base64 是 API 与 JWT 的通用选择,Base58 消除了视觉上容易混淆的字符,Base32768 则在字符数受限的平台上实现最大数据密度。
各算法的输入输出示例
Base64 标准编码:
输入:hello world
输出:aGVsbG8gd29ybGQ=
Base64URL(去除填充,+ → -,/ → _):
输入:hello world
输出:aGVsbG8gd29ybGQ
Base32(RFC 4648,大写字母 A-Z + 数字 2-7):
输入:hello
输出:NBSWY3DPEB3W64TMMQ======
Base58(Bitcoin 字母表,无 0/O/l/I):
输入:hello world
输出:StV1DL6CwTryKyV
Base62(纯字母数字,天然 URL 安全):
输入:hello
输出:7YWHMfk9JZe0LM0
算法选型参考
通用场景
- Base64 — API 二进制负载、Basic Auth 头、JWT 令牌、HTML 内联图片
- Base64URL — URL 参数、文件名、不允许
+/=的场景 - Base32 — DNS 记录、不区分大小写的系统(文件系统 / TOTP 密钥)
特定场景
- Base58 — 加密货币钱包地址、交易 ID(Bitcoin / Flickr / Ripple 三种变体)
- Base62 — 短链接 ID、唯一标识符生成
- Base85 — 高密度 ASCII 内联,Ascii85 用于 PDF/PostScript,Z85 用于 ZeroMQ
- Base91 — 空间最紧凑的纯 ASCII 编码
- Base32768 — 推特等有字符数限制的平台,每字符存储 15 位数据
编码效率对比
| 算法 | 编码后体积 | 字符集大小 |
|---|---|---|
| Base32 | 原始的 160% | 32 |
| Base58 | 原始的 ~137% | 58 |
| Base62 | 原始的 ~135% | 62 |
| Base64 | 原始的 133% | 64 |
| Base85 | 原始的 125% | 85 |
| Base91 | 原始的 ~123% | 91 |
| Base122 | 原始的 ~115% | 122 |
| Base32768 | 原始的 ~107% | 32768 |
体积越小代表编码效率越高。Base32768 虽然字符数最多,但因每个 Unicode 字符携带 15 位数据,编码后输出反而最紧凑。
文件编码说明
编码模式下可切换"文件"输入,上传任意二进制文件后工具读取字节流并编码输出。并非所有算法都支持文件编码——Base122 和 Base32768 等基于 Unicode 的算法目前仅支持文本输入。
解码注意事项
解码时输入必须是合法的目标格式字符串,多余的空格或换行会导致解码失败。Base64 标准格式末尾可能带 = 填充,Base64URL 通常不带;解码时选错变体会得到乱码而非报错,可切换变体后对比结果。