In spite of its impressive capability of enabling an unknown and large set of participants to agree on the system state, blockchains suffer from various limitations, among which some of them will durably become a major impediment for services leveraging blockchains. BC4SSI will focus on four of theses scientific locks in order to deploy a public SSI that is usable by anyone with a classical smartphone allowing users to interact with everyday services. The addressed scientific locks and recommendation are numbered according to the Direction Générale des Entreprises report.
Scientific lock 1: Alternatives to PoW security proofs PoW is the mechanism employed in the seminal
blockchains (e.g., Bitcoin, Ethereum). It relies on partial hash inversions to prove that computation was done, and thus elect a leader in charge of the block creation. It requires an exhaustive search of a valid nonce to match the dedicated target, the target being regularly adapted with respect to the global system computation power. As a consequence, PoW handles the system dynamicity and does not rely on synchrony assumptions. However, PoW development has lead to an arms race, and it is now impossible to mine a block in Bitcoin with commodity hardware. Ethereum PoW was initially designed to be memory-hard and thus ASIC-resistant, but prevent smartphones from mining in the mean time. Alternatives to PoW have been studied, but unfortunately, these options require stronger assumptions on the distributed system. For instance, PoS relies on stronger synchrony assumption: time is divided into rounds and
the system will create a snapshot of participants to assign block sequence creation to participants from this snapshot. Finally, Byzantine state machine replication requires a known committee and synchrony assumptions while having a tremendous cost in terms of communications. Note that some approaches were proposed to circumvent the necessity of a known committee in the context of cryptocurrencies.
Scientific lock 2: Lightweight replication Current blockchain designs leverage a continuous block appending process to update the system state. This design allows any participant to verify the integrity of the given blockchain by checking the validity of whole sequence of transactions. Due to this design, storage requirements increase steadily, depending on inter-block generation time and block size. As a consequence, Blockchain protocols can not be executed on classical smartphones. This constant growth will push more and more participants out of the system and will jeopardize blockchain initial promise: being totally decentralized, without trusted third party. Some recent approaches have recently emerged, but are still limited to constant computational power systems.
Scientific lock 7: Scalability Scalability refers to the ability of a system to self-adapts to the variation of demand and population. While the variation of population is handled at security proof level (recall for instance that PoW adapts its target to the system computational power), a major impediment of current blockchains lies in their poor performances, in particular in their poor throughput. Three main approaches exist to handle scalability: Layer 2, sharding and sidechains. Layer 2 approaches refer to an additional protocol were some communication are performed off-chain in a peer to peer way and the result is published in the chain. Sharding refers to the tessellation of validation of new blocks among participants gathered into committees or on several subchains. Finally, subchains refer to dedicated chains to handle specific transactions. It requires complex protocols to handle the interconnection of these chains. Scalability issues have a strong impact on transaction confirmation time and price of transaction
processing. In the context of SSI, transactions fees will prevent users to adopt such systems.
Scientific lock 8: Energy consumption Blockchain-based systems are often criticized for their energy consumption. Even if there is no real consensus on the model and estimation of the energy consumption of these systems, it is easy to pinpoint the elements involved in this energy consumption. On the one hand, the chosen security proof has a strong impact. In case of PoW, due to the nature of the algorithm, the vast majority of the computation is useless, leading to a tremendous waste of energy. However, other security proofs also imply energy consumption, for instance, PoS requires participants to stay online to be selected as block creator. On the other hand, the continuous and full verification of the system state by all participants (miners or not) also consumes a large amount of energy. Approaches leveraging succinct non-interactive arguments of knowledge (SNARKs) seem to be interesting to drastically reduce
energy consumption, along with alternatives to PoW.