跳到主要内容
← 返回

Base32 / Base58 编码器

文本
本地运行 · 不上传

免费在线 Base32 和 Base58 编码解码工具,支持双向转换

结果有帮助吗?

本地工具可在 DevTools → Network 搜索输入内容,通常不会出现在请求中。

使用指南

Base32 常见于 TOTP 密钥(Authenticator 的大写码),字母表适合人工输入;Base58 去掉 0/O、I/l,是比特币风格地址的基础。本工具支持 RFC 4648 与 Crockford 两种 Base32、裸 Base58 与带双重 SHA-256 校验的 Base58Check,编码后可对照 Base64 体积;全程本地运算,密钥或地址串不上传。

1. 怎么用

  1. 把文本粘进输入区(编码)或粘贴编码串(解码)。
  2. 选 Base32 或 Base58,再选字母表变体:RFC 4648 / Crockford,或裸 Base58 / Base58Check。
  3. 点编码或解码;非法字符会标出位置,Base58Check 校验失败会明确报错。编码成功后下方显示与 Base64 的长度对照。

2. 字母表变体与校验

  • TOTP / Google Authenticator 用 RFC 4648 Base32(A–Z 与 2–7);本工具编码会按 RFC 补 =,解码忽略空格与大小写。
  • Crockford Base32 剔除 I/L/O/U,解码时 O→0、I/L→1,适合电话口述;与 TOTP 字母表不要混用。
  • 裸 Base58 没有校验和。Base58Check 在载荷前加版本字节、后加双重 SHA-256 前 4 字节,再 Base58——改错一位即失败。
  • 编码后的体积对照用同一 UTF-8 输入比较 Base32 / Base58 / Base64;大流量传输仍应优先 Base64 工具。

3. 典型场景与安全边界

  • Authenticator 密钥、部分 DNS 标签 → Base32(RFC)。
  • ULID / 口述核对码 → Base32(Crockford)。
  • 演示或核对加密货币风格地址串 → Base58Check;只要去混淆字母表、不要校验 → 裸 Base58。
  • 编码不是加密:结果可原样还原。真实密钥放环境变量或密钥管理服务,本工具只做展示与交换场景的编解码。

4. 常见错误提示怎么读

Invalid Base32 character … at position N:当前位置字符不在所选字母表(RFC 不含 0/1/8/9;Crockford 另有别名规则)。Invalid Base58 … excludes 0, O, I, l:串里出现了 Bitcoin 字母表禁止的字符,有时其实是 Base32。Base58Check checksum mismatch:串被改过,或本来就是裸 Base58——先确认变体再解。

5. 什么时候用 Base32 / Base58,什么时候仍用 Base64

Base64 密度更高(每字符约 6 bit),适合机器管道、HTTP 与 JSON;Base32 每字符 5 bit,字母表更适合人口述与避免 0/O 混淆(尤其 Crockford);Base58 再去掉更多易混字符,并常配 Base58Check 做传输防呆。传输体积敏感、接收方是程序时,继续用 Base64;密钥要给人读、写进 Authenticator、或做区块链风格地址校验时,才切换到本页。编码成功后的长度对照面板,就是为了让你看见「可读性换体积」的具体代价。

6. 和 TOTP / 哈希工具的衔接

  • TOTP 密钥:字母表选 RFC 4648,解码确认无非法字符后,再粘到 TOTP 生成器——不要用 Crockford 去解 Authenticator 密钥。
  • Base58Check 依赖双重 SHA-256;校验失败先怀疑拷贝截断,而不是「哈希算法坏了」。
  • 需要对照同一输入的 Base64 形态时,用本页对照或旁边的 Base64 工具,保持 UTF-8 输入一致。

7. Padding、大小写与口述场景的实操细节

RFC 4648 Base32 编码长度应为 8 的倍数,不足用 = 补齐;许多 Authenticator 展示时会去掉 padding 并插入空格分组——本工具解码阶段会忽略空白并容忍缺 =。Crockford 解码还有 O→0、I/L→1 的别名,电话里听错字形时反而能解通;但也正因为别名,它与 TOTP 字母表不能互换。Base58 无 padding 概念,长度随字节变化;Check 变体多出来的校验字节会让串更长一点——对照面板上的长度差,有助于判断你手里的到底是裸 Base58 还是 Check。复制密钥时优先「复制原文」而不是重新打字:人工抄写 Base32 的 8/B、S/5 混淆,是 TOTP「永远差一位」的常见来源。

常见问题

可以。编解码只在本页面本地运行,密钥串不会被发送,也不会被存储;但编码不是加密——真实密钥的归宿应是环境变量或密钥管理服务。

Base32 用 32 个字符(A-Z 加 2-7),不区分大小写,适合口头传达;Base58 用 58 个字符,剔除 0、O、I、l 等易混字符,是比特币风格地址的基础;Base64 每字符约 6 bit,编码最紧凑,仍是机器管道的首选。

一律用 RFC 4648(A–Z 与 2–7)。Crockford 字母表不同且解码带别名映射,拿它解 TOTP 密钥会得到永远对不上的验证码——选错变体是最高频的失误。

只要去混淆字母表、不需要校验,用裸 Base58;要核对区块链风格地址就用 Base58Check——它在载荷前加版本字节、后附双重 SHA-256 前 4 字节校验,改错一位就会明确报错。

串里出现了 Bitcoin 字母表禁止的字符,很多时候其实是 Base32 串选错了变体。类似地,Invalid Base32 character … at position N 指该位置字符不在所选字母表内;Base58Check checksum mismatch 则说明串被改过、或本来就是裸 Base58——先确认变体再解。

传输体积敏感、接收方是程序时(HTTP、JSON、机器管道)继续用 Base64;密钥要给人读、要写进 Authenticator,或要做地址校验时才换到本页。编码成功后的长度对照面板,直观展示「可读性换体积」的代价。

相关工具

相关文章