暗号資産の取引手数料はどのように機能するのか?
ブロックチェーンの取引手数料の仕組み。需要によって変動する理由と、手数料の額を決める要素を解説します。
ガイドを読む
言語
保留中の暗号資産取引は、初めてブロックチェーンを利用する人にとって、最も混乱しやすい状況の一つです。資金がウォレットから出ていったように見えるのに、受取人へまだ届いていません。また、「保留中」「待機中」「未確認」などのメッセージが長時間表示されることもあります。失敗のように見えるかもしれませんが、多くの場合、特定のルールに従って取引を処理する分散型ネットワークの通常の動作を反映しています。
保留中の取引が実際には何を意味するのかを理解することが、適切に対応する第一歩です。操作は通常、ユーザーのウォレットから受取人へ直接移動するわけではありません。まず適切な鍵で署名され、ネットワークへ送信されます。その後、ノードがそれを受信して、一時的に待機領域に保持することがあります。これは一般にメンプールと呼ばれます。取引は、確認済みブロックに含まれるまでここで待機します。
したがって保留中というステータスは、操作がブロードキャストされた、あるいはインフラの一部に記録されたものの、ブロックチェーンへの取り込みによって得られる確定的な確認をまだ受けていないことを意味します。この待ち時間はさまざまな要因に左右されます。ネットワーク混雑、提示された手数料、マイナーやバリデーターが使う選択ルール、各ブロックチェーン固有の特性などです。
ビットコインのようなネットワークでは、取引はブロック内の限られたスペースをめぐって競争します。活動が増えると、ブロック生成者は通常、その取引が占めるスペースに対してより高い経済的報酬を提供する操作を優先します。比較的低い手数料の取引は、特に大量の保留中取引が滞留している場合、より長く遅延する可能性があります。
イーサリアムや類似の資源配分メカニズムを使うネットワークでは、手数料と利用可能な実行容量が問題になります。ネットワークの状況に対して実効価格が十分競争力を持たない場合、取引が保留されたままになることがあります。場合によってはナンスに関する問題も関係します。ナンスはアカウントの操作順序を管理し、誤った順番で処理されるのを防ぐために使われる番号です。
保留中の取引に直面したとき、最初に推奨される行動の一つは、ブロックチェーンエクスプローラーで直接ステータスを確認することです。ウォレットの表示は不完全だったり、更新が遅れていたり、実際の状態を簡略化して示していたりする場合があります。エクスプローラーなら、取引識別子を検索し、ネットワークに認識されているか、ステータスは何か、どの手数料が付いているか、ブロックに含まれているかを確認できます。
保留中の操作と失敗した操作を区別することは特に重要です。保留中の取引は、まだ確定的な確認に到達していません。一方、失敗した操作はブロックに含まれていても、正常に実行されていない可能性があります。たとえばイーサリアムでは、スマートコントラクトとのやり取りがチェーンに記録されたにもかかわらず、実行がエラーで終了することがあります。この場合、取引はもう保留中ではありませんが、期待した結果も生じていません。
追加の操作をする前に、利用可能な残高とウォレットの履歴を確認することも推奨されます。よくあるミスの一つは、保留中の取引が消えたと考えて、元の取引を確認せず同じ操作をもう一度送ることです。使用するネットワークやウォレットによっては、これによってさらに混乱が生じ、追加の取引同士が競合する可能性があります。
一部のブロックチェーンでは、手数料を増やすことで取引を速めることができます。たとえばビットコインはリプレイス・バイ・フィー(RBF)のような仕組みに対応しており、必要な条件を満たせば、保留中の取引をより高い手数料の新しいバージョンに置き換えることができます。一部のウォレットでは、この機能を「取引を高速化」などの簡略化された表示で提供しています。イーサリアムでも、同じナンスを使い、より高い手数料を設定した別の取引で保留中の取引を置き換えられるウォレットが一般的です。
置き換えは、まったく独立した2回目の送金として理解すべきではありません。これは、まだ確認されていない先行取引を置き換えるための仕組みです。正確な動作は、ネットワークのルール、ウォレットの設定、ノードが受け取った取引をどのように扱うかによって異なります。そのため、使用しているナンスと、どの操作を置き換えるのかを理解せず、手動で置き換えを試みることは推奨されません。
一部のネットワークで使われる別の仕組みが、チャイルド・ペイズ・フォー・ペアレント(CPFP)です。その考え方は、十分に高い手数料を持つ新しい取引を作り、ブロック生成者に先行する操作と新しい操作の両方を含めるよう促すことです。最初の取引の手数料が低すぎる場合に役立ち、ビットコインの一部のケースや互換性のある他のアーキテクチャで利用できます。
問題が手数料に関係していない場合もあります。同じアカウントから先に送られた別の取引が確認されていないため、取引が保留されたままになることがあります。これはナンスを使って取引を順序付けるネットワークで特に重要です。ナンスの小さい先行操作が低い手数料で止まっていると、順序が解決されるまで後続の取引も保留される場合があります。
問題がウォレット自体や、取引をブロードキャストするために利用したサービスにある可能性も考慮すべきです。一部のアプリケーションではインターフェースの更新に時間がかかったり、特定のノードとの接続が一時的に失われたり、ネットワークの状態と一致しないステータスを表示したりすることがあります。アプリケーションの再起動や情報の再同期によって表示上の不一致が解消する場合がありますが、すでにブロードキャストされた取引そのものが変更されるわけではありません。
待つこともプロセスの一部です。保留中の取引だからといって、必ずしも資金が危険にさらされているわけではありません。ネットワークが混雑している場合、確認されるまで、あるいは伝播の仕組みから確実に外れるまで、かなり長い時間がかかることがあります。ビットコインでは、未確認取引が取り込まれないまま一定時間が経つと、一部のメンプールから消えることもありますが、動作はノードとそのローカルポリシーによって異なります。
取引が何時間も保留されている場合は、ウォレットが表示するメッセージだけでなく、検証可能なデータに基づいて分析すべきです。取引識別子によって、ネットワークがまだその取引を認識しているのか、確認されたのか、置き換えられたのか、伝播が止まったのかを判断できます。スマートコントラクトを含む取引では、実際に何が起きたかを判断するために、コントラクトと記録された実行結果も確認する必要があります。
業界の専門家は、保留中の取引を自動的な資金損失としてではなく、ネットワーク状態の問題として捉えることを重視することが多いです。操作がスペースを待っていたり、ほかの取引と競合していたり、先行する取引の順序に依存していたりすることがあります。重要なのは行動する前に原因を特定することで、急いで介入すると状況を複雑にしてしまう可能性があります。
実務上の基本原則は、「まず確認し、それから行動する」です。エクスプローラーでトランザクションハッシュを調べ、手数料を確認し、操作の実際のステータスを確認し、先行する取引がないかを見ることで、通常の待機なのか、競争力のない手数料なのか、ナンスの問題なのか、ウォレットに関する問題なのかを区別できます。原因を特定して初めて、置き換えや手数料増額などの仕組みを検討する意味があります。
保留中の取引は、公開ブロックチェーン自体のアーキテクチャの一部です。その存在は、ネットワークがすべての操作を即時処理するわけではなく、利用可能なスペース、手数料、コンセンサスルールが取引の確認順序に影響することを示しています。このプロセスを理解することで、遅延に適切に対処しやすくなり、何より、チェーン上で実際に何が起きているかを確認せずに不可逆的な判断をしてしまうという、暗号資産における最も高くつくミスの一つを避けることができます。