timezone |
---|
Asia/Shanghai |
- 自我介绍
- Hi我是k66,這是第二次參加共學,希望這次自己能踏實學習!
- 你认为你会完成本次残酷学习吗?
- 會!
總費時: 約80分鐘
前置至Week0,主要在講EPS(Ethereum Protocol Study)在做什麼即使命,可提交一個表單 (https://docs.google.com/forms/d/e/1FAIpQLSdLASV5RqAQv6I2KzA6DcxkFHKcZw3YuL3S3uXfsWUiYRsKRg/viewform)告知EPS你想學的知識點。 EPS計畫會講比較深、不會教你Solidity語言或開發DApp,而是去介紹整個以太坊的架構。 加入EPS成員還不能成為Ethereum Fellow,但鼓勵當成目標。
Week1
-
行前讀:
-
不可被destoyed and can't be shut down、公私鑰、隱私
-
論文Ethereum Berlin Ver: 2022-04-17
-
EIPs: EIP1是範例。
-
executions-specs
和consensus-specs
(github.com/executions-specs)(github.com/executions-apis) (github.com/consensus-specs)(github.com/consensus-apis) -
設計原則:公共利益、中立、自由、敏捷、無風險等
-
EVM、State(data)、TXs(mempool)、p2p、JSON-RPC API、User/web3、Engine API、COnsensus Layer、Beacon API、validators的溝通
-
Implementatios - EL
- geth/go
- reth/rust
- ethereumjs/TS
- ...
-
Implementatios - CL
- ...
-
Testing
-
Other tests
- Benchmarking, Stress
- Shadow forks - live transition
- Client tests, unit testing
- CI/CD
-
流程: Idea->Reserch->Specs->Implementation->Testing->Adoption/Rejection
-
Coordination
- Dev calls (EL, CL, 4844, testnets, EOF...)
- EIPs - Eth Maicians, EIPIP, Cat herders, R&D Discord, Ethresear.ch
-
Scalability Trilemma不可能三角 - Scalable, Secure, Decentralized
總費時: 約40分鐘
Week2
- Matt講解程式碼,今天僅看了
Block Validation
和Block Building
- Block Validation: * err檢查 * for _, tx in range block.Transactions(){ res,err := vm.Run(block.Header(), tx, state) // 如果 transaction invalid那麼block也invalid } state = res * return state, nil
- Block Building: * gasUsed+=gas; * return (env,txs,state)
- 明天接著看Week2
總費時: 約10分鐘
總費時: 約10分鐘
Week2
- 承前一日繼續觀看影片
- execution layer會跟consensus layer互動
- EVM的組成(PC, stack,memory,gas memory,code,block context/tx context, state)
總費時: 約20分鐘
Week3
- 今天講Consensus Layer
- 區塊鏈為什麼好?
因為有digital scarcity
- 那digital scarcity是什麼?
scarcity是a user can't spend more coins than they have
- 那怎麼做到digital scarcity?
Don't have a single trusted operator
- 如何remove a single trusted operator? 1. make digital system without a single leader 2. computattion is distributed across many nodes 3. Consensus 又稱state machine replication 4. 愈多節點(nodes),就愈難被攻擊
- Byzantine fault tolerance -> 與consensus protocols有一段歷史
- Satoshi solves Byzantine General's Problem
- POW and heaviest chain algorithm mean any node 最終會converge to same current state as any other
總費時: 約30分鐘
Week3
- 承續前一日,week3影片,但我不太懂,想說之後回頭再看一遍。
Week4
- 講安全及測試
- EVM testing: EEST(Ethereum/Execution Spec Test)
- test Filling: 皆為json files
- Pre-State 停在此
- Environment
- Transaction(s)
- Post-State
以下為明天:
- 共識層的測試: ethereum/consensus-specs
- Cross-Layer(Interop) Testing:
Hive
,Devnet
,Shadow-Forks
,Testnets
- 安全: 淺在的issues, bugs