Uniswapが20万以上のユーザーアドレスに資金を分配したとき、おそらく多くの人が「このガス料金は高すぎる」と思ったことでしょう。 その日はイーサリアムの歴史において忘れられない日となり、ガス推奨量は史上最高の1000GWEIに達しました。 歴史的な出来事を目の当たりにし、全員がエアドロップを受け取った日の朝、多くの人がガス料金の問題に遭遇しました。高いガス料金はもう問題ではなくなりました。問題は、ウォレットが推奨する最大のガス料金を支払っても、予定時間内に取引を完了できないことでした。全員の Metamask に「保留中」と表示され、ぐるぐる回り続けるので本当に迷惑です。 デフォルトのガス料金額を使用したのに、なぜ即時取引ができないのですか? 。この記事では、Ethereum の取引手数料の仕組みと、Ethereum で取引を開始するときに発生する問題について詳しく説明します。 ガスロジックこの問題はイーサリアムアカウントから始まります。 Ethereum ネットワークには、外部所有アカウントと契約アカウントの 2 種類のアカウントがあります。 外部アカウントは、ユーザーが使用し、秘密鍵の所有者によって管理されるアカウントです。コントラクト アカウントとは、コントラクト コード (多くの場合、プロジェクト パーティが所有) によって制御されるアプリケーション ロジックを備えたスマート コントラクトを指します。ユーザーが DeFi アプリケーションを使用する場合、自分のアカウントを使用して DeFi プロジェクトのスマート コントラクトとやり取りします。 さまざまなアカウントが自由にやり取りでき、ウォレット間で送金したり、契約を相互に呼び出すことができます。あらゆるオンチェーンのやり取りには、一定量の計算能力が必要です。消費される計算能力の量は計算の難易度によって決まり、Gas は計算能力の測定単位です。たとえば、加算演算は比較的単純で 3 Gas を消費しますが、除算演算は比較的複雑で 5 Gas が必要です。 ガスの各単位には対応する価格、つまりガス価格があり、ガス価格は Wei で表されます。ユーザーはガス料金を支払うために ETH を購入する必要があります。 1 ETH = 1e18 Wei であり、通常表示される単位 GWei は 1e9 Wei です。通常、ウォレット ソフトウェアは、過去のガス価格に基づいて、ユーザーが開始しようとしているトランザクションのコストを見積もります。 フルノードの集中化を回避するために、分散型アーキテクチャを追求するブロックチェーンでは、各ブロックの容量が厳しく制限されます。たとえば、ビットコインのブロックサイズ制限やイーサリアムのブロックガス制限などです。この記事の執筆時点では、各 Ethereum ブロックのブロック ガス制限は約 12,000,000 ガスで、これは各ブロックの合計計算能力の上限です。平均して、15 秒ごとに 1 つのブロックが生成されます。トランザクションの需要がブロック容量を超えると、ユーザーはチェーン上でトランザクションをできるだけ早く確認するために、各ブロック内のリソースを競う必要があります。このとき、ユーザーはガスに対して入札し、マイナーはガス価格の高いトランザクションを優先してブロックに入れます。 通常、ユーザーが送金するときに、ウォレットにガス制限を調整するオプションが表示されます。ブロック ガス制限とは異なり、ガス制限は、ユーザーがトランザクションで受け入れることができるガス使用量の上限を指します。契約に抜け穴がある場合があるため、トランザクションは無限ループで計算されます。ガス制限がない場合、このトランザクションはユーザーのウォレット内のすべての ETH を消費します。通常マイナーに課される手数料は、実際にトランザクションを実行する際に消費される計算量(トランザクションで使用されるガス)に応じて決済され、ガス制限内の残りのETHがユーザーのアカウントに返還されます。 つまり、消費されるETHの量(Ether Cost)= トランザクション手数料(Gas Fee/Transaction Fee)= 各トランザクションで消費されるGasの量(Gas Used By Transaction)* Gasの価格(Gas Price)と結論付けることができます。 イーサリアムの手数料の仕組みとアカウントの種類を理解したところで、取引時にユーザーがよく遭遇する問題を見てみましょう。 保留中の取引/加速された取引?ユーザーがトランザクションを開始するたびに、トランザクションはトランザクション プール (Mempool) に配置されます。前述のように、マイナーはプール内でガス価格が最も高いトランザクションのパッケージ化を優先します (マイナーの利益追求の性質)。したがって、ユーザーが設定したガス価格によって、トランザクションがパッケージ化されて実行される速度が決まります。ネットワークが混雑すると、ガス価格の高騰により、ユーザーのトランザクションが長時間確認保留状態になる場合があります。保留中のトランザクションをできるだけ早く送信するために、ユーザーは、トランザクションを高速化するためにガス価格をさらに支払うことを選択できます (注: これは、順番を切るという目的を達成するためにマイナーにより多くの報酬を与えることを意味します)。 加速取引はどのように機能しますか?高速化されたトランザクションのロジックをより詳細に理解するには、別のパラメータである Nonce を理解する必要があります。アカウントによって送信される各トランザクションには、0 から始まる連続したトランザクション番号 (Nonce) が付与されます。転送が開始されるたびに、アカウントの Nonce 値は 1 ずつ増加します。 ユーザーがトランザクションを高速化したい場合、Ethereum ウォレットで高速トランザクション オプションを選択できます。この場合、ユーザーはより高いガス料金を支払う必要があります。ユーザーが同意すると、新しいトランザクションを開始するのと同じになり、新しいトランザクションには確認されるトランザクションと同じ Nonce 値が設定されます。 Ethereum ネットワークの規制により、Nonce 値は連続的でジャンプできず、同じアドレスの各トランザクションの Nonce 値を繰り返すことはできないため、マイナーは新しく生成されたトランザクションをパッケージ化します。新しいトランザクションがパッケージ化され確認された後、ガス価格が低い以前のトランザクションは破棄されます。 ユーザーがトランザクションを高速化したくない場合は、トランザクションがまだトランザクション プール内にあり、パッケージ化されていない限り、ユーザーはいつでもトランザクションをキャンセルできます。トランザクションをキャンセルするロジックは、トランザクションを加速するロジックと同じです。ユーザーは、確認するトランザクションと同じ Nonce で、より高い Gas Price でトランザクションを開始しますが、トランザクションの金額は 0 になるため、本質的には、トランザクションをキャンセルするコストは、トランザクションを加速するコストと同じです。 保留中のトランザクションが確認されるまで、後続のすべてのトランザクションは順番に待機する必要があることに注意してください。そのため、待ち時間が長いため、ユーザーは複数のトランザクションを繰り返し開始しないでください。 取引が失敗しました(失敗)BlockBeats は、トランザクションが失敗する最も一般的な理由は、トランザクション ガスが使い果たされた (ガス不足) ことであると判明しました。つまり、このトランザクションの計算の複雑さは、ユーザーが設定したガス制限を超えています。通常、この場合、取引ステータスは失敗と表示され、ガスが使い果たされたことが通知され、支払われたガスは返金されません。 これは不公平だと思うユーザーもいるかもしれませんが、本質的にはマイナーはすでに作業計算を行っていますが、途中でガスがなくなるため、マイナーは諦めて作業を続ける必要があります。ただし、以前の作業に対して支払いが必要なので、以前に支払った Gas 料金は返金されないのは当然でしょう。この場合、ユーザーはトランザクションを再開し、このトランザクションのガス制限を増やすことしかできません。 トランザクションが失敗するもう 1 つのケースは、ユーザーがスマート コントラクトへのトランザクション転送を開始したが、何らかのエラーによってコントラクトが実行されず、トランザクションが Bad Instruction を返す場合です。 たとえば、ユーザーがクラウドファンディング キャンペーンに参加すると、次のようなことが起こる可能性があります。 割り当てがいっぱいです。 または、ユーザーがホワイトリストに登録されていません。 または、ユーザーがトークンなどを過剰にサブスクライブします。 この時点で、ユーザーが設定したガス制限が完全に使い果たされ、最終的にトランザクションが失敗します。 しかし、Ethereum Byzantium ハードフォーク後、新しいオペレータ Reverted (EIP-140) が追加されました。契約でエラーが発生し、トランザクションが失敗した場合、トランザクションはガス制限によって設定されたガスをすべて消費しません。契約は実行を停止し、エラーの原因をユーザーに通知しながら、残りのガス料金を返金します。 もちろん、ユーザーのウォレット内のETHの量がガス料金を支払うのに十分でない場合、取引は失敗したと判断されます。 ホットスポットがない場合、Ethereum ネットワークは平和であり、時間や量を含むすべての転送コストは制御可能です。しかし、トレンドが到来すると、誰もがネットワーク内でさまざまな問題に遭遇することになります。ガス料金のロジックは、新規ユーザーがウォレットを使用する上で最大の障害となります。 基本的に、この記事ではガス料金に関して発生する可能性のあるすべての問題を取り上げます。オンチェーントランザクションは複雑ではありません。簡単に言えば、操作に問題がある場合は、お金を追加することで解決できます。 現時点では、イーサリアムの流動性マイニングの熱狂は一時的に終焉を迎えたと言えます。この動きはバブルを生み出しただけでなく、ウォレットの使用に慣れたユーザーも増え、ウォレットはついに高頻度に使用されるツールとなりました。 オンチェーントランザクションで発生する問題は、実際にはウォレットの最適化の余地も生み出しています。新規ユーザー向けの「ワンクリック加速」や「ワンクリックキャンセル」などのサービスは、今後ますます多くのウォレットで見られるようになるかもしれません。 |
<<: 「ポルカドットって何?」誰でも理解できるポルカドットに関する科学記事
>>: DeFi 契約監査の「ルーチン」を振り返ってみると、あなたは罠に陥っていませんか?
2015年、ビットコインの概念は非常に人気がありましたが、ビットコインが何であるかを知らない人が多か...
速報です!速報です! AntPoolがまた何かやってるよ〜〜 2020年3月5日から、スマートプール...
出典: Sina Finance、著者: OKLink Research Institute我が国の...
2020年6月25日、 Filecoin公式ブログはプロジェクトロードマップを更新し、前回のロード...
イーサリアムの創設者ヴィタリック・ブテリン氏は、イーサリアムの総量を120,204,432、つまり2...
LUX と呼ばれる LUXCoin は PoW+PoS コンセンサスを持ち、PoW マイニング アル...
米国株の継続的な下落はすでに米国の年金に影響を及ぼしている。今年、401k ファンドのいずれもプラス...
ビットコインの価格が12月27日に史上最高値の26,900ドルに達したため、トレーダーやアナリストは...
この記事の編集者: Interstellar Vision IPFSNEWS Sue記事の転載につい...
サウスパークは「フレンチ・クレーム・フレッシュ」と題した短いコーナーで、料理や食事番組の台頭を風刺し...
ビットコインは2020年に約11,740ドルという新たな高値を記録した。デジタル資産が上昇傾向にある...
最近、ミャンマー北部を舞台にした「詐欺防止プロパガンダ映画」『All or Nothing』が公開さ...
近年、米国の民間企業は、大小さまざまな数千の新しい暗号通貨を発行しています。これらは後に、政府の事前...
最近、DeFi市場は厳しい試練に直面しており、複数の攻撃が相次いで発生し、巨額の資産損失が発生してい...
債権者は10年以上にわたりマウントゴックスの破産事件に囚われていたが、ついに管財人がBTC、BCHの...