SlideShare a Scribd company logo
@horeaporutiu IBM Developer
Horea Porutiu
Software Developer | Advocate, IBM
Jan 2019
Running Ethereum Smart
Contracts on Hyperledger Fabric
Agenda
1. EVM Concepts
2. Hyperledger Architecture
3. Hyperledger + EVM
4. Demo
IBM Developer@horeaporutiu
@pluralsight
Hyperledger Fabric + Ethereum Contracts
IBM Developer@horeaporutiu https://www.pinterest.com/pin/215469163401716164/
Hyperledger Fabric v. Ethereum
•Permissioned
@horeaporutiu IBM Developer
https://news.coinsquare.com/investing/ethereum-daily-transactions-half-january-high/
https://www.hyperledger.org/projects/fabric
• Permissionless
(exceptions such as
Quorum)• Customizable
consensus policy
• Proof of work
• Forks are common
Ethereum vs.
Ethereum Classic
EVM + Hyperledger Motivations
IBM Developer@horeaporutiu
• Hyperledger Burrow is Apache 2.0 licensed• Hyperledger Burrow is Apache 2.0 licensed
EVM + Hyperledger Motivations
IBM Developer@horeaporutiu
• Hyperledger Burrow is Apache 2.0 licensed
• Big developer community around Ethereum - can
migrate EVM byte code contracts
EVM + Hyperledger Motivations
IBM Developer@horeaporutiu
• Hyperledger Burrow is Apache 2.0 licensed
• Big developer community around Ethereum - can
migrate EVM byte code contracts
• Eliminate vendor-lock
EVM + Hyperledger Motivations
IBM Developer@horeaporutiu
• Hyperledger Burrow is Apache 2.0 licensed
• Big developer community around Ethereum - can
migrate EVM byte code contracts
• Eliminate vendor-lock
• Can still use Ethereum dev tools (Remix, Truffle, etc.)
and languages (Solidity, Vyper etc.)
Hyperledger Fabric Overview
IBM Developer@horeaporutiu
Blockchain
network - 1 org
Certificate Authority
Orderer
Peer
(Local)
Node.js app +
Fabric SDK
Node.js app +
Fabric SDK
IBM Developer@horeaporutiu
Blockchain
network - 1 org
Certificate Authority
Orderer
Peer
(Local)
1. Enrollment - Register
admin with Certificate Auth
Hyperledger Fabric
Chaincode
Database
Blockchain
network - 1 org
Certificate AuthorityCertificate Authority
Orderer
Peer
Chaincode
Ledger
1.
Hyperledger Fabric Overview
Enrollment
IBM Developer@horeaporutiu
• Enrollment - process of generating keys and
certificates from the Certificate Authority
Enrollment
IBM Developer@horeaporutiu
• First generate certificate for our admin identity
and use those to register a new client identity
• Enrollment - process of generating keys and
certificates from the Certificate Authority
Node.js app +
Fabric SDK
IBM Developer@horeaporutiu
Blockchain
network - 1 org
Certificate Authority
(Local)
1.
1. Enrollment - Register
admin with Certificate Auth
Certificate Authority
Orderer
Peer
Chaincode
Ledger
Hyperledger Fabric Overview
Hyperledger Fabric Overview
Node.js app +
Fabric SDK
IBM Developer@horeaporutiu
Blockchain
network - 1 org
Certificate Authority
Orderer
(Local)
1. Enrollment - Register
admin with Certificate Auth
2. Send transaction to peer
🔑
Peer
Chaincode
Database
Blockchain
network - 1 org
Certificate Authority
Orderer
Peer
Chaincode
Database
Blockchain
network - 1 org
Certificate AuthorityCertificate Authority
Orderer
Peer
Chaincode
Ledger
2.
1.
Chaincode example
IBM Developer@horeaporutiu
var request = {
chaincodeId: ‘carauction’, //name of chaincode to execute
fcn: ‘initLedger’, // which chaincode function to execute
args: [‘’], //array of args for chaincode function
txId: fabric_client.newTransactionID(); //assign new txn id
}
var channel = fabric_client.newChannel(‘defaultchannel’);
return channel.sentTransactionProposal(request);
var fabric_client = require(‘fabric-client);
Transaction execution
IBM Developer@horeaporutiu
Node.js app +
Fabric SDK
(Local)
2. Send transaction
proposal to peer🔑
Peer
Chaincode
Ledger
2.
• Check endorsement policy - which peers need to
endorse transaction
Transaction execution
IBM Developer@horeaporutiu
Node.js app +
Fabric SDK
(Local)
2. Send transaction
proposal to peer🔑
Peer
Chaincode
Ledger
2.
• Check endorsement policy - which peers need to
endorse transaction
• The transaction proposal will go to the peers in the
endorsement policy
Node.js app +
Fabric SDK
IBM Developer@horeaporutiu
Blockchain
network - 1 org
Certificate Authority
Orderer
Peer
(Local)
1.
1. Enrollment - Register
admin with Certificate Auth
2. Send transaction to peer
3. Peers return endorsed txn
Hyperledger Fabric Overview
🔑
Peer
Chaincode
Ledger
3.
2.
Node.js app +
Fabric SDK
IBM Developer@horeaporutiu
Blockchain
network - 1 org
Certificate Authority
Orderer
Peer
(Local)
1.
1. Enrollment - Register
admin with Certificate Auth
2. Send transaction to peer
3. Peers return endorsed txn
Hyperledger Fabric Overview
🔑
Peer
Chaincode
Ledger
3.
2.
4. Sends endorsed txn to ordering
4.
Node.js app +
Fabric SDK
IBM Developer@horeaporutiu
Blockchain
network - 1 org
Certificate Authority
Orderer
Peer
(Local)
1.
1. Enrollment - Register
admin with Certificate Auth
2. Send (txn)transaction to peer
3. Peers return endorsed txn
Hyperledger Fabric Overview
🔑
Peer
Chaincode
Ledger
2.
4. Send endorsed txn to ordering
4.
5. Peer updates ledger
5.
3.
Node.js app +
Fabric SDK
IBM Developer@horeaporutiu
Blockchain
network - 1 org
Certificate Authority
Orderer
Peer
(Local)
1.
1. Enrollment - Register
admin with Certificate Auth
2. Send (txn)transaction to peer
3. Peers return endorsed txn
Hyperledger Fabric + EVM
🔑
Peer
EVM
Ledger
2.
4. Send endorsed txn to ordering
4.
5. Peer updates ledger
5.
3.
Ethereum Concepts
IBM Developer@horeaporutiu
• Accounts (EOA and Contract accounts) - no balance /
token in Hyperledger
Ethereum Concepts
IBM Developer@horeaporutiu
• Accounts (EOA and Contract accounts) - no balance /
token in Hyperledger
• Gas
Ethereum Concepts
IBM Developer@horeaporutiu
• Accounts (EOA and Contract accounts) - no balance /
token in Hyperledger
• Gas
• EVM Transaction Format (To, From, data)
Design
IBM Developer@horeaporutiu
• EVM Chaincode (smart contract that can run EVM byte
code smart contracts)
Design
IBM Developer@horeaporutiu
• EVM Chaincode (smart contract that can run EVM byte
code smart contracts)
• Fabproxy - wrapper around Fabric Go SDK -
implements Ethereum JSON RPC API - use Ethereum
tools like Remix / Web3.js
Design
IBM Developer@horeaporutiu
• EVM Chaincode (smart contract that can run EVM byte
code smart contracts)
• Fabproxy - wrapper around Fabric Go SDK -
implements Ethereum JSON RPC API - use Ethereum
tools like Remix / Web3.js
fabproxy
Ethereum
JSON
RPC API
GO SDK
Design
IBM Developer@horeaporutiu
• EVM Chaincode (smart contract that can run EVM byte
code smart contracts)
• Fabproxy - wrapper around Fabric Go SDK -
implements Ethereum JSON RPC API - use Ethereum
tools like Remix / Web3.js
fabproxy
Ethereum
JSON
RPC API
GO SDK
peer
API
EVMCC
Ledger
StateWriter
Design
IBM Developer@horeaporutiu
• EVM Chaincode (smart contract that can run EVM byte
code smart contracts)
• Fabproxy - wrapper around Fabric Go SDK -
implements Ethereum JSON RPC API - use Ethereum
tools like Remix / Web3.js
fabproxy
Ethereum
JSON
RPC API
GO SDK
peer
API
EVMCC
Ledger
StateWriter1. User request
Design
IBM Developer@horeaporutiu
• EVM Chaincode (smart contract that can run EVM byte
code smart contracts)
• Fabproxy - wrapper around Fabric Go SDK -
implements Ethereum JSON RPC API - use Ethereum
tools like Remix / Web3.js
fabproxy
Ethereum
JSON
RPC API
GO SDK
peer
API
EVMCC
Ledger
StateWriter1. User request 2. Invokes API
Design
IBM Developer@horeaporutiu
• EVM Chaincode (smart contract that can run EVM byte
code smart contracts)
• Fabproxy - wrapper around Fabric Go SDK -
implements Ethereum JSON RPC API - use Ethereum
tools like Remix / Web3.js
fabproxy
Ethereum
JSON
RPC API
GO SDK
peer
API
EVMCC
Ledger
StateWriter1. User request 2. Invokes API
3. Invokes EVM
Design
IBM Developer@horeaporutiu
• EVM Chaincode (smart contract that can run EVM byte
code smart contracts)
• Fabproxy - wrapper around Fabric Go SDK -
implements Ethereum JSON RPC API - use Ethereum
tools like Remix / Web3.js
fabproxy
Ethereum
JSON
RPC API
GO SDK
peer
API
EVMCC
Ledger
StateWriter1. User request 2. Invokes API
3. Invokes EVM
4. Get contract code
Design
IBM Developer@horeaporutiu
• EVM Chaincode (smart contract that can run EVM byte
code smart contracts)
• Fabproxy - wrapper around Fabric Go SDK -
implements Ethereum JSON RPC API - use Ethereum
tools like Remix / Web3.js
fabproxy
Ethereum
JSON
RPC API
GO SDK
peer
API
EVMCC
Ledger
StateWriter1. User request 2. Invokes API
3. Invokes EVM
4. Get contract code
5. Generate read &
write sets
Demo
IBM Developer@horeaporutiu
Slides
IBM Developer@horeaporutiu
• http://slideshare.net/HoreaPorutiu
IBM Blockchain Starter Plan
IBM Developer@horeaporutiu
•http://goo.gl/i9WZcH
• Need either business or student
email address, gmail wont work
• Takes a few business days to
process, please be patient
Links
• Fabric-chaincode-evm - https://github.com/
hyperledger/fabric-chaincode-evm
@horeaporutiu IBM Code
• Demo - https://github.com/IBM/hyperledger-
fabric-evm-demo
• EVM + Hyperledger Tutorials - https://
www.youtube.com/user/horeaporutiu
Contact
• Questions: horea.porutiu@ibm.com
• Social: Tweets @horeaporutiu
• Site: https://horeaporutiu.com/
• Youtube: https://www.youtube.com/user/
horeaporutiu
@horeaporutiu IBM Developer
Questions?
http://www.freeiconspng.com/img/5437
@horeaporutiu IBM Developer

