-
Toward Scalable Docker-Based Emulations of Blockchain Networks for Research and Development
Authors:
Diego Pennino,
Maurizio Pizzonia
Abstract:
Blockchain, like any other complex technology, needs a strong testing methodology to support its evolution in both research and development contexts. Setting up meaningful tests for permissionless blockchain technology is a notoriously complex task for several reasons: software is complex, large number of nodes are involved, network is non ideal, etc. Developers usually adopt small virtual laborat…
▽ More
Blockchain, like any other complex technology, needs a strong testing methodology to support its evolution in both research and development contexts. Setting up meaningful tests for permissionless blockchain technology is a notoriously complex task for several reasons: software is complex, large number of nodes are involved, network is non ideal, etc. Developers usually adopt small virtual laboratories or costly real devnets, based on real software. Researchers usually prefer simulations of a large number of nodes, based on simplified models. In this paper, we aim to obtain the advantages of both approaches, i.e., performing large, realistic, inexpensive, and flexible experiments, using real blockchain software within a virtual environment. To do that, we tackle the challenge of running large blockchain networks in a single physical machine, leveraging Linux and Docker. We analyze a number of problems that arise when large blockchain networks are emulated and we provide technical solutions for all of them. Finally, we describe two experiences of emulating fairly large blockchain networks on a single machine, adopting both research oriented and production oriented software, and involving up to more than 3000 containers.
△ Less
Submitted 22 February, 2024;
originally announced February 2024.
-
Blockchain Scalability and Security: Communications Among Fast-Changing Committees Made Simple
Authors:
Andrea Mariani,
Gianluca Mariani,
Diego Pennino,
Maurizio Pizzonia
Abstract:
For permissionless blockchains, scalability is paramount. While current technologies still fail to address this problem fully, many research works propose sharding or other techniques that extensively adopt parallel processing of transactions. In these approaches, a potentially large number of committees of nodes independently perform consensus and process new transactions. Hence, in addition to r…
▽ More
For permissionless blockchains, scalability is paramount. While current technologies still fail to address this problem fully, many research works propose sharding or other techniques that extensively adopt parallel processing of transactions. In these approaches, a potentially large number of committees of nodes independently perform consensus and process new transactions. Hence, in addition to regular intra-committee communication, (1) new transactions have to be delivered to the right committee, (2) committees need to communicate to process inter-shard transactions or (3) to exchange intermediate results. To contrast slowly adaptive adversaries, committees should be frequently changed. However, efficient communication to frequently-changing committees is hard.
We propose a simple approach that allows us to implicitly select committee members and effectively deliver messages to all members of a specific committee, even when committees are changed frequently. The aim of our design is to provide a committee selection procedure and a committee-targeted communication primitive to be applied in most of the scalable blockchain architectures that are currently proposed in literature. We provide a theoretical proof of the security of our approach and first experimental results that shows that our approach might be feasible in practice.
△ Less
Submitted 22 December, 2022;
originally announced December 2022.
-
Empowering Citizens by a Blockchain-Based Robinson List
Authors:
Albenzio Cirillo,
Vito Dalena,
Antonio Mauro,
Francesco Mogavero,
Diego Pennino,
Maurizio Pizzonia,
Andrea Vitaletti,
Marco Zecchini
Abstract:
A Robinson list protects phone subscribers against commercial spam calls. Its least basic functionality is to collect the denial of the subscribers to be contacted by market operators. Nowadays, Robinson lists run as centralised services, which implies that citizens should trust third parties for the management of their choices. In this paper, we show a design that allows us to realise a Robinson…
▽ More
A Robinson list protects phone subscribers against commercial spam calls. Its least basic functionality is to collect the denial of the subscribers to be contacted by market operators. Nowadays, Robinson lists run as centralised services, which implies that citizens should trust third parties for the management of their choices. In this paper, we show a design that allows us to realise a Robinson list as a decentralised service. Our work leverages the experience developed by Fondazione Ugo Bordoni as the manager of the Italian Robinson list. We present a general solution and a proof-of-concept (PoC) adopting the Algorand technology. We evaluate the performances of our PoC in terms of its scalability and of the latency perceived by the involved actors. We also discuss aspects related to identity management and privacy.
△ Less
Submitted 6 October, 2021;
originally announced October 2021.
-
Scaling Blockchains Without Giving up Decentralization and Security
Authors:
Gianmaria Del Monte,
Diego Pennino,
Maurizio Pizzonia
Abstract:
Public blockchains should be able to scale with respect to the number of nodes and to the transactions workload. The blockchain scalability trilemma has been informally conjectured. This is related to scalability, security and decentralization, stating that any improvement in one of these aspects should negatively impact on at least one of the other twos. In fact, despite the large research and ex…
▽ More
Public blockchains should be able to scale with respect to the number of nodes and to the transactions workload. The blockchain scalability trilemma has been informally conjectured. This is related to scalability, security and decentralization, stating that any improvement in one of these aspects should negatively impact on at least one of the other twos. In fact, despite the large research and experimental effort, all known approaches turn out to be tradeoffs. We theoretically describe a new blockchain architecture that scales to arbitrarily high workload provided that a corresponding proportional increment of nodes is provisioned. We show that, under reasonable assumptions, our approach does not require tradeoffs on security or decentralization. To the best of our knowledge, this is the first result that disprove the trilemma considering the scalability of all architectural elements of a blockchain and not only the consensus protocol. While our result is currently only theoretic, we believe that ot our approach may stimulate significant practical contributions.
△ Less
Submitted 4 June, 2020; v1 submitted 13 May, 2020;
originally announced May 2020.
-
Binding of Endpoints to Identifiers by On-Chain Proofs
Authors:
Diego Pennino,
Maurizio Pizzonia,
Andrea Vitaletti,
Marco Zecchini
Abstract:
In many applications, identity management (IdM) is used to associate a subject public key with an endpoint at which the subject can be contacted (telephone number, email, etc.). In decentralized applications based on distributed ledger technologies (DLTes), it is desirable for the IdM to be decentralized as well. Currently, endpoints are either verified by who needs it, which is impractical in DLT…
▽ More
In many applications, identity management (IdM) is used to associate a subject public key with an endpoint at which the subject can be contacted (telephone number, email, etc.). In decentralized applications based on distributed ledger technologies (DLTes), it is desirable for the IdM to be decentralized as well. Currently, endpoints are either verified by who needs it, which is impractical in DLT-based applications, or by a centralized authority, which contrasts with the spirit of DLTes. In this paper, we show two DLT-based protocols to prove the association between a subject and an endpoint in a decentralized manner, contributing in filling the gap of the current IdM approaches with respect to decentralization. Our protocols are compatible with a wide variety of endpoints. We analyze the security of our protocols and evaluate their performance and cost against the common approaches.
△ Less
Submitted 2 May, 2020;
originally announced May 2020.
-
Overlay Indexes: Efficiently Supporting Aggregate Range Queries and Authenticated Data Structures in Off-the-Shelf Databases
Authors:
Diego Pennino,
Maurizio Pizzonia,
Alessio Papi
Abstract:
Commercial off-the-shelf DataBase Management Systems (DBMSes) are highly optimized to process a wide range of queries by means of carefully designed indexing and query planning. However, many aggregate range queries are usually performed by DBMSes using sequential scans, and certain needs, like storing Authenticated Data Structures (ADS), are not supported at all. Theoretically, these needs could…
▽ More
Commercial off-the-shelf DataBase Management Systems (DBMSes) are highly optimized to process a wide range of queries by means of carefully designed indexing and query planning. However, many aggregate range queries are usually performed by DBMSes using sequential scans, and certain needs, like storing Authenticated Data Structures (ADS), are not supported at all. Theoretically, these needs could be efficiently fulfilled adopting specific kinds of indexing, which however are normally ruled-out in DBMSes design.
We introduce the concept of overlay index: an index that is meant to be stored in a standard database, alongside regular data and managed by regular software, to complement DBMS capabilities. We show a data structure, that we call DB-tree, that realizes an overlay index to support a wide range of custom aggregate range queries as well as ADSes, efficiently. All DB-trees operations can be performed by executing a small number of queries to the DBMS, that can be issued in parallel in one or two query rounds, and involves a logarithmic amount of data. We experimentally evaluate the efficiency of DB-trees showing that our approach is effective, especially if data updates are limited.
△ Less
Submitted 25 October, 2019;
originally announced October 2019.
-
Blockchains Meet Distributed Hash Tables: Decoupling Validation from State Storage
Authors:
Matteo Bernardini,
Diego Pennino,
Maurizio Pizzonia
Abstract:
The first obstacle that regular users encounter when setting up a node for a public blockchain is the time taken for downloading all the data needed for the node to start operating correctly. In fact, this may last from hours to weeks for the major networks. Our contribution is twofold. Firstly, we show a design that enables mining and validation of new blocks kee** only a very small state. Seco…
▽ More
The first obstacle that regular users encounter when setting up a node for a public blockchain is the time taken for downloading all the data needed for the node to start operating correctly. In fact, this may last from hours to weeks for the major networks. Our contribution is twofold. Firstly, we show a design that enables mining and validation of new blocks kee** only a very small state. Secondly, we show that it is possible to store the state of the blockchain in a distributed hash table obtaining a wide spectrum of trade-offs between storage committed by the nodes and replication factor. Our proposal is independent from the consensus algorithm adopted, and copes well with transactions that involve smart contracts.
△ Less
Submitted 7 March, 2019;
originally announced April 2019.
-
USBCaptchaIn: Preventing (Un)Conventional Attacks from Promiscuously Used USB Devices in Industrial Control Systems
Authors:
Federico Griscioli,
Maurizio Pizzonia
Abstract:
Industrial Control Systems (ICS) are sensible targets for high profile attackers and advanced persistent threats, which are known to exploit USB thumb drives as an effective spreading vector. In ICSes, thumb drives are widely used to transfer files among disconnected systems and represent a serious security risks, since, they may be promiscuously used in both critical and regular systems. The thre…
▽ More
Industrial Control Systems (ICS) are sensible targets for high profile attackers and advanced persistent threats, which are known to exploit USB thumb drives as an effective spreading vector. In ICSes, thumb drives are widely used to transfer files among disconnected systems and represent a serious security risks, since, they may be promiscuously used in both critical and regular systems. The threats come both from malware hidden in files stored in the thumb drives and from BadUSB attacks [16]. BadUSB leverages the modification of firmware of USB devices in order to mimic the behaviour of a keyboard and send malicious commands to the host. We present a solution that allows a promiscuous use of USB thumbs drives while protecting critical machines from malware, that spread by regular file infection or by firmware infection. The main component of the architecture we propose is an hardware, called USBCaptchaIn, intended to be in the middle between a critical machine and all USB devices. We do not require users to change the way they use thumb drives. To avoid human-errors, we do not require users to take any decision. The proposed approach is highly compatible with already deployed products of a ICS environment and proactively blocks malware before they reach their targets. We describe our solution, provide a thorough analysis of the security of our approach in the ICS context, and report the informal feedback of some experts regarding our first prototypes.
△ Less
Submitted 16 March, 2019; v1 submitted 11 October, 2018;
originally announced October 2018.
-
Leveraging SDN to Monitor Critical Infrastricture Networks in a Smarter Way
Authors:
Roberto di Lallo,
Federico Griscioli,
Gabriele Lospoto,
Habib Mostafaei,
Maurizio Pizzonia,
Massimo Rimondini
Abstract:
In critical infrastructures, communication networks are used to exchange vital data among elements of Industrial Control Systems (ICSes). Due to the criticality of such systems and the increase of the cybersecurity risks in these contexts, best practices recommend the adoption of Intrusion Detection Systems (IDSes) as monitoring facilities. The choice of the positions of IDSes is crucial to monito…
▽ More
In critical infrastructures, communication networks are used to exchange vital data among elements of Industrial Control Systems (ICSes). Due to the criticality of such systems and the increase of the cybersecurity risks in these contexts, best practices recommend the adoption of Intrusion Detection Systems (IDSes) as monitoring facilities. The choice of the positions of IDSes is crucial to monitor as many streams of data traffic as possible. This is especially true for the traffic patterns of ICS networks, mostly confined in many subnetworks, which are geographically distributed and largely autonomous. We introduce a methodology and a software architecture that allow an ICS operator to use the spare bandwidth that might be available in over-provisioned networks to forward replicas of traffic streams towards a single IDS placed at an arbitrary location. We leverage certain characteristics of ICS networks, like stability of topology and bandwidth needs predictability, and make use of the Software-Defined Networking (SDN) paradigm. We fulfill strict requirements about packet loss, for both functional and security aspects. Finally, we evaluate our approach on network topologies derived from real networks.
△ Less
Submitted 16 January, 2017;
originally announced January 2017.
-
Mining Network Events using Traceroute Empathy
Authors:
Marco Di Bartolomeo,
Valentino Di Donato,
Maurizio Pizzonia,
Claudio Squarcella,
Massimo Rimondini
Abstract:
In the never-ending quest for tools that enable an ISP to smooth troubleshooting and improve awareness of network behavior, very much effort has been devoted in the collection of data by active and passive measurement at the data plane and at the control plane level. Exploitation of collected data has been mostly focused on anomaly detection and on root-cause analysis. Our objective is somewhat in…
▽ More
In the never-ending quest for tools that enable an ISP to smooth troubleshooting and improve awareness of network behavior, very much effort has been devoted in the collection of data by active and passive measurement at the data plane and at the control plane level. Exploitation of collected data has been mostly focused on anomaly detection and on root-cause analysis. Our objective is somewhat in the middle. We consider traceroutes collected by a network of probes and aim at introducing a practically applicable methodology to quickly spot measurements that are related to high-impact events happened in the network. Such filtering process eases further in- depth human-based analysis, for example with visual tools which are effective only when handling a limited amount of data. We introduce the empathy relation between traceroutes as the cornerstone of our formal characterization of the traceroutes related to a network event. Based on this model, we describe an algorithm that finds traceroutes related to high-impact events in an arbitrary set of measurements. Evidence of the effectiveness of our approach is given by experimental results produced on real-world data.
△ Less
Submitted 8 September, 2015; v1 submitted 12 December, 2014;
originally announced December 2014.
-
Object-Oriented Design of Graph Oriented Data Structures
Authors:
Maurizio Pizzonia,
Giuseppe Di Battista
Abstract:
Applied research in graph algorithms and combinatorial structures needs comprehensive and versatile software libraries. However, the design and the implementation of flexible libraries are challenging activities. Among the other problems involved in such a difficult field, a very special role is played by graph classification issues.
We propose new techniques devised to help the designer and t…
▽ More
Applied research in graph algorithms and combinatorial structures needs comprehensive and versatile software libraries. However, the design and the implementation of flexible libraries are challenging activities. Among the other problems involved in such a difficult field, a very special role is played by graph classification issues.
We propose new techniques devised to help the designer and the programmer in the development activities. Such techniques are especially suited for dealing with graph classification problems and rely on an extension of the usual object-oriented paradigm. In order to support the usage of our approach, we devised an extension of the C++ programming language and implemented the corresponding pre-compiler.
△ Less
Submitted 8 October, 1998;
originally announced October 1998.