Mixed-Trust Computing for Real-Time Systems
Title | Mixed-Trust Computing for Real-Time Systems |
Publication Type | Conference Paper |
Year of Publication | 2019 |
Authors | Niz, D. de, Andersson, B., Klein, M., Lehoczky, J., Vasudevan, A., Kim, H., Moreno, G. |
Conference Name | 2019 IEEE 25th International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA) |
Date Published | Aug. 2019 |
Publisher | IEEE |
ISBN Number | 978-1-7281-3197-9 |
Keywords | complex cyber-physical systems, Complexity theory, Computational modeling, Computing Theory, CPS critical functions, drone application, framework design, Human Behavior, human factors, program verification, pubcrawl, Raspberry Pi 3 implementation, real-time mixed-trust computing framework, Real-time Systems, Runtime, Safety, safety-critical autonomous features, safety-critical software, scheduling, Task Analysis, Timing, timing guarantees, traditional verification methods, Trust, Trusted Computing, trusted hypervisor, untrusted components, virtual machines, VM hosting |
Abstract | Verifying complex Cyber-Physical Systems (CPS) is increasingly important given the push to deploy safety-critical autonomous features. Unfortunately, traditional verification methods do not scale to the complexity of these systems and do not provide systematic methods to protect verified properties when not all the components can be verified. To address these challenges, this paper proposes a real-time mixed-trust computing framework that combines verification and protection. The framework introduces a new task model, where an application task can have both an untrusted and a trusted part. The untrusted part allows complex computations supported by a full OS with a realtime scheduler running in a VM hosted by a trusted hypervisor. The trusted part is executed by another scheduler within the hypervisor and is thus protected from the untrusted part. If the untrusted part fails to finish by a specific time, the trusted part is activated to preserve safety (e.g., prevent a crash) including its timing guarantees. This framework is the first allowing the use of untrusted components for CPS critical functions while preserving logical and timing guarantees, even in the presence of malicious attackers. We present the framework design and implementation along with the schedulability analysis and the coordination protocol between the trusted and untrusted parts. We also present our Raspberry Pi 3 implementation along with experiments showing the behavior of the system under failures of untrusted components, and a drone application to demonstrate its practicality. |
URL | https://ieeexplore.ieee.org/document/8864566 |
DOI | 10.1109/RTCSA.2019.8864566 |
Citation Key | niz_mixed-trust_2019 |
- Runtime
- VM hosting
- virtual machines
- untrusted components
- trusted hypervisor
- Trusted Computing
- trust
- traditional verification methods
- timing guarantees
- timing
- Task Analysis
- scheduling
- safety-critical software
- safety-critical autonomous features
- Safety
- complex cyber-physical systems
- real-time systems
- real-time mixed-trust computing framework
- Raspberry Pi 3 implementation
- pubcrawl
- program verification
- Human Factors
- Human behavior
- framework design
- drone application
- CPS critical functions
- Computing Theory
- Computational modeling
- Complexity theory