BMC Trust Verification via Time-Counter Encryption
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Custom BMC firmware stacks in information handling systems are vulnerable to security breaches due to uncontrolled development and deployment, leading to potential damage to hardware and loss of trust in non-custom code segments, as they can be maliciously modified, compromising the integrity and security of the system.
Innovation Solution
A trust verification system is implemented using a secure communication channel between trusted and untrusted domains within the baseboard management controller (BMC), where an assistance application monitors the custom BMC firmware stack and verifies the integrity of non-custom code segments by encrypting communications with a time counter-based encryption key, ensuring that only trusted code executes and preventing illicit modifications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If custom BMC firmware stacks are allowed to be developed and deployed freely, then system functionality and adaptability are improved, but security and integrity are compromised due to uncontrolled development and potential malicious modifications
Solution Approach 1:
The BMC is divided into trusted and untrusted domains, with custom firmware running in the untrusted domain while critical system code runs in the trusted domain. This segmentation allows custom functionality to be added without compromising the integrity of core system operations.
Solution Approach 2:
An assistance application acts as an intermediary between the untrusted custom firmware and the trusted domain. This intermediary monitors and verifies the integrity of custom firmware, allowing adaptability while maintaining security through a mediating layer.
2Reliability
If encryption is implemented using traditional static keys, then communication security is improved, but security is weakened over time due to key reuse and potential compromise
Solution Approach 1:
The encryption key is made dynamic by incorporating a time counter value into its generation. The key changes over time, preventing reuse and maintaining security even if a key is compromised at one point. This is achieved through the encryption key comprising a function of a time counter value.
Solution Approach 2:
The encryption parameters are changed continuously by using a time-dependent key derivation function. This transforms the static key into a dynamic parameter that evolves over time, enhancing security against replay attacks and key compromise.
Data Source
AI summary
An Information Handling System (IHS) includes multiple hardware devices, and a baseboard Management Controller (BMC) in communication with the plurality of hardware devices. The BMC includes instructions for executing an assistance application (APP) in an untrusted domain of the BMC. The assistance APP configured to monitor a custom BMC firmware stack executed in the untrusted domain. The instructions are further executed to verify an integrity of the assistance APP from a trusted domain of the BMC by encrypting communications between the trusted and untrusted domains using an encryption key that comprises a function of a time counter value.


