Hi Abhijai,
Regarding the FIDO conformance test failure "Failed to derive trust for attestation key" during the MakeCredential Response test, particularly for the SELF "packed" attestation (RS256):
This error indicates that the server cannot properly validate the attestation certificate chain provided by the conformance tool's test authenticator against your configured trust sources (the metadata from FidoMetadataService).
While you have imported the test metadata, the issue may be related to one of the following common causes for "packed" attestation:
1. Trust Anchor Configuration: Ensure that the root certificate for the test metadata is correctly loaded and trusted by your FidoMetadataService instance. The test metadata frequently uses specific test root certificates that must be explicitly trusted by the server for these particular conformance tests.
2. Attestation Certificate Format: Verify that the attestation certificate received in the attStmt is being parsed correctly by the Yubico library, especially when dealing with the raw RS256 format specified in the test (ALG_SIGN_RSASSA_PKCSV15_SHA256_RAW).
3. Metadata Cache/Refresh: If the server is caching production metadata, ensure it is completely refreshed or replaced with only the test metadata blob when running the conformance tool.
Since this specific test uses a SELF attestation with "packed" format, the server is expected to:
1. Extract the attestation public key from the authData.
2. Verify the signature in attStmt using the extracted key.
3. Check if the key is trusted, which, in a conformance test environment, means checking against the test metadata.
Please double-check the exact implementation steps for integrating the "Download Test Metadata" files into the Yubico library's MetadataBLOBPayload and FidoMetadataService to ensure all necessary trust anchors are recognized.
Best regards,
Az