Base58 编码 / 解码 (Bitcoin, IPFS)
Base58 是一种二进制转文本编码,剔除了视觉上易混淆的字符 0(数字零)、O(大写欧)、I(大写艾)、l(小写艾勒),以及 + 和 / — 因此结果紧凑,便于手抄或放入 URL。它是 Bitcoin 地址与 WIF 密钥、IPFS CIDv0 哈希、Solana 密钥背后的编码。粘贴 UTF-8 文本或 hex 编码为 Base58,或粘贴 Base58 字符串解码回文本或 hex。前导零字节会像 Bitcoin 参考实现那样映射为前导 '1' 字符,因此二进制数据可逐字节往返。可选择 Bitcoin/IPFS 字母表(常用)、Ripple 重排字母表,或 Flickr 短链字母表。全部在本地运行 — 不上传任何内容。
纯 Base58(非 Base58Check)。字符串只能用编码时相同的字母表解码。
使用方法
- 选择编码或解码。
- 选择字母表(Bitcoin 为默认且最常用)以及数据是 UTF-8 文本还是 hex 字节。
- 在输入框输入或粘贴,然后复制结果。
常见问题
- 这是 Base58Check 吗?
- 不是。这是纯 Base58 — 不会添加或校验 Base58Check 用于 Bitcoin 地址和 WIF 密钥的 4 字节双重 SHA-256 校验和。请用于原始 Base58 负载;若需要 Base58Check,须自行附加/校验校验和。
- Base58 为何剔除某些字符?
- 字母表省略 0、O、I、l,因为它们在许多字体中容易混淆;省略 + 和 /,因为它们在 URL 中不安全。因此 Base58 字符串可安全地朗读、转抄或无需转义地粘贴进 URL。
- 各字母表有何区别?
- Bitcoin/IPFS 采用 '123...ABC...abc' 顺序,最为常用。Ripple 将相同 58 个字符重排(相同字节得到不同字符串)。Flickr 为短链调换大小写顺序。字符串只能用其编码时所用的字母表正确解码。
- 前导零字节如何处理?
- 每个前导 0x00 字节会变成一个前导 '1'(字母表首字符),与 Bitcoin 参考实现一致。因此输入 0x00000000 编码为 '1111',再解码回四个零字节 — 二进制数据精确往返。
相关工具
Ascii85 / Base85 编码与解码
从 UTF-8 文本或 hex 字节进行 Ascii85(Base85)编解码 — 带 <~ ~> 定界符与 z 零组简写的 Adobe/PDF 变体,或纯变体 — 全部在浏览器内完成。
CBOR 解码器 (诊断表示法)
将 hex 或 base64 的 CBOR(RFC 8949)解码为可读的诊断表示法 — 整数、字节与文本字符串、数组、映射、标签、浮点数、简单值与不定长项 — 全部在浏览器内完成。
Base64 与十六进制互转
在浏览器中将 Base64 字符串转换为十六进制字节,并将十六进制转换回 Base64,支持 URL-safe。
CRC-32 计算器 (CRC-32 与 CRC-32C)
计算文本或 hex 字节的 CRC-32(IEEE 802.3,zip/gzip/PNG 使用)或 CRC-32C(Castagnoli)校验和,以小写 hex、大写 hex 与无符号十进制显示 — 在浏览器内完成。
位运算计算器
对两个整数进行 AND、OR、XOR、NOT 和移位运算 —— 以二进制、十六进制、无符号和有符号十进制显示,可选 8、16、32 或 64 位宽。
Hex Dump 查看器
将文本或小文件以 偏移 + hex 字节 + 可打印 ASCII 显示,类似 `xxd` 或 `hexdump -C`。