Base58原理图解

66 0

Base58 是一种用 58 个字母数字表示字节数据的编码,由比特币采用后流行。下面重点说明用步骤把过程说清楚。

Base58原理图解

把输入当作一个大端无符号大整数,反复除以 58 取余数,余数映射到字母表;最后把输入开头的每个 0x00 写成 “1”。例如 “Hello” 的 Base58 是 9Ajdvzr。比特币地址还要在前后加版本与校验(Base58Check),那是在普通 Base58 之外的规则。

示例

输入:Hello

编码结果:9Ajdvzr

说明:按 UTF-8 共 5 字节,使用比特币 Base58 字母表(不含 0、O、I、l)。

JavaScript 示例

下面是 JavaScript 中处理Base58的常用写法:

// 使用 bs58 等库:bs58.encode(new TextEncoder().encode("Hello"))

运行前确认输入的字符集(推荐 UTF-8),结果可以用本站工具交叉核对。

乱码排查

解码后乱码多半是字符集问题,或把 Base58Check 地址只当普通 Base58 数据去当文本读。

本站的Base58编码工具可以直接处理,计算在浏览器本地完成,适合快速核对结果。

常见问题

【和比特币地址是一回事吗?】地址是 Base58Check:在数据上加版本和校验后再做 Base58。

【能加密吗?】不能。

【Hello 的 Base58 是什么?】按比特币字母表是 9Ajdvzr。

文中示例可以在本站对应工具中验证;处理密钥、证书等敏感数据时,请注意保护隐私。

署名:123问编辑部 · 最近修订:2026-11-11 · 已按编辑与审核说明检查;内容仅供参考,不构成医疗、法律或投资建议。发现错误可查看纠错方式。

标签: 数码开发

抱歉,评论功能暂时关闭!