-
Integrating Blockchain technology within an Information Ecosystem
Authors:
Francesco Salzano,
Lodovica Marchesi,
Remo Pareschi,
Roberto Tonelli
Abstract:
Context: Blockchain-based Information Ecosystems (BBIEs) are a type of information ecosystem in which blockchain technology is used to provide a trust mechanism among parties and to manage shared business logic, breaking the traditional scheme of Information Ecosystems dominated by a leading company and leveraging the decentralization of data management, information flow, and business logic. Objec…
▽ More
Context: Blockchain-based Information Ecosystems (BBIEs) are a type of information ecosystem in which blockchain technology is used to provide a trust mechanism among parties and to manage shared business logic, breaking the traditional scheme of Information Ecosystems dominated by a leading company and leveraging the decentralization of data management, information flow, and business logic. Objective: In this paper, we propose architecture and technical aspects concerning the creation of a BBIE, underlining the advantages supplied and the logic decomposition among the business and storage components. Method: The requirements are derived from the current needs of the collaborative business and the data collected by surveying practitioners. To get these needs we followed the Grounded Theory research approach. We validate our architectural schema against a case study dealing with the management of a wine supply chain, also involving different companies and supervision authorities. Results: The proposed solution integrates blockchain-based applications with the existing information system as a module of the ecosystem, leveraging on the low costs, scalability, and high-level security because of the restricted access to the network. Conclusion: We must go a long way in deepening and refining the possibilities offered by technology in supporting innovative multi-organizational business models. BBIEs can contribute substantially to paving the way in such a direction.
△ Less
Submitted 20 February, 2024;
originally announced February 2024.
-
Automatic Generation of Blockchain Agri-food Traceability Systems
Authors:
Lodovica Marchesi,
Katiuscia Mannaro,
Raffaele Porcu
Abstract:
Supply chain management, product provenance and quality certification are among the first and most popular applications of blockchain technology, due to the inherent trust and inalterability provided by the blockchain technology. However, the proposed supply chain management systems based on blockchain and smart contract technology tend to be specific to the particular production and production pr…
▽ More
Supply chain management, product provenance and quality certification are among the first and most popular applications of blockchain technology, due to the inherent trust and inalterability provided by the blockchain technology. However, the proposed supply chain management systems based on blockchain and smart contract technology tend to be specific to the particular production and production process. In this paper we present a general-purpose approach for the agri-food supply chain management, proposing a system that can be configured for most agri-food productions. The primary purpose is to provide a methodology to facilitate and make more efficient the development of such applications. It is based on general smart contracts and apps interacting with the same smart contracts, which are configured, starting from the description of the specific system to be managed, given using json files. A case study on olive oil production is described, to show how our approach works.
△ Less
Submitted 12 March, 2021;
originally announced March 2021.
-
Security checklists for Ethereum smart contract development: patterns and best practices
Authors:
Lodovica Marchesi,
Michele Marchesi,
Livio Pompianu,
Roberto Tonelli
Abstract:
In recent years Smart Contracts and DApps are becoming increasingly important and widespread thanks to the properties of blockchain technology. In most cases DApps are business critical, and very strict security requirements should be assured. Develo** safe and reliable Smart Contracts, however, is not a trivial task. Several researchers have studied the security issues, however none of these pr…
▽ More
In recent years Smart Contracts and DApps are becoming increasingly important and widespread thanks to the properties of blockchain technology. In most cases DApps are business critical, and very strict security requirements should be assured. Develo** safe and reliable Smart Contracts, however, is not a trivial task. Several researchers have studied the security issues, however none of these provide a simple and intuitive tool to overcome these problems. In this paper we collected a list of security patterns for DApps. Moreover, based on these patterns, we provide the reader with security assessment checklists that can be easily used for the development of SCs. We cover the phases of design, coding, and testing and deployment of the software lifecycle. In this way, we allow developers to easily verify if they applied all the relevant security patterns to their smart contracts. We focus all the analysis on the most popular Ethereum blockchain, and on the Solidity language.
△ Less
Submitted 9 August, 2020;
originally announced August 2020.
-
A Blockchain Architecture for Industrial Applications
Authors:
Lodovica Marchesi,
Michele Marchesi,
Roberto Tonelli
Abstract:
The Blockchain and the programs running on it, called Smart Contracts, are more and more applied in all fields requiring trust and strong certifications. In this work we compare public and permissioned blockchains for industrial applications. We propose a complete, original solution based on Ethereum to implement a decentralized application. This solution is characterized by a set of validator nod…
▽ More
The Blockchain and the programs running on it, called Smart Contracts, are more and more applied in all fields requiring trust and strong certifications. In this work we compare public and permissioned blockchains for industrial applications. We propose a complete, original solution based on Ethereum to implement a decentralized application. This solution is characterized by a set of validator nodes running the blockchain using Proof-of-Authority consensus, and including an Explorer enabling users to check blockchain state, and the source code of the Smart Contracts running on it. From time to time, the hash digest of the last mined block is written into a public blockchain to guarantee immutability. The right to send transactions is granted by validator nodes to users by endowing them with the local Ethers mined. Overall, the proposed approach has the same transparency and immutability of a public blockchain, without its drawbacks.
△ Less
Submitted 30 April, 2020;
originally announced May 2020.
-
Forecasting Bitcoin closing price series using linear regression and neural networks models
Authors:
Nicola Uras,
Lodovica Marchesi,
Michele Marchesi,
Roberto Tonelli
Abstract:
This paper studies how to forecast daily closing price series of Bitcoin, using data on prices and volumes of prior days. Bitcoin price behaviour is still largely unexplored, presenting new opportunities. We compared our results with two modern works on Bitcoin prices forecasting and with a well-known recent paper that uses Intel, National Bank shares and Microsoft daily NASDAQ closing prices span…
▽ More
This paper studies how to forecast daily closing price series of Bitcoin, using data on prices and volumes of prior days. Bitcoin price behaviour is still largely unexplored, presenting new opportunities. We compared our results with two modern works on Bitcoin prices forecasting and with a well-known recent paper that uses Intel, National Bank shares and Microsoft daily NASDAQ closing prices spanning a 3-year interval. We followed different approaches in parallel, implementing both statistical techniques and machine learning algorithms. The SLR model for univariate series forecast uses only closing prices, whereas the MLR model for multivariate series uses both price and volume data. We applied the ADF -Test to these series, which resulted to be indistinguishable from a random walk. We also used two artificial neural networks: MLP and LSTM. We then partitioned the dataset into shorter sequences, representing different price regimes, obtaining best result using more than one previous price, thus confirming our regime hypothesis. All the models were evaluated in terms of MAPE and relativeRMSE. They performed well, and were overall better than those obtained in the benchmarks. Based on the results, it was possible to demonstrate the efficacy of the proposed methodology and its contribution to the state-of-the-art.
△ Less
Submitted 4 January, 2020;
originally announced January 2020.
-
ABCDE -- Agile Block Chain Dapp Engineering
Authors:
Lodovica Marchesi,
Michele Marchesi,
Roberto Tonelli
Abstract:
Cryptocurrencies and their foundation technology, the Blockchain, are resha** finance and economics, allowing a decentralized approach enabling trusted applications with no trusted counterpart. More recently, the Blockchain and the programs running on it, called Smart Contracts, are also finding more and more applications in all fields requiring trust and sound certifications. Some people have c…
▽ More
Cryptocurrencies and their foundation technology, the Blockchain, are resha** finance and economics, allowing a decentralized approach enabling trusted applications with no trusted counterpart. More recently, the Blockchain and the programs running on it, called Smart Contracts, are also finding more and more applications in all fields requiring trust and sound certifications. Some people have come to the point of saying that the "Blockchain revolution" can be compared to that of the Internet and the Web in their early days. As a result, all software development revolving around the Blockchain technology is growing at a staggering rate. The feeling of many software engineers about such huge interest in Blockchain technologies is that of unruled and hurried software development, a sort of competition on a first-come-first-served basis which does not assure neither software quality, nor that the basic concepts of software engineering are taken into account. This paper tries to cope with this issue, proposing a software development process to gather the requirement, analyze, design, develop, test and deploy Blockchain applications. The process is based on several Agile practices, such as User Stories and iterative and incremental development based on them. However, it makes also use of more formal notations, such as some UML diagrams describing the design of the system, with additions to represent specific concepts found in Blockchain development. The method is described in good detail, and an example is given to show how it works.
△ Less
Submitted 19 December, 2019;
originally announced December 2019.
-
An Agile Software Engineering Method to Design Blockchain Applications
Authors:
Michele Marchesi,
Lodovica Marchesi,
Roberto Tonelli
Abstract:
Cryptocurrencies and their foundation technology, the Blockchain, are resha** finance and economics, allowing a decentralized approach enabling trusted applications with no trusted counterpart. More recently, the Blockchain and the programs running on it, called Smart Contracts, are also finding more and more applications in all fields requiring trust and sound certifications. Some people have c…
▽ More
Cryptocurrencies and their foundation technology, the Blockchain, are resha** finance and economics, allowing a decentralized approach enabling trusted applications with no trusted counterpart. More recently, the Blockchain and the programs running on it, called Smart Contracts, are also finding more and more applications in all fields requiring trust and sound certifications. Some people have come to the point of saying that the "Blockchain revolution" can be compared to that of the Internet and the Web in their early days. As a result, all the software development revolving around the Blockchain technology is growing at a staggering rate. The feeling of many software engineers about such huge interest in Blockchain technologies is that of unruled and hurried software development, a sort of competition on a first-come-first-served basis which does not assure neither software quality, nor that the basic concepts of software engineering are taken into account. This paper tries to cope with this issue, proposing a software development process to gather the requirement, analyze, design, develop, test and deploy Blockchain applications. The process is based on several Agile practices, such as User Stories and iterative and incremental development based on them. However, it makes also use of more formal notations, such as some UML diagrams describing the design of the system, with additions to represent specific concepts found in Blockchain development. The method is described in good detail, and an example is given to show how it works.
△ Less
Submitted 25 September, 2018;
originally announced September 2018.
-
The ICO Phenomenon and Its Relationships with Ethereum Smart Contract Environment
Authors:
Gianni Fenu,
Lodovica Marchesi,
Michele Marchesi,
Roberto Tonelli
Abstract:
Initial Coin Offerings (ICO) are public offers of new cryptocurrencies in exchange of existing ones, aimed to finance projects in the blockchain development arena. In the last 8 months of 2017, the total amount gathered by ICOs exceeded 4 billion US$, and overcame the venture capital funnelled toward high tech initiatives in the same period. A high percentage of ICOS is managed through Smart Contr…
▽ More
Initial Coin Offerings (ICO) are public offers of new cryptocurrencies in exchange of existing ones, aimed to finance projects in the blockchain development arena. In the last 8 months of 2017, the total amount gathered by ICOs exceeded 4 billion US$, and overcame the venture capital funnelled toward high tech initiatives in the same period. A high percentage of ICOS is managed through Smart Contracts running on Ethereum blockchain, and in particular to ERC-20 Token Standard Contract. In this work we examine 1388 ICOs, published on December 31, 2017 on icobench.com Web site, gathering information relevant to the assessment of their quality and software development management, including data on their development teams. We also study, at the same date, the financial data of 450 ICO tokens available on coinmarketcap.com Web site, among which 355 tokens are managed on Ethereum blochain. We define success criteria for the ICOs, based on the funds actually gathered, and on the behavior of the price of the related tokens, finding the factors that most likely influence the ICO success likeliness.
△ Less
Submitted 4 March, 2018;
originally announced March 2018.