EVM 一括送金とは
EVM 一括送金は、受取先と金額の配列を渡して disperse コントラクトを呼び出す 1 つのトランザクションです。コントラクトはネイティブコインを各アドレスに転送するか、transferFrom でトークンを引き出して transfer で送り、すべてがアトミックに行われます。1 回の署名が数百回の署名に代わり、送信者はガスを 1 回だけ支払います。このページはチェーン ID のチェックにより Sepolia などのテストネットに限定されています。
手順
- ウォレットを Sepolia に切り替え(ページに切り替えボタンがあります)、テスト用 ETH を保有していることを確認します。
- ネイティブコインを選ぶか、トークンコントラクトを貼り付けます。ページがシンボル、小数桁、残高を読み取ります。
- 一括送金コントラクトを選びます: 既知の Sepolia disperse コントラクト、以前デプロイしたもの、カスタムアドレス、または新規デプロイ(約 0.4M ガス)。
- 受取先を貼り付け、サマリーを確認して「送信」をクリックします。ログを確認してください。各バッチにはブロックエクスプローラーへのリンクが付きます。
ガスと上限
ガスはすべて送信者が支払います。Sepolia で新規アドレス 150 件へのネイティブ送金バッチは 1 トランザクションで約 400 万〜500 万ガスかかりますが、150 回個別に送るより署名回数と時間の面ではるかに安上がりです。ウォレットの見積もりが失敗する場合は、1 トランザクションあたりの受取先数を減らしてください。
コントラクトの検証
BatchTransfer のソースは 50 行で、solc 0.8.28(optimizer 有効、200 runs)でコンパイルされています。公開している JSON には ABI と作成バイトコードが含まれており、同じコンパイラ設定で再現することも、ソースファイルを使ってエクスプローラー上でデプロイ済みコントラクトを検証することもできます。
関連: まずアドレスバリデーターでリストを検証し、小数桁コンバーターでトークン量を変換し、ABI デコーダーで calldata を確認してください。