自分の理解を深めるためEthereumのGasについてまとめました。
間違い等あればご指摘いただけるとありがたいです。
Gas(ガス) イーサリアムのプラットフォーム上で個々のコントラクト(=操作)の実行のために必要となる取引手数料(=マイナーのマイニング報酬)。
必要とされるガスの量は操作の種類によって異なる。例えばETHの送金時に使ってもよいガスの量の最大値(ガスリミット)については
マイイーサウォレットの初期値は21,000ガスとなっている(マイイーサウォレットの解説によると21,000ガスは標準的な
トランザクションを処理するためのガスの量とのこと)。ガスの量については送金する額によって必要な量が変動し、
またERC20トークンの送金やICOの参加時等はより大量のガスが必要となる。ガスはETHを使って支払われる。
自分が使ってもよいと思うガスリミットを指定し、この値を超えるとコントラクトの実行は停止され、
プログラムの状態に加えられたすべての変更は取り消される。(=送金等に失敗する=コントラクトがループし無限に実行されることも防ぐ)
1ガスの価格はユーザーにて設定することが可能。マイイーサウォレットの場合ガス価格の初期値は
1ガス=0.000000020etherに設定されているが、これをユーザー側にて変更することが可能。
ガス価格を高くするほど一般的にはマイナーに早く送金処理をしてもらえる。時間に制約がない場合などはガス価格を小さく設定し、
取引を是非とも成立させるため取引所に送る場合などは高く設定することも可能。
例えば、ガス価格を初期値(0.000000020ether)に設定し、送金に必要な21,000ガスを支払った場合で
1ETHが80,000円の場合だと送金手数料は円建てでおよそ33円必要になる。以下のサイトでガス価格の目安を調べることも可能。
https://www.etherchain.org/tools/gasPriceOracleおお、確かにガスはイーサリアムを成り立たせるものとして重要な概念なので、勉強する価値はありますね
気になった点を簡単に抜き出してみました。
「ガスの量については送金する額によって必要な量が変動し、またERC20トークンの送金やICOの参加時等はより大量のガスが必要となる。」
→1取引当たりの話であれば、ガスの量は送金額ではなく、プログラムコード量に比例します。
「マイイーサウォレットの場合ガス価格の初期値は1ガス=0.000000020etherに設定されている」
→MEWの初期設定は1GAS=21Gweiのため、0.000000021ETHです。
______________________________________________________________________________
また、ご存知かもしれませんが、通常の取引時にどの程度のガスが必要かは以下のサイトが参考になります。
https://ethgasstation.info/私は技術者ではありませんが、暗号通貨の技術については幅広く興味を持っているため、また気になる点等があれば共有ください。
(難しいものに関しては私なりに調べ、答えられる範囲でお答えします。)