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
BBc-1 と Ethereum 演習 III / BBc-1 and Ethereum Ex...
Search
Kenji Saito
PRO
October 05, 2022
Technology
0
51
BBc-1 と Ethereum 演習 III / BBc-1 and Ethereum Exercise III
2022年10月5日(水)、ブロックチェーンハブ主催のブロックチェーンアカデミーにて使用したスライドです。
Kenji Saito
PRO
October 05, 2022
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
68
ロボットを雰囲気(ヴァイブ)でプログラミングするこどもたち / 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
kubellが考える戦略と実行を繋ぐ活用ファーストのデータ分析基盤
kubell_hr
0
120
データアナリストからアナリティクスエンジニアになった話
hiyokko_data
0
270
AI時代にPdMとPMMはどう連携すべきか / PdM–PMM-collaboration-in-AI-era
rakus_dev
0
250
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
1k
新規案件の立ち上げ専門チームから見たAI駆動開発の始め方
shuyakinjo
0
650
バッチ処理で悩むバックエンドエンジニアに捧げるAWS Glue入門
diggymo
3
100
ソフトウェア エンジニアとしての 姿勢と心構え
recruitengineers
PRO
26
12k
TypeScript入門
recruitengineers
PRO
35
11k
AIエージェントの活用に重要な「MCP (Model Context Protocol)」とは何か
masayamoriofficial
0
250
実践アプリケーション設計 ①データモデルとドメインモデル
recruitengineers
PRO
5
1.4k
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
6
1.6k
衝突して強くなる! BLUE GIANTと アジャイルチームの共通点とは ― いきいきと活気に満ちたグルーヴあるチームを作るコツ ― / BLUE GIANT and Agile Teams
naitosatoshi
0
290
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
Gamification - CAS2011
davidbonilla
81
5.4k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
790
Measuring & Analyzing Core Web Vitals
bluesmoon
9
570
A Tale of Four Properties
chriscoyier
160
23k
Six Lessons from altMBA
skipperchong
28
4k
RailsConf 2023
tenderlove
30
1.2k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
How GitHub (no longer) Works
holman
315
140k
Transcript
4 BBc-1 Ethereum III CSO /
[email protected]
— 4 BBc-1
Ethereum III — 2022-10-05 – p.1/26
https://speakerdeck.com/ks91 — 4 BBc-1 Ethereum III — 2022-10-05 – 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 2021.12 VR 2022.3 VR 2022.8 → ( ) — 4 BBc-1 Ethereum III — 2022-10-05 – p.3/26
BBc-1 Ethereum 4 NFT DAO — 4 BBc-1 Ethereum III
— 2022-10-05 – p.4/26
1. NFT DAO 2. : NFT 3. : DAO 4.
— 4 BBc-1 Ethereum III — 2022-10-05 – p.5/26
NFT DAO DeFi ( ) — 4 BBc-1 Ethereum III
— 2022-10-05 – p.6/26
( ) = = : . . . ( :
) ( ) . . . . . . . . . . . . — 4 BBc-1 Ethereum III — 2022-10-05 – p.7/26
⇒ ( ) . . . . . . —
4 BBc-1 Ethereum III — 2022-10-05 – p.8/26
DeFi ( ) DeFi : Decentralized Finace — 4 BBc-1
Ethereum III — 2022-10-05 – p.9/26
NFT ( ) NFT : Non-Fungible Token ( ) (1
) → fungible token ( ) → NFT — 4 BBc-1 Ethereum III — 2022-10-05 – p.10/26
ERC-721 ERC (Ethereum Request for Comments) 721 (721 ) 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 BBc-1 Ethereum III — 2022-10-05 – p.11/26
NFT NFT URL Marlinspike, M.: My first impressions of web3
(2022) Web3 . . . URL ↑ NFT → → NFT NFT ↔ NFT — 4 BBc-1 Ethereum III — 2022-10-05 – 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 BBc-1 Ethereum III — 2022-10-05 – p.13/26
: NFT — 4 BBc-1 Ethereum III — 2022-10-05 –
p.14/26
NFT Linux (Ubuntu 22.04) Python3 + eth-brownie 1.19.1 (Python Ethereum
) $ brownie bake nft nft ( ) contracts SimpleCollectible.sol ERC-721 — 4 BBc-1 Ethereum III — 2022-10-05 – 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 BBc-1 Ethereum III — 2022-10-05 – 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 BBc-1 Ethereum III — 2022-10-05 – p.17/26
NFT < , ID> ERC-721 OK NFT . . .
ID → NFT ID NFT NFT URL . . . URL . . . →NFT — 4 BBc-1 Ethereum III — 2022-10-05 – p.18/26
NFT NFT . . . NFT ( ) ↑ ID
. . . — 4 BBc-1 Ethereum III — 2022-10-05 – 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 BBc-1 Ethereum III — 2022-10-05 – p.20/26
NFT : ERC-721 NFT NFT (ID) NFT → URI NFT
( NFT ) (ID) (URI) → NFT ( ) URI → ( ) → ( ) NFT NFT NFT — 4 BBc-1 Ethereum III — 2022-10-05 – p.21/26
: DAO — 4 BBc-1 Ethereum III — 2022-10-05 –
p.22/26
DAO (1) ( ) (2) (3) . . . (a)
( ) (b) ( ) https://medium.com/coinmonks/beanstalk-exploit-a-simplified-post-mortem-analysis-92e6cdb17ace — 4 BBc-1 Ethereum III — 2022-10-05 – 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 BBc-1 Ethereum III — 2022-10-05 – p.24/26
— 4 BBc-1 Ethereum III — 2022-10-05 – p.25/26
— 4 BBc-1 Ethereum III — 2022-10-05 – p.26/26