Exploring Enclaves
August 4, 2019
July 25 was a gorgeous summer day in San Francisco Bay Area. It’s also when the Keystone Enclave team hosted the 2019 Open-Source Enclave Workshop at University of California, Berkeley. Industry and academic luminaries representing 23 organizations gathered at Wozniak Lounge, Soda Hall to deliver 25 talks.
Keystone Enclave is an open-source project for building trusted execution environments (TEE) with secure hardware enclaves, based on the RISC-V architecture. Its goal is to build an open-source secure hardware enclave, accessible to everyone in industry and academia.
Professor Ahmad-Reza Sadeghi from TU Darmstadt’s presentation was “HardFails: More Trust in Hardware with RISC-V and Co?” He talked about hardware bugs and looking for bugs with competitions. He also shared the landscape of trusted computing which artistically showcased Hex Five as the only commercial RISC- V TEE.
Thank you Professor Ahmad for the analysis!
Hex Five Founder Cesare Garlati shared the topic of “A free and open API proposal for a multi zone RISC-V TEE”.
Back in college days, we learnt the traditional compile and link process to create a monolithic image that gets burnt in the device. However, a single image poses a large safety and security risk because it requires the sharing of memory resources. This sharing allows the lateral movement of malware from one sub-system to another, or memory corruption caused by un-safe software. To address these risks, more than ten years ago ARM® invented Trustzone® which divided the embedded image into two worlds: trusted and untrusted. Nevertheless it does not entirely solve the problem because within the trusted world, applications still share resources.
Hex Five proposes MultiZone™ Security. MultiZone is a modern, easy-to-use architecture and methodology. It enables the creation of unlimited number of zones (within the boundaries of system resources). Each zone can optionally communicate with another through a byte stream messaging system — there is no API calling, no sharing of anything. It is impossible to spoof the source of the message. The system architect controls the design of the communications.
Cesare also went over a Hex Five reference design. It showed MultiZone running Linux symmetric processing in one zone, being segregated from other zones that run bare metal applications and a RTOS. Linux is important for many use cases, however it is also a tremendous attack surface. Being able to cage Linux hugely improves the security posture.
The audience participation was enthusiastic! One of the questions was how MultiZone compares to Keystone Enclave. Cesare’s viewpoint is Keystone is a great project — it’s modular, done by very smart team at a top university, and it’s a perfect solution for datacenter – trusted workload deploying on an untrusted platform. MultiZone is complementary. MultiZone should be used to build IoT’s such as satellites, cars where the threat model is the supply chain – when the software stack is supplied by many sources, and trusted stack needs to safely work alongside untrusted ones.
Hex Five has open sourced the MultiZone API on Github to encourage the industry to collaborate to build a next generation TEE.
To learn more:
Cesare’s video
Cesare’s presentation