What is confidential computing and why should I care?

Introduction

Cloud computing is widely used by individuals and organisations alike. It allows seamless data access across multiple devices, collaborative work and centralised data storage. However, using the cloud means a compromise in terms of data privacy, control over data placement and data portability across cloud providers. While some of the challenges have promising solutions, these promises remain unfulfilled: despite strict administrative controls by cloud providers, there are still ways to access the processed data; cloud provider end-user agreements explicitly inform that data can be processed in third-party countries; finally, the frustrating grip of cloud provider lock-in is evident to anyone who tried to export and migrate all their data from a cloud service.

New hardware security features and on-going industry standardisation created a novel cloud security paradigm, allowing to create isolated, verifiable, secure, user-controlled trusted execution environments.
This approach drastically reduces the amount of trust required from customers towards cloud providers and opens new capabilities for business exchanges.
To speed up the adoption of better security in cloud computing, several industry actors have started the Confidential Computing Consortium under the Linux Foundation.

Technology

A Trusted Execution Environment (TEE) allows to guarantee protection, confidentiality and integrity of data.

How does it work?

Typically, when setting up a TEE, users can obtain a guarantee (called attestation) proving the that the code and data running in the TEE has not been maliciously modified.
Attestation can in turn be used to prove the security of the service running in the TEE, to the users themselves and other third parties.

TEEs can be created using hardware security features widely available across server platforms, desktops and mobile devices (such as Intel SGX, AMD SEV, IBM PEF, ARM TrustZone).

Applications

At CanaryBit, we see plenty of cases where confidential computing can make a difference.
Confidential computing is not only about "more security": it allows to reduce costs; simplify audit and compliance reporting;
and finally, offer an alternative in the trade-off between privacy and convenience.
Consider some benefits, such as:

  1. Lower cost to enforce, demonstrate and audit data security compliance.
    Security compliance can be automated to a very large degree.
    It allows to reduce the time (and cost) to verify the security of the computing infrastructure.
  2. Secure enclaves allow businesses to combine and process data from several sources, potentially even without getting access to the raw data.
    This is much more efficient compared to other, cryptographic solutions (such as multiparty computation).
  3. Lower cost to process data in a secure computing environment.
    Instead of dedicating costly efforts to set up and operate a secure data processing environment, organisations can process security-sensitive data in enclaves on public clouds.

What about individuals?

End-users can set up TEEs and run cloud services inside such protected environments and keep full control over data, both at rest and while being processed.
Examples of user-controlled cloud services include cryptocurrency wallets, password managers, personal digital health record archives and finance management tools.

Next

In the next posts, we will first review the on-going activity in the Confidential Computing Consortium and continue with a more detailed overview of the technology behind confidential computing and trusted execution environments.

Stay tuned!

by Nicolae Paladi

by Nicolae Paladi

Nicolae holds a PhD in computer security from Lund University. His research focus is primarily cloud computing security - including trusted computing, confidential computing and security of software-defined networks.