テキストとコード / MULTIVERTO

Base58 にエンコード

Base58 は UTF-8 バイトを大きな整数として扱い、ビットコインアルファベットで書き込みます。視覚的に曖昧な文字は省略します。ブラウザでローカルに変換します。

変換ツール入力内容はこのブラウザ内にとどまり、変換のために送信されません。

ファイルはブラウザー内にとどまります。
ツールを連結

前の結果に各テキストツールを適用します。 テキスト変換ワークフロー ↗

このブラウザーには手順の名前とツールの順序だけを保存します。入力内容と結果は保存しません。

01 / 例

例

入力こんにちは、世界!
結果XkR65j7ijAfMa7Tc8B15YnzZKCvcCcyACotUx

02 / ガイド

Base58 にエンコード — 仕組み

具体的な変換例

Base58 は UTF-8 のバイト列を一つの大きな整数とみなし、見分けにくい文字を除いた Bitcoin アルファベットで表します。この処理はブラウザー内で行われます。入力例「こんにちは、世界!」の結果は「XkR65j7ijAfMa7Tc8B15YnzZKCvcCcyACotUx」です。Base58 の出力には文字の境界が示されないため、復号では元の UTF-8 バイト列を正確に再現する必要があります。先頭にゼロバイトがある場合は出力の先頭に 1 を置きます。これがなければ後で復号しても元のバイト列を復元できません。この出力にはアドレス用チェックサムは含まれません。

表現形式の仕組み

Base58 は、見間違えやすい文字を避けつつ英数字でコンパクトに表したい場合によく使われます。このツールは Bitcoin のアルファベットを使い、数字の 0、大文字の O と I、小文字の l を除きます。UTF-8 バイト列全体を一つの非負整数とみなし、58 で繰り返し除算または乗算します。先頭のゼロバイトには特別な扱いが必要で、それぞれが先頭の文字 1 になります。そうしなければ元のバイトを復元できません。別の Base58 アルファベットも存在し、Base58Check にはバージョンバイトとチェックサムが加わりますが、このツールはいずれの追加処理もしません。デコード後のバイトは有効な UTF-8 でなければならないため、Base58 として正しくても任意のブロックチェーンのバイナリデータは拒否される場合があります。Base58 は UTF-8 バイトを大きな整数として扱い、紛らわしい文字を除いた Bitcoin アルファベットで書きます。テキスト値のために通常の Bitcoin アルファベットの Base58 が指定された入力欄で、この方向を使ってください。

このツールは UTF-8 のバイト列全体を一つの値として変換するため、先頭に近い一文字を変えるだけで出力の広い範囲が変わり得ます。Base58 は入力文字の境界を保ちません。先頭のゼロバイトは出力の先頭にある 1 の文字で表され、元のバイト列へ正確に戻すために必要です。これは暗号資産アドレスの作成器ではなく、バージョンの接頭辞もチェックサムも付けません。Base58Check を必要とする仕様には、そのままの出力を渡せません。入力上限は UTF-8 の 4096 バイトです。

限界と信頼性

これは生の Base58 で、Base58Check ではありません。バージョンバイトもチェックサムも追加せず、先頭のゼロバイトは先頭の文字 1 になります。テキスト入力は 4096 バイトまでです。結果を短い識別子として使う前に、変換先が生の Base58 を求めるのか、これを基盤とした方式を求めるのか試してください。多くのアドレス形式はチェックサムやメタデータを追加しますが、このテキストツールは意図的に省いています。また、記号をデコードすれば誰でも元のバイトを読めるため、暗号化の代わりにしてはいけません。大文字と小文字を正確に保ってコピーしてください。小文字を大文字へ変えると数値が変わる可能性があります。再現性のあるテストでは、結果をデコードして、元の Unicode テキストと先頭のゼロバイトを比較します。形式名だけでは有効性を検証できません。

入力から出力への変換過程
Unicode テキスト
UTF-8 バイト
Base58 テキスト

ガイドを探す

変換ガイド

ガイドを探す