Base58 编码/解码(二进制)
100% 客户端处理(无需服务器上传)。将二进制文件编码为Base58文本,或将Base58解码回原始字节。包含字母表选择(比特币/Flickr/Ripple)、编码时可选换行,以及解码时的严格验证和分隔符处理。
功能特点
- 将二进制文件(字节)编码为Base58文本
- 将Base58文本解码回原始字节(可下载为文件输出)
- 字母表选择:比特币(默认)、Flickr、Ripple / XRP
- 编码格式:可选换行(0–120)和可选末尾换行符
- 选择输出行分隔符:LF ( ) 或 CRLF ( )
- 解码辅助:接受 data:*;base58, 前缀,并忽略分隔符/空白(可选)
- 严格验证选项,拒绝所选字母表之外的字符
- 多文件拖放区,带批量处理面板,便于快速转换
- 100% 客户端处理(无需服务器上传)。
使用方法 for base58-binary-encoder
粘贴或拖放内容
编码:在拖放区拖放/上传一个二进制文件。解码:将Base58文本粘贴到输入区域(或打开包含Base58的文本文件)。
选择操作并运行
选择操作:“编码文件 → Base58” 或 “解码 Base58 → 文件”。选择字母表(比特币/Flickr/Ripple)。然后点击“编码”或“解码”运行。
复制或下载
如果执行了编码:复制Base58输出文本。如果执行了解码:将生成的字节作为文件下载(文件命名遵循工具规则,例如移除 .b58 后缀,默认回退为 .bin)。
技术规格
执行模型
两种操作(编码 + 解码)的运行时说明与约束。
| 方面 | 详情 |
|---|---|
| 运行时 | 100% 客户端处理(无需服务器上传)。 |
| 操作范围 | 编码 + 解码(本页面) |
| 编码输入 | 二进制(文件/Blob/Uint8Array/ArrayBuffer/TypedArray) |
| 编码输出 | Base58文本(可选换行包装,可配置换行行为) |
| 解码输入 | Base58文本字符串(可选接受data:*;base58前缀) |
| 解码输出 | 原始字节(默认下载为.bin文件) |
| 字母表 | 比特币(默认)、Flickr、瑞波/XRP |
| 限制 | 约1–2MB字符;约25000毫秒超时 |
| 数据保留 | 所有处理均在您浏览器的本地完成(无上传) |
迷你示例
两种操作功能的简要演示(输出结果取决于选项和字母表)。
| 操作 | 示例输入 | 示例输出 |
|---|---|---|
| 编码 | 二进制字节(上传的文件) | Base58文本(取决于字母表) |
| 解码 | Base58文本 | 二进制字节(可下载文件) |
错误与边界情况
常见故障模式及其解决方法。
| 现象 | 可能原因 | 检查建议 |
|---|---|---|
| 本工具编码二进制数据...而非文本字符串 | 您尝试编码字符串而非上传字节数据 | 使用拖放区域/上传文件,或在集成中传递字节(Uint8Array/ArrayBuffer) |
| 不支持的二进制输入类型 | 输入不是File/Blob/Uint8Array/ArrayBuffer/TypedArray类型 | 转换为Uint8Array或上传文件 |
| 输入过大(最大2MB) | 输入超出大小限制(编码字节或解码文本) | 分割文件/字符串或分块处理 |
| 适配器调用超时 | 操作超过约25000毫秒 | 减小文件大小;避免批量处理大文件;大型输入时关闭实时预览 |
| 无效字符/验证错误 | Base58字符串包含所选字母表之外的字符 | 验证字母表选择;根据需要启用/禁用严格验证 |
| 粘贴格式化字符串时解码失败 | 存在分隔符/空白或数据URI前缀 | 启用“允许分隔符/空白”和“接受data:*;base58,前缀”选项 |
命令行替代方案
对于自动化、CI或敏感数据处理,建议使用本地工具。Base58在常见操作系统核心工具中并未标准化,因此请使用知名库并选择所需的确切字母表(比特币/Flickr/Ripple)。
全平台(Python)
将二进制文件编码为Base58(基于库)
python -c "import sys; print('请使用可靠的Base58 Python库并选择正确的字母表(比特币/Flickr/Ripple)。')"Python标准库不包含Base58。请使用维护良好的库并固定其版本以确保输出可复现。
Node.js
使用维护良好的库进行Base58编码/解码
node -e "console.error('请使用知名的Base58库并选择正确的字母表(比特币/Flickr/Ripple)。')"Node核心模块未提供Base58编解码器。建议使用可靠库并记录字母表选择以避免不匹配。
使用场景
用于传输的快速二进制到文本转换
- 将小型二进制数据块编码为Base58,适用于排斥歧义字符的系统
- 将文件转换为Base58字符串以便于复制/粘贴工作流
跨Base58字母表的互操作性检查
- 验证合作伙伴系统期望的字母表(比特币/Flickr/Ripple)
- 在文档和测试向量中标准化字母表选择
Base58输入的CI完整性检查
- 在可复现的流水线中使用严格验证拒绝不符合规范的Base58字符串
- 确保测试数据能解码回预期的字节
安全处理和验证粘贴的Base58字符串
- 通过启用严格验证避免字符混淆
- 从电子邮件或日志接收Base58时,移除数据URI前缀并忽略分隔符
❓ Frequently Asked Questions
此工具是否提供公共API?
API端点。处理过程是本地还是远程?
我应该在这里处理机密信息吗?
为什么解码会因“无效字符”而失败?
为什么我会收到“解码输入必须是字符串”或“上传文件”的错误?
Pro Tips
务必记录并分享您使用的字母表(Bitcoin、Flickr 或 Ripple);不同字母表的 Base58 输出不可互换。
解码从电子邮件/日志中粘贴的字符串时,请启用“允许分隔符/空格”和“接受 data:*;base58, 前缀”,以减少复制/粘贴失败。
当您希望尽早检测错误的字母表或损坏的 Base58 时,请启用“严格验证”。
对于大文件,请避免一次性批量处理过多项目,并保持实时预览关闭;该工具强制执行大小/时间限制(约 2MB 和约 25000 毫秒)。
在 CI 中,请使用固定的库实现,并为支持的每个字母表提交测试向量(输入字节 + 预期的 Base58)。
Additional Resources
Other Tools
- CSS 美化器
- HTML 美化器
- JavaScript 美化器
- PHP 美化器
- 颜色选择器
- 精灵图提取器
- Base32 二进制编码器
- Base32 解码器
- Base32 编码器
- Base58 解码器
- Base58 编码器
- Base62 二进制编码器
- Base62 解码器
- Base62 编码器
- Base64 二进制编码器
- Base64 解码器
- Base64 编码器
- 十六进制二进制编码器
- 十六进制解码器
- 十六进制编码器
- C# 格式化器
- CSV 格式化器
- Dockerfile Formatter
- Elm 格式化器
- ENV 格式化器
- Go 格式化器
- GraphQL 格式化器
- HCL 格式化器
- INI 格式化器
- JSON 格式化器
- LaTeX 格式化器
- Markdown 格式化器
- Objective-C 格式化器
- Php Formatter
- Proto 格式化器
- Python 格式化器
- Ruby 格式化器
- Rust 格式化器
- Scala 格式化器
- Shell 脚本格式化器
- SQL 格式化器
- SVG 格式化工具
- Swift 格式化工具
- TOML 格式化工具
- Typescript Formatter
- XML 格式化工具
- YAML 格式化工具
- Yarn 格式化工具
- CSS 压缩器
- Html Minifier
- Javascript Minifier
- JSON 压缩器
- XML 压缩器
- HTTP 头部查看器
- PDF 转文本
- 正则表达式测试器
- 搜索引擎排名检查器
- Whois 查询