IoT Firmware Update via Trusted Execution Environment Isolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing firmware update methods for IoT devices often result in significant downtime, lack of security, and inability to efficiently roll back to previous versions, especially in cases of errors or vulnerabilities, which can lead to damage from attacks.
Innovation Solution
A reliable firmware update system utilizing the Trusted Execution Environment (TEE) with SoC Security Extensions, where updates are applied to a cloned execution environment, allowing for continuous monitoring and quick restoration, and enabling rollback to previous versions, with post-update validation and minimal allowed firmware versions to enhance security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional firmware update methods are used, then firmware can be updated, but device downtime increases and security is compromised
Solution Approach 1:
The system segments the firmware update process into distinct phases: validation phase (where the new firmware is tested in a virtualized environment) and activation phase (where the validated firmware is switched to). This segmentation allows security validation to occur without requiring full device downtime, as the validation happens in parallel in a virtualized stage execution environment while the production environment remains operational.
Solution Approach 2:
The system performs preliminary validation of the new firmware in a virtualized stage execution environment before activating it in the production environment. This preliminary action includes running extensive tests and security validations in advance, so that when the firmware is ready for deployment, the actual switch to production can happen quickly with minimal downtime, while security has already been verified.
2Productivity
If firmware updates are applied directly to the production environment, then updates are implemented quickly, but security vulnerabilities and errors can cause device failure
Solution Approach 1:
The system introduces a virtualized stage execution environment as an intermediary between firmware development and production deployment. This intermediary environment allows extensive testing and validation to occur without affecting the production system. The platform module acts as a mediator that manages the transition from stage to production, ensuring that only validated firmware reaches the production environment, thus maintaining both speed and reliability.
3Reliability
If extensive validation tests are performed before firmware deployment, then security is improved, but update time increases
Solution Approach 1:
The system creates a virtualized copy of the execution environment (stage execution environment) that replicates the production environment's characteristics. This copying allows validation tests to run in parallel with production operations rather than sequentially. The virtualized copy provides a realistic testing ground without consuming physical device resources that would cause downtime, thus maintaining security validation while minimizing time loss.
4Ease of repair
If rollback capability is implemented for firmware updates, then recovery from errors is enabled, but system complexity increases
Solution Approach 1:
The system extracts the complexity of rollback management into a separate platform module that handles version control and environment switching. The core execution environments (stage and production) remain relatively simple, while the platform module provides the sophisticated rollback functionality by managing multiple firmware versions and coordinating switches between them. This extraction reduces the complexity burden on the execution environments themselves.
Data Source
AI summary
A computing system for a secure and reliable firmware update through a verification process, dynamic validation and continuous monitoring for error or failure and speedy correction of Internet of Things (IoT) device operability. The invention uses a Trusted Execution Environment (TEE) for hardware-based isolation of the firmware update, validation and continuous monitoring services. The isolation is performed by hardware System on a Chip (SoC) Security Extensions such as ARM TrustZone or similar technologies on other hardware platforms. The invention therefore comprises Firmware Update Service (FUS), System Validation Service (SMS) and Continuous Monitoring Service (CMS) running in the TEE with dedicated memory and storage, thus providing a trusted configuration management functionality for the operating system (OS) code and applications on IoT devices.Services running in the TEE use both direct (hardware level) and indirect (software agents inside main execution environment (MEE)) methods of control of the MEE. Embodiments of the invention apply all updates to a staging (new) execution environment (SEE) without changing of the MEE.


