Evaluating the performance of Distributed Ledger

1 downloads 0 Views 775KB Size Report
Evaluating the performance of Distributed Ledger –. Blockchain technologies in. IoT environment. Φοιτητής: Γεώργιος Μιχαήλ Μακράκης 321/2013107.
Evaluating the performance of Distributed Ledger – Blockchain technologies in IoT environment Φοιτητής: Γεώργιος Μιχαήλ Μακράκης 321/2013107 Υπεύθυνος καθηγητής: Καμπουράκης Γεώργιος

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Contents ▪ Purpose and idea ▪What is the Internet of Things (IoT) ▪ What is a Distributed Ledger Technology (DLT) ▪ Frameworks analysis and implementation ▪ DLTs comparison and results

▪ Conclusion and discussion

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Purpose of this thesis ▪ New approach to the IoT performance and security by using DLTs ▪ Evaluate the use of already established technologies. ▪ Can DLTs be used in IoT? ▪ No cryptocurrencies included.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Idea ▪ IoT market big growth. ▪ IoT is mainly a distributed system. ▪ DLT is a distributed system. ▪ Can them both be integrated for some use cases? (Smart Homes – Buildings, Factories)

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Internet of Things ▪ Simple computing devices that are connected to a network. ▪ Few resources on performance and storage. ▪ Sometimes exist “in the wild”. ▪ Almost everyone has a form of these devices. ▪ A lot of different protocols.

▪ Security is a major issue.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

IoT units installed base by category (Millions) Gartner (January 2017)

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Distributed Ledger Technology ▪ A database that every node that participates in network holds. ▪ No central authority. ▪ Permissionless, Permissioned, with Smart Contracts and with transactions only. ▪ Became known with Bitcoin P2P cash system. ▪ Blockchain is a form of DLT.

▪ Other uses: Supply chain, Healthcare, IoT.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Centralised vs Distributed ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Problems to be solved with DLTs in IoT ▪ Track data measurements and prevent duplication with malicious data. ▪ Easy deployment with identification, authentication and secure data transfer. ▪ Data can be accessible from every node. ▪ Have device autonomy.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Frameworks Analysis ▪ IOTA ▪ Holochain ▪ Flowchain

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

IOTA ▪ Designed for Machine Economy (token MIOTA). ▪ Unique architecture by using the Tangle, a DAG as consensus. ▪ Resistible to quantum attacks. ▪ A lot of Open Source projects including Masked Authenticated Messaging (MAM).

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Blockchain and Tangle ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

MAM ▪ Second layer data communication. ▪ Small PoW for transactions. ▪ Trytes encoding. ▪ Merkle tree for transactions. ▪ Root → Channel key.

▪ Public, Private and Restricted channel modes.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Holochain ▪ Not exactly a DLT. ▪ No consensus. ▪ Can create dApps. ▪ Using DHT for data sharing. ▪ Private and Public ledger.

▪ Agent Centric approach – No Data Centric.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Holochain Architecture https://github.com/Holochain/holochain-proto/wiki

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Flowchain ▪ DLT for real-time data transactions. ▪ Both for microcontrollers and high performance devices. ▪ W3C’s Web of Things server. ▪ Virtual mining concept and Proof-of-stake (PoS) for consensus. ▪ Uses DHT also.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Virtual Blocks ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Implementation ▪ Response Time, Service Time- Round Trip Time and Packet size metrics. ▪ Three nodes on different areas (Athens - Marousi, Athens – Korydallos, Rhodes). ▪ Raspberry Pi 3 Model B used as nodes. ▪ NodeJs implementation of the metrics projects for each framework. ▪ 10 messages exchange for every test.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Response Time ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Service Time – Round Trip Time ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

DLTs Comparison ▪ IOTA is mature enough but had some design problems. ▪ MAM lacks out of nodes supporting it. ▪ Holochain has good core implementation although no security audit has been made. ▪ Flowchain is fast enough for IoT, not adopted enough and widely supported.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Comparison Table ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Results ▪ Best performance and message size: Flowchain. ▪ Secure but not critical application in mater of time: IOTA MAM. ▪ More adaptive to changes and bottom-up architecture projects: Holochain.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Holochain RTT

Some metrics

IOTA MAM RTT Flowchain RTT

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Discussion ▪ More popular technologies were not suitable for IoT. ▪ Hyperledger Fabric: A lot of tools to handle in IoT devices. ▪ Ethereum: Full node too heavy, must move load to more powerful device. ▪ Hashgraph: SDK only, supported for enterprise agreement. ▪ New frameworks must be established for IoT.

▪ Maybe introduce Smart Contracts. ▪ No standardization for DLTs in IoT.

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Acknowledgements ▪ Professor Kampourakis Georgios ▪ Kotsilitis Sarantis ▪ Plegma Labs S.A. ▪ IOTA Discord Community ▪ Holochain Mattermost Community

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Questions? ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Thanks! The whole project is open source hosted @ https://github.com/georgemakrakis

ΓΕΏΡΓΙΟΣ ΜΙΧΑΉΛ ΜΑΚΡΆΚΗΣ 321/2013107 [email protected]

Suggest Documents