4.GetTargetTspConfigurationResponse.md

December 11, 2024 ยท View on GitHub

4. Test Case for GET_TARGET_TSP_CONFIGURATION_RSP

Case 4.1

Description: TSP responder shall return valid GET_TARGET_TSP_CONFIGURATION_RSP, if it receives a GET_TARGET_TSP_CONFIGURATION.

TestSetup:

  1. Requester -> GET_TARGET_TSP_VERSION {TSPVersion=0x10}
  2. GET_TARGET_TSP_VERSION_RSP <- Responder
  3. Requester -> GET_TARGET_TSP_CAPABILITIES {TSPVersion=0x10}
  4. GET_TARGET_TSP_CAPABILITIES_RSP <- Responder

TestTeardown: None

Steps:

  1. Requester -> GET_TARGET_TSP_CONFIGURATION {TSPVersion=0x10}
  2. TspMessage <- Responder

Assertion 4.1.1: sizeof(TspMessage) == sizeof(GET_TARGET_TSP_CONFIGURATION_RSP)

Assertion 4.1.2: TspMessage.Opcode == GET_TARGET_TSP_CONFIGURATION_RSP

Assertion 4.1.3: TspMessage.TSPVersion == 0x10

Assertion 4.1.4: (TspMessage.MemoryEncryptionFeaturesEnabled & GET_TARGET_TSP_CAPABILITIES_RSP.MemoryEncryptionFeaturesSupported) == TspMessage.MemoryEncryptionFeaturesEnabled

Assertion 4.1.5: (TspMessage.MemoryEncryptionFeaturesEnabled.CKIDBasedEncryption ^ TspMessage.MemoryEncryptionFeaturesEnabled.RangeBasedEncryption) == 1

Assertion 4.1.6: (TspMessage.MemoryEncryptionAlgorithmsSelected & GET_TARGET_TSP_CAPABILITIES_RSP.MemoryEncryptionAlgorithmsSupported) == TspMessage.MemoryEncryptionAlgorithmsSelected

Assertion 4.1.7: (TspMessage.MemoryEncryptionAlgorithmsSelected.AES-XTS-128 ^ TspMessage.MemoryEncryptionAlgorithmsSelected.AES-XTS-256) == 1

Assertion 4.1.8: (TspMessage.TEStateChangeAndAccessControlFeaturesEnabled & GET_TARGET_TSP_CAPABILITIES_RSP.TEStateChangeAndAccessControlFeaturesSupported) == TspMessage.TEStateChangeAndAccessControlFeaturesEnabled

Assertion 4.1.9: (TspMessage.ExplicitOutOfBandTEStateGranularityEnabled & GET_TARGET_TSP_CAPABILITIES_RSP.SupportedExplicitOutOfBandTEStateGranularity) == TspMessage.ExplicitOutOfBandTEStateGranularityEnabled

Assertion 4.1.10: (TspMessage.ConfigurationFeaturesEnabled & GET_TARGET_TSP_CAPABILITIES_RSP.ConfigurationFeaturesSupported & 0x1) == TspMessage.ConfigurationFeaturesEnabled

Assertion 4.1.11: if (TspMessage.MemoryEncryptionFeaturesEnabled.CKIDBaseRequired == 1), then (TspMessage.CKIDBase < 2132^{13}) && ((TspMessage.CKIDBase + TspMessage.NumberOfCKIDs) < 2132^{13})

Assertion 4.1.12: (TspMessage.CurrentTSPState == CONFIG_UNLOCKED) || (TspMessage.CurrentTSPState == CONFIG_LOCKED) || (TspMessage.CurrentTSPState == ERROR)

Assertion 4.1.13: TspMessage.ExplicitInBandTEStateGranularityEntry[0~7] is valid