Distributed ledgers (DLs), also called blockchains, have the potential of transforming the ways individuals and businesses interact. While today a trusted third party, such as a bank, is required to guarantee that transactions among these entities are performed correctly, with DLs it is possible to delegate this task to a distributed computer network that relies on cryptographic operations and sophisticated distributed consensus algorithms to ensure that transactions are recorded durably and in a tamper-free manner. As a result, DLs have the potential to reduce the cost of transactions and the associated latencies dramatically.
However, the adoption of DLs outside of crypto-currency use-cases has been slow partially due to their low performance compared to traditional data management systems. This stems mostly from the constraints and design choices inherited from the first public blockchains, that targeted public, geo-distributed, operation. Today, however, most industry use-cases require permissioned access to the ledger and involve nodes that are geographically close to each other (e.g. in a shipping port). This prompts a redesign of DLs and allows for using various hardware acceleration features to increase their performance.
In the ACCORD project, we aim to increase distributed ledger throughput by at least an order of magnitude, while lowering latencies by a similar factor. To achieve this, we focus on the core component of DL systems, namely, distributed consensus that is used to establish an absolute order of transactions. This ordering operation (service) is typically the main performance bottleneck in DLs. To fully exploit emerging network technologies and to overcome stagnating CPU performance, we will use hardware acceleration (i.e. FPGAs) to offload the steps required by the ordering service. The outcome of this project is a DL design with performance that allows it to be deployed in use-cases in which DLs are inadequate today (e.g. trading).
Fields of science
Call for proposal
See other projects for this call