Base58エンコード/デコード
テキストをBase58にエンコード、またはBase58文字列をプレーンテキストにデコード(Bitcoinアルファベット、UTF-8対応)。先頭のゼロバイトを処理し、Base58文字を自動検証。
入力
出力
ガイド
Base58はBitcoinによって普及したバイナリ-to-テキストエンコーディング方式で、58の英数字文字——数字と文字の完全なセットから0(ゼロ)、O(大文字O)、I(大文字I)、l(小文字l)を除いたもの——を使用して任意のバイトを表現します。これらの4文字は多くのフォントで見分けがつきにくいため、Base58文字列はBase64や通常の16進数よりもタイプミスや読み間違いのリスクが 훨씬少なく、目で読んだり、手で入力・コピーしたりできます。Base64と異なり、Base58は+、/、=のような句読点も避けるため、出力は常に途切れのない単一の英数字トークン——URL、ファイル名、コマンドライン引数に便利です。
用途
- Bitcoinアドレスおよび他の暗号通貨アドレス — Bitcoinウォレットアドレス、秘密鍵(WIF形式)、多くのアルトコインアドレスはBase58でエンコードされます(Base58Checkとして知られる追加のチェックサムステップ付き)。ユーザーが曖昧さなく転記できるためです。
- IPFSコンテンツ識別子 — 従来型のIPFS CID(v0)はBase58エンコードされたマルチハッシュであり、ファイルハッシュを短く曖昧さのない文字列として共有できます。
- 短いURLおよびID生成ツール — コンパクトで人間フレンドリー、ケースセンシティブな識別子(短いリンク、招待コード)を作成するサービスは、Bitcoinで人気を博したのと同じ可読性の保証からBase58を選択することがよくあります。
- QRコードおよび印刷物 — 文字列を音読、手書き、OCRされる可能性がある場合、Base58の曖昧性のないアルファベットはBase64と比べて転記エラーを低減します。
このツールの使い方
- 入力ボックスにテキストを貼り付けます。
- エンコードを選択してプレーンテキストをBase58に変換するか、デコードを選択してBase58文字列をテキストに戻します。
- 結果は出力ボックスに自動的に表示されます——ボタンをクリックする必要はありません。コピーアイコンかダウンロードアイコンを使って取得してください。
エンコードは任意のUTF-8テキストを受け付けます(テキストはBase58エンコード前にUTF-8エンコードされるため、絵文字や非ラテン文字も正しく往復します)。変換は入力バイトを1つの大きな数値として扱い、それを58で繰り返し除算するため、任意の長さで正しく動作します——アルゴリズム自体が実質的なサイズ制限を課すことはありません。先頭のゼロバイトは特殊なケースです:入力の先頭にあるそれぞれの0x00バイトは出力の先頭の1文字になり(デコード時には0x00バイトに復元されます)。先頭のゼロは数値的な重みを持たず、そうでない場合失われるためです。デコードは有効なBase58文字のみで構成される文字列を期待します。入力に0、O、I、l、あるいはBase58アルファベット外の他の文字が含まれている場合、あるいはデコードされたバイトが有効なUTF-8テキストでない場合、ツールはゴミの出力を生成せず明確なエラーを報告します。
FAQ
なぜ私のBase58出力は元のテキストより長いのですか? Base58は入力バイトごとに約1.37出力文字を必要とします。log(256)/log(58) ≈ 1.37であるため——Base64の約1.33比よりもわずかに効率が低いですが、それでもバイトを10進数や2進数の桁としてエンコードするよりはるかにコンパクトです。
これはBitcoinが使用しているのと同じアルファベットですか?
はい——このツールは標準のBitcoin Base58アルファベット(123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz)を使用します。注:このツールはテキストの通常のBase58エンコード/デコードを実行します。実際のBitcoinアドレス用にBase58Checkが使用する追加のバージョンバイトとSHA-256dチェックサムは付加しません。
なぜデコード入力に文字「0」や「O」を使えないのですか?
これらの文字——Iとlとともに——は多くのフォントで相互に、あるいは1/oと混同しやすいため、Base58アルファベットから意図的に除外されています。入力に含まれている場合、デコードは誤った出力を黙って生成するのではなく、記述的なエラーで失敗します。
Base58は暗号化ですか? いいえ——Base58は暗号化でも圧縮でもありません。これは純粋に表現形式であり、誰でも元のデータに即座にデコードできます。機密情報を保護するために使用しないでください。
プライバシー
すべてのエンコードとデコードは完全にブラウザ内で行われます——テキストはデバイスを離れ、サーバーに送信されることはありません。
Use it from code
From 3 credits per callREST API
curl -X POST https://api.iotools.cloud/v1/tool/base58-encoder-decoder \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"inputText": "Hello World!",
"mode": "encode"
}'Swap in your own key from your account. The tool's fields are the body — no wrapper.
Ask an AI agent
Use the IOTools `base58-encoder-decoder` tool (Base58 Encoder/Decoder) on this input:
YOUR_INPUT_HEREPaste this at any agent connected to the IOTools MCP server, then add your input.