Base58 编解码纯前端 · UTF-8 字节

常用比特币字母表(无 0/O/I/l);文本先按 UTF-8 转字节再编解码,与 Base64check 版本字节前缀无关。

输入
输出
(空)

留言板

0 条留言
Markdown
0 字
对话记录每个声音,都值得被看见

对话,从你开始

还没有留言。分享一个想法,或只是打声招呼。

免费 Base58 文本编解码 · 萤炬工具箱 · 工具说明与使用指南

免费 Base58 文本编解码 · 萤炬工具箱

适用场景与相似需求

按常用比特币字母表转换文本字节时,可避免 0 O I l 等易混字符;不处理钱包私钥、地址版本或 Base58Check 校验,也不是区块链认证工具。

Base58 编解码,字母表跟比特币一致,刻意去掉了 0、O、I、l 这四个抄起来容易认错的字符,也不做等号填充。文本先按 UTF-8 转成字节再换算,中文一样能编。用它的理由通常是两个:一是别人要照着屏幕把串读出来或抄下来,二是要跟已有的 Base58 体系对上口径。注意这页只做纯字节换算,不掺版本前缀也不加校验和。

使用步骤

  1. 选方向:文本转 Base58,或者 Base58 转文本。
  2. 粘贴内容,输出框实时给出结果。
  3. 点复制取走。

功能与限制

  • 字母表为比特币风格,不含 0、O、I、l,且无填充。
  • 只做纯字节换算,不含校验和与版本前缀。
  • 文本先经 UTF-8 编码,中文一个字占多个字节。
  • 大整数运算,输入越长越慢。

常见问题

跟 Base64、Base32 差别在哪?
字母表更小更干净。Base58 剔掉了几个最容易混淆的字符,也不补填充,代价是同样的数据编出来比 Base64 长,又比 Base32 短一些。
为什么结果老是以 1 开头?
Base58 里字符 1 代表数值零。源数据开头每有一个零字节,结果就多一个 1,所以前导 1 的个数正好等于开头的零字节数。
这是能直接用的比特币地址吗?
不是。真正的地址是 Base58Check:在字节前加版本号、末尾加四字节校验和之后再编。这页只做那一步之前的纯字节转换,也不校验。
解码提示非法字符怎么办?
串里混进了字母表外的字符,最常见的是把大写 O 当零、把大写 I 或小写 l 当一,也可能是中间夹了空格。Base58 只在首尾容忍空白,中间的会被当成非法字符。
输入很长会很慢吗?
内部用大整数运算,几十 KB 的输入会有明显延迟,几百 KB 可能要等好几秒。要处理大块数据,改走 Base64。
解码出来的内容不对?
先确认这串原本是纯 Base58 字节,而不是带前缀校验的地址格式,多出来的前缀和校验字节会被一起当数据解出来。
编码后的长度怎么估?
Base58 每个字符的容量比十六进制大,但比 Base64 小,整体长度大约落在原文字节数的一倍三到一倍四之间。等长内容比 Base64 长,抄写正确率却更高,这就是它的取舍。