SlideShare a Scribd company logo
Ethereum under	the	hood
Who	are	we?
• Joris Bontje
• @mids106
• http://OneUp.Company
• Pascal	Van	Hecke
• @vanheckeinfo
• http://Tokenengineers.com
Who	are	we?
• Joris Bontje
• @mids106
• http://OneUp.Company
• Pascal	Van	Hecke
• @vanheckeinfo
• http://Tokenengineers.com
Ethereum for	Bitcoiners
Programming	in	Bitcoin
• Contains	a	deliberately	simple	scripting	language
• A	transaction	=	locking	Bitcoin	and	describing	how	it	can	be	unlocked
• Examples:
• Multisig:	multiple	signatures	are	needed	to	unlock
• CheckLocktimeVerify:	Bitcoin	only	spendable	at	some	point	in	future
• ….
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Programming	in	Bitcoin
• Contains	a	relatively	simple	scripting	language
• A	transaction	=	locking	Bitcoin	and	describing	how	it	can	be	unlocked
• Examples:
• Multisig:	multiple	signatures	are	needed	to	unlock
• CheckLocktimeVerify:	Bitcoin	only	spendable	at	some	point	in	future
• ….
More	”opcodes”,	
more	functionality
Altcoin/Metacoin X
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum:	anything	is	programmable
“Classic	“	blockchains
• Addresses
• Balance	with	“native”	coin
• Transactions	and	blocks
Ethereum:
• Addresses
• …
• …
• Balance	with	Ether
• …
• Transactions	and	blocks
• …
• …
Ethereum:	anything	is	programmable
“Classic	“	blockchains
• Addresses
• Balance	with	“native”	coin
• Transactions	and	blocks
Ethereum:
• Addresses
• +	data	storage
• +	code
• Balance	with	Ether
• …
• Transactions	and	blocks
• …
• …
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum:	anything	is	programmable
“Classic	“	blockchains
• Addresses
• Balance	with	“native”	coin
• Transactions	and	blocks
Ethereum:
• Addresses
• +	data	storage
• +	code
• Balance	with	Ether
• …
• Transactions	and	blocks
• …
• …
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum:	anything	is	programmable
“Classic	“	blockchains
• Addresses
• Balance	with	“native”	coin
• Transactions	and	blocks
Ethereum:
• Addresses
• +	data	storage
• +	code
• Balance	with	Ether
• +	application-specific	tokens
with	specific	behaviour
• Transactions	and	blocks
• …
• …
Ethereum:	anything	is	programmable
“Classic	“	blockchains
• Addresses
• Balance	with	“native”	coin
• Transactions	and	blocks
Ethereum:
• Addresses
• +	data	storage
• +	code
• Balance	with	Ether
• +	application-specific	tokens
with	specific	behaviour
• Transactions	and	blocks
• +	creation	of	contract	code
• +	calling	contract	code
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Slow	and	primitive,	but…
Promise:
A	15-year	old	can	deploy	business	
logic	that	is:
• Verifiable
• Immutable
• Untamperable
• Untouchable
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Smart	contract	pattern
1	Lock	thing	of	value	in	contract
2	Contract	code	determines	
redistribution
3	Based	on	information	that	is	not	
yet	known
Smart	contract	pattern
1	Lock	thing	of	value	in	contract
• Native	crypto
• Tokens	representing	value…	or	
abilities
2	Contract	code	determines	
redistribution
3	Based	on	information	that	is	not	
yet	known
Smart	contract	pattern
1	Lock	thing	of	value	in	contract
• Native	crypto
• Tokens	representing	value…	or	
abilities
2	Contract	code	determines	
redistribution
3	Based	on	information	that	is	not	yet	
known
• Randomness
• Actor
• “Oracle”
Solidity
Solidity
Contract-oriented,	high	level	language	for	the	EVM
Statically	typed,	inheritance,	libraries	and	syntax	sugar
Contracts	are	like	class	instances
Public	functions	are	the	API
Contract	state	locally	available	on	all	nodes
Javascript like	language
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Compiles	to	EVM	bytecode
TXVALUE PUSH 25 PUSH 10 PUSH 18 EXP
MUL LE NOT PUSH 34 JMPI STOP PUSH 34
JMP PUSH 0 TXDATA SLOAD NOT PUSH 0
TXDATA PUSH 1000 LT NOT MUL NOT NOT
PUSH 34 JMPI STOP PUSH 1 TXDATA PUSH 0
TXDATA SSTORE
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
https://ethereum.github.io/browser-solidity/
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
https://solidity.readthedocs.io
web3
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
web3	- Javascript API
// creation of contract object
var MyContract = web3.eth.contract(abi);
// initiate contract for an address
var myContractInstance =
MyContract.at('0x78e97bcc5b5dd9ed228fed7a4887c0d7287344a9');
var result = myContractInstance.myConstantMethod('myParam');
console.log(result) // '0x25434534534’
myContractInstance.myStateChangingMethod('someParam1', 23,
{value: 200, gas: 2000}, function(err, result){ ... });
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Development	Tools
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Clients
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Resources
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
What	have	people	built	so	far?
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Permissioned	or	public?
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)
Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)