More Related Content

PDF
Developing applications with Hyperledger Fabric SDK
PPTX
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?
PDF
Hyperledger Fabric update Meetup 20181101
PDF
Hyperledger Fabric Application Development 20190618
PPTX
Hyperledger fabric 20180528
PPTX
Deploy a blockchain web-app with Hyperledger Fabric 1.4 - Concepts & Code
PDF
Hyperleger Fabric Workshop - Denver Blockchain Week
PPTX
Hyperledger Fabric - Blockchain, sushi and supply chain
Developing applications with Hyperledger Fabric SDK
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?
Hyperledger Fabric update Meetup 20181101
Hyperledger Fabric Application Development 20190618
Hyperledger fabric 20180528
Deploy a blockchain web-app with Hyperledger Fabric 1.4 - Concepts & Code
Hyperleger Fabric Workshop - Denver Blockchain Week
Hyperledger Fabric - Blockchain, sushi and supply chain

What's hot (20)

PDF
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
PDF
Hyperledger Fabric & Composer
PPTX
Hyperledger Fabric
PDF
Bitmark and Hyperledger Workshop: the Digital Assets and Property
PDF
Hyperledger Fabric Technical Deep Dive 20190618
ODP
Hyperledger Composer
PDF
Hyperledger Overview - 20181024
PDF
Introduction to Blockchain and Hyperledger
PDF
Hyperledger Fabric - Blockchain for the Enterprise - FOSDEM 20190203
PDF
Using Blockchain to Increase Supply Chain Transparency
PPTX
Hyperledger
PPTX
Hyperledger community update 20180528
ODP
Hyperledger Fabric and Tools
PPTX
Hyperledger
PDF
Introduction of Hyperledger Fabric & Composer
PDF
Hyperledger community update Feb 20, 2018
PPTX
Blockchain, 
Hyperledger fabric & Hyperledger cello
PPTX
IBM presents: Hyperledger Fabric Hands On Workshop - part 1
PDF
Getting up and running with Hyperledger Fabric & Composer (Full Stack)
PDF
Hyperledger Fabric in a Nutshell
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
Hyperledger Fabric & Composer
Hyperledger Fabric
Bitmark and Hyperledger Workshop: the Digital Assets and Property
Hyperledger Fabric Technical Deep Dive 20190618
Hyperledger Composer
Hyperledger Overview - 20181024
Introduction to Blockchain and Hyperledger
Hyperledger Fabric - Blockchain for the Enterprise - FOSDEM 20190203
Using Blockchain to Increase Supply Chain Transparency
Hyperledger
Hyperledger community update 20180528
Hyperledger Fabric and Tools
Hyperledger
Introduction of Hyperledger Fabric & Composer
Hyperledger community update Feb 20, 2018
Blockchain, 
Hyperledger fabric & Hyperledger cello
IBM presents: Hyperledger Fabric Hands On Workshop - part 1
Getting up and running with Hyperledger Fabric & Composer (Full Stack)
Hyperledger Fabric in a Nutshell
Ad

