What s new under the blockchain sun. HYPERLEDGER FABRIC AND A SHORT SURVEY OF INTERLEDGER. DIDIER PH MARTIN, PHD.
Where do come from? BITCOIN = MONEY BLOCKCHAIN NETWORK ETHEREUM = PROGRAMMABLE BLOCKCHAIN NETWORK
Ethereum public blockchain network The main public blockchain network Ethereum (Ethereum foundation) approx. 11007 nodes/servers. In comparaison The bitcoin network has 6992 nodes Invented by Vitalik Buterin who wanted to create a more versatile programmable network
Ethereum public network Source: https://www.ethernodes.org/
Pros and Cons of Ethereum PROs Act as giant computer to run script also called smart contracts. Replicated registry. All nodes have the very same view of the world. Transactions are immutable. Scripts are executed in a virtual machine and can be written in simple languages like, for instance, Solidity. Is open source and has a dynamic team of developers in the Ethereum foundation. Moving toward a less expensive consensus mechanism. CONs The cost of running code is subject to inflation. We have to pay for code execution. In the Ethereum network it is called gaz. It is paid in Ether, the Ethereum network digital currency Use a costly consensus mechanism named «proof of work». It actually uses a lot of computing power and energy. Will change with the Casper release based on proof of stake.
Ether value over a year Source: https://www.worldcoinindex.com/coin/ethereum
Why?? Because Ether is also considered as a speculative digital currency actively traded on several exchanges https://poloniex.com/exchange#btc_eth
Private Ethereum??
Behind the scene a battle of giants Microsoft with Ethereum as a blockchain as a service on Azure IBM with Hyperledger Fabric on IBM cloud service
Technologies comparaison
Hyperledger is also open source Ethereum is open source and developed mainly by the Ethereum foundation by a team lead by Vitalik Buterin. So is Hyperledger Fabric now incubated in the linux foundation. It was donated to Linux foundation by IBM. It is now developed by an international community of developers both from corporations and as individuals. Several other projects are evolving on top of Hyperledger Fabric, most of them incubated in the Linux Foundation: Cello (https://github.com/yeasy/cello) Hyperledger compose (https://github.com/fabric-composer/fabric-composer)
Hyperledger node manager: Cello
Hyperledger Architecture
Hyperledger architecture
Main point about hyperledger The code also called chaincode resides in a docker container. This allows chaincode to be implemented in compiled code such as GO, semi-interpreted code such as Java (JVM) or interpreted such as javascript.
Main point about hyperledger The state registry also called common view of the world is versatile. A pluggable interface allows to use either RocksDB (a key/value storage) or CouchDB a document based DB (to store JSON documents). CouchDB management interface
Main point about hyperledger Fabric The membership module is also pluggable. This allows LDAP, active directory or other member management software to be used.
Main point about hyperledger Fabric Support the notion of channels. Only some players can interect with some parts of the world view.
Lesson learned from experience Modular approach Supports more than one state storage (RocksDB, CouchDB) Supports more than one membership module Supports compiled (GO), semi-interpreted (Java) or interpreted languages (javascript). In the same network, members can see different world view.
In a nutshell Blockchains Share the same world view Interledger Allows independent Ledgers to exchange transactions
Exchange of money with inter-ledger Interledger is not about programmable blockchains but more about money exchange protocol between independent ledgers. Based on communication block inspired from IETF transaction content like HTTP, mail.
About interledger Was created by Ripple and submitted to W3C and IETF as proposals. Has an actual javascript reference implementation as open source (https://github.com/interledgerjs) Has a java reference implementation as a work in progress (https://github.com/interledger) Has an active international group of developers discussing the specifications and making updates to the reference implementations.