Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ethereum 演習III / Ethereum Exercise III
Search
Kenji Saito
PRO
April 26, 2023
Technology
0
91
Ethereum 演習III / Ethereum Exercise III
2023年4月26日(水)、ブロックチェーンハブ主催のブロックチェーンアカデミーにて使用したスライドです。
Kenji Saito
PRO
April 26, 2023
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
We Never Took the Kobayashi Maru Test Until Now. What Do You Think of Our Solutions? — Journeys of the Mind Through a No-Win Game
ks91
PRO
0
12
思いつきが武器になる:研究というゲームを始めよう / Ideas Are Your Equipments : Let the Game of Research Begin!
ks91
PRO
0
65
ロボットを雰囲気(ヴァイブ)でプログラミングするこどもたち / Children Vibe-Programming Robots
ks91
PRO
0
21
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 3
ks91
PRO
0
30
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 2
ks91
PRO
0
32
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 1
ks91
PRO
0
160
未来へのフォワードキャスト / Forward Cast to the Future
ks91
PRO
0
86
発表と総括 / Presentations and Summary
ks91
PRO
0
61
サイバーフィジカル社会、金融の未来とアイデアソン / Cyber Physical Society, Future of Finance, and Ideathon
ks91
PRO
0
78
Other Decks in Technology
See All in Technology
オブザーバビリティが広げる AIOps の世界 / The World of AIOps Expanded by Observability
aoto
PRO
0
240
生成AI時代に必要な価値ある意思決定を育てる「開発プロセス定義」を用いた中期戦略
kakehashi
PRO
1
240
役割は変わっても、変わらないもの 〜スクラムマスターからEMへの転身で学んだ信頼構築の本質〜 / How to build trust
shinop
0
150
実践データベース設計 ①データベース設計概論
recruitengineers
PRO
4
2k
【Grafana Meetup Japan #6】Grafanaをリバプロ配下で動かすときにやること ~ Grafana Liveってなんだ ~
yoshitake945
0
220
Skrub: machine-learning with dataframes
gaelvaroquaux
0
100
Nstockの一人目エンジニアが 3年間かけて向き合ってきた セキュリティのこととこれから〜あれから半年〜
yo41sawada
0
160
ここ一年のCCoEとしてのAWSコスト最適化を振り返る / CCoE AWS Cost Optimization devio2025
masahirokawahara
1
1k
ヘブンバーンズレッドのレンダリングパイプライン刷新
gree_tech
PRO
0
430
AIエージェントの活用に重要な「MCP (Model Context Protocol)」とは何か
masayamoriofficial
0
250
TypeScript入門
recruitengineers
PRO
34
11k
Kubernetes における cgroup driver のしくみ: runwasi の bugfix より
z63d
2
110
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
570
The Language of Interfaces
destraynor
160
25k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
The Pragmatic Product Professional
lauravandoore
36
6.8k
How STYLIGHT went responsive
nonsquared
100
5.8k
Facilitating Awesome Meetings
lara
55
6.5k
Transcript
4 Ethereum III CSO /
[email protected]
— 4 Ethereum III
— 2023-04-26 – p.1/26
https://speakerdeck.com/ks91 — 4 Ethereum III — 2023-04-26 – p.2/26
( ) SFC ( ) CSO (Chief Science Officer) 1993
( ) 2006 ( ) SFC 22 P2P (Peer-to-Peer) 2011 ( ) 2018 2019 VR 2021.7 VR 2021.8 “ALL THESE WORLDS ARE YOURS” VR 2021.9 & VR 2022.3 2023 AI VR 2023.2-3 “POWER TO THE PEOPLE” → ( ) — 4 Ethereum III — 2023-04-26 – p.3/26
web3 4 web3 NFT (Non-Fungible Token) DAO (Decentralized Autonomous Organization)
— 4 Ethereum III — 2023-04-26 – p.4/26
1. NFT DAO 2. : NFT 3. : DAO 4.
— 4 Ethereum III — 2023-04-26 – p.5/26
NFT DAO DeFi ( ) — 4 Ethereum III —
2023-04-26 – p.6/26
( ) = = : . . . ( :
) ( ) . . . . . . . . . . . . — 4 Ethereum III — 2023-04-26 – p.7/26
⇒ ( ) . . . . . . —
4 Ethereum III — 2023-04-26 – p.8/26
DeFi ( ) DeFi : Decentralized Finace . . .
( ) DeFi DAO — 4 Ethereum III — 2023-04-26 – p.9/26
NFT ( ) NFT : Non-Fungible Token ( ) (1
) → fungible token ( ) → NFT — 4 Ethereum III — 2023-04-26 – p.10/26
ERC-721 ERC (Ethereum Request for Comments) 721 EIP (Ethereum Improvement
Proposal) https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md interface ERC721 { function balanceOf(address _owner) external view returns (uint256); function ownerOf(uint256 _tokenId) external view returns (address); function safeTransferFrom(address _from, address _to, uint256 _tokenId, . . .) external payable; : } interface ERC721TokenReceiver { function onERC721Received(.. ., uint256 _tokenId, . . .) external returns(bytes4); } interface ERC721Metadata { function name() external view returns (string _name); function symbol() external view returns (string _symbol); function tokenURI(uint256 _tokenId) external view returns (string); } tokenURI URL ( ) ( ) — 4 Ethereum III — 2023-04-26 – p.11/26
NFT NFT URL Marlinspike, M.: My first impressions of web3
(2022) Web3 . . . URL ↑ NFT → → NFT NFT ↔ NFT — 4 Ethereum III — 2023-04-26 – p.12/26
DAO ( ) DAO : Decentralized Autonomous Organization Vitalik Buterin
(Ethereum ) https://blog.ethereum.org/2014/05/06/daos-dacs-das-and-more-an-incomplete-terminology-guide/ (1) (2) ( ) (3) DAO . . . / — 4 Ethereum III — 2023-04-26 – p.13/26
: NFT — 4 Ethereum III — 2023-04-26 – p.14/26
NFT Linux (Ubuntu 22.04) Python3 + eth-brownie 1.19.3 (Python Ethereum
) $ brownie bake nft nft ( ) contracts SimpleCollectible.sol ERC-721 — 4 Ethereum III — 2023-04-26 – p.15/26
NFT (1) NFT NFT $ cd nft # nft $
brownie console # eth-brownie (Python ) # ↓ Python >>> network.disconnect() # ( ) >>> network.connect(’mainnet’) # Ethereum >>> collectible = SimpleCollectible.at(’ ’) # >>> collectible.ownerOf(OpenSea NFT ID) # >>> collectible.tokenURI(OpenSea NFT ID) # URL URL URL ( ) — 4 Ethereum III — 2023-04-26 – p.16/26
NFT (2) NFT(?) NFT >>> collectible.ownerOf( NFT ID) # >>>
collectible.ownerOf( NFT ID) # NFT Ethereum Ethereum NFT NFT Ethereum Lazy Minting (?) ( ) ( ) NFT — 4 Ethereum III — 2023-04-26 – p.17/26
NFT < , ID> ERC-721 OK NFT . . .
ID → NFT ID NFT NFT URL . . . URL . . . →NFT — 4 Ethereum III — 2023-04-26 – p.18/26
NFT NFT . . . NFT ( ) ↑ ID
. . . — 4 Ethereum III — 2023-04-26 – p.19/26
NFT NFT >>> network.disconnect() # >>> network.connect(’goerli’) # Ethereum >>>
accounts.add( ) # >>> collectible = SimpleCollectible.deploy({’from’: accounts[0]}) # NFT >>> collectible.createCollectible( ) # NFT goerli / ( ) “Gas used” Gas Gwei ERC-721a ID 1 — 4 Ethereum III — 2023-04-26 – p.20/26
NFT : ERC-721 NFT NFT (ID) NFT → URI NFT
( NFT ) (ID) (URI) → NFT ( ) URI → ( ) → ( ) NFT NFT NFT — 4 Ethereum III — 2023-04-26 – p.21/26
: DAO — 4 Ethereum III — 2023-04-26 – p.22/26
DAO (1) ( ) (2) (3) . . . (a)
( ) (b) ( ) https://medium.com/coinmonks/beanstalk-exploit-a-simplified-post-mortem-analysis-92e6cdb17ace — 4 Ethereum III — 2023-04-26 – p.23/26
MakerDAO https://docs.makerdao.com/smart-contract-modules/governance-module plot ( ) drop ( ) plot eta
( ) exec ( ) https://github.com/dapphub/ds-chief/blob/master/src/chief.sol https://github.com/dapphub/ds-auth/blob/master/src/auth.sol https://github.com/dapphub/ds-pause/blob/master/src/pause.sol — 4 Ethereum III — 2023-04-26 – p.24/26
— 4 Ethereum III — 2023-04-26 – p.25/26
— 4 Ethereum III — 2023-04-26 – p.26/26