Skip to content

Conversation

@Sukuna0007Abhi
Copy link
Contributor

@Sukuna0007Abhi Sukuna0007Abhi commented Sep 21, 2025

Summary

This PR implements the PSA profile refresh for issue #215 according to the draft-fdb-rats-psa-endorsements-08 specification. The implementation provides complete PSA endorsement support with proper CBOR/JSON serialization and comprehensive validation.

Changes Made

Core Implementation

  • Added PSA profile with URI tag:arm.com,2025:psa#1.0.0
  • Implemented PSA software component measurement structures
  • Created PSA certification claims support with PSACertNum validation
  • Added PSA software relationships for lifecycle modeling (updates/patches)
  • Registered PSA software component measurement key type using CBOR tag 800

Technical Features

  • Complete CBOR and JSON marshaling support for all PSA structures
  • Comprehensive input validation and error handling
  • Integration with existing CoRIM/CoMID measurement systems
  • Backward compatibility with existing codebase

Documentation Updates

  • Updated PSA reference value documentation to use correct draft specification
  • Added comprehensive examples demonstrating all PSA profile features
  • Included detailed test scenarios and edge cases

Files Added

  • comid/psa/psa_profile.go - PSA profile registration and core functionality
  • comid/psa/psa_software_component.go - PSA software component structures
  • comid/psa/psa_software_component_key.go - CBOR key type implementation
  • comid/psa/psa_software_relations.go - PSA lifecycle relationship modeling
  • comid/psa/psa_profile_test.go - Core functionality tests
  • comid/psa/psa_software_component_key_test.go - Key type validation tests
  • comid/psa/example_psa_profile_test.go - Comprehensive usage examples

Files Modified

  • comid/extensions.go - Added PSA extension registration
  • corim/profiles.go - Integrated PSA profile with existing system
  • comid/psareferencevalue.go - Updated draft specification reference

Testing

  • All existing tests continue to pass
  • New comprehensive test suite covers all PSA functionality
  • Validation testing for edge cases and error conditions
  • CBOR/JSON round-trip serialization testing
  • Example usage demonstrations

Compliance

  • Follows draft-fdb-rats-psa-endorsements-08 specification
  • Maintains backward compatibility
  • Proper error handling and validation
  • Consistent with existing codebase patterns

Resolves #215

Ready for Review sir @thomas-fossati sir @setrofim sir @yogeshbdeshpande

…ndorsements-08

- Add complete PSA profile implementation with URI tag:arm.com,2025:psa#1.0.0
- Implement PSA software component measurement structures with validation
- Add PSA certification claims support (PSACertNum) with format validation
- Create PSA software relationships for lifecycle modeling (updates/patches)
- Register PSA software component measurement key type (CBOR tag 800)
- Add comprehensive CBOR/JSON marshaling support for all PSA structures
- Include complete test coverage with validation scenarios and edge cases
- Provide comprehensive examples demonstrating all PSA profile features
- Integrate with existing CoRIM/CoMID measurement and extension systems

Resolves veraison#215

Signed-off-by: Sukuna0007Abhi <appsonly310@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refresh PSA profile

1 participant