イーサリアムガスとは何ですか? [これまでで最も包括的なステップバイステップガイド!]

イーサリアムガスとは?

TL; DR

  1. イーサリアムガスは、特定の操作を実行するために必要な計算量を測定する単位です。.
  2. イーサリアムに参加するすべての操作は、トランザクションであろうとスマートコントラクトの実行であろうと、ある程度のガスを必要とします.
  3. 鉱山労働者は、完全な操作を実行するのにかかったガスの総量に相当する量をイーサで支払われます.

イーサリアムガス–イーサリアムエコシステムの生命線であり、他に方法はありません。ガスは、特定の操作を実行するために必要な計算量を測定する単位です。.

イーサリアムに参加するすべての操作は、単純なトランザクションであれ、スマートコントラクトであれ、ICOでさえもある程度のガスを消費します。ガスは、操作を実行するためにネットワークに支払う必要のある料金の金額を計算するために使用されるものです.

このガイドでは、ガスがどのように機能するかを理解します。しかし、そうする前に、私たちが学ばなければならないいくつかの概念があります。それでは、これ以上面倒なことはせずに、イーサリアムガスについて詳しく見ていきましょう。.

イーサリアムガスとは:ステップバイステップガイド

ビットコインでガスが不要なのはなぜですか?

誰もが同じ質問をしていたのでビットコインが作成されました.

  • 仲買人なしで二人の間で送金できる形のお金を作ることは可能でしょうか??
  • ブロックチェーンのようなもので機能することができる分散型のお金を作成することは可能でしょうか??

中本聡はビットコインを作成したときにこれらの質問に答えました。ついに、ある人から別の人に送金できる分散型の通貨システムができました。.

#Crypto ExchangeBenefits

1

Binance
Best exchange


VISIT SITE
  • ? The worlds biggest bitcoin exchange and altcoin crypto exchange in the world by volume.
  • Binance provides a crypto wallet for its traders, where they can store their electronic funds.

2

Coinbase
Ideal for newbies


Visit SITE
  • Coinbase is the largest U.S.-based cryptocurrency exchange, trading more than 30 cryptocurrencies.
  • Very high liquidity
  • Extremely simple user interface

3

eToro
Crypto + Trading

VISIT SITE
  • Multi-Asset Platform. Stocks, crypto, indices
  • eToro is the world’s leading social trading platform, with thousands of options for traders and investors.

しかし、すべての第1世代のブロックチェーンに問題があるビットコインに問題がありました。彼らは金銭取引のみを許可し、それらの取引に条件を追加する方法はありませんでした.

アリスはボブ5BTCを送信できますが、これらのトランザクションに条件を課すことはできませんでした。例えば。彼女はボブに、彼が特定のタスクを実行した場合にのみお金を稼ぐことを伝えることができませんでした.

これらの条件では、非常に複雑なスクリプトが必要になります。プロセスをよりシームレスにするために何かが必要でした.

…そしてその「何か」は賢い契約でした.

スマートコントラクトとは?

#CRYPTO BROKERSBenefits

1

eToro
Best Crypto Broker

VISIT SITE
  • Multi-Asset Platform. Stocks, crypto, indices
  • eToro is the world’s leading social trading platform, with thousands of options for traders and investors.

2

Binance
Cryptocurrency Trading


VISIT SITE
  • ? Your new Favorite App for Cryptocurrency Trading. Buy, sell and trade cryptocurrency on the go
  • Binance provides a crypto wallet for its traders, where they can store their electronic funds.

#BITCOIN CASINOBenefits

1

Bitstarz
Best Crypto Casino

VISIT SITE
  • 2 BTC + 180 free spins First deposit bonus is 152% up to 2 BTC
  • Accepts both fiat currencies and cryptocurrencies

2

Bitcoincasino.io
Fast money transfers


VISIT SITE
  • Six supported cryptocurrencies.
  • 100% up to 0.1 BTC for the first
  • 50% up to 0.1 BTC for the second

スマートコントラクトは、仲介業者のサービスを回避しながら、透明で競合のない方法でお金、財産、株式、または価値のあるものを交換するのに役立ちます.

イーサリアムガスとは:ステップバイステップガイド

