Semantics for the Cloud The ENTICE integrated environment

  • Slides: 13
Download presentation
Semantics for the Cloud: The ENTICE integrated environment and opportunities with smart contracts Sandi

Semantics for the Cloud: The ENTICE integrated environment and opportunities with smart contracts Sandi Gec, Uroš Paščinski, Vlado Stankovski 18. 01. 2016

Outline Semantics in ENTICE environment High-level architecture Blockchain Smart contracts Potential integration of smart

Outline Semantics in ENTICE environment High-level architecture Blockchain Smart contracts Potential integration of smart contracts in ENTICE environment • Smart contract example • Future work • • •

Semantics in ENTICE environment (1/3) • Data modeled using Web Ontology Language (OWL) and

Semantics in ENTICE environment (1/3) • Data modeled using Web Ontology Language (OWL) and Resource Description Framework (RDF) • Main pillar for the ENTICE data • Possibility to inference new data with reasoning mechanisms • Rich graph representation of the relationships among the data →

Semantics in ENTICE environment (2/3) • Representation of the main entities:

Semantics in ENTICE environment (2/3) • Representation of the main entities:

Semantics in ENTICE environment (3/3) • Example benefits: *reduction of the input metadata size

Semantics in ENTICE environment (3/3) • Example benefits: *reduction of the input metadata size for the Multi-Objective optimization (MO) solver by up to 60%, o *reduction of the total optimization time of the MO solver by up to 68%, while fully preserving the quality of the solution, o semantic representation of fragments (base/virtual images) focusing on richer relationships among the entities. o * Gec S, Kimovski D, Paščinski U, Prodan R, Stankovski V. : Semantic approach for multi-objective optimisation of the ENTICE distributed Virtual Machine and container images repository. Concurrency Computat: Pract Exper. 2017; e 4264. https: //doi. org/10. 1002/cpe. 4264

High-level architecture

High-level architecture

Blockchain • Blockchain benefits: decentralization, o transparency, o reduced transaction cost, o satisfying transaction

Blockchain • Blockchain benefits: decentralization, o transparency, o reduced transaction cost, o satisfying transaction speed, o user-controlled networks, etc. o • data representation:

Smart contracts • Definition: „Smart contracts are self-executing contracts with the terms of the

Smart contracts • Definition: „Smart contracts are self-executing contracts with the terms of the agreement between buyer and seller being directly written into lines of code“. • Smar contracts can: create new ones, o consist of defined rules and penalities around an agreement, o be agreegated among others (like anexes). o • Example Origin. Chain* * Q. Lu and X. Xu, "Adaptable Blockchain-Based Systems: A Case Study for Product Traceability, " in IEEE Software, vol. 34, no. 6, pp. 21 -27, November 2017.

Potential integration of smart contracts in ENTICE environment • Initial requirement: Using Metamask as

Potential integration of smart contracts in ENTICE environment • Initial requirement: Using Metamask as a blockchain bridge and the GUI, • Fully transparent SLA agreements, • facilitate monetization of the services, • Introduced penalties for the significantly decreased Qo. S and others.

Smart contract example (1/2) Code validated and ready to be deployed on Ethereum testnet.

Smart contract example (1/2) Code validated and ready to be deployed on Ethereum testnet. pragma solidity ^0. 4. 6; contract ENTICEAgreement { address public entice. User; address public entice. Environment; struct document. Struct { bool approved. By. User; bool approved. By. Env; // to be added ; attributes to be // approved (SLA, Pareto, Pricing etc. ) } ← addresses of the parties ← contract structure ← ENTICE specific metadata mapping(bytes 32 => document. Struct) public document. Structs; bytes 32[] public document. List; // all bytes 32[] public approved. Documents; // approved ← supporting functions // for event listeners event Log. Proposed. Document(address proposer, bytes 32 doc. Hash); event Log. Approved. Document(address approver, bytes 32 doc. Hash); ← event listeners // storing the entice user & entice environment addresses function Two. Sigs(address addr. User, address addr. Env) public { entice. User = addr. User; entice. Environment = addr. Env; } ← construction data function

Smart contract example (2/2) // iteration over document lists function get. Documents. Count() public

Smart contract example (2/2) // iteration over document lists function get. Documents. Count() public constant returns(uint doc. Count) { return document. List. length; } function get. Approved. Count() public constant returns(uint appr. Count) { return approved. Documents. length; } // propose/approve function agree. Doc(bytes 32 hash) public returns(bool success) { ← agreement execution ← unknown user // if the user is unknown, abort! if(msg. sender != entice. User && msg. sender != entice. Environment) revert(); // if the users are known, set approval flag to TRUE if(msg. sender == entice. User) document. Structs[hash]. approved. By. User = true; if(msg. sender == entice. Environment) document. Structs[hash]. approved. By. Env = true; if(document. Structs[hash]. approved. By. User == true && document. Structs[hash]. approved. By. Env == true) { //uint doc. Count = document. List. push(hash); Log. Approved. Document(msg. sender, hash); } else { //uint appr. Count = approved. Documents. push(hash); Log. Proposed. Document(msg. sender, hash); } return true; } } ← unknown user

Future work • Improved fragmentation through semantic recommendation system • Integration of smart contracts

Future work • Improved fragmentation through semantic recommendation system • Integration of smart contracts and evaluation on testnet network of Ethereum • Use and evaluation of distributed storages (e. g. SIA and Stor. J) for: increase heterogeneous of the geolocations o reduce the overall cost of storage o • Overall distribution of services

Thank you Questions?

Thank you Questions?