保留中のEthereumトランザクションをキャンセルまたは置き換える方法
保留中のEthereumトランザクションをキャンセルまたは置き換える方法
ホーム記事

保留中のEthereumトランザクションをキャンセルまたは置き換える方法

初心者
Published May 20, 2021Updated Jul 22, 2021
5m


概要

Ethereumのネットワークを利用したことがある方は、トランザクション確認に通常よりも時間がかかった経験があると思います。これは、マイナーがトランザクションに優先順位を付けることで発生する現象です。 – より高い手数料を提示したユーザーのトランザクションが優先されます。

設定したトランザクション手数料が低いために処理が滞っている場合、手数料が下がってマイナーがようやくトランザクションを処理するまで待機する必要があります。ただし、保留中のトランザクションを、より高い手数料の新しいトランザクションに置き換えるオプションがあります。複雑でしょうか?それは意外と簡単です。またEther(ETH)やすべてのERC20トークンに対応しています。


はじめに

まず、一度確定したトランザクションを差し替えたり、戻したり、取り消したりすることはできないため、ご注意ください。しかしネットワークが混雑している時期には、一部の仮想通貨のトランザクションが滞る可能性があります。トランザクション量が多すぎる場合、数時間から数日にわたってトランザクションが保留となる場合があります。

場合によっては、保留中のトランザクションが失敗したり、ガス手数料が下がったりします – 保留中のトランザクションが失敗したり、手数料が下がったりして、トランザクションの詰まりが解消されることがあります。Ethereumトランザクションを文字通りキャンセルすることはできませんが、プロセスをスピードアップするためにいくつかの手順を取ることができます。実際には、保留中のトランザクションに対して、より高い手数料を支払い、新しいトランザクションに置き換えることができます。

このガイドでは、MetaMaskやTrust Walletを使用してトランザクションを高速化する方法を紹介します。Ethereumブロックチェーンに対応している他の仮想通貨ウォレットを使用することもできますが、プロセスが少し異なる場合があります。


要件

  • MetaMask または Trust Wallet がインストールされている必要があります。
  • Ethereumウォレットにログインするための秘密鍵(シードフレーズ)です。
  • インターネットアクセス。


Ethereumトランザクションが保留となるのはなぜですか?

Ethereumは、お客様のトランザクション手数料に入札システムを採用しています。手数料は、お客様のトランザクションの複雑さ(どれだけの計算処理が必要か)によって異なります。その中で、知っておくべき以下の3つの重要な用語があります:ガスコスト、ガスプライス、ガスリミット

トランザクションの計算はガスコストで測定され、手数料の各ユニットに対して支払われる価格がガスプライスと呼ばれるものです。ガスコストは必要な作業量、ガスプライスは「作業時間」ごとに支払われる価格と考えることができます。最後に、ガスリミットとは、1つの取引に対して支払うことのできる最大金額のことです。

ガスコストはお客様のトランザクションの複雑さによって定義されますが、ガスプライスや手数料の上限は自由に設定できます。そして、支払われた手数料の総額が、マイナーのインセンティブとなります。ただし、ガスプライスが低すぎると、他のユーザーに競り負けてしまい、トランザクションが保留になってしまうことがあります。トランザクションが保留となった場合、Ethereumは、マイナーが最初のトランザクションを確認するまで、同じウォレットアドレスからの新しいトランザクションを確認しません。


MetaMaskでトランザクションを高速化する方法

1. 保留中のトランザクションが存在するMetaMaskウォレットにログインします。外部ウォレットの場合は、対応する シードフレーズ や秘密鍵を使用してアドレスをインポートする必要があります。


2. [有効化]タブで保留中のトランザクションを見つけ、[スピードアップ]をクリックします。


3. この処理により、トランザクションを再度ブロードキャストすることができます。[高速]をクリックして[保存]をクリックすると、必ず高いガスプライスを使用するようになります。


4. 前述の手順がうまくいかない場合は、[詳細設定]タブでガスプライスを手動で設定することもできます。EtherscanEthGasStationでは、現在のガスプライスや平均確認時間を確認することができます。


MetaMaskでトランザクションを高速化する方法

1. 保留中のトランザクションが存在するMetaMaskウォレットにログインします。繰り返しになりますが、外部ウォレットの場合は、対応する シードフレーズ や秘密鍵を使用してアドレスをインポートする必要があります。


2. [有効化]タブで保留中のトランザクションを確認します。それをクリックして詳細を確認し、[Nonce]の値をメモします。 

注意:複数の保留トランザクションが存在する場合は、古いものから順に(nonce値が低いものから)開始する必要があります。


3. 次に、MetaMaskの[設定]から[詳細設定]をクリックします。


4. 下へスクロールして、[トランザクション・ナンスをカスタマイズ]をオンにします。


5. 戻って、ウォレットのアドレスをクリックして、クリップボードにコピーします。


6. [送信]をクリックして新しいトランザクションを作成し、[受信者を追加]欄にウォレットアドレスを貼り付けます。


7. 保留トランザクション のnonce(ステップ2でメモしたもの)を使用して、自分のウォレットに0ETHを送信する必要 があります。準備ができたら [確認] をクリックします。

注意:ガスプライスが低すぎると、このトランザクションも保留となる可能性があります。適正なガスプライスを設定してください。


8. 新しいトランザクションが確認されるのを待つことで、保留中のトランザクションが置き換えられます。

注意:事故防止のため、[トランザクション・ナンスのカスタマイズ]オプションを必ずオフに戻してください。


Trust Walletでトランザクションをキャンセルする方法

1. Trust Walletアプリで保留中のトランザクションをクリックし、[ナンス]フィールドを検索します。表示されている番号をメモしてください。


2. 新しいトランザクションを作成し、[受信者アドレス]欄にあなたのウォレットアドレスを追加します。保留トランザクションと同じアドレスであることを確認してください。[ETH金額]を 0 に設定し、[次へ]をクリックします。


3. 右上の設定をタップします。


4. [ナンス]フィールドを、先ほどメモした値に置き換えます。競合する[ガスプライス]を設定しておけば、トランザクションが再び保留となることはありません。


5. 新しいトランザクションが確認されるのを待つことで、保留中のトランザクションが置き換えられます。


おわりに

Ethereumのトランザクションを送信すると、ガスプライスで自分が負けていることに気づくのは、非常にフラストレーションが溜まります。保留中のトランザクションが失敗するか確認されるまで、Ethereumのウォレットを使用できないことに気付くと、さらに悪化します。

保留中のトランザクションは、ネットワーク手数料が下がると自動的に清算されることもあります。しかし残念ながら、これにはかなりの時間がかかります。ありがたいことに、保留中のトランザクションは、シンプルにゼロトークン送金でフロントランニングをすることでキャンセルすることができます。キャンセル処理を成功させるためには、十分なガスプライスをお支払いする必要があることを覚えておいてください。