ヴィタリックブテリンのイーサリアムは、この世代の確固たる地位を築いています。彼らは、ブロックチェーンが単純な支払いメカニズムからはるかに意味のある強力なものにどのように進化できるかを世界に示しました.

それで、これらの「スマートコントラクト」とは何ですか、そして大したことは何ですか?

スマートコントラクトは自動化されたコントラクトです。それらは、特定の条件が発生したときに実行されるコードで記述された特定の命令で自己実行します.

イーサリアムガスとは:ステップバイステップガイド

スマートコントラクトの詳細については、こちらの詳細ガイドをご覧ください。.

スマートコントラクトは、イーサリアムエコシステムで物事が成し遂げられる方法です。誰かがイーサリアムで特定のタスクを実行したいとき、彼らは1人以上の人々とスマートコントラクトを開始します.

スマートコントラクトは、プログラミング言語「solidity」を使用して記述された一連の命令であり、IFTTTロジック(別名IF-THIS-THEN-THATロジック)に基づいて機能します。基本的に、最初の一連の命令が完了したら、次の関数を実行し、その後次の関数を実行して、契約の最後に到達するまで繰り返し続けます.

それを理解する最良の方法は、自動販売機を想像することです。実行するすべてのステップは、次のステップがそれ自体を実行するためのトリガーのように機能します。それはドミノ効果のようなものです。それでは、自動販売機を操作するときに実行する手順を調べてみましょう。

  • ステップ1:自動販売機にいくらかのお金を与える.
  • ステップ2:必要なアイテムに対応するボタンを打ち込みます.
  • ステップ3:アイテムが出てきて、あなたはそれを集めます.

今、それらすべてのステップを見て、それについて考えてください。前の手順が実行されなかった場合、いずれかの手順が機能しますか?これらのステップのすべては、前のステップに直接関連しています。考慮すべきもう1つの要素があり、それはスマートコントラクトの不可欠な部分です。ご覧のとおり、自動販売機とのやり取り全体で、あなた(リクエスター)はマシン(プロバイダー)のみを操作していました。第三者の関与は一切ありませんでした.

では、このトランザクションがイーサリアムネットワークで発生した場合、どのように見えるでしょうか。?

イーサリアムネットワークの自動販売機から何かを購入したとすると、手順はどのようになりますか?

ステップ1: 自動販売機にいくらかのお金を与えると、これはイーサリアムネットワークのすべてのノードによって記録され、トランザクションは元帳で更新されます.

ステップ2: 必要なアイテムに対応するボタンを押すと、その記録がイーサリアムネットワークと元帳で更新されます.

ステップ3: アイテムが出てきて、それを集めると、これはすべてのノードと元帳によって記録されます.

スマートコントラクトを介して行うすべてのトランザクションは、ネットワークによって記録および更新されます。これは、契約に関与するすべての人が自分の行動に責任を持つようにすることです。実行されたすべてのアクションをネットワーク全体に表示することで、人間の悪意を取り除きます

イーサリアム仮想マシンとは?

イーサリアム仮想マシン(EVM)とは何かを理解する前に、「仮想マシン」が必要な理由を理解する必要があります.

それでは、スマートコントラクトに戻りましょう.

スマートコントラクトに必要な望ましいプロパティは何ですか?

ブロックチェーン上で実行されるものはすべて不変である必要があり、その整合性を損なうことなく複数のノードを実行できる必要があります。その結果、スマートコントラクト機能は次の3つである必要があります。

  • 決定論的.
  • 終了可能.
  • 孤立.

機能#1:決定論的

プログラムが毎回特定の入力に同じ出力を与える場合、プログラムは決定論的です。例えば。 3 + 1 = 4の場合、3 + 1は常に4になります(同じベースを想定)。したがって、プログラムが異なるコンピューターの同じ入力セットに同じ出力を与える場合、そのプログラムは決定論的と呼ばれます。.

プログラムが非決定的な方法で動作する可能性があるさまざまな瞬間があります。

  • 非決定論的システム関数の呼び出し:プログラマーがプログラム内で非決定論的関数を呼び出す場合.
  • 非決定論的データリソース:プログラムが実行時にデータを取得し、そのデータソースが非決定論的である場合、プログラムは非決定論的になります。例えば。特定のクエリのトップ10のグーグル検索を取得するプログラムを想定してください。リストは変更され続ける可能性があります.
  • 動的呼び出し:プログラムが2番目のプログラムを呼び出すとき、それは動的呼び出しと呼ばれます。呼び出しターゲットは実行中にのみ決定されるため、本質的に非決定的です.

