バニティアドレスとは?
バニティアドレスとは、一部を自分で選んだウォレットアドレスです。ランダムに見えにくく、見分けやすくなります。例:
- 0xcafe…7f3a
- 0x9f4e…beef
イーサリアムアドレスは 0x と 40 文字の 16 進数でできているため、使えるのは数字と a から f の文字のみです。それでも cafe、dead、beef といった単語や 1234 のような数字は作れます。
仕組み
アドレスの先頭や末尾に使う短い文字を入力し、アドレスを検索 をクリックします。一致するアドレスが見つかるまで、ブラウザが秘密鍵を試します。
アドレスが見つかったら、秘密鍵を表示してウォレットにインポートします。
文字が 1 つ増えるごとに検索時間は 16 倍になります。大文字と小文字を区別する(Aa)場合は、アドレスの大文字小文字がチェックサムになっているため、文字ごとにさらに 2 倍になります。速度は CPU スレッド数で決まるので、パソコンが重くなったら減らしてください。
確率 50% の所要時間は目安であり、カウントダウンではありません。アドレスごとに毎回新しい試行となるため、すぐに終わることも数倍かかることもあり、経過した時間が結果を近づけるわけではありません。
セキュリティ
すべての計算はブラウザ内で行われ、データが端末の外に出ることはありません。データベースもサーバー側のコードもなく、ページのセキュリティポリシーによりスクリプトのネットワーク通信も禁止されています。タブを閉じると鍵は消えます。
Vanity Keys は鍵を保存できません。ご自身で確かめたい場合は、次の 3 つの方法があります。
- ページの読み込み後にインターネットを切断し、そのまま使う
- ページをダウンロードして、オフラインのパソコンで使う
- ダウンロードしたファイルを確認する:ページの動作はすべてこの 1 つの HTML ファイルに含まれています
各検索は、ブラウザの暗号論的に安全な乱数生成器 crypto.getRandomValues による 256 ビットの乱数から始まり、そこから連続する鍵を確認します。有名な生成ツール Profanity は、起点の乱数が 32 ビットしかなかったために破られました。見つかったアドレスは、表示する前に独立した別の実装で再計算されます。
コピーサイトと似たアドレス
このようなページは鍵を生成するため、改変されたコピーは鍵を盗むことができます。コピーは本物と見分けがつかず、似たドメインで公開されていることがあります。検索の前にサイトのアドレスを確認し、高額を扱う場合はオフラインのファイルを使ってください。
他人が生成した秘密鍵やバニティアドレスは絶対に使わないでください。作成者がコピーを持っている可能性があります。
詐欺師も、あなたが使っているアドレスと先頭と末尾が同じアドレスを作り、履歴から誤ってコピーさせようとします。送金前には両端だけでなくアドレス全体を確認してください。
パフォーマンス
速度はブラウザと端末によって異なります。最近のパソコンなら、CPU スレッド 1 つで毎秒数十万件のアドレスを確認できます。スマートフォンやタブレットでも使えますが、速度は落ちます。パソコンを使い続けられるよう、検索は CPU スレッドの半分で始まります。
Vanity Keys はブラウザで動くのでインストールは不要です。グラフィックカードを使うツールははるかに高速ですが、扱いが難しく、実行するプログラムを信頼する必要があります。
互換性
同じアドレスと鍵は、Ethereum、BNB Chain、Polygon、Arbitrum、Optimism、Base、Avalanche C-Chain など、すべての EVM ネットワークで使えます。資金は送金に使ったネットワーク上にあるので、送金前にネットワークを確認してください。
得られるのは秘密鍵で、リカバリーフレーズではありません。MetaMask、Rabby など秘密鍵をインポートできるウォレットで使えます。ハードウェアウォレットは独自に鍵を生成するため、インポートできません。