なぜガスが必要なのか
public.icon
ビットコインがチューリング完全性を備えていない理由は、ビットコインは通貨として利用されることを目的としてSatoshi Nakamotoにより考案されているため、通貨としての利用に関係する処理だけを行うことができればよいからです。 チューリング完全を備えることによって、無限ループなどの悪意を持ったシステムをデプロイされる可能性がある
(チューリング完全ではない場合は、ある操作しかできないため悪意を取り除きやすい)
GasはEthereum上のトランザクションを実行するための手数料
ガス代を徴収することによって、無限ループのシステムを防ぐ目的
Gas Limitによって、トランザクションの実行に使用するガスの上限が設定されていれば、万が一、実行したコントラクトで無限ループが発生した場合でも、消費したGasがGas Limitに達した時点でコントラクトの実行は停止します。
ブロック・ガスリミットとトランザクション・ガスリミットが決まっていることにより、攻撃者はこれらを超えてGasを使用するトランザクションを実行できません。またトランザクションの実行が最後まで完了しなくても、途中まで使用した分のGasを消費するため、攻撃すればするほど、コストがかかる仕組みになっています。