アルゴリズムとかオーダーとか

仕事で勉強したことなどをまとめてます

Ethereumはどのようにうごいているのか を読んでみた

coffeetimes.hatenadiary.jp

今はこの記事がバズってるから読んでみるといいですよ。って教えてもらったので早速読んでみました。

以下感想など。

  • World stateの説明でMerkle treeが出てくるけどbitcoinのMerkle treeみたいなものと思えばいいのかな?でも説明を読むとルートノードからたどって価値を保持するリーフに辿りつけるとあるから違うものなのかもしれない?
  • Gasの支払いについて。コントラクトを動かすGasが足りないと実行に失敗するのはわかるけど、Gasは消費されて戻ってこないのは知らなかった。これがあることによって攻撃者が無駄にコントラクトを動かしてノード全体に負荷をかけるのを抑制できてるのかなと思った。あと、あるコントラクトを動かすのに必要なGas量って事前に計算できるのだろうか?
  • ommerブロックの存在。マイニング競争に負けても少しは報酬もらえるってのはいいね。
  • トランザクションのnance アカウントのnanceとトランザクションのnanceがイコールかチェックされるので、Transactionのシーケンス性がここで保証されるのかな?ブロックは15秒毎に作られるから15秒に1トランザクションしか発行できない感じなのかしら
所感

トランザクションのところがBitcoinに比べるとかなり複雑で1回読んだだけではよくわかなかった。ただ、Ethereumの構造について全体的にまとめて触れられているので体系立てた理解の助けにはなった。
Ethereum自体の勉強も始めたばかりなので理解できる部分が少なかったけど、今まで気にしていなかった疑問を見つける手助けに放ったので、今後も学習しながらまた読み返してみようと思いました。