文本编码、解码
Base64 Std :
Base64 URL :
Base32 Std:
Base32 HEX:
Base58 :
URL Query :


1. Base64 Std(标准 Base64)

用途:通用二进制编码(邮件、JSON、文件传输)

字符集:A–Z a–z 0–9 + /

特点: ①每 3 字节 → 4 字符 ②使用 = 作为 padding ③体积增加约 33% ④不适合 URL

示例:Hello → SGVsbG8=

2. Base64 URL

用途:Web URL、JWT Token

字符集变化:① + → - ② / → _

特点: ①URL 安全,适合 query / path ②通常去掉 padding(=)

3. Base32 Std

用途:TOTP、DNS、安全系统

字符集:A–Z 2–7

特点: ①更安全但更长 ②只使用大写字母和数字 2–7 ③适合人工输入减少错误 ④使用 = 作为 padding

4. Base32 HEX

用途:RFC 兼容系统

字符集:0–9 A–V

特点:①与十六进制风格更接近 ②机器友好 ③使用 = 作为 padding

5. Base58

用途:区块链(Bitcoin、IPFS)

字符集:123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz

特点: ①去掉 0 O I l + / 等易混字符 ②无 padding ③适合人工复制输入

6. URL Query Encoding

用途:HTTP GET 参数传递

规则:①空格 → + ②特殊字符 → %XX

示例:① hello world → hello+world ② hello? → hello%3F

对比总结

编码字符集PaddingURL安全用途
Base64 StdA–Z a–z 0–9 + /=通用传输
Base64 URLA–Z a–z 0–9 - _JWT / Web
Base32 StdA–Z 2–7=TOTP / DNS
Base32 HEX0–9 A–V=RFC 系统
Base581-9 A-Z a-Z (剔除字母o,O)区块链地址
URL Query%XX 编码HTTP 参数