機能#2:終了可能

数理論理学では、「停止性問題」と呼ばれるエラーがあります。基本的には、与えられたプログラムが制限時間内にその機能を実行できるかどうかを知ることができないと述べています。 1936年、アランチューリングは、カントールの対角問題を使用して、特定のプログラムが制限時間内に終了できるかどうかを知る方法がないと推測しました。.

定義上、コントラクトは特定の制限時間内に終了できる必要があるため、これは明らかにスマートコントラクトの問題です。契約を外部から「殺す」方法があり、リソースを浪費する無限ループに入らないようにするために、いくつかの対策が講じられています。

  • チューリング完全性: Turing Incompleteブロックチェーンは機能が制限されており、ジャンプやループを行うことができません。したがって、彼らは無限ループに入ることができません.
  • ステップと料金メーター: プログラムは、実行した「ステップ」の数、つまり実行した命令の数を追跡するだけで、特定のステップ数が実行されると終了します。もう1つの方法は料金メーターです。ここでは、契約は前払い料金で実行されます。すべての命令の実行には、特定の金額の料金が必要です。使用料がプリペイド料金を超える場合、契約は終了します.
  • タイマー: ここでは、事前に決定されたタイマーが保持されます。契約の実行が制限時間を超えた場合、外部から中止されます.

機能#3:分離

ブロックチェーンでは、誰でも誰でもスマートコントラクトをアップロードできます。ただし、このため、契約には、故意および無意識のうちにウイルスやバグが含まれている可能性があります。.

契約が分離されていない場合、これはシステム全体を妨げる可能性があります。したがって、エコシステム全体を悪影響から保護するために、契約をサンドボックスに分離しておくことが重要です。.

これらの機能を確認したので、それらがどのように実行されるかを知ることが重要です。通常、スマートコントラクトは次の2つのシステムのいずれかを使用して実行されます。

  • 仮想マシン:イーサリアムはこれを使用します.
  • Docker:ファブリックはこれを使用します.

これら2つを比較して、どちらがより良いエコシステムになるかを判断しましょう。簡単にするために、Ethereum(仮想マシン)とFabric(Docker)を比較します。.

イーサリアムガスとは:ステップバイステップガイド

したがって、ご覧のとおり、仮想マシンは、スマートコントラクトに対して、より優れた決定論的で、終了可能で、分離された環境を提供します。ただし、ドッカーには1つの明確な利点があります。イーサリアムのような仮想マシン(VM)で、スマートコントラクトを作成するには、まったく新しい言語(堅牢性)を学ぶ必要がある一方で、コーディング言語の柔軟性を提供します。.

EVMは、すべてのスマートコントラクトがイーサリアムで機能する仮想マシンです。シンプルでありながら強力なチューリング完全256ビット仮想マシンです。チューリング完全とは、リソースとメモリがあれば、EVMで実行されるすべてのプログラムで問題を解決できることを意味します。.

イーサリアムガスとは?

はじめに説明したように、ガスは特定の操作を実行するために必要な計算量を測定する単位です。.

注:続行する前に、ジョセフ・チョウに大声で叫びます 素晴らしいプレゼンテーション イーサリアムガス.

EVMで実行されるスマートコントラクトのほとんどはSolidityを使用してコーディングされています(Ethereumは将来SolidityからViperに移行することを計画しています)。 Solidityのコードのすべての行では、一定量のガスを実行する必要があります.

ETHガス価格チャート

以下の画像はイーサリアムイエローペーパーから取られたものであり、特定の指示がガスに関してどれくらいの費用がかかるかについての大まかなアイデアを得るのに使用できます。この表によると、すべてのトランザクションには少なくとも21,000のガスが必要です。

イーサリアムガスとは:ステップバイステップガイド

画像提供: イーサリアムイエローペーパー

イーサリアムでガスがどのように機能するかをよりよく理解するために、アナロジーを使用しましょう。あなたがロードトリップに行くとしましょう。その前に、次の手順を実行します。

  • あなたはガソリンスタンドに行き、あなたがあなたの車に満たしたいガスの量を指定します.
  • あなたはあなたの車にそのガスを満たします.
  • あなたはガソリンスタンドにあなたが彼らにガスのために借りている金額を支払います.