Similar to Ethereum Smart Contracts on Hyperledger Fabric (20)

PDF
Developing Blockchain Applications
PDF
[Call for code] IBM 블록체인을 활용하여 투명하게 구호기금 관리하기 - Hyperledger Fabric v1.1 by 맹개발
PPTX
Ethereum Devcon1 Report (summary writing)
PDF
Hyperledger Fabric EVM Integration Feb 20, 2018
PDF
20221110 MetaCoin
PDF
[PyCon Korea 2018] Python in Chains: Running Python Code for IoT Projects on ...
PPTX
Hyperledger community update February 2018
PDF
How to run ethereum smart contracts on hyperledger fabric
PPT
Ethereum introduction
PPTX
CCS339 Unit IV is explained in detail for easy understanding
PPTX
Hyperledger Composer architecture
PDF
Wwc developing hyperledger applications v4
PPTX
Ethereum Development Tools
PDF
2013.devcon3 liferay and google authenticator integration rafik_harabi
PPTX
Ethereum Tutorial - Ethereum Explained | What is Ethereum? | Ethereum Explain...
PDF
Ibp technical introduction
PDF
Contract testing | Евгений Кузьмин | CODEiD
PPTX
From ZERO to REST in an hour
PPTX
Rapid Prototyping Chatter with a PHP/Hack Canvas App on Heroku
PDF
Week-8.pdfedfedoejdeosjdoesedcesesdsedse
Developing Blockchain Applications
[Call for code] IBM 블록체인을 활용하여 투명하게 구호기금 관리하기 - Hyperledger Fabric v1.1 by 맹개발
Ethereum Devcon1 Report (summary writing)
Hyperledger Fabric EVM Integration Feb 20, 2018
20221110 MetaCoin
[PyCon Korea 2018] Python in Chains: Running Python Code for IoT Projects on ...
Hyperledger community update February 2018
How to run ethereum smart contracts on hyperledger fabric
Ethereum introduction
CCS339 Unit IV is explained in detail for easy understanding
Hyperledger Composer architecture
Wwc developing hyperledger applications v4
Ethereum Development Tools
2013.devcon3 liferay and google authenticator integration rafik_harabi
Ethereum Tutorial - Ethereum Explained | What is Ethereum? | Ethereum Explain...
Ibp technical introduction
Contract testing | Евгений Кузьмин | CODEiD
From ZERO to REST in an hour
Rapid Prototyping Chatter with a PHP/Hack Canvas App on Heroku
Week-8.pdfedfedoejdeosjdoesedcesesdsedse
Ad

