Skip to content

Enhance DPE TCBInfo to include Vendor/Model Information for RATS Compliance #2395

@fdamato

Description

@fdamato

Enhance DPE TCBInfo to include Vendor/Model Information for RATS Compliance

Problem Statement

The current Caliptra DICE/DPE TCBInfo implementation lacks critical information required for proper environment disambiguation and RATS (Remote ATtestation procedureS) compliance:

  1. Missing Vendor/Model Name - Critical for unique environment identification
  2. Limited Type Field - The current 4-byte type value in TCBInfo is insufficient for uniquely identifying different environments, creating potential collisions between distinct SoC implementations
  3. SVN Not Consumed - While SVN is already available through DPE DeriveContext and Stash APIs, it's not being included in TCBInfo generation

RATS Requirements Impact

According to the CoRIM (Concise Reference Integrity Manifest) specification, each environment must be universally unique. The current implementation fails to meet this requirement due to:

  • Insufficient entropy in the type field for global uniqueness
  • Lack of vendor-specific identification
  • Missing model information that would distinguish between different SoC variants

Proposed Solution for Caliptra 2.x

API Enhancement

Extend the LoadFW API to accept additional parameters:

  • Vendor Name (string identifier)
  • Model Name (string identifier)

Implementation Approach

  1. SoC Manager Integration: Retrieve vendor and model information from the SoC Manager during firmware loading
  2. DCCM Storage: Store the vendor/model metadata in DCCM for persistence across the attestation lifecycle
  3. SVN Integration: Consume SVN values already provided through DPE DeriveContext and Stash APIs
  4. TCBInfo Generation: Include vendor/model/SVN information during TCBInfo generation for DPE measurements

Metadata

Metadata

Labels

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions