| Test Name | oid4vp-1final-wallet-negative-test-required-non-matching-credential |
|---|---|
| Variant | credential_type=eudi_pid, credential_format=sd_jwt_vc, client_id_prefix=x509_hash, request_method=request_uri_signed, vp_profile=haip, response_mode=direct_post.jwt |
| Test ID | 4r0JnCC5fKvhAtE https://localhost.emobix.co.uk:8443/log-detail.html?public=true&log=4r0JnCC5fKvhAtE |
| Created | 2026-11-09T19:16:09.611621497Z |
| Description | OID4VP wallet conformance test for SIROS wallet |
| Test Version | 5.3.4 |
| Test Owner | leifj |
| Plan ID | 73jvLmXG982ZJ https://localhost.emobix.co.uk:8443/plan-detail.html?public=true&plan=73jvLmXG982ZJ |
| Exported From | https://localhost.emobix.co.uk:8443 |
| Exported By | leifj |
| Suite Version | 5.3.4 |
| Exported | 2026-11-09 19:16:35 (UTC) |
| Status: FINISHED Result: PASSED |
| SUCCESS 42 FAILURE 0 WARNING 0 REVIEW 1 INFO 13 |
| 2026-11-09 19:16:09 |
INFO
|
TEST-RUNNER
Test instance 4r0JnCC5fKvhAtE created
|
||||||||||||||||
|
||||||||||||||||||
| 2026-11-09 19:16:09 |
|
CreateDirectPostResponseUri
Created response URI
|
||
|
||||
| 2026-11-09 19:16:09 |
|
SetClientIdToX509Hash
Set client_id to x509 hash
|
||||
|
||||||
| 2026-11-09 19:16:09 |
SUCCESS
|
GetStaticServerConfiguration
Found a static server object
|
||
|
||||
| 2026-11-09 19:16:09 |
SUCCESS
|
CheckAuthorizationEndpointIsValidUri
authorization_endpoint has a valid URI scheme
|
||
|
||||
| 2026-11-09 19:16:09 |
SUCCESS
|
GetStaticClientConfiguration
Found a static client object
|
||||||
|
||||||||
| 2026-11-09 19:16:09 |
SUCCESS
|
OID4VPSetClientIdToIncludeClientIdScheme
Set client id to include the client id scheme
|
||
|
||||
| 2026-11-09 19:16:09 | SUCCESS |
ValidateClientJWKsPrivatePart
Valid client JWKs: keys are valid JSON, contain the required fields, the private/public exponents match and are correctly encoded using unpadded base64url
|
|
|
||
| 2026-11-09 19:16:09 |
SUCCESS
|
CreateClientEncryptionKeyIfMissing
No client encryption key provided in client jwks in configuration so created an encryption key
|
||
|
||||
| 2026-11-09 19:16:09 |
SUCCESS
|
ExtractJWKsFromStaticClientConfiguration
Extracted client JWK
|
||||
|
||||||
| 2026-11-09 19:16:09 | SUCCESS |
CheckDistinctKeyIdValueInClientJWKs
Distinct 'kid' value in all keys of client_jwks
|
||
|
||||
| 2026-11-09 19:16:09 |
|
RegisterRical
No RICAL configured, skipping RICAL-based verifier trust checks
|
|
|
||
| 2026-11-09 19:16:09 | INFO |
CallRicalEndpoint
Skipped evaluation due to missing required string: rical_url
|
||
|
||||
| 2026-11-09 19:16:09 | INFO |
ParseRical
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-09 19:16:09 |
INFO
|
DumpRicalCborDiagnostics
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-09 19:16:09 | INFO |
ValidateRicalSignature
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-09 19:16:09 | INFO |
ValidateRicalSignerCertificate
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-09 19:16:09 | INFO |
ValidateRicalStructure
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-09 19:16:09 | INFO |
ValidateConfiguredClientCertificatesAgainstRical
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-09 19:16:09 |
|
RegisterCredentialTrustAnchor
Registered credential trust anchor certificate
|
||
|
||||
| 2026-11-09 19:16:09 |
|
RegisterStatusListTrustAnchor
Registered status list trust anchor certificate
|
||
|
||||
| 2026-11-09 19:16:09 | SUCCESS |
EnsureCredentialTrustAnchorConfigured
Credential Trust Anchor is configured
|
|
|
||
| 2026-11-09 19:16:09 | SUCCESS |
EnsureStatusListTrustAnchorConfigured
Status List Trust Anchor is configured
|
|
|
||
| 2026-11-09 19:16:09 | SUCCESS |
CheckDiscEndpointRequestUriParameterSupported
request_uri_parameter_supported has correct value
|
||
|
||||
| 2026-11-09 19:16:09 |
CreateRandomRequestUriWithoutFragment
Created random URL for request_uri
|
|||
|
||||
| 2026-11-09 19:16:09 |
|
oid4vp-1final-wallet-negative-test-required-non-matching-credential
Setup Done
|
|
|
||
| Make request to wallet |
| 2026-11-09 19:16:09 |
SUCCESS
|
CreateEmptyAuthorizationEndpointRequest
Created empty authorization endpoint request
|
|
|
||
| 2026-11-09 19:16:09 |
SUCCESS
|
AddClientIdToAuthorizationEndpointRequest
Added client_id of 'x509_hash:uCBGxmy7D2eDDAtNjzfgbEg878clE-DawKrXkIr2Qy0' to authorization endpoint request
|
||
|
||||
| 2026-11-09 19:16:09 |
|
CreateRandomStateValue
Created state value
|
||||
|
||||||
| 2026-11-09 19:16:09 |
SUCCESS
|
AddStateToAuthorizationEndpointRequest
Added state parameter to request
|
||||
|
||||||
| 2026-11-09 19:16:09 |
SUCCESS
|
AddResponseUriToAuthorizationEndpointRequest
Added response_uri parameter to request
|
||||||
|
||||||||
| 2026-11-09 19:16:09 |
SUCCESS
|
LoadBuiltInDcqlQuery
Using the conformance suite's built-in DCQL query for the selected credential type; select the 'custom' credential type if you need to supply your own query
|
||||
|
||||||
| 2026-11-09 19:16:09 |
INFO
|
ExtractDCQLQueryFromClientConfiguration
Skipped evaluation because string is present: dcql_builtin_resource
|
||
|
||||
| 2026-11-09 19:16:09 |
AddRequiredNonMatchingCredentialToDcqlQuery
Added non-matching required credential and credential_sets to DCQL query
|
|||||||
|
||||||||
| 2026-11-09 19:16:09 | SUCCESS |
ValidateDCQLQuery
DCQL query input is valid
|
||||
|
||||||
| 2026-11-09 19:16:09 |
SUCCESS
|
CheckDCQLQueryCredentialFormatMatchesTestConfiguration
DCQL query credential format matches test configuration
|
||||
|
||||||
| 2026-11-09 19:16:09 | SUCCESS |
CheckForUnexpectedParametersInDcqlQuery
No unknown properties were found in the DCQL query
|
||||
|
||||||
| 2026-11-09 19:16:09 | SUCCESS |
CheckForNonSelectivelyDisclosableClaimsInDcqlQuery
DCQL query does not request any SD-JWT VC claims that cannot be selectively disclosed
|
|
|
||
| 2026-11-09 19:16:09 | SUCCESS |
CheckForUnreferencedClaimsInDcqlQuery
The DCQL query does not contain claims entries unreferenced by claim_sets
|
|
|
||
| 2026-11-09 19:16:09 |
SUCCESS
|
AddDcqlToAuthorizationEndpointRequest
Added dcql_query parameter to request
|
||||||||
|
||||||||||
| 2026-11-09 19:16:09 |
INFO
|
ExtractVerifierInfoFromClientConfiguration
Skipped evaluation due to missing required element: client verifier_info
|
||||||
|
||||||||
| 2026-11-09 19:16:09 | INFO |
ValidateVerifierInfo
Skipped evaluation due to missing required element: client verifier_info
|
||||||
|
||||||||
| 2026-11-09 19:16:09 | INFO |
CheckForUnexpectedParametersInVerifierInfo
Skipped evaluation due to missing required element: client verifier_info
|
||||||
|
||||||||
| 2026-11-09 19:16:09 |
INFO
|
AddVerifierInfoToAuthorizationEndpointRequest
Skipped evaluation due to missing required element: client verifier_info
|
||||||
|
||||||||
| 2026-11-09 19:16:09 |
|
CreateRandomNonceValue
Created nonce value
|
||||
|
||||||
| 2026-11-09 19:16:09 |
SUCCESS
|
AddNonceToAuthorizationEndpointRequest
Added nonce parameter to request
|
||||||||||
|
||||||||||||
| 2026-11-09 19:16:09 |
|
AddVP1FinalSdJwtClientMetadataToAuthorizationRequest
Added client_metadata to authorization endpoint request
|
||
|
||||
| 2026-11-09 19:16:09 |
|
AddVP1FinalEncryptionParametersToClientMetadata
Added encryption key to client_metadata in authorization endpoint request
|
||
|
||||
| 2026-11-09 19:16:09 |
SUCCESS
|
SetAuthorizationEndpointRequestResponseTypeToVpToken
Added response_type parameter to request
|
||||||||||||||
|
||||||||||||||||
| 2026-11-09 19:16:09 |
|
SetAuthorizationEndpointRequestResponseMode
Added response_mode parameter to request
|
||||||||||||||||
|
||||||||||||||||||
| 2026-11-09 19:16:09 |
SUCCESS
|
ConvertAuthorizationEndpointRequestToRequestObject
Created request object claims
|
||
|
||||
| 2026-11-09 19:16:09 |
|
AddSelfIssuedMeV2AudToRequestObject
Added SIOPv2 aud to request object claims
|
||
|
||||
| 2026-11-09 19:16:09 |
SUCCESS
|
BuildRequestObjectByReferenceRedirectToAuthorizationEndpointWithoutDuplicates
Sending to authorization endpoint
|
||
|
||||
| 2026-11-09 19:16:09 |
REDIRECT
|
oid4vp-1final-wallet-negative-test-required-non-matching-credential
Redirecting to authorization endpoint
|
||||
|
||||||
| 2026-11-09 19:16:09 |
|
oid4vp-1final-wallet-negative-test-required-non-matching-credential
The wallet should be opened via the QR code / proceed with test button, and should then fetch the request_uri
|
|
|
||
| 2026-11-09 19:16:10 |
INCOMING
|
oid4vp-1final-wallet-negative-test-required-non-matching-credential
Incoming HTTP request to /test/a/siros-wallet-vp-test/requesturi/Gdp2g4EEzGV7bjAFS4RbBkuejGLCNZWiVrAUYy3pO5QXMBp2tOXdOOYKWVWKCRaX
|
||||||||||||||||||||||||
|
||||||||||||||||||||||||||
| 2026-11-09 19:16:10 |
SUCCESS
|
EnsureIncomingTls12WithSecureCipherOrTls13
Found TLS 1.3 connection
|
|
|
||
| 2026-11-09 19:16:10 | SUCCESS |
EnsureIncomingTls13
TLS 1.3 in use
|
|
|
||
| 2026-11-09 19:16:10 | SUCCESS |
EnsureIncomingRequestMethodIsGet
Client correctly used http GET method
|
|
|
||
| 2026-11-09 19:16:10 |
SUCCESS
|
SignRequestObjectIncludeX5cHeader
Signed the request object
|
||||||||
|
||||||||||
| 2026-11-09 19:16:10 |
|
oid4vp-1final-wallet-negative-test-required-non-matching-credential
Wallet has retrieved request_uri - the DCQL query contains a required credential the wallet cannot satisfy, so the wallet should return an 'access_denied' error response or display an error.
|
|
|
||
| 2026-11-09 19:16:10 | REVIEW |
ExpectUnsatisfiableDcqlQueryErrorPage
The DCQL query contains a required Credential Query the wallet cannot satisfy, so the wallet must not return a vp_token. If the wallet does not return an 'access_denied' error response, it should display an error.
|
||
|
||||
| 2026-11-09 19:16:10 |
|
oid4vp-1final-wallet-negative-test-required-non-matching-credential
Returned request object to wallet - waiting for it to call the response_uri
|
|
|
||
| 2026-11-09 19:16:10 |
OUTGOING
|
oid4vp-1final-wallet-negative-test-required-non-matching-credential
Response to HTTP request to test instance 4r0JnCC5fKvhAtE
|
||||||||
|
||||||||||
| 2026-11-09 19:16:10 |
INCOMING
|
oid4vp-1final-wallet-negative-test-required-non-matching-credential
Incoming HTTP request to /test/a/siros-wallet-vp-test/responseuri
|
||||||||||||||||||||||||
|
||||||||||||||||||||||||||
| 2026-11-09 19:16:10 |
SUCCESS
|
EnsureIncomingTls12WithSecureCipherOrTls13
Found TLS 1.3 connection
|
|
|
||
| 2026-11-09 19:16:10 | SUCCESS |
EnsureIncomingTls13
TLS 1.3 in use
|
|
|
||
| Direct post endpoint |
| 2026-11-09 19:16:10 |
SUCCESS
|
EnsureIncomingRequestMethodIsPost
Client correctly used http POST method
|
|
|
||
| 2026-11-09 19:16:10 |
SUCCESS
|
EnsureIncomingRequestContentTypeIsFormUrlEncoded
Incoming content-type header has the expected value
|
||||
|
||||||
| 2026-11-09 19:16:10 |
SUCCESS
|
EnsureIncomingUrlQueryIsEmpty
URL query from server was correctly empty, no query parameters detected
|
|
|
||
| 2026-11-09 19:16:10 |
SUCCESS
|
ExtractAuthorizationEndpointResponseFromFormBody
Extracted the authorization response
|
||
|
||||
| 2026-11-09 19:16:10 | SUCCESS |
ValidateAuthResponseContainsOnlyResponse
Incoming response contains only expected 'response' parameter
|
||
|
||||
| 2026-11-09 19:16:10 | SUCCESS |
DecryptResponse
Found and decrypted the authorization response
|
||||||
|
||||||||
| 2026-11-09 19:16:10 | SUCCESS |
EnsureErrorResponseForUnsatisfiableDcqlQuery
Wallet returned an error response for the unsatisfiable DCQL query
|
||||||||||||
|
||||||||||||||
| 2026-11-09 19:16:10 | SUCCESS |
EnsureNoVpTokenInAuthorizationEndpointResponse
Authorization endpoint response does not contain a vp_token, as expected.
|
|
|
||
| 2026-11-09 19:16:10 | SUCCESS |
EnsureAuthorizationEndpointErrorIsAccessDenied
Authorization endpoint error is 'access_denied'
|
|
|
||
| 2026-11-09 19:16:10 |
SUCCESS
|
CreateEmptyDirectPostResponse
Created empty direct_post_response
|
|
|
||
| 2026-11-09 19:16:10 |
OUTGOING
|
oid4vp-1final-wallet-negative-test-required-non-matching-credential
Response to HTTP request to test instance 4r0JnCC5fKvhAtE
|
||||||||
|
||||||||||
| 2026-11-09 19:16:10 |
FINISHED
|
oid4vp-1final-wallet-negative-test-required-non-matching-credential
Test has run to completion
|
||
|
||||
| 2026-11-09 19:16:26 |
|
TEST-RUNNER
Alias has now been claimed by another test
|
||||
|
||||||