Recently uploaded (20)

PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Machine learning based COVID-19 study performance prediction
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Spectroscopy.pptx food analysis technology
PDF
Empathic Computing: Creating Shared Understanding
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
KodekX | Application Modernization Development
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Machine learning based COVID-19 study performance prediction
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
The Rise and Fall of 3GPP – Time for a Sabbatical?
Building Integrated photovoltaic BIPV_UPV.pdf
Spectroscopy.pptx food analysis technology
Empathic Computing: Creating Shared Understanding
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Understanding_Digital_Forensics_Presentation.pptx
Unlocking AI with Model Context Protocol (MCP)
Review of recent advances in non-invasive hemoglobin estimation
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
NewMind AI Weekly Chronicles - August'25 Week I
Reach Out and Touch Someone: Haptics and Empathic Computing
KodekX | Application Modernization Development
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Build a system with the filesystem maintained by OSTree @ COSCUP 2025

Ethereum Smart Contracts on Hyperledger Fabric

  • 1. @horeaporutiu IBM Developer Horea Porutiu Software Developer | Advocate, IBM Jan 2019 Running Ethereum Smart Contracts on Hyperledger Fabric
  • 2. Agenda 1. EVM Concepts 2. Hyperledger Architecture 3. Hyperledger + EVM 4. Demo IBM Developer@horeaporutiu @pluralsight
  • 3. Hyperledger Fabric + Ethereum Contracts IBM Developer@horeaporutiu https://www.pinterest.com/pin/215469163401716164/
  • 4. Hyperledger Fabric v. Ethereum •Permissioned @horeaporutiu IBM Developer https://news.coinsquare.com/investing/ethereum-daily-transactions-half-january-high/ https://www.hyperledger.org/projects/fabric • Permissionless (exceptions such as Quorum)• Customizable consensus policy • Proof of work • Forks are common Ethereum vs. Ethereum Classic
  • 5. EVM + Hyperledger Motivations IBM Developer@horeaporutiu • Hyperledger Burrow is Apache 2.0 licensed• Hyperledger Burrow is Apache 2.0 licensed
  • 6. EVM + Hyperledger Motivations IBM Developer@horeaporutiu • Hyperledger Burrow is Apache 2.0 licensed • Big developer community around Ethereum - can migrate EVM byte code contracts
  • 7. EVM + Hyperledger Motivations IBM Developer@horeaporutiu • Hyperledger Burrow is Apache 2.0 licensed • Big developer community around Ethereum - can migrate EVM byte code contracts • Eliminate vendor-lock
  • 8. EVM + Hyperledger Motivations IBM Developer@horeaporutiu • Hyperledger Burrow is Apache 2.0 licensed • Big developer community around Ethereum - can migrate EVM byte code contracts • Eliminate vendor-lock • Can still use Ethereum dev tools (Remix, Truffle, etc.) and languages (Solidity, Vyper etc.)
  • 9. Hyperledger Fabric Overview IBM Developer@horeaporutiu Blockchain network - 1 org Certificate Authority Orderer Peer (Local) Node.js app + Fabric SDK
  • 10. Node.js app + Fabric SDK IBM Developer@horeaporutiu Blockchain network - 1 org Certificate Authority Orderer Peer (Local) 1. Enrollment - Register admin with Certificate Auth Hyperledger Fabric Chaincode Database Blockchain network - 1 org Certificate AuthorityCertificate Authority Orderer Peer Chaincode Ledger 1. Hyperledger Fabric Overview
  • 11. Enrollment IBM Developer@horeaporutiu • Enrollment - process of generating keys and certificates from the Certificate Authority
  • 12. Enrollment IBM Developer@horeaporutiu • First generate certificate for our admin identity and use those to register a new client identity • Enrollment - process of generating keys and certificates from the Certificate Authority
  • 13. Node.js app + Fabric SDK IBM Developer@horeaporutiu Blockchain network - 1 org Certificate Authority (Local) 1. 1. Enrollment - Register admin with Certificate Auth Certificate Authority Orderer Peer Chaincode Ledger Hyperledger Fabric Overview
  • 14. Hyperledger Fabric Overview Node.js app + Fabric SDK IBM Developer@horeaporutiu Blockchain network - 1 org Certificate Authority Orderer (Local) 1. Enrollment - Register admin with Certificate Auth 2. Send transaction to peer 🔑 Peer Chaincode Database Blockchain network - 1 org Certificate Authority Orderer Peer Chaincode Database Blockchain network - 1 org Certificate AuthorityCertificate Authority Orderer Peer Chaincode Ledger 2. 1.
  • 15. Chaincode example IBM Developer@horeaporutiu var request = { chaincodeId: ‘carauction’, //name of chaincode to execute fcn: ‘initLedger’, // which chaincode function to execute args: [‘’], //array of args for chaincode function txId: fabric_client.newTransactionID(); //assign new txn id } var channel = fabric_client.newChannel(‘defaultchannel’); return channel.sentTransactionProposal(request); var fabric_client = require(‘fabric-client);
  • 16. Transaction execution IBM Developer@horeaporutiu Node.js app + Fabric SDK (Local) 2. Send transaction proposal to peer🔑 Peer Chaincode Ledger 2. • Check endorsement policy - which peers need to endorse transaction
  • 17. Transaction execution IBM Developer@horeaporutiu Node.js app + Fabric SDK (Local) 2. Send transaction proposal to peer🔑 Peer Chaincode Ledger 2. • Check endorsement policy - which peers need to endorse transaction • The transaction proposal will go to the peers in the endorsement policy
  • 18. Node.js app + Fabric SDK IBM Developer@horeaporutiu Blockchain network - 1 org Certificate Authority Orderer Peer (Local) 1. 1. Enrollment - Register admin with Certificate Auth 2. Send transaction to peer 3. Peers return endorsed txn Hyperledger Fabric Overview 🔑 Peer Chaincode Ledger 3. 2.
  • 19. Node.js app + Fabric SDK IBM Developer@horeaporutiu Blockchain network - 1 org Certificate Authority Orderer Peer (Local) 1. 1. Enrollment - Register admin with Certificate Auth 2. Send transaction to peer 3. Peers return endorsed txn Hyperledger Fabric Overview 🔑 Peer Chaincode Ledger 3. 2. 4. Sends endorsed txn to ordering 4.
  • 20. Node.js app + Fabric SDK IBM Developer@horeaporutiu Blockchain network - 1 org Certificate Authority Orderer Peer (Local) 1. 1. Enrollment - Register admin with Certificate Auth 2. Send (txn)transaction to peer 3. Peers return endorsed txn Hyperledger Fabric Overview 🔑 Peer Chaincode Ledger 2. 4. Send endorsed txn to ordering 4. 5. Peer updates ledger 5. 3.
  • 21. Node.js app + Fabric SDK IBM Developer@horeaporutiu Blockchain network - 1 org Certificate Authority Orderer Peer (Local) 1. 1. Enrollment - Register admin with Certificate Auth 2. Send (txn)transaction to peer 3. Peers return endorsed txn Hyperledger Fabric + EVM 🔑 Peer EVM Ledger 2. 4. Send endorsed txn to ordering 4. 5. Peer updates ledger 5. 3.
  • 22. Ethereum Concepts IBM Developer@horeaporutiu • Accounts (EOA and Contract accounts) - no balance / token in Hyperledger
  • 23. Ethereum Concepts IBM Developer@horeaporutiu • Accounts (EOA and Contract accounts) - no balance / token in Hyperledger • Gas
  • 24. Ethereum Concepts IBM Developer@horeaporutiu • Accounts (EOA and Contract accounts) - no balance / token in Hyperledger • Gas • EVM Transaction Format (To, From, data)
  • 25. Design IBM Developer@horeaporutiu • EVM Chaincode (smart contract that can run EVM byte code smart contracts)
  • 26. Design IBM Developer@horeaporutiu • EVM Chaincode (smart contract that can run EVM byte code smart contracts) • Fabproxy - wrapper around Fabric Go SDK - implements Ethereum JSON RPC API - use Ethereum tools like Remix / Web3.js
  • 27. Design IBM Developer@horeaporutiu • EVM Chaincode (smart contract that can run EVM byte code smart contracts) • Fabproxy - wrapper around Fabric Go SDK - implements Ethereum JSON RPC API - use Ethereum tools like Remix / Web3.js fabproxy Ethereum JSON RPC API GO SDK
  • 28. Design IBM Developer@horeaporutiu • EVM Chaincode (smart contract that can run EVM byte code smart contracts) • Fabproxy - wrapper around Fabric Go SDK - implements Ethereum JSON RPC API - use Ethereum tools like Remix / Web3.js fabproxy Ethereum JSON RPC API GO SDK peer API EVMCC Ledger StateWriter
  • 29. Design IBM Developer@horeaporutiu • EVM Chaincode (smart contract that can run EVM byte code smart contracts) • Fabproxy - wrapper around Fabric Go SDK - implements Ethereum JSON RPC API - use Ethereum tools like Remix / Web3.js fabproxy Ethereum JSON RPC API GO SDK peer API EVMCC Ledger StateWriter1. User request
  • 30. Design IBM Developer@horeaporutiu • EVM Chaincode (smart contract that can run EVM byte code smart contracts) • Fabproxy - wrapper around Fabric Go SDK - implements Ethereum JSON RPC API - use Ethereum tools like Remix / Web3.js fabproxy Ethereum JSON RPC API GO SDK peer API EVMCC Ledger StateWriter1. User request 2. Invokes API
  • 31. Design IBM Developer@horeaporutiu • EVM Chaincode (smart contract that can run EVM byte code smart contracts) • Fabproxy - wrapper around Fabric Go SDK - implements Ethereum JSON RPC API - use Ethereum tools like Remix / Web3.js fabproxy Ethereum JSON RPC API GO SDK peer API EVMCC Ledger StateWriter1. User request 2. Invokes API 3. Invokes EVM
  • 32. Design IBM Developer@horeaporutiu • EVM Chaincode (smart contract that can run EVM byte code smart contracts) • Fabproxy - wrapper around Fabric Go SDK - implements Ethereum JSON RPC API - use Ethereum tools like Remix / Web3.js fabproxy Ethereum JSON RPC API GO SDK peer API EVMCC Ledger StateWriter1. User request 2. Invokes API 3. Invokes EVM 4. Get contract code
  • 33. Design IBM Developer@horeaporutiu • EVM Chaincode (smart contract that can run EVM byte code smart contracts) • Fabproxy - wrapper around Fabric Go SDK - implements Ethereum JSON RPC API - use Ethereum tools like Remix / Web3.js fabproxy Ethereum JSON RPC API GO SDK peer API EVMCC Ledger StateWriter1. User request 2. Invokes API 3. Invokes EVM 4. Get contract code 5. Generate read & write sets
  • 36. IBM Blockchain Starter Plan IBM Developer@horeaporutiu •http://goo.gl/i9WZcH • Need either business or student email address, gmail wont work • Takes a few business days to process, please be patient
  • 37. Links • Fabric-chaincode-evm - https://github.com/ hyperledger/fabric-chaincode-evm @horeaporutiu IBM Code • Demo - https://github.com/IBM/hyperledger- fabric-evm-demo • EVM + Hyperledger Tutorials - https:// www.youtube.com/user/horeaporutiu
  • 38. Contact • Questions: horea.porutiu@ibm.com • Social: Tweets @horeaporutiu • Site: https://horeaporutiu.com/ • Youtube: https://www.youtube.com/user/ horeaporutiu @horeaporutiu IBM Developer