それでは、イーサリアムとの類似点を描きましょう.

車の運転は、スマートコントラクトの機能を実行するなど、実行したい操作です.

ガスはよく…。ガス.

ガソリンスタンドはあなたの鉱夫です.

あなたが彼らに支払ったお金は鉱夫料金です.

ユーザーがイーサリアムで実行したいすべての操作は、以下のガスを提供する必要があります。

  • そのデータ、別名内因性ガスをカバーするため.
  • その計算全体をカバーするため.

必要最低限​​のことを説明したので、次の質問をするかもしれません。.

なぜこのガスシステムがあるのですか?

答えは簡単です…インセンティブ.

他のプルーフオブワークピアツーピアシステムと同様に、イーサリアムはマイナーのハッシュレートに大きく依存しています。より多くの鉱夫、より多くのハッシュレート、より安全で高速なシステム.

より多くの鉱夫をシステムに引き付けるために、彼らはシステムを鉱夫にとって可能な限り収益性が高く魅力的なものにする必要があります。イーサリアムでは、鉱山労働者がお金を稼ぐ方法は2つあります。

  • ブロックをマイニングしてブロック報酬を取得する.
  • 採掘されたブロックの一時的な独裁者になることによって.

2番目のポイントを調べてみましょう.

鉱山労働者は、取引をブロック内に置く責任があります。そのためには、計算能力を使用してスマートコントラクトを検証する必要があります。ガスシステムは、そうするために彼らが特定の料金を請求することを可能にします.

この料金は鉱山労働者の料金として知られており、エコシステムに積極的に参加するのに十分なインセンティブを与えるのに役立ちます.

それで、彼らはどのくらいの料金を請求することができますか?計算する前に、ガスの測定方法を理解しましょう.

ガスは単にガスの単位で測定されます。イーサリアムネットワークに送信されるトランザクションは、実行する必要のあるEVM命令の数に応じて、個別の量のガス(100ガスなど)のコストがかかります.

では、どのようにしてガスをエーテルに変換するのでしょうか?

変換の固定価格はありません。好きなガス価格を指定するのは、トランザクションの送信者次第です。一方、好きな取引(通常は最高のガス価格を指定する取引)を確認するのは鉱山労働者の責任です。平均ガス価格は通常、約20 Gwei(または0.00000002 ETH)のオーダーですが、次のブロックに含めるために競合するトランザクションが増えるため、ネットワークトラフィックが多いときに上昇する可能性があります。.

次のチャートは、平均イーサリアムガス価格チャートを示しています.

イーサリアムガスとは:ステップバイステップガイド

画像提供:Etherscan.

先に進む前に、ガス制限の概念を知ることが重要です。.

イーサリアムガス制限とは?

イーサリアムで操作を行うには、トランザクションの送信者は、ネットワークに送信する前にガス制限を指定する必要があります。ガス制限は、送信者がこのトランザクションに対して支払う意思のあるガスの最大量です。.

ガス制限を指定するときは、次の点を考慮する必要があります。

  • 操作が異なれば、ガスコストも異なります(前に示したように).
  • ガスがなくなると、鉱山労働者は実行を停止します.
  • ガスが残っている場合は、すぐに運転発電機に返金されます.

架空のシナリオでこれが動作しているのを見てみましょう.

2つの数値を追加し、そのために契約が次のアクションを実行する必要があるとします。

  • 変数に10を格納します。この操作に45ガスかかるとしましょう.
  • 2つの変数を追加すると、これには10ガスかかるとします。.
  • 再び45ガスかかる結果を保存する.

送信者が120ガスのガス制限を指定するとします。.

マイナーが計算を実行するために使用する総ガスは、(45 + 10 + 45)= 100ガスです。.

1ガスのコストが20Gweiであると仮定すると、鉱夫に支払うべき料金は(100 * 20 Gwei)= 0.000002ETHです。.

さて、どれだけのガスが残っていますか?

120 – 100 = 20ガス.

20個の未使用ガスが送信者に返送されます(20 * 20 Gwei)= 0.0000004 ETH.

