Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
サービスデザインプロジェクトB 第2回「ブロックチェーン概論とインストール大会」 / Over...
Search
Kenji Saito
PRO
October 19, 2020
Technology
180
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
サービスデザインプロジェクトB 第2回「ブロックチェーン概論とインストール大会」 / Overview of Blockchain and Installation
2020年10月19日、慶應義塾大学大学院メディアデザイン研究科の「サービスデザインプロジェクトB (2020 秋)」第2回にて使用したスライドです。
Kenji Saito
PRO
October 19, 2020
More Decks by Kenji Saito
See All by Kenji Saito
アカデミーキャンプ 2026秋「位置ゲーに秀でよ!ウチらとヤツらのゲーム・デザイン」DAY 3 / Academy Camp 2026 Fall - Excel at Location-Based Games! Our and Their Game Design DAY 3
ks91
PRO
0
35
アカデミーキャンプ 2026秋「位置ゲーに秀でよ!ウチらとヤツらのゲーム・デザイン」DAY 2 / Academy Camp 2026 Fall - Excel at Location-Based Games! Our and Their Game Design DAY 2
ks91
PRO
0
82
アカデミーキャンプ 2026秋「位置ゲーに秀でよ!ウチらとヤツらのゲーム・デザイン」DAY 1 / Academy Camp 2026 Fall - Excel at Location-Based Games! Our and Their Game Design DAY 1
ks91
PRO
0
33
責任2.0/3.0 ∼ 知的創造過程の脱領土化 / Responsibility 2.0 and 3.0: The Deterritorialization of the Intellectual Creative Process
ks91
PRO
0
36
国と地域のマネジメントと AGI / National and Regional Management and AGI
ks91
PRO
0
26
2026 年度「AI による研究・教育サポート」ワークショップ (教員向け) / AY 2026 “AI-Based Research and Education Support” Workshop (For Faculty)
ks91
PRO
0
53
エージェント化するAI:現在地とその先に起きる変化 / AI as Agents: The Current State and the Changes Ahead
ks91
PRO
0
220
文化的ループ (推論, エージェント) と思考プロセスの検証可能性 / Cultural Loops (Inference, Agents) and the Verifiability of Thought Processes
ks91
PRO
0
50
アカデミーキャンプ2026 夏 「ヤツらを究めろ!ウチらとヤツらの自由研究∼ シーズン2」DAY 3 / Academy Camp 2026 Summer: Master Them! Our Independent Research Project with Them—Season 2 DAY3
ks91
PRO
0
93
Other Decks in Technology
See All in Technology
登壇の自信を奪う3匹のオバケ / 3 Ghosts That Rob You of Your Confidence in Public Speaking
pauli
9
1k
2026-09-11 【Snowflake World Tour Tokyo 2026】Snowflakeを起点に、AI Agentが自律稼働し続ける未来へ / Driving AI Agents with Snowflake
civitaspo
0
710
ユーザー価値を届け続けるためにウォンテッドリーが大切にしている文化
kotaminato
0
180
今話題のAI「Jev」って何? 宇宙最速で学ぶ会
minorun365
PRO
29
16k
品質と信頼性を地続きにする
grimoh
2
790
30座EKS, 180次升級淬煉的EKS Upgrade Skill 的歷程
eric8230
0
180
AIは推し活である。
kurazuuuuuu
1
600
AI時代の「技術的負債」の変質ー概念の終焉と再解釈、エージェントと共に向かう先
nwiizo
1
2.9k
AI 時代のスタートアップエコシステ厶から考究する技術的負債との向き合い方
m3m0r7
PRO
3
2.3k
Vibe Coding で作ったプロダクトをどう安全に動かすか / How to Safely Run Products Built with Vibe Coding
glidenote
0
170
Minecraft JavaのMODをSwiftで作る
1mash0
0
180
2026-09-18 gotanda.sre Terraformで複数環境作ったり、複数Stateに分割したりそれとTerragrunt / Terraform multi envs and multi states
masasuzu
2
550
Featured
See All Featured
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
65k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
Designing for humans not robots
tammielis
254
26k
Tell your own story through comics
letsgokoyo
1
1.1k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Producing Creativity
orderedlist
PRO
348
41k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
600
Documentation Writing (for coders)
carmenintech
77
5.5k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Navigating Team Friction
lara
192
16k
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
230
Discover your Explorer Soul
emna__ayadi
2
1.3k
Transcript
B 2020 2 ( ) B 2020 — 2 —
2020-10-19 – p.1/56
https://speakerdeck.com/ks91 Discord Discord ( / / ) Zoom URL (
) B 2020 — 2 — 2020-10-19 – p.2/56
( ) 1 10 12 • 2 10 19 •
3 10 26 4 11 2 5 11 9 1 6 11 16 2 7 11 30 8 12 7 B 2020 — 2 — 2020-10-19 – p.3/56
– : : Ethereum ( ) ( ) Ethereum B
2020 — 2 — 2020-10-19 – p.4/56
– B 2020 — 2 — 2020-10-19 – p.5/56
( ) ( ) ( ) (BP : Blockchain Property
) BP-1 : BP-2 : BP-3 : ( ) ( ) B 2020 — 2 — 2020-10-19 – p.6/56
( ) (LIFO : Last In, First Out) ( )
B 2020 — 2 — 2020-10-19 – p.7/56
( ) ( ) ( ) ( ) ( 16
) SHA (Secure Hash Algorithm) ( ) 1bit B 2020 — 2 — 2020-10-19 – p.8/56
( ) ( ) < , > ( ) ←
: < , > : : < , , > : OK ( 1 ) NG ( ) B 2020 — 2 — 2020-10-19 – p.9/56
BP-1 ( ), BP-2 ( ) BBc-1 f : →
BP-3 ( ) ( ) ( ) ← BP-2 ← BP-3 ( ) ← BP-3 + ← BP-{1,2} B 2020 — 2 — 2020-10-19 – p.10/56
[Lamport 1984][Schneider 1990] (1) (2) (3) (4) ( ) ←
↑ B 2020 — 2 — 2020-10-19 – p.11/56
TX : transaction ( 4 TX ) SMRP (State Machine
Replication Problem) SMRP-1 ( ) SMRP-2 : B 2020 — 2 — 2020-10-19 – p.12/56
( ) ( ) ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O
ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O ͍ͪΜهɾॻ͖͑ͷίετ͕ߴ͍ྺ࢙ ࠷վ͟Μ͠ʹ͍͘ྺ࢙ ͕༗ޮ ͻͱͭखલͷϒϩοΫͷ ʮμΠδΣετʯ σδλϧॺ໊͞Εͨ ʮτϥϯβΫγϣϯ औҾ ʯ ϒϩοΫΛ࡞ΔͨΊʹɺͦͷʮμΠδΣετʯ͕͋ΔҎԼͱ͍͏݅Λຬͨͨ͠Γ 1SPPGPG8PSL Ծ௨՟ͷ࣋ͪʹԠͨ͡ݖརΛͬͨථͰউͬͨΓ 1SPPGPG4UBLF ͢Δඞཁ͕͋Δ ίετ͕͔͔Δ ϒϩοΫΛ࡞ΔਓͦͷதʹࣗʹѼͯͨ Ծ௨՟ͰͷใुΛॻ͖ࠐΉ͜ͱ͕Ͱ͖ɺ ͦͷϒϩοΫ͕༗ޮͳྺ࢙ͷதʹ͋Δ߹ʹ ݶΓใु༗ޮͱͳΔ τϥϯβΫγϣϯͷଘࡏΛ֬ೝ͢Δ ͨΊͷޮతͳํ๏͕ఏڙ͞ΕΔ ਖ਼ੑ ଘࡏੑ །Ұੑ Proof of Work ( ) . . . → B 2020 — 2 — 2020-10-19 – p.13/56
(BP-3 ) ( : ) (BP-3 ) ( : )
BP-{1,2,3} BP-{1, 2} ⇒ B 2020 — 2 — 2020-10-19 – p.14/56
(Confidentiality) BP-{1,2,3} ↑ ( = ) (Integrity) BP-3 (Availability) BP-2
B 2020 — 2 — 2020-10-19 – p.15/56
: 2009 ↑ 11 B 2020 — 2 — 2020-10-19
– p.16/56
( ) ADR (Active (space) Debris Removal) : https://doi.org/10.1109/TCSS.2018.2890655 (1930
) ( ) B 2020 — 2 — 2020-10-19 – p.17/56
( ) ( ) ( ) B 2020 — 2
— 2020-10-19 – p.18/56
( ) ( - ) : https://doi.org/10.1016/j.future.2019.05.019 B 2020 —
2 — 2020-10-19 – p.19/56
( ) ( ) ( ) B 2020 — 2
— 2020-10-19 – p.20/56
( ) B 2020 — 2 — 2020-10-19 – p.21/56
/ ( ) ( ) ( ) ( ) B
2020 — 2 — 2020-10-19 – p.22/56
( ) ( ) ( ) B 2020 — 2
— 2020-10-19 – p.23/56
( ) B 2020 — 2 — 2020-10-19 – p.24/56
( ) ( ) B 2020 — 2 — 2020-10-19
– p.25/56
B 2020 — 2 — 2020-10-19 – p.26/56
with ( ) ( ) ( ) B 2020 —
2 — 2020-10-19 – p.27/56
DNS IP AS B 2020 — 2 — 2020-10-19 –
p.28/56
( ) ( ) (web ) B 2020 — 2
— 2020-10-19 – p.29/56
( ) ( ) ( ) ( ) ( )
( ) B 2020 — 2 — 2020-10-19 – p.30/56
( ) ( ) 3D B 2020 — 2 —
2020-10-19 – p.31/56
: Ethereum macOS (Catalina 10.15.7) + Homebrew Homebrew Linux (Ubuntu
18.04) Windows 10 + Windows Subsystem for Linux (Ubuntu 18.04 ) WSL Ethereum solidity brownie B 2020 — 2 — 2020-10-19 – p.32/56
Solidity Ethereum http://solidity.readthedocs.io/en/latest/installing-solidity.html Linux (on Windows) “sudo apt”, macOS “brew”
solc 0.7.3 (10/10 ) $ solc --version brownie py-solc-x solc (dependencies) ( solc py-solc-x ) B 2020 — 2 — 2020-10-19 – p.33/56
Python3 macOS $ brew install python3 Linux $ sudo add-apt-repository
ppa:deadsnakes/ppa $ sudo apt update $ sudo apt install python3.8 python3.8-dev python3.8-venv python3.8-tk 16.10 python3(.8) apt B 2020 — 2 — 2020-10-19 – p.34/56
macOS : . . . macOS wget brew dyld: Library
not loaded: /usr/local/opt/gettext/lib/libintl.8.dylib $ brew uninstall --force gettext $ brew install gettext B 2020 — 2 — 2020-10-19 – p.35/56
Python (venv) macOS ‘python3.8’ ‘python3’ $ python3.8 -m venv bbc1env
$ source bbc1env/bin/activate (bbc1env) $ pip install -U pip (bbc1env) $ pip install wheel bbc1env ( BBc-1 ) ( ) (bbc1env) $ deactivate B 2020 — 2 — 2020-10-19 – p.36/56
Ganache CLI Ethereum RPC CLI : Command Line Interface npm
( ) macOS https://qiita.com/kyosuke5_20/items/c5f68fc9d89b84c0df09 Linux https://qiita.com/seibe/items/36cef7df85fe2cefa3ea npm Ganache CLI $ sudo npm install -g ganache-cli B 2020 — 2 — 2020-10-19 – p.37/56
Brownie Python Ethereum https://eth-brownie.readthedocs.io Brownie $ pip install eth-brownie version
1.11.8 (10/10 ) B 2020 — 2 — 2020-10-19 – p.38/56
$ brownie init ( ERC-20 ) $ brownie bake token
$ cd token ( ) $ brownie compile ( ) $ pytest tests B 2020 — 2 — 2020-10-19 – p.39/56
Brownie $ brownie console Python >>> len(accounts) 10 >>> accounts[0].balance()
100000000000000000000 >>> quit() B 2020 — 2 — 2020-10-19 – p.40/56
( ) Ethereum ropsten B 2020 — 2 — 2020-10-19
– p.41/56
infura.io Brownie https://infura.io SIGN UP PROJECT ID infura Ethereum API
infura . . . infura.io PROJECT ID WEB3_INFURA_PROJECT_ID PROJECT ID (∼/.bash_profile ) $ export WEB3_INFURA_PROJECT_ID= PROJECT ID B 2020 — 2 — 2020-10-19 – p.42/56
ropsten ETH brownie console ropsten >>> network.disconnect() >>> network.connect(’ropsten’) >>>
len(accounts) 0 >>> accounts.add() <LocalAccount object ’ 16 ’> >>> accounts[0].private_key 16 >>> quit() Ropsten Testnet ETH Faucet 5.0ETH https://faucet.dimensions.network/ ( ) https://metamask.io/ B 2020 — 2 — 2020-10-19 – p.43/56
ropsten ETH brownie console ropsten ETH >>> network.disconnect() >>> network.connect(’ropsten’)
>>> len(accounts) 0 >>> accounts.add( 16 ) <LocalAccount object ’ 16 ’> >>> accounts[0].balace() ETH >>> quit() ETH >>> accounts[0].transfer(accounts[1], "1 ether") B 2020 — 2 — 2020-10-19 – p.44/56
Ethereum B 2020 — 2 — 2020-10-19 – p.45/56
Ethereum Vitalik Buterin, “Ethereum White Paper: A NEXT GENERATION SMART
CONTRACT & DECENTRALIZED APPLICATION PLATFORM” 15 (= ) = ⇒ → Dapps ( / / ) B 2020 — 2 — 2020-10-19 – p.46/56
B 2020 — 2 — 2020-10-19 – p.47/56
. . . B 2020 — 2 — 2020-10-19 –
p.48/56
vs. B 2020 — 2 — 2020-10-19 – p.49/56
= run B 2020 — 2 — 2020-10-19 – p.50/56
Ether Ethereum EOA : Externally-Owned Account ( ) Ether EVM
EVM B 2020 — 2 — 2020-10-19 – p.51/56
EVM : Ethereum Virtual Machine Gas B 2020 — 2
— 2020-10-19 – p.52/56
EVM : : Solidity — JavaScript LLL — Lisp Vyper
— Python B 2020 — 2 — 2020-10-19 – p.53/56
Solidity ( ) pragma solidityˆ0.5.0; contract IndivisibleAsset { /* */
string public _name; string public _symbol; uint256 public _quantity; address public _owner; constructor(string memory name, string memory symbol, uint256 quantity) public { _name = name; _symbol = symbol; _quantity = quantity; _owner = msg.sender; } function transfer(address to) public returns (bool) { require (_owner == msg.sender); _owner = to; return true; } } B 2020 — 2 — 2020-10-19 – p.54/56
Ethereum B 2020 — 2 — 2020-10-19 – p.55/56
B 2020 — 2 — 2020-10-19 – p.56/56