More Related Content

PPTX
Explaining Ethereum
PDF
gething started - ethereum & using the geth golang client
PPTX
Ethereum and the DAO, Presentation May 26th, Crypto070 Meetup The Hague
PDF
EDCON 2017 sharing @Taipei Ethereum Meetup
PPTX
Ethereum Intro
PDF
Ethereum VM and DSLs for Smart Contracts (updated on May 12th 2015)
PPTX
Multi-Signature Crypto-Wallets: Nakov at Blockchain Berlin 2018
PPTX
Blockchain, Ethereum and ConsenSys
Explaining Ethereum
gething started - ethereum & using the geth golang client
Ethereum and the DAO, Presentation May 26th, Crypto070 Meetup The Hague
EDCON 2017 sharing @Taipei Ethereum Meetup
Ethereum Intro
Ethereum VM and DSLs for Smart Contracts (updated on May 12th 2015)
Multi-Signature Crypto-Wallets: Nakov at Blockchain Berlin 2018
Blockchain, Ethereum and ConsenSys

What's hot (19)

PDF
Metadata in the Blockchain: The OP_RETURN Explosion
PPTX
Intro to smart contract on blockchain en
PPTX
Ethereum Blockchain with Smart contract and ERC20
PDF
2019 03 18_kenneth_simplebitcoinwebsite
PDF
Introduction to blockchain and cryptocurrency technologies
PPTX
Building a Blockchain in JavaScript - Nakov - at Beer.js - August 2018
PPTX
Building decentralized applications (dapps) on Ethereum - Eva Shon, & Igor Li...
PDF
Front-End Development for dApps on Tezos
PPTX
The Blockchain and JavaScript
PDF
Ethereum wallet Intro 以太坊錢包介紹
PDF
14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang
PPTX
Introduction to Ethereum
PPTX
以比特幣為例的區塊鏈技術介紹 ( Intro to Blockchain using Bitcoin as an example)
PDF
Smart contracts in Solidity
PPTX
Blockchain and bitcoin fundamentals (usages and applications)
PPTX
Client-Side Wallets in DApps - Nakov @ BlockWorld 2018 (San Jose)
PPTX
20190606 blockchain101
PPTX
Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018)
PDF
The Bitcoin Lightning Network
Metadata in the Blockchain: The OP_RETURN Explosion
Intro to smart contract on blockchain en
Ethereum Blockchain with Smart contract and ERC20
2019 03 18_kenneth_simplebitcoinwebsite
Introduction to blockchain and cryptocurrency technologies
Building a Blockchain in JavaScript - Nakov - at Beer.js - August 2018
Building decentralized applications (dapps) on Ethereum - Eva Shon, & Igor Li...
Front-End Development for dApps on Tezos
The Blockchain and JavaScript
Ethereum wallet Intro 以太坊錢包介紹
14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang
Introduction to Ethereum
以比特幣為例的區塊鏈技術介紹 ( Intro to Blockchain using Bitcoin as an example)
Smart contracts in Solidity
Blockchain and bitcoin fundamentals (usages and applications)
Client-Side Wallets in DApps - Nakov @ BlockWorld 2018 (San Jose)
20190606 blockchain101
Crypto Wallets: A Technical Perspective (Nakov at OpenFest 2018)
The Bitcoin Lightning Network

Viewers also liked (20)