したがって、そうは言っても、考慮しなければならない2つのシナリオがあります。

  • 指定されたガス制限が低すぎます.
  • 指定されたガス制限が高すぎます.

シナリオ#1:ガス制限が低すぎる

操作でガスがなくなると、実際には何も起こらなかったように元の状態に戻りますが、操作ジェネレーターはマイナーに計算コストの料金を支払う必要があり、操作はブロックチェーンに追加されます(たとえそれがあったとしても)実行されていません).

ロードトリップの例えに戻ると、車に十分なガソリンが入っていない場合、目的地に到着することはできませんが、それでもガソリンスタンドに燃料代を支払っています。?

これが仮想のスマートコントラクトでどのように機能するかを見てみましょう。手順は次のとおりです。

  • 変数に10を格納します。この操作に45ガスかかるとしましょう.
  • 2つの変数を追加すると、これには10ガスかかるとします。.
  • 再び45ガスかかる結果を保存する.

ただし、今回は送信者が90ガスのガス制限を設定します.

これで、トランザクションを実行するために必要なガスは100ガスであることがわかりましたが、指定したガス制限は90ガスのみです。.

このシナリオでは、鉱夫は90ガス相当の計算を行い、90ガスの送信者料金を請求します。これは(90 * 20 Gwei)= 0.0000018ETHであることがわかります。.

また、コントラクトは元の状態に戻り、トランザクションはブロックチェーンに含まれます.

シナリオ#2:ガス制限が高すぎる

したがって、ガス制限を高く設定しすぎるとどうなりますか?

それは正しく行うのが理にかなっていますか?結局のところ、残っているものはすべて送信者の権利に返金されます?

紙の上では良いように聞こえますが、実際にはそれほどうまく機能しません.

鉱山労働者は、6,700,000ガスであると想定するブロックガス制限によって制限されます。基本的なトランザクション(ETHの単純な転送)には、少なくとも21,000ガスのガス要件があります。鉱夫は、合計でブロックガス制限以下になるトランザクションのみを含めることができます.

イーサリアムガスとは:ステップバイステップガイド

画像提供:ハッカーヌーン

トランザクションA(ETHの単純な転送を行う)が42,000の指定されたガス制限を持ち、2つのトランザクションBとC(ETHの単純な転送も)が21,000の指定されたガス制限を持っているとします。.

鉱山労働者が自分のブロックに入れる方が理にかなっています?

  • 彼らはトランザクションAを実行し、大量の未使用ガスを返金しますか??
  • または、トランザクションBとCを入れて、ほとんどまたはまったく返金しないのでしょうか。?

2番目のポイントは経済的に正しい彼らにとってより理にかなっています?

これがまさに、ガス制限を膨らませることが賢明な方法ではない理由です。トランザクションに必要なガス量よりもわずかに高いガス制限を設定する方が合理的です.

以下は平均ガス制限チャートです.

イーサリアムガスとは:ステップバイステップガイド

画像提供:Etherscan

高および低イーサリアムガス対高および低料金

これまでのところ、ガスとエーテルは同じものではないことは明らかです。ガスは必要な計算能力の量であり、エーテルはそのガスの支払いに使用される通貨です.

これまでに得たすべての知識が得られたので、特定のガスと料金のシナリオを見てみましょう。.

オペレーションのガスが少ない場合、計算を完了するのに十分なガスがないため、鉱山労働者はそれを拾うことすらできません。.

オペレーションの料金が低ければ、それをカバーするのに十分なガスがあるかもしれませんが、それでも、低料金のオペレーションは経済的に魅力的ではないため、鉱山労働者はそれを拾うために少しずつ呟きません。.

オペレーションに高いガスがある場合、それはオペレーションが高いガス制限で肥大化していることを意味し、したがって鉱山労働者はそれを拾いません.

オペレーションの料金が高い場合、鉱夫はそれから多くのお金を稼ぎ、即座にそれを拾うことを知っています.

によると、さまざまな種類の取引速度に対して現在推奨されているガソリン価格 ethgasstation は:

イーサリアムガスとは:ステップバイステップガイド

イーサリアムのガス払い戻しシナリオで何が起こるか?

堅実に、ガスの払い戻しを確実に取り戻す2つのコマンドがあります.

  • 自殺:これは基本的にスマートコントラクトを殺します。そうすることで24000ガスを取り戻すことができます.
  • SSTORE:ストレージの削除。15,000を取り戻します.

