Gabina Bianchi, PhD Student, IMDEA Software Institute
A key aspect of the adoption of blockchain technologies is their performance. Consequently, many techniques to improve the scalability of blockchains are being developed. Current blockchains require consensus algorithms to guarantee that transactions, batched as blocks, are totally ordered. Imposing a total order, although it is safe, may be unnecessary for some applications. A promising approach to improve scalability is Setchain, a distributed concurrent data type that implements Byzantine tolerant distributed grown-only sets with barriers (called epochs). Setchain relaxes the total order requirement, and thus, can achieve higher throughput and scalability. In this work in progress, we propose a family of real-world Setchain implementations built on top of the Tendermint blockchain application platform. Our main contribution is Haschain, which exploits the compression power of hash functions to reduce the communication necessary during broadcasts and consensus, communicating a fixed-sized hash instead of hundreds or thousands of elements. The prize to pay is an additional distributed algorithm to obtain the set of elements from a hash, guaranteeing tolerance against Byzantine servers.