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) 入門 / Introduction to Ethereum
Search
Kenji Saito
PRO
October 25, 2017
Technology
0
250
イーサリアム (Ethereum) 入門 / Introduction to Ethereum
2017年10月25日(水)、ブロックチェーンアカデミー「スマートコントラクトプログラミング講座(2)」にて使用のスライドです。
Kenji Saito
PRO
October 25, 2017
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
スマートコントラクトプログラミング / Smart Contract Programming
ks91
PRO
0
4
AI が研究する時代に、人はどう育つのか? — GAMER PAT にみる "シリアスゲームとしての知的訓練" / In an era where AI conducts research, how will humans develop? — "Intellectual Training as a Serious Game" Seen in GAMER PAT
ks91
PRO
0
37
FinTech 5-6 : The World of Apps
ks91
PRO
0
71
生成AI による論文執筆サポート・ワークショップ ─ サーベイ/リサーチクエスチョン編 / Workshop on AI-Assisted Paper Writing Support: Survey/Research Question Edition
ks91
PRO
0
66
ブロックチェーン概論とインストール大会 / Introduction to Blockchain and Installation Workshop
ks91
PRO
0
2
FinTech 3-4 : Internet Technology and Governance
ks91
PRO
0
71
民主主義と博愛(Humanitarianism) / Democracy and Humanitarianism
ks91
PRO
0
6
ブロックチェーン概論 / Introduction to Blockchain
ks91
PRO
0
12
ブロックチェーンと分散ファイナンス概論 / Introduction to Blockchain and Decentralized Finance
ks91
PRO
0
65
Other Decks in Technology
See All in Technology
LLMアプリの地上戦開発計画と運用実践 / 2025.10.15 GPU UNITE 2025
smiyawaki0820
1
570
リセラー企業のテクサポ担当が考える、生成 AI 時代のトラブルシュート 2025
kazzpapa3
1
350
データ戦略部門 紹介資料
sansan33
PRO
1
3.7k
AWSでAgentic AIを開発するための前提知識の整理
nasuvitz
2
160
カンファレンスに託児サポートがあるということ / Having Childcare Support at Conferences
nobu09
1
580
今この時代に技術とどう向き合うべきか
gree_tech
PRO
2
1.8k
PHPからはじめるコンピュータアーキテクチャ / From Scripts to Silicon: A Journey Through the Layers of Computing Hiroshima 2025 Edition
tomzoh
0
140
なぜAWSを活かしきれないのか?技術と組織への処方箋
nrinetcom
PRO
5
920
20251010_HCCJP_AdaptiveCloudUpdates
sdosamut
0
130
ComposeではないコードをCompose化する case ビズリーチ / DroidKaigi 2025 koyasai
visional_engineering_and_design
0
110
Adminaで実現するISMS/SOC2運用の効率化 〜 アカウント管理編 〜
shonansurvivors
4
450
Performance Insights 廃止から Database Insights 利用へ/transition-from-performance-insights-to-database-insights
emiki
0
280
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
A better future with KSS
kneath
239
18k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Gamification - CAS2011
davidbonilla
81
5.5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Making Projects Easy
brettharned
120
6.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
980
The Pragmatic Product Professional
lauravandoore
36
6.9k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Visualization
eitanlees
149
16k
Become a Pro
speakerdeck
PRO
29
5.5k
Transcript
(Ethereum) (2) CSO / SFC
[email protected]
(Ethereum) – (2) –
2017-10-25 – p.1/33
1. 2. 3. 4. 5. (Ethereum) – (2) – 2017-10-25
– p.2/33
1. 2. 3. 4. 5. (Ethereum) – (2) – 2017-10-25
– p.3/33
1. (Ethereum) – (2) – 2017-10-25 – p.4/33
Vitalik Buterin, “Ethereum White Paper: A NEXT GENERATION SMART CONTRACT
& DECENTRALIZED APPLICATION PLATFORM” 15 (Ethereum) – (2) – 2017-10-25 – p.5/33
2. macOS (High Sierra 10.13) + Homebrew Linux (Ubuntu 16.04)
Windows 10 + Bash on Ubuntu on Windows geth, solidity populus (Ethereum) – (2) – 2017-10-25 – p.6/33
geth GO https://github.com/ethereum/go-ethereum/wiki/Building-Ethereum #installation-instructions geth 1.7.2-stable (10/24 ) $ geth
-help (Ethereum) – (2) – 2017-10-25 – p.7/33
Solidity http://solidity.readthedocs.io/en/latest/installing-solidity.html solc 0.4.18 (10/24 ) $ solc --version (Ethereum)
– (2) – 2017-10-25 – p.8/33
Python pip macOS http://qiita.com/oct_itmt/items/2d066801a7464a676994 (pyenv ) Ubuntu 16.04 (Ethereum) –
(2) – 2017-10-25 – p.9/33
Populus Python http://populus.readthedocs.io/en/latest/quickstart.html Open SSL Populus $ pip install populus
version 1.10.1 (10/24 ) requirement rlp==0.5.1 ( pip ) $ pip install -U rlp==0.5.1 (Ethereum) – (2) – 2017-10-25 – p.10/33
$ populus init contracts/Greeter.sol tests/test_greeter.py $ populus compile $ py.test
. (Ethereum) – (2) – 2017-10-25 – p.11/33
(1) http://beyond-blockchain.org/public/BcH-smart-contract-programming.zip Python (init.py, run.py, deploy.py) populus.json genesis.json $ python
init.py $ geth init genesis.json (Ethereum) – (2) – 2017-10-25 – p.12/33
(2) $ geth account new 16 (Ethereum) – (2) –
2017-10-25 – p.13/33
“run.py” ‘--etherbase’ 0x $ python run.py $ tail -f geth.log
process id kill (Ethereum) – (2) – 2017-10-25 – p.14/33
DAG (Directed Acyclic Graph) Ether (Ethereum) – (2) – 2017-10-25
– p.15/33
3. (Ethereum) – (2) – 2017-10-25 – p.16/33
(Ethereum) – (2) – 2017-10-25 – p.17/33
. . . (Ethereum) – (2) – 2017-10-25 – p.18/33
vs. (Ethereum) – (2) – 2017-10-25 – p.19/33
= run (Ethereum) – (2) – 2017-10-25 – p.20/33
Ether Ethereum EOA : Externally-Owned Account Ether EVM EVM (Ethereum)
– (2) – 2017-10-25 – p.21/33
EVM : Ethereum Virtual Machine Gas (Ethereum) – (2) –
2017-10-25 – p.22/33
EVM : : Solidity — JavaScript LLL — Lisp (Ethereum)
– (2) – 2017-10-25 – p.23/33
Solidity ( ) pragma solidity ˆ0.4.8; contract IndivisibleAsset { /*
*/ string public _name; string public _symbol; uint256 public _quantity; address public _owner; function IndivisibleAsset(string name, string symbol, uint256 quantity) { _name = name; _symbol = symbol; _quantity = quantity; _owner = msg.sender; } function transfer(address to) { if (_owner != msg.sender) { throw; } _owner = to; } } (Ethereum) – (2) – 2017-10-25 – p.24/33
(Ethereum) – (2) – 2017-10-25 – p.25/33
4. (Ethereum) – (2) – 2017-10-25 – p.26/33
ADEPT ADEPT : IBM IoT (Ethereum) – (2) – 2017-10-25
– p.27/33
(Ethereum) – (2) – 2017-10-25 – p.28/33
⇒ (Ethereum) – (2) – 2017-10-25 – p.29/33
The DAO ( ) The DAO Split ( ) 360
ETH (50∼60 ) (2016/6/17) ( ) ( ; ) (2016/7/20 ) (Ethereum) – (2) – 2017-10-25 – p.30/33
5. (Ethereum) – (2) – 2017-10-25 – p.31/33
Greeter.sol “deploy.py” __main__ Greeter 0x & $ python deploy.py (Ethereum)
– (2) – 2017-10-25 – p.32/33
I (Ethereum) – (2) – 2017-10-25 – p.33/33