Reliable and secure firmware update with a dynamic validation for internet of things (IoT) devices
AssigneeGBS Laboratories, LLC
InventorOleksii Surdu
Life of this patent
Estimating the term…
Loading patent…
AssigneeGBS Laboratories, LLC
InventorOleksii Surdu
Estimating the term…
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.
A system to securely perform a firmware update on a computing system, the system comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Applying verification of the received information: received data contents, e.g. message integrity
Updates: using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
At system level: during software upgrading
Error detection or correction of the data by redundancy in operations: generic software techniques for error detection or fault masking
About 10 years of term left · ends 13 Oct 2036 (estimated)
With the growing number of deployed IoT devices, the importance of secure firmware updating is significantly increased. Gartner, Inc. forecasts that 6.4 billion connected things will be in use worldwide in 2016, up 30 percent from 2015, and will reach 20.8 billion by 2020. In 2016, 5.5 million new things will get connected every day.
All these devices need a reliable firmware update system. The functions of many IoT devices, expected to be operational typically at all times, requires a minimal downtime for service tasks, including firmware update. A typical IoT device is also expected to be operational for a long time and may warrant or require many updates over its life. A consumer of an IoT solution needs to be able to receive and have firmware updates implemented for IoT devices to fix security vulnerabilities and firmware errors or add new features. Another important factor is time, especially in case of firmware update error or failure for any reason. The ability to apply a security patch to a large number of devices as fast as possible is critical to prevent and/or reduce damage from error or breach, especially from zero day attacks unlikely to be thwarted by existing security.
The firmware update method and process should be simple and should provide an easy way to roll back to the previous version if for any reason the update is ineffective.
FIG. 1 illustrates an IoT Execution Environments Model in which one or more embodiments of reliable and secure firmware update with a dynamic validation for IoT Devices can be employed.
FIG. 2 illustrates the execution environment model during the firmware update process.
FIG. 3 illustrates TEE Execution Flow of the firmware update process.
Preferred embodiments of the present invention require a hardware-enforced Trusted Execution Environment (TEE). The present invention provides an innovative approach of using SoC Security Extensions to isolate and the protect firmware update system for an IoT device.
Preferred embodiments of the present invention do not put any restrictions on methods of delivery of the firmware updates to a device and can be used with a number of different approaches, including user-provided updates or updates automatically downloaded from the Internet or other networks.
As will be apparent to one having ordinary skill in the art, the present invention is focused on providing a secure and reliable firmware lifecycle management for an IoT device, including firmware update package verification, firmware update with post-update validation, continuous monitoring (health check) and recovery.