Title: Bridging Virtualization and Trusted Execution: Building a KVM-TEE Mediator for Secure Computing.
Abstract: Trusted Execution Environments (TEEs), such as OP-TEE, utilize ARM TrustZone to secure critical operations. However, their isolation limits them to the host, preventing guests from accessing them directly. The unique design of KVM poses challenges in bridging the non-secure guest to the secure world, similar to how Xen achieves this. In this implementation, we will explore the solution that exposes the secure world to the guest and discuss the challenges involved in implementing it.
Outline:
+ Introduction to ARM TrustZone.
+ Design of KVM.
+ Does OP-TEE support NS-Virtualization?
+ Why guests cannot interact with the secure world?
+ Architecting the mediator.
+ Challenges with memory shared across the two worlds.
+ Issues with synchronisation.
+ Eliminating host dependance (WiP).
+ Testing.
Note:
The primary goal of this discussion is to gather feedback before considering broader adoption. By presenting this implementation, I aim to seek further input on how the solution can be implemented in a better, more optimal way. Additionally, this solution may be of interest to listeners who are exploring similar approaches.
About the presenter:
Yuvraj Sakshith is an undergraduate engineering student at PESIT Bangalore with a passion for kernel development, particularly on ARM64 platforms. His interests span virtualization, memory management, and confidential computing.
Preference: Regular Talk (30 minutes)