Component RIMs¶
Component Reference Integrity Manifests (RIMs) are cryptographically signed data structures that provide a secure baseline of expected firmware and software measurements for hardware components. In other words, a Component RIM is a generic term for an object that holds "golden" expected measurements for a component. During computer attestation, validation services use these trusted manufacturer assertions to verify that a device's actual boot state remains secure, unmodified, and free from compromise.
Note
Compenent RIM processing is currently in progress for HIRS attestation services, but is not fully developed yet.
Component RIMs are similar in purpose to the PC Client RIM, but specifically designed for computer components. Unlike a PC Client RIM which typically exists as a single standardized metadata format - the SWID (Software Identification) tag - Component RIMs come in many different formats and typically use Concise Binary Object Representation (CBOR) encoding and CBOR Object Signing and Encryption (COSE) signatures.
The following table shows the relationship between some of the common formats:
| Encoding | Format | Description |
|---|---|---|
| Traditional XML Encoding (ISO / TCG) | TCG Component RIM SWID |
|
| IETF CoSWID |
|
|
| Modern Concise CBOR Encoding (IETF / RATS) | TCG Component RIM CoSWID |
|
| IETF CoRIM |
|
IETF CoSWID vs TCG Component RIM CoSWID¶
A TCG Component RIM CoSWID is an augmented, specialized flavor of an IETF CoSWID. The IETF CoSWID is the base blueprint: It is an industry-wide, generic CBOR structure designed to define any software or firmware footprint of a component. The TCG CoSWID is the extension: The Trusted Computing Group (TCG) took that exact IETF CoSWID map and used built-in CBOR extension points to add specialized hardware attributes (like specific SPDM platform registers or hardware vendor IDs).
IETF CoRIM Structure¶
Since the CoRIM structure is complex, below is a diagram to help visualize it: