BMC SPDM Measurement Management for Runtime Firmware Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing firmware measurement techniques struggle to maintain integrity and trustworthiness in dynamic scenarios where firmware components are updated or added at runtime, as traditional approaches rely on static measurements that do not account for changes.
Innovation Solution
Implementing a mechanism to dynamically update Secure Protocol and Data Model (SPDM) measurement parameters by using a secure storage partition (RPMB) to store and manage both old and new measurements, ensuring trust and security during firmware updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If static firmware measurement techniques are used, then measurement simplicity is maintained, but system adaptability during runtime updates deteriorates
Solution Approach 1:
The patent implements dynamic measurement management by transitioning from static to dynamic measurement techniques. The BMC now captures measurements at multiple points in time (before, during, and after firmware updates) and maintains these measurements dynamically in RPMB storage. This allows the system to adapt to runtime firmware changes while maintaining measurement integrity, directly resolving the contradiction between adaptability and complexity.
Solution Approach 2:
The patent applies preliminary action by capturing firmware measurements before updates occur and storing them in RPMB for later comparison. The system proactively records the baseline measurement state before any changes happen, enabling subsequent verification of update integrity. This preliminary measurement capture enables the system to adapt to changes while maintaining a reference point for validation.
2Adaptability or versatility
If firmware components are updated at runtime, then system adaptability improves, but measurement integrity and trustworthiness deteriorate
Solution Approach 1:
The patent introduces RPMB (Replay Protected Memory Block) as an intermediary storage mechanism between the firmware update process and the measurement verification process. RPMB acts as a secure intermediary that captures, stores, and protects measurement data throughout the update lifecycle. This intermediary structure enables runtime updates while maintaining measurement trustworthiness by providing a secure, tamper-proof storage layer that preserves measurement integrity even as firmware changes.
Solution Approach 2:
The patent implements feedback mechanisms by capturing measurements before and after firmware updates, then comparing these measurements to verify update integrity. The system provides feedback about the impact of updates on measurement values, allowing verification that updates did not introduce unauthorized changes. This feedback loop maintains measurement trustworthiness while enabling adaptive runtime updates.
3Measurement precision
If multiple firmware measurements are stored and managed, then measurement accuracy improves, but storage requirements and processing complexity increase
Solution Approach 1:
The patent applies segmentation by dividing the firmware measurement management into distinct temporal segments (pre-update measurements, post-update measurements) and storing them separately in RPMB. This segmentation organizes the measurement data logically, allowing the system to maintain measurement accuracy by tracking changes over time while managing storage requirements through structured organization rather than monolithic storage.
Data Source
AI summary
In an aspect of the disclosure, a method, a computer-readable medium, and an apparatus are provided. The apparatus may be a BMC. The BMC receives, from a requester, a request for a measurement of a firmware component of the BMC. The BMC obtains a current measurement of the firmware component. The BMC retrieves a previous measurement of the firmware component. The BMC sends, to the requester, a response containing the current measurement and the previous measurement of the firmware component.


