| Test Name | oid4vp-1final-wallet-negative-test-invalid-client-id-prefix |
|---|---|
| Variant | credential_type=eudi_pid, credential_format=sd_jwt_vc, client_id_prefix=x509_hash, request_method=request_uri_multisigned, vp_profile=haip, response_mode=dc_api.jwt |
| Test ID | IvJQmUXDvp8vx5R https://localhost.emobix.co.uk:8443/log-detail.html?public=true&log=IvJQmUXDvp8vx5R |
| Created | 2026-11-10T00:11:53.176453506Z |
| Description | OID4VP wallet conformance test for SIROS wallet |
| Test Version | 5.3.4 |
| Test Owner | leifj |
| Plan ID | DVGvjpRfRL20v https://localhost.emobix.co.uk:8443/plan-detail.html?public=true&plan=DVGvjpRfRL20v |
| Exported From | https://localhost.emobix.co.uk:8443 |
| Exported By | leifj |
| Suite Version | 5.3.4 |
| Exported | 2026-11-10 00:13:33 (UTC) |
| Status: FINISHED Result: REVIEW |
| SUCCESS 28 FAILURE 0 WARNING 0 REVIEW 1 INFO 13 |
| 2026-11-10 00:11:53 |
INFO
|
TEST-RUNNER
Test instance IvJQmUXDvp8vx5R created
|
||||||||||||||||
|
||||||||||||||||||
| 2026-11-10 00:11:53 |
SetWebOrigin
Set origin from conformance suite base url
|
|||||
|
||||||
| 2026-11-10 00:11:53 |
|
SetClientIdToX509Hash
Set client_id to x509 hash
|
||||
|
||||||
| 2026-11-10 00:11:53 |
SUCCESS
|
GetStaticServerConfiguration
Found a static server object
|
||
|
||||
| 2026-11-10 00:11:53 |
SUCCESS
|
GetStaticClientConfiguration
Found a static client object
|
||||||
|
||||||||
| 2026-11-10 00:11:53 |
SUCCESS
|
OID4VPSetClientIdToIncludeClientIdScheme
Set client id to include the client id scheme
|
||
|
||||
| 2026-11-10 00:11:53 | 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-10 00:11:53 |
SUCCESS
|
CreateClientEncryptionKeyIfMissing
No client encryption key provided in client jwks in configuration so created an encryption key
|
||
|
||||
| 2026-11-10 00:11:53 |
SUCCESS
|
ExtractJWKsFromStaticClientConfiguration
Extracted client JWK
|
||||
|
||||||
| 2026-11-10 00:11:53 | SUCCESS |
CheckDistinctKeyIdValueInClientJWKs
Distinct 'kid' value in all keys of client_jwks
|
||
|
||||
| 2026-11-10 00:11:53 |
SUCCESS
|
ExtractSecondJWKsFromClientConfiguration
Extracted client JWK
|
||||
|
||||||
| 2026-11-10 00:11:53 |
SUCCESS
|
SetClient2IdToX509Hash
Set second client_id to x509 hash
|
||||
|
||||||
| 2026-11-10 00:11:53 |
|
RegisterRical
No RICAL configured, skipping RICAL-based verifier trust checks
|
|
|
||
| 2026-11-10 00:11:53 | INFO |
CallRicalEndpoint
Skipped evaluation due to missing required string: rical_url
|
||
|
||||
| 2026-11-10 00:11:53 | INFO |
ParseRical
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-10 00:11:53 |
INFO
|
DumpRicalCborDiagnostics
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-10 00:11:53 | INFO |
ValidateRicalSignature
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-10 00:11:53 | INFO |
ValidateRicalSignerCertificate
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-10 00:11:53 | INFO |
ValidateRicalStructure
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-10 00:11:53 | INFO |
ValidateConfiguredClientCertificatesAgainstRical
Skipped evaluation due to missing required object: rical
|
||||
|
||||||
| 2026-11-10 00:11:53 |
|
RegisterCredentialTrustAnchor
Registered credential trust anchor certificate
|
||
|
||||
| 2026-11-10 00:11:53 |
|
RegisterStatusListTrustAnchor
Registered status list trust anchor certificate
|
||
|
||||
| 2026-11-10 00:11:53 | SUCCESS |
EnsureCredentialTrustAnchorConfigured
Credential Trust Anchor is configured
|
|
|
||
| 2026-11-10 00:11:53 | SUCCESS |
EnsureStatusListTrustAnchorConfigured
Status List Trust Anchor is configured
|
|
|
||
| 2026-11-10 00:11:53 | SUCCESS |
CheckDiscEndpointRequestUriParameterSupported
request_uri_parameter_supported has correct value
|
||
|
||||
| 2026-11-10 00:11:53 |
CreateRandomRequestUriWithoutFragment
Created random URL for request_uri
|
|||
|
||||
| 2026-11-10 00:11:53 |
|
oid4vp-1final-wallet-negative-test-invalid-client-id-prefix
Setup Done
|
|
|
||
| Make request to wallet |
| 2026-11-10 00:11:53 |
SUCCESS
|
CreateEmptyAuthorizationEndpointRequest
Created empty authorization endpoint request
|
|
|
||
| 2026-11-10 00:11:53 | SUCCESS |
AddExpectedOriginsToAuthorizationEndpointRequest
Added expected_origins to request
|
||
|
||||
| 2026-11-10 00:11:53 |
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-10 00:11:53 |
INFO
|
ExtractDCQLQueryFromClientConfiguration
Skipped evaluation because string is present: dcql_builtin_resource
|
||
|
||||
| 2026-11-10 00:11:53 | SUCCESS |
ValidateDCQLQuery
DCQL query input is valid
|
||||
|
||||||
| 2026-11-10 00:11:53 |
SUCCESS
|
CheckDCQLQueryCredentialFormatMatchesTestConfiguration
DCQL query credential format matches test configuration
|
||||
|
||||||
| 2026-11-10 00:11:53 | SUCCESS |
CheckForUnexpectedParametersInDcqlQuery
No unknown properties were found in the DCQL query
|
||||
|
||||||
| 2026-11-10 00:11:53 | SUCCESS |
CheckForNonSelectivelyDisclosableClaimsInDcqlQuery
DCQL query does not request any SD-JWT VC claims that cannot be selectively disclosed
|
|
|
||
| 2026-11-10 00:11:53 | SUCCESS |
CheckForUnreferencedClaimsInDcqlQuery
The DCQL query does not contain claims entries unreferenced by claim_sets
|
|
|
||
| 2026-11-10 00:11:53 |
SUCCESS
|
AddDcqlToAuthorizationEndpointRequest
Added dcql_query parameter to request
|
||||
|
||||||
| 2026-11-10 00:11:53 |
INFO
|
ExtractVerifierInfoFromClientConfiguration
Skipped evaluation due to missing required element: client verifier_info
|
||||||
|
||||||||
| 2026-11-10 00:11:53 | INFO |
ValidateVerifierInfo
Skipped evaluation due to missing required element: client verifier_info
|
||||||
|
||||||||
| 2026-11-10 00:11:53 | INFO |
CheckForUnexpectedParametersInVerifierInfo
Skipped evaluation due to missing required element: client verifier_info
|
||||||
|
||||||||
| 2026-11-10 00:11:53 |
INFO
|
AddVerifierInfoToAuthorizationEndpointRequest
Skipped evaluation due to missing required element: client verifier_info
|
||||||
|
||||||||
| 2026-11-10 00:11:53 |
|
CreateRandomNonceValue
Created nonce value
|
||||
|
||||||
| 2026-11-10 00:11:53 |
SUCCESS
|
AddNonceToAuthorizationEndpointRequest
Added nonce parameter to request
|
||||||
|
||||||||
| 2026-11-10 00:11:53 |
|
AddVP1FinalSdJwtClientMetadataToAuthorizationRequest
Added client_metadata to authorization endpoint request
|
||
|
||||
| 2026-11-10 00:11:53 |
|
AddVP1FinalEncryptionParametersToClientMetadata
Added encryption key to client_metadata in authorization endpoint request
|
||
|
||||
| 2026-11-10 00:11:53 |
SUCCESS
|
SetAuthorizationEndpointRequestResponseTypeToVpToken
Added response_type parameter to request
|
||||||||||
|
||||||||||||
| 2026-11-10 00:11:53 |
|
SetAuthorizationEndpointRequestResponseMode
Added response_mode parameter to request
|
||||||||||||
|
||||||||||||||
| 2026-11-10 00:11:53 |
|
AddInvalidClientIdPrefixToMultiSignedClientIds
Replaced both multi-signed client_ids with invalid prefix scheme
|
||||||||
|
||||||||||
| 2026-11-10 00:11:53 |
SUCCESS
|
ConvertAuthorizationEndpointRequestToRequestObject
Created request object claims
|
||
|
||||
| 2026-11-10 00:11:53 |
|
AddSelfIssuedMeV2AudToRequestObject
Added SIOPv2 aud to request object claims
|
||
|
||||
| 2026-11-10 00:11:53 |
|
BuildRequestObjectByReferenceRedirectToAuthorizationEndpointWithoutDuplicates
No redirected required for Browser API
|
|
|
||
| 2026-11-10 00:11:53 | SUCCESS |
CreateMultiSignedRequestObject
Created multi-signed request object with JWS JSON Serialization
|
||
|
||||
| 2026-11-10 00:11:53 |
SUCCESS
|
CreateRandomBrowserApiSubmitUrl
Created random Browser API submission URL
|
||
|
||||
| 2026-11-10 00:11:53 |
|
BuildVP1FinalBrowserDCAPIRequestMultiSigned
Created Browser API request for multi-signed
|
||
|
||||
| 2026-11-10 00:11:53 |
|
oid4vp-1final-wallet-negative-test-invalid-client-id-prefix
Calling browser API
|
||
|
||||
| 2026-11-10 00:11:53 |
|
oid4vp-1final-wallet-negative-test-invalid-client-id-prefix
The wallet should be opened using the Browser API button, and should then parse the request and return the results via the API
|
|
|
||
| 2026-11-10 00:12:02 |
INCOMING
|
oid4vp-1final-wallet-negative-test-invalid-client-id-prefix
Incoming HTTP request to /test/a/siros-wallet-vp-test/browser_api/pCX3ZObDsRmg49LNUd38
|
||||||||||||||||||||||||
|
||||||||||||||||||||||||||
| 2026-11-10 00:12:02 |
SUCCESS
|
EnsureIncomingTls12WithSecureCipherOrTls13
Found TLS 1.3 connection
|
|
|
||
| 2026-11-10 00:12:02 | SUCCESS |
EnsureIncomingTls13
TLS 1.3 in use
|
|
|
||
| 2026-11-10 00:12:02 |
OUTGOING
|
oid4vp-1final-wallet-negative-test-invalid-client-id-prefix
Response to HTTP request to test instance IvJQmUXDvp8vx5R
|
||||||||
|
||||||||||
| Process Browser API result |
| 2026-11-10 00:12:02 |
|
oid4vp-1final-wallet-negative-test-invalid-client-id-prefix
Wallet rejected the request via the Browser API (navigator.credentials.get() promise rejected). This is the expected behavior for this negative test. The tester must upload a screenshot of the wallet's error screen for the test to transition to FINISHED.
|
||
|
||||
| 2026-11-10 00:12:02 | REVIEW IMAGE |
ExpectRedirectUriErrorPage
Show redirect URI error page
|
||||
|
||||||
| 2026-11-10 00:12:07 |
FINISHED
|
oid4vp-1final-wallet-negative-test-invalid-client-id-prefix
Test has run to completion
|
||
|
||||
| 2026-11-10 00:12:07 |
|
TEST-RUNNER
Alias has now been claimed by another test
|
||||
|
||||||