PDF
Edcon - State of Ethereum Ecosystem - Mougayar
PPT
Get started on ethereum
PDF
Ingredients for creating dapps
ODP
September Ethereum Berlin Workshop
PDF
Etherisc at the Ethereum Meetup Vienna 20 March 2017 (Part 1)
PDF
Devcon2上海 参加報告
PDF
BCHGraz - Meetup #8 - Intro & Ethereum
PPTX
Ethereum Devcon1 Report (summary writing)
PDF
The Ethereum Experience
PPTX
Blockchain: The Information Technology of the Future
PDF
Ethereum 101
PDF
Collaborating and Creating shared accountability for the successful implement...
PDF
The evolution of the Architecture of Enterprises (AKA Enterprise Architecture)
PDF
Building Blocks Of A Business Model
PDF
Presentation des contrats
PDF
Blockchain For Developers (Talk at Innopolis Blockchain Hackathon 2016)
PPTX
9 BUILDING BLOCKS FOR A SUCCESSFUL BLOCKCHAIN INDUSTRY | BLOCKSTARS.IO
PDF
Ethereum: From there to here, and ownards yonder
PDF
Ethereum Classic 18 August 2016
PDF
Capability-based planning with TOGAF & ArchiMate
Edcon - State of Ethereum Ecosystem - Mougayar
Get started on ethereum
Ingredients for creating dapps
September Ethereum Berlin Workshop
Etherisc at the Ethereum Meetup Vienna 20 March 2017 (Part 1)
Devcon2上海 参加報告
BCHGraz - Meetup #8 - Intro & Ethereum
Ethereum Devcon1 Report (summary writing)
The Ethereum Experience
Blockchain: The Information Technology of the Future
Ethereum 101
Collaborating and Creating shared accountability for the successful implement...
The evolution of the Architecture of Enterprises (AKA Enterprise Architecture)
Building Blocks Of A Business Model
Presentation des contrats
Blockchain For Developers (Talk at Innopolis Blockchain Hackathon 2016)
9 BUILDING BLOCKS FOR A SUCCESSFUL BLOCKCHAIN INDUSTRY | BLOCKSTARS.IO
Ethereum: From there to here, and ownards yonder
Ethereum Classic 18 August 2016
Capability-based planning with TOGAF & ArchiMate

Similar to Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016) (20)

ODP
Introduction to ethereum_public
PPTX
PDF
Exploring ethereum
PPTX
PPTX
Ethereum
PDF
DevEx in Ethereum - a look at the developer stack
PPTX
Blockchain for Developers
PDF
Python, Blockchain, and Byte-Size Change
PDF
All About Ethereum
DOCX
Dr. Michael G. SolomonBLCN 631 – Blockchain Implementati
PDF
Security Model of Blockchain
PDF
Evaluation of Ethereum
PPTX
Ethereum
PPTX
Hello world contract
PDF
Introduction to Bitcoin, Blockchain, and Ethereum by Justin Wu
PDF
A Decompiler for Blackhain-Based Smart Contracts Bytecode
PPTX
Zoltán Balázs - Ethereum Smart Contract Hacking Explained like I’m Five
PPTX
Explain Ethereum smart contract hacking like i am a five
PDF
Javascript toolset for Ethereum Smart Contract development
PDF
The JavaScript toolset for development on Ethereum
Introduction to ethereum_public
Exploring ethereum
Ethereum
DevEx in Ethereum - a look at the developer stack
Blockchain for Developers
Python, Blockchain, and Byte-Size Change
All About Ethereum
Dr. Michael G. SolomonBLCN 631 – Blockchain Implementati
Security Model of Blockchain
Evaluation of Ethereum
Ethereum
Hello world contract
Introduction to Bitcoin, Blockchain, and Ethereum by Justin Wu
A Decompiler for Blackhain-Based Smart Contracts Bytecode
Zoltán Balázs - Ethereum Smart Contract Hacking Explained like I’m Five
Explain Ethereum smart contract hacking like i am a five
Javascript toolset for Ethereum Smart Contract development
The JavaScript toolset for development on Ethereum

Recently uploaded (20)

PPTX
Cloud computing and distributed systems.
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
A Presentation on Artificial Intelligence
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Empathic Computing: Creating Shared Understanding
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Encapsulation theory and applications.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Machine learning based COVID-19 study performance prediction
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPT
Teaching material agriculture food technology
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Electronic commerce courselecture one. Pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Cloud computing and distributed systems.
Network Security Unit 5.pdf for BCA BBA.
Encapsulation_ Review paper, used for researhc scholars
Building Integrated photovoltaic BIPV_UPV.pdf
A Presentation on Artificial Intelligence
Diabetes mellitus diagnosis method based random forest with bat algorithm
Empathic Computing: Creating Shared Understanding
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Encapsulation theory and applications.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Machine learning based COVID-19 study performance prediction
NewMind AI Weekly Chronicles - August'25 Week I
Dropbox Q2 2025 Financial Results & Investor Presentation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
“AI and Expert System Decision Support & Business Intelligence Systems”
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Teaching material agriculture food technology
Understanding_Digital_Forensics_Presentation.pptx
Electronic commerce courselecture one. Pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...

Ethereum under the Hood, intro for developers as preparation for Blockchain Hackathon (Delft, December 7th 2016)