Secure Element Firmware Updates Using Gateway-Based Ephemeral Keys
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Updating firmware in secure elements requires significant processing and storage resources from remote servers, which also need to manage secure key materials, leading to inefficiencies and increased security risks.
Innovation Solution
Implementing a processing element on a gateway device to locally encrypt and sign firmware chunks using ephemeral session-specific key material, reducing the burden on remote servers by performing these tasks locally.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If remote servers perform firmware encryption and signing operations, then firmware update security is maintained, but server processing and storage resources are significantly consumed
Solution Approach 1:
The patent extracts the computationally intensive encryption and signing operations from the remote server and relocates them to a local processing element on the gateway device. The server only needs to provide the firmware binary and verify the processing element's authentication, while the processing element handles the resource-heavy cryptographic operations locally using ephemeral session keys.
Solution Approach 2:
The processing element acts as an intermediary between the remote server and the secure element. It receives firmware from the server, performs local encryption and signing using ephemeral keys, and then transfers the processed firmware to the secure element. This intermediary role offloads server resources while maintaining security through the processing element's authentication mechanisms.
2Reliability
If remote servers store and manage secure key materials, then firmware authentication is enabled, but security risks and resource requirements increase
Solution Approach 1:
The patent extracts sensitive key materials from the remote server environment and places them in a security enclave within the processing element on the gateway device. The server stores only a public key or authentication token, while the private key and sensitive cryptographic materials remain securely stored and processed locally in the hardware-backed security enclave, eliminating the security risks of centralized key storage on servers.
Solution Approach 2:
The processing element's security enclave performs self-service by locally generating, storing, and managing ephemeral session keys without requiring the server to handle sensitive key materials. The enclave autonomously performs cryptographic operations using its own secure key storage, reducing the attack surface and security management burden on the server infrastructure.
3Productivity
If firmware is divided into multiple data chunks for transmission, then bandwidth efficiency is improved, but processing complexity increases
Solution Approach 1:
The patent segments the firmware binary into multiple data chunks for transmission from the server to the processing element. Each chunk is independently authenticated and encrypted using the same ephemeral session keys, allowing for efficient bandwidth utilization and the ability to resume interrupted transfers without requiring retransmission of the entire firmware image.
Solution Approach 2:
The processing element performs preliminary authentication of each firmware chunk using the ephemeral session keys before reassembling the complete firmware image. This preliminary verification ensures that each segment is authentic and unmodified, maintaining security while enabling efficient chunked transmission and recovery from transmission errors.
Data Source
AI summary
This disclosure describes techniques for updating firmware of a secure element. The techniques include operations comprising: receiving, by a gateway device, from a remote source, a firmware file; receiving, by a processing element implemented on the gateway device, ephemeral session specific key material for a first secure element implemented on the gateway device; dividing the firmware file into a plurality of data chunks; applying, by the processing element, the ephemeral session specific key material to a first data chunk of the plurality of data chunks to generate a first data packet; and sending, by the processing element, the first data packet to the first secure element.


