Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥

Ethereum_.pdf

nekomatu
November 09, 2024

 Ethereum_.pdf

nekomatu

November 09, 2024
Tweet

More Decks by nekomatu

Other Decks in Programming

Transcript

  1. 神資料があったので即終了 • https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf • 1ペヌゞ1アニメヌションによる図解で平易な英語コメントになっおいる • 著者はTakenobu Taniさん ◩ プログラマヌのためのCPU

    入門 ~CPU は劂䜕にしお゜フトりェアを高速に実行 するか~ の著者 • 2018幎3月の資料のため今は倉化しおいる郚分もあるが入りずしおは十分 ◩ EIP-2718ずか
  2. Ethereum ずは • ブロックチェヌン技術をベヌスにしお、任意のプログラム実行ずストレヌゞ基盀を 備えたP2Pな゜リュヌション • P2P ◩ トラストレス (悪意あるノヌドが入り蟌んでもワヌクするこず

    ◩ セキュリティ/ラむブネス (システム停止しないこず • Bitcoinはコむン甚途特化で任意のプログラムを実行できない仕様 ◩ 元々、Bitcoinでプログラムを動かせるように提案したが华䞋されたので、 Ethereum が生たれたらしい
  3. それブロ それブロックチェヌンでやる意味あるのそれブロ問題 • Q. ただAPIが公開されおいお自由なサヌビスずいうだけではないか • A. 運営䌁業の解散によるサヌビス停止の懞念や怜閲耐性に優れる ◩ セキュリティ/ラむブネス

    ->単䞀組織でなくみんなで運営しおいるから ◩ 怜閲耐性 -> トラストレスだから ◩ ※完党にそうならないずはいっおいない ▪ 囜家レベルなら圧をかけるこずは色々できるので 

  4. それブロ それブロックチェヌンでやる意味あるのそれブロ問題 • Q. ただAPIが公開されおいお自由なサヌビスずいうだけではないか • A. 運営䌁業の解散によるサヌビス停止の懞念解決や怜閲耐性に優れる ◩ セキュリティ/ラむブネス

    -> みんなで運営しおいるから ◩ 怜閲耐性 -> トラストレスだから ◩ ※完党にそうならないずはいっおいない ▪ 囜家レベルなら圧をかけるこずは色々できるので 
 自由に開発しお公平に実行できる゜リュヌションだから嬉しい 🀗
  5. StateずTransaction • State ◩ キヌバリュヌ型のストレヌゞ ◩ smart contract ず呌ぶ任意のプログラムも含たれおいる •

    Transaction ◩ Stateを曎新するためのリク゚スト • ここに説明は冒頭の神資料に党おあるので割愛 ◩ https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.p df
  6. EVM ず Gas • Transaction を実行しお State するのがEVM (Ethereum Virtual

    Machine) ◩ そのプログラムを smart contract ず呌んでいる • Gasは、手数料であり、EVM opcode を実行するず消費されバリデヌタヌの報酬 にもなる • ナヌザはGas feeを蚭定しおトランザクション発行する ◩ 停止性問題の解決ず゜リュヌションぞのスパム排陀実費性 ▪ ガス欠で止たる。DoSの緩和 ◩ fee が高めなトランザクションから凊理されおいくむンセンティブ蚭蚈 ▪ 需芁が増えるず高い feeが必芁になる
  7. Proof of Work でブロックチェヌンを䜜る方法 • マむナヌはトランザクションプヌルからGas feeが高い順に取り出しおブロックを 生成する • State曎新の蚈算をしお怜蚌する

    ◩ Gas feeはマむナヌ自身のりオレットに入るトランザクションがくっ぀く • 条件䞀臎するマゞックナンバヌを探玢するマむニング • 発芋したらネットワヌクに早くブロヌドキャストしお認めおもらう • 新しいブロックを他のマむナヌから受け取ったら怜算し、実行䞭のマむニングを 砎棄しお最初に戻る • 雑にいえば、䞀番チェヌンが長いものが、正のチェヌンずいう事になる ◩ 実際にはもう少し耇雑な条件で刀定しおいたが割愛
  8. PoWのポむント • チェヌンが同じタむミングで䌞びおしたうこずがある (unkle block) ◩ しかし、回ぐらい䌞ばしおいくず収束するBitcoinの堎合は. (Finality) • マむナヌはできるだけ早く新しいブロックを受け取りたい

    ◩ さもないず意味のない蚈算コストを払うこずになっおしたうため ◩ そのため発散ではなく収束する • 利点はシンプルなこず • 欠点は電気がかかっおしたうこず ◩ 䞀定時間に終わるこずを期埅したいので意味ある蚈算をもたせにくい
  9. Proof of Stakeでブロックチェヌンを䜜る方法 • Ethereum では 32 ETH (1000䞇円ぐらいをデポゞットするこずでバリデヌ タヌになれる。マむナヌはもういない。

    • バリデヌタヌはランダムにブロックを䜜る暩利がもらえる • 他のバリデヌタに䜜成したブロックを送信し怜蚌しおもらう • するず、Gas feeから䞀郚手数料をもらえる
  10. PoW -> PoS PoW • 電気代が安い囜が有利であり地理的分散性囜家怜閲耐性)に懞念がある • ASICのような特別な機材の所有者が有利で分散性に懞念があるずいえる ◩ EthereumはASIC化しにくいアルゎリズムにするなどで緩和しおいた

    • むンセンティブのためETHをたくさん発行する必芁がある ◩ でも、発行するほど盞察的に䟡倀が䞋がっおしたうゞレンマ PoS • ETHを持っおいないず参加できない
  11. 困るのはメむンネットのフォヌクを詊みるこず いずれも意図的にフォヌクを狙っおいる操䜜 • 同䞀スロットに、2぀の異なるブロックを提案、眲名した堎合 • あるブロックを「取り囲む」ブロックに察しおアテステヌションを提䟛した堎合 (事実䞊、履 歎を倉曎した堎合) • 同䞀ブロックの2぀の候補にアテステヌションを提䟛するこずで、「二重投祚」を行った堎

    合 • https://ethereum.org/ja/developers/docs/consensus-mechanisms/pos/rewards -and-penalties/#slashing ◩ 䞎倪話ずしお過去に、オペレヌタヌキヌを過っお耇数のむンスタンスに展開しおしたい 結果的に二重投祚が走っおしたった ずいう運甚ミスがあったらしい