While smart contract cryptocurrencies are currently booming, industries are still hesitant to explore new opportunities with this technology. This hesitation origins in the transparency aspect of the underlying blockchain technology. A blockchain is a distributed ledger that records transactions in blocks and links them to a chain, before reaching consensus on the order of the blocks by the participating parties (i.e., nodes). As such, data stored in public (i.e., permissionless) blockchains is openly accessible, which is a major concern for companies. In case of smart contracts, it is the transaction protocol of the contract that is stored on the blockchain, which will execute the terms of the contract once all conditions are satisfied. By deploying smart contracts using traditional implementations (e.g., Ethereum), companies expose themselves to the risk that their assets and business interactions become publicly known. The disadvantage of these implementations is that they do not provide any confidentiality guarantees to protect the processed data (i.e., assets and business interactions) or the contract itself. Yet, novel technologies are on the rise, which can assist in overcoming these problems.

Over the past five years, computer processor manufacturers have been increasingly shipping processing units equipped with trusted execution environments (TEE). A TEE is an isolated area on a processor, that is dedicated to executing programs confidentially and rendering them inaccessible from outside the security perimeter even if the operating system itself is compromised. These TEEs have always existed in our smart phones and are now also commonly available in desktop and server-grade machines. By exploiting the confidentiality guarantees of TEEs, data of smart contracts can be processed confidentially while being shielded from the rest of the processor. Once the transactions of the smart contract have been executed, data is encrypted to maintain critical information confidential and stored on the blockchain. Never are assets and business interactions exposed publicly while being processed by these confidential smart contracts. However, TEEs should not be used in general to shield blockchain technologies. In particular with cryptocurrencies relying on non-final consensus, such as proof-of-work (PoW) or proof-of-stake (PoS) used in Bitcoin and Ethereum respectively, TEEs are susceptible to a particular type of security vulnerabilities. Therefore, TEEs are best combined with blockchain technologies relying on final consensus (e.g., Byzantine fault tolerance or quorum) such as Hyperledger Fabric or Microsoft’s Confidential Consortium Framework. A major advantage of these final consensus protocols is their strict consistency guarantee, which reduces computational complexity and energy requirements, that have become critical problems for Bitcoin and Ethereum and are contributing to today’s global shortage on computing devices.

Hyperledger Fabric Private Chaincode and TZ4Fabric are two research attempts which isolate the smart contract execution to the TEE, specifically for the open source Hyperledger Fabric blockchain framework. These solutions demonstrate that confidential smart contracts, i.e., smart contracts exploiting TEEs, are practical and most importantly resilient to a wide range of cyberattacks. TZ4Fabric is a prototype developed in joint collaboration at the complex systems research group at the University of Neuchâtel, which enables specifically Internet of Things (IoT) and mobile devices to execute confidential smart contracts using the ARM TrustZone TEE. With the introduction of confidential smart contracts, companies are provided with new opportunities and additional security guarantees over current smart contract technologies. Whether the legal status of (confidential) smart contracts will find global acceptance for enabling national and international novel digital business relations remains an open question.

Auteur(s) de cette contribution :

Page Web | Autres publications

PhD student at the Complex Systems research group of the Computer Science department at the University of Neuchâtel. I am researching and developing solutions around the security and energy efficiency of distributed systems, including blockchains.