したがって、契約で14,000のガスを使い果たしてストレージを削除した場合は、(15000-14000)1000のガスを正しく返金する必要があります。?

それほど単純ではありません.

その場合、鉱夫はすべてのインセンティブを失います。結局のところ、鉱山労働者はあなたの計算を正しく行うためにあなたにお金を払うべきではありません?

このようなシナリオを回避するために、条件が設定されました.

累積された払い戻しは、計算中に使用されたガスの半分を超えることはできません.

これを解決するために例を見てみましょう.

…14,000のガスを消費するスマートコントラクトがあるとします.

私たちが設定したガス制限は20,000ガスです.

スマートコントラクトにはSSTORAGEコマンドも含まれています.

したがって、契約作成者は計算後にどのくらいのガスを取り戻すのでしょうか?

まず、彼らは(20,000-14,000)= 6,000ユニットの未使用ガスを取り戻します.

現在、SSTORAGEコマンドも使用されているため、理論的には15,000ガスも返されるはずです。.

ただし、契約で使用されているガスの量は14,000であり、15,000以降 > 14,000 / 2、生成される払い戻しは14,000 / 2 = 7000になります.

したがって、作成者が最終的に取り戻すガスの合計は6000 + 7000 = 13,000です。.

別の例を見てみましょう.

今回の契約で70,000のガスを消費し、SUICIDE機能が含まれているとします。.

SUICIDE関数はあなたに24,000のガスを返すはずです < 70,000 / 2.

この状況では、ガスの払い戻しは24,000+未使用のガスになります.

イーサリアムガスへの批判​​。それは正当化されますか?

ガスシステムは、鉱山労働者をかなり前向きに動機付けるスムーズに実行されるメカニズムを提示することで賞賛されていますが、最近、開発者やスマートコントラクトの作成者にとって少し高すぎるとの批判を受けています.

これに関して、ダニーライアンは彼の中でいくつかの興味深い研究をしました ハッカーヌーンの記事.

次のシナリオを検討してください。

イーサリアムガスとは:ステップバイステップガイド

イーサリアムで2つの数字が100万回追加されると、料金は最大26.55ドルになります。.

Danny Ryanは、これを標準のAWSシステムと比較しました。彼は、Pythonを使用して0.04秒で2つの数値を100万回追加できると述べました。これは、1時間あたり0.0059ドルのAmazonEC2レートで0.000000066ドルかかります。.

これは、イーサリアムでの計算が4億倍も高価であることを意味します!

彼の研究に基づいて、これは彼が下した結論です:

「公平を期すために、2つの数値を100万回足し合わせるのは少し不自然です。適切に作成されたコントラクトは、そのような計算の複雑さをチェーンから外し、コントラクトの状態の更新をより多く処理する可能性があります。大量のデータをブロックチェーンに保存することも通常の作業ではありません。タスクによっては、ユーザーはデータの暗号化参照(ハッシュ)をオンチェーンに保存し、残りのデータをオフチェーンに保つ可能性があります.

そうは言っても、私たち開発者はこれらのコストを認識し、それに応じてdAppを設計する必要があります。ブロックチェーンの分散機能を活用しながら、オンチェーンとオフチェーンの複雑さのバランスを見つける必要があります。」

イノベーションに影響を与えるイーサリアムガス価格の上昇

イーサリアムの高いガス価格の問題は、開発者がプロ​​ジェクトへのマイクロトランザクションの支払いを不可能にすることです。最近、ネットワークの混雑により大幅に増加しています。 DeFi と増加する取引手数料.

ご存知かもしれませんが、DeFi(分散型ファイナンス)アプリは現在ブームの時期を迎えています。誰もが収穫農業のパイのスライスを持ちたいと思っています。執筆時点で、DeFiに閉じ込められている価値の額は約110億ドルで、UniSwap、Maker、WBTCが最も人気のあるアプリです。.

開発者のPOVによると、DeFiの美しさはその構成可能性にあります。さまざまなDeFi機能を簡単に組み込んで、まったく新しいアプリを作成できます。ただし、ガス料金の高騰により、開発者がマイクロペイメントを可能にする内部経済システムを組み込むことが難しくなっています。.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me