Test Summary

Test Results

Expand All Collapse All
All times are UTC
2026-11-12 21:28:16 INFO
TEST-RUNNER
Test instance BoFJ6lUNUofmpLm created
baseUrl
https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test
variant
{
  "credential_format": "sd_jwt_vc",
  "vci_credential_issuance_mode": "deferred",
  "fapi_request_method": "unsigned",
  "grant_management": "disabled",
  "vci_grant_type": "authorization_code",
  "vci_credential_encryption": "plain",
  "sender_constrain": "dpop",
  "client_auth_type": "private_key_jwt",
  "vci_authorization_code_flow_variant": "issuer_initiated",
  "authorization_request_type": "simple",
  "fapi_client_type": "plain_oauth",
  "vci_credential_offer_variant": "by_value",
  "fapi_profile": "vci",
  "fapi_response_mode": "plain_response"
}
alias
siros-wallet-vci-test
description
OID4VCI wallet conformance test for SIROS wallet [mini-wallet 1839888]
planId
lQkO4HDr2mwL7
config
{
  "alias": "siros-wallet-vci-test",
  "description": "OID4VCI wallet conformance test for SIROS wallet [mini-wallet 1839888]",
  "server": {
    "jwks": {
      "keys": [
        {
          "kty": "EC",
          "x": "3DB83F3-PlsZuOeCKbiB1Z086DHttKREjakcnBBZYPU",
          "y": "lLDSzUs8cDQAqwGucLIP_7QRC1PnSPrWcw2O8HG1zME",
          "crv": "P-256",
          "d": "9cez3K_DuFS4egCVhvySFQsacFt4v6njd_fZ3Ox00jw",
          "kid": "server-key-1",
          "use": "sig",
          "alg": "ES256"
        }
      ]
    }
  },
  "client": {
    "client_id": "siros-wallet-test",
    "redirect_uri": "http://localhost:3010/",
    "jwks": {
      "keys": [
        {
          "kty": "EC",
          "x": "ktT77AqMntawPyU772lBg8nd7cwENrYyOL_KWbYN8Jc",
          "y": "67lPXEq5gJdimDYD0AacxLfRfIm2-fSNd3HBqyXXvBI",
          "crv": "P-256",
          "kid": "client-key-1",
          "use": "sig",
          "alg": "ES256"
        }
      ]
    },
    "private_key": {
      "kty": "EC",
      "x": "ktT77AqMntawPyU772lBg8nd7cwENrYyOL_KWbYN8Jc",
      "y": "67lPXEq5gJdimDYD0AacxLfRfIm2-fSNd3HBqyXXvBI",
      "crv": "P-256",
      "d": "KJEKZo2PQq6E40P6HMenViCVBRXoWD2FDyevRsJnlG0",
      "kid": "client-key-1",
      "use": "sig",
      "alg": "ES256"
    }
  },
  "credential": {
    "signing_jwk": {
      "kty": "EC",
      "x": "DC9X9ll7j9Jal-AHuMgPRKDVu6Qx575dS7jp6Byweh0",
      "y": "jT6DefGEoaIbd1gDvuc6EaECV6GzSjSKl0PjtJ6CZkM",
      "crv": "P-256",
      "d": "jVJkAdpfNMYbeAiSbHp-GKVH0qD0NyTRsQb9ABBUgQ0",
      "kid": "signing-key-1",
      "use": "sig",
      "alg": "ES256",
      "x5c": [
        "MIIBazCCARKgAwIBAgIUQYT+qvz/som9nb6vOLBeaH5QGTowCgYIKoZIzj0EAwIwEjEQMA4GA1UEAwwHVGVzdCBDQTAeFw0yNjA1MDExNjMzNDdaFw0yNzA1MDExNjMzNDdaMBYxFDASBgNVBAMMC3Rlc3Qtc2lnbmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDC9X9ll7j9Jal+AHuMgPRKDVu6Qx575dS7jp6Byweh2NPoN58YShoht3WAO+5zoRoQJXobNKNIqXQ+O0noJmQ6NCMEAwHQYDVR0OBBYEFHxAz1jw9mXJlVfcQMFkcDreoP5rMB8GA1UdIwQYMBaAFIqC34T7zF9Xxv1tMeztb+/8FwNxMAoGCCqGSM49BAMCA0cAMEQCIBfEz6qX90M465dRjQzo9Ksr7ljrlN/fZtLZolgafArAAiBA3eras8roO9M0t/Nny/Hpod/4bZ2S6gIlKGFc5C6EmQ\u003d\u003d",
        "MIIBeDCCAR+gAwIBAgIUXVxUTgQA2XXqA5Xf43YA1rh7gGIwCgYIKoZIzj0EAwIwEjEQMA4GA1UEAwwHVGVzdCBDQTAeFw0yNjA1MDExNjMzNDdaFw0yNzA1MDExNjMzNDdaMBIxEDAOBgNVBAMMB1Rlc3QgQ0EwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARZRoBqflkSDAhD8fHM4l1cIYzxSFdUrsOPL0eZrZUCv9Ex3piyOqzFI/kDIL2mPOx/JfV2ccDsePxum3GEOK2ao1MwUTAdBgNVHQ4EFgQUioLfhPvMX1fG/W0x7O1v7/wXA3EwHwYDVR0jBBgwFoAUioLfhPvMX1fG/W0x7O1v7/wXA3EwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAgNHADBEAiBHQhuXzlGKCoO6J5onPuutAXZh+zdaiKTkgJsswGm/MQIgW7FZ389cKZvQscdXgeUnv4nx0BAGOQjyGea4YfGiNpg\u003d"
      ]
    }
  },
  "waitTimeoutSeconds": 120,
  "vci": {
    "credential_offer_endpoint": "openid-credential-offer://"
  },
  "developer": "leifj"
}
baseMtlsUrl
https://localhost:8444/test-mtls/a/siros-wallet-vci-test
testName
oid4vci-1_0-wallet-test-credential-issuance-notification
2026-11-12 21:28:16 SUCCESS
GenerateServerConfigurationMTLS
Created server configuration
server
{
  "issuer": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
  "authorization_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/authorize",
  "token_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/token",
  "registration_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/register",
  "userinfo_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/userinfo",
  "mtls_endpoint_aliases": {
    "token_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/token",
    "registration_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/register",
    "userinfo_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/userinfo"
  }
}
issuer
https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/
discoveryUrl
https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/.well-known/openid-configuration
2026-11-12 21:28:16 SUCCESS
LoadServerJWKs
Parsed public and private JWK sets
server_encryption_keys
{}
server_public_jwks
{
  "keys": [
    {
      "kty": "EC",
      "use": "sig",
      "crv": "P-256",
      "kid": "server-key-1",
      "x": "3DB83F3-PlsZuOeCKbiB1Z086DHttKREjakcnBBZYPU",
      "y": "lLDSzUs8cDQAqwGucLIP_7QRC1PnSPrWcw2O8HG1zME",
      "alg": "ES256"
    }
  ]
}
server_jwks
{
  "keys": [
    {
      "kty": "EC",
      "d": "9cez3K_DuFS4egCVhvySFQsacFt4v6njd_fZ3Ox00jw",
      "use": "sig",
      "crv": "P-256",
      "kid": "server-key-1",
      "x": "3DB83F3-PlsZuOeCKbiB1Z086DHttKREjakcnBBZYPU",
      "y": "lLDSzUs8cDQAqwGucLIP_7QRC1PnSPrWcw2O8HG1zME",
      "alg": "ES256"
    }
  ]
}
Validate the JWK set in server signing keys
2026-11-12 21:28:16 SUCCESS
MapJwksToValidationLocation
Selected the JWK set in server signing keys for validation
jwks
{
  "keys": [
    {
      "kty": "EC",
      "d": "9cez3K_DuFS4egCVhvySFQsacFt4v6njd_fZ3Ox00jw",
      "use": "sig",
      "crv": "P-256",
      "kid": "server-key-1",
      "x": "3DB83F3-PlsZuOeCKbiB1Z086DHttKREjakcnBBZYPU",
      "y": "lLDSzUs8cDQAqwGucLIP_7QRC1PnSPrWcw2O8HG1zME",
      "alg": "ES256"
    }
  ]
}
2026-11-12 21:28:16 SUCCESS
ValidateJwksStructure
The JWK set in server signing keys is structurally valid
jwks_source
server signing keys
2026-11-12 21:28:16 SUCCESS
ParseUsableJwksKeys
All usable keys in the JWK set in server signing keys parse successfully
jwks_source
server signing keys
2026-11-12 21:28:16 SUCCESS
WarnOnUnusableJwksKeys
All keys in the JWK set in server signing keys use a supported key type, curve and algorithm
jwks_source
server signing keys
2026-11-12 21:28:16 SUCCESS
AugmentRealJwksWithDecoys
Augmented JWKS with decoy keys.
existingJwks
{
  "keys": [
    {
      "kty": "EC",
      "use": "sig",
      "crv": "P-256",
      "kid": "server-key-1",
      "x": "3DB83F3-PlsZuOeCKbiB1Z086DHttKREjakcnBBZYPU",
      "y": "lLDSzUs8cDQAqwGucLIP_7QRC1PnSPrWcw2O8HG1zME",
      "alg": "ES256"
    }
  ]
}
jwksWithDecoys
{
  "keys": [
    {
      "kty": "OKP",
      "use": "sig",
      "crv": "Ed25519",
      "kid": "server-key-1",
      "x": "o52JLy35XYc0ypp-DF6bjNJXzNLSQg657lJUhJgKLs8",
      "alg": "EdDSA"
    },
    {
      "kty": "EC",
      "use": "sig",
      "crv": "P-256",
      "kid": "server-key-1",
      "x": "3DB83F3-PlsZuOeCKbiB1Z086DHttKREjakcnBBZYPU",
      "y": "lLDSzUs8cDQAqwGucLIP_7QRC1PnSPrWcw2O8HG1zME",
      "alg": "ES256"
    },
    {
      "kty": "RSA",
      "e": "AQAB",
      "use": "sig",
      "kid": "server-key-1",
      "alg": "PS256",
      "n": "oPu43XnITHlgShJc7eK5PTpYSRv050FtBoIQsQkVAqyqEdHMjTM0eK5Uy17HsL_ppadarEJk4Ksx9_btR9ahdrvkbewu23qMziDW4CgasloQ_CfWrJNkfpizuTrwTLGf-BRISHAftdcEG8YaVTd4iChELkyd-CTfFgJmADJp1Vriv7OQkBRgPjcwo7UmnWqQAqF-JbRFDevWxlLP4VX5dxe0WKOCoE0zIyZ4sxTpM_6Qy4zt2Qf6RtdN5_7728pwtKJ_ZIGgI9eqdQFwGEjIxWDTI_R7jHGBoJY46IdlNRADE7z8Ay6-qzYHrcbyR6ZgToCdejTuGIjQXdSya0B_Kw"
    }
  ]
}
2026-11-12 21:28:16
SetRsaAltServerJwks
generated new alt RSA key configuration
2026-11-12 21:28:16 SUCCESS
SetRsaAltServerJwks
Set alt server key
server_public_jwks
{
  "keys": [
    {
      "kty": "OKP",
      "use": "sig",
      "crv": "Ed25519",
      "kid": "server-key-1",
      "x": "o52JLy35XYc0ypp-DF6bjNJXzNLSQg657lJUhJgKLs8",
      "alg": "EdDSA"
    },
    {
      "kty": "EC",
      "use": "sig",
      "crv": "P-256",
      "kid": "server-key-1",
      "x": "3DB83F3-PlsZuOeCKbiB1Z086DHttKREjakcnBBZYPU",
      "y": "lLDSzUs8cDQAqwGucLIP_7QRC1PnSPrWcw2O8HG1zME",
      "alg": "ES256"
    },
    {
      "kty": "RSA",
      "e": "AQAB",
      "use": "sig",
      "kid": "server-key-1",
      "alg": "PS256",
      "n": "oPu43XnITHlgShJc7eK5PTpYSRv050FtBoIQsQkVAqyqEdHMjTM0eK5Uy17HsL_ppadarEJk4Ksx9_btR9ahdrvkbewu23qMziDW4CgasloQ_CfWrJNkfpizuTrwTLGf-BRISHAftdcEG8YaVTd4iChELkyd-CTfFgJmADJp1Vriv7OQkBRgPjcwo7UmnWqQAqF-JbRFDevWxlLP4VX5dxe0WKOCoE0zIyZ4sxTpM_6Qy4zt2Qf6RtdN5_7728pwtKJ_ZIGgI9eqdQFwGEjIxWDTI_R7jHGBoJY46IdlNRADE7z8Ay6-qzYHrcbyR6ZgToCdejTuGIjQXdSya0B_Kw"
    },
    {
      "kty": "RSA",
      "e": "AQAB",
      "use": "sig",
      "kid": "rsa-none-alt-arg",
      "n": "rHO0Hvkwg8p9MMsTK9H2cWIVcuTXgqD9MQZnb48FM-tdmoMlPjU5WUg4N8h_4jdQ1ADgQACppuoJiXhDidN4aOiVjSso-SRjwWxKbq4TVvlNdzOCH-ligo4ftcJBLUWJJLD3I64BGG7KMoovEPFN89jR3VXD6RyKj4vaY706CaCkxZlGS9Mp8sGdT7zv5UjGKhh4-KRolRq9mId2mnleIvZBYyANxd0Rb861RY7g3O4DxWEA3xtxkSJrcBkDyY8IrKl0mxKldaR9rll4FmYoNZWzZqFoDfLzt7rYSiYOfXdt-QIlMlZthqVa3RJMM8L5MrRevoRVKjmulH1_KaXwyQ"
    }
  ]
}
server_jwks
{
  "keys": [
    {
      "kty": "EC",
      "d": "9cez3K_DuFS4egCVhvySFQsacFt4v6njd_fZ3Ox00jw",
      "use": "sig",
      "crv": "P-256",
      "kid": "server-key-1",
      "x": "3DB83F3-PlsZuOeCKbiB1Z086DHttKREjakcnBBZYPU",
      "y": "lLDSzUs8cDQAqwGucLIP_7QRC1PnSPrWcw2O8HG1zME",
      "alg": "ES256"
    }
  ]
}
server_alt_jwks
{
  "keys": [
    {
      "p": "vTcrfPZ9eZjIXN4LZYyKMXG1lvH5UJukZgQQ1UQYENHPoJWIvi9JD7MPMjjEwpvZcD6YGzaczxboEiihlHPiqM6Dw9yTMbX4Bw-GgyFhgkYrOd8fPgMAFZXI4zl5G6aSTsRHolAMVXvuKGBD7QV1LnU7ZZ9hv0XZOeLDCaVzpm8",
      "kty": "RSA",
      "q": "6VHXO7lyTJcniJGAPJ_5H2UHrknODXun-bKTelxWZcEvw8t2gJDvia5mbmor7RLbdg4c4BojdflvhJJVXlxOsgxHMJiFP2cjVoNktHkEmgHCqCplJUD98ZCK7hfC5LwJLQwszMCpDbYAlVSUAsWFyWczo0hC4Kv0QCwluqm9uEc",
      "d": "Cldd48WZrS2FWFm1KpmKp73z_1HNwp2Y0UnLBhuTekuQ72UR5KsYZ0w3YtD5Kj2a8TukNvJTOhkqvT2i_y7ZN6FK5o5CBL6z5LNzuzNhIYQNqypBkVxTdfTD3ghqFCbpVHPwPgl_M1HheipjLCbsP8UuwJEWEHKPtI_0ZqrAQjdwk32LvF9kahhdaGpMeNoOcRM1BQxURrsLUjJm8fOZcz6gfjItd-8m6-VXoXDPDjCKnePi6Wh6QLbpDnuefPWrKLyo_p4EaZK_hCWWZFk0XeoEWgsVcG7piMae2mpesimiWeA1ncqkbfQNdI4bYIUt31iFDz-XBG0osSH8GoGHCQ",
      "e": "AQAB",
      "use": "sig",
      "kid": "rsa-none-alt-arg",
      "qi": "VzPxjxy_hoMSgrGMWYQLmPg0OT0gLbvyRDwFKLIPU_-pt4CKZBzzhk5NtQ9SpnPiWQ-z0D1TjHAV53CO5sJZEfevKXoTwsnBLmJwnFBq4BInXcl8PGt_5p_nx9HYxc3Lo0NU0oDSID-B3rh2fjXt3NvHJbbAHZZuaRdsw5PM1ZU",
      "dp": "H_X3tI32N9nkzjr7ddW9agipAawxzrnblRfOuBdecUjfZ2KazHU0RCCcyoDoS28D1X_dNYuOBTT7UkXmtSq1-ImZnDXf7x-rm5W1xOSYkebEWmwj3Neo5fx9CFSm7lK-l-tzpikbTD04xz0rfBfV6VkIBWxcmHB19t8kzrZRyKU",
      "dq": "DejOHwZgNQax2adq8LJMxL1eJtrJiO49RlqKBjppACnzMgX4K5P4Y8nc22pC8iA0qyYOPKHyST80kb-zjSuNmXm36MK-9tesOKUepM-uIYxHUYUtgHoOaY9HaQhLmx1GosPeC9rUeTfHcx-Wr0-dOTOI1YwiSIiXyBeZrDYgVFM",
      "n": "rHO0Hvkwg8p9MMsTK9H2cWIVcuTXgqD9MQZnb48FM-tdmoMlPjU5WUg4N8h_4jdQ1ADgQACppuoJiXhDidN4aOiVjSso-SRjwWxKbq4TVvlNdzOCH-ligo4ftcJBLUWJJLD3I64BGG7KMoovEPFN89jR3VXD6RyKj4vaY706CaCkxZlGS9Mp8sGdT7zv5UjGKhh4-KRolRq9mId2mnleIvZBYyANxd0Rb861RY7g3O4DxWEA3xtxkSJrcBkDyY8IrKl0mxKldaR9rll4FmYoNZWzZqFoDfLzt7rYSiYOfXdt-QIlMlZthqVa3RJMM8L5MrRevoRVKjmulH1_KaXwyQ"
    }
  ]
}
2026-11-12 21:28:16 SUCCESS
AddResponseTypeCodeToServerConfiguration
Added code as response type supported
response_types_supported
[
  "code"
]
2026-11-12 21:28:16 SUCCESS
AddIssSupportedToServerConfiguration
Added 'authorization_response_iss_parameter_supported' as 'true' to server metadata
2026-11-12 21:28:16 SUCCESS
AddCodeChallengeMethodToServerConfiguration
Added S256 as supported code challenge method
code_challenge_methods_supported
[
  "S256"
]
2026-11-12 21:28:16 SUCCESS
ExtractServerSigningAlg
Successfully extracted algorithm
signing_algorithm
ES256
2026-11-12 21:28:16 SUCCESS
AddIdTokenSigningAlgsToServerConfiguration
Added 'id_token_signing_alg_values_supported' to server metadata as 'alg' from server jwks
value
[
  "ES256"
]
2026-11-12 21:28:16 SUCCESS
VCIEnsureCredentialSigningCertificateIsNotSelfSigned
Credential signing cert is not a self-signed cert
cert_0_from_x5c
MIIBazCCARKgAwIBAgIUQYT+qvz/som9nb6vOLBeaH5QGTowCgYIKoZIzj0EAwIwEjEQMA4GA1UEAwwHVGVzdCBDQTAeFw0yNjA1MDExNjMzNDdaFw0yNzA1MDExNjMzNDdaMBYxFDASBgNVBAMMC3Rlc3Qtc2lnbmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDC9X9ll7j9Jal+AHuMgPRKDVu6Qx575dS7jp6Byweh2NPoN58YShoht3WAO+5zoRoQJXobNKNIqXQ+O0noJmQ6NCMEAwHQYDVR0OBBYEFHxAz1jw9mXJlVfcQMFkcDreoP5rMB8GA1UdIwQYMBaAFIqC34T7zF9Xxv1tMeztb+/8FwNxMAoGCCqGSM49BAMCA0cAMEQCIBfEz6qX90M465dRjQzo9Ksr7ljrlN/fZtLZolgafArAAiBA3eras8roO9M0t/Nny/Hpod/4bZ2S6gIlKGFc5C6EmQ==
2026-11-12 21:28:16
VCIGenerateIssuerState
Generated issuer_state
issuer_state
SGPSWNbgQHKwBXFsxQXEQnnjHIFwtJnisUbfouKhUt
2026-11-12 21:28:16 SUCCESS
AddDpopSigningAlgValuesSupportedToServerConfiguration
Set dpop_signing_alg_values_supported
values
[
  "PS256",
  "ES256",
  "EdDSA",
  "Ed25519"
]
2026-11-12 21:28:16
SetTokenEndpointAuthMethodsSupportedToPrivateKeyJWTOnly
Changed token_endpoint_auth_methods_supported to private_key_jwt only in server configuration
server_configuration
{
  "issuer": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
  "authorization_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/authorize",
  "token_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/token",
  "registration_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/register",
  "userinfo_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/userinfo",
  "mtls_endpoint_aliases": {
    "token_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/token",
    "registration_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/register",
    "userinfo_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/userinfo"
  },
  "response_types_supported": [
    "code"
  ],
  "authorization_response_iss_parameter_supported": true,
  "code_challenge_methods_supported": [
    "S256"
  ],
  "id_token_signing_alg_values_supported": [
    "ES256"
  ],
  "dpop_signing_alg_values_supported": [
    "PS256",
    "ES256",
    "EdDSA",
    "Ed25519"
  ],
  "token_endpoint_auth_methods_supported": [
    "private_key_jwt"
  ]
}
2026-11-12 21:28:16
AddPushedAuthorizationRequestEndpointToServerConfig
Added pushed_authorization_request_endpoint to server configuration
mtls_endpoint
https://localhost:8444/test-mtls/a/siros-wallet-vci-test/par
endpoint
https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/par
2026-11-12 21:28:16
AddRequirePushedAuthorizationRequestsToServerConfig
Added require_pushed_authorization_requests to server configuration
value
true
2026-11-12 21:28:16 SUCCESS
FAPI2AddTokenEndpointAuthSigningAlgValuesSupportedToServer
Set token_endpoint_auth_signing_alg_values_supported
values
[
  "PS256",
  "ES256",
  "EdDSA",
  "Ed25519"
]
2026-11-12 21:28:16
VCIRegisterKeyAttestationTrustAnchor
Skipping registration of empty trust anchor certificate for key attestation
2026-11-12 21:28:16
VCILogGeneratedCredentialIssuerMetadata
Created credential issuer metadata
credential_issuer
{
  "credential_issuer": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
  "credential_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/credential",
  "nonce_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/nonce",
  "deferred_credential_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/deferred_credential",
  "notification_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/notification",
  "authorization_servers": [
    "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/"
  ],
  "credential_configurations_supported": {
    "eu.europa.ec.eudi.pid.1": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1"
    },
    "eu.europa.ec.eudi.pid.1.attestation": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.attestation"
    },
    "eu.europa.ec.eudi.pid.1.jwt.keyattest": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: JWT Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.jwt.keyattest"
    },
    "eu.europa.ec.eudi.pid.1.attestation.keyattest": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: Attestation Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.attestation.keyattest"
    },
    "eu.europa.ec.eudi.pid.1.jwt_and_attestation.keyattest": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        },
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: JWT and Attestation Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.jwt_and_attestation.keyattest"
    },
    "eu.europa.ec.eudi.pid.mdoc.1": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1"
    },
    "eu.europa.ec.eudi.pid.mdoc.1.attestation": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc): Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1.attestation"
    },
    "eu.europa.ec.eudi.pid.mdoc.1.jwt.keyattest": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc): JWT Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1.jwt.keyattest"
    },
    "eu.europa.ec.eudi.pid.mdoc.1.attestation.keyattest": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc): Attestation Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1.attestation.keyattest"
    },
    "org.iso.18013.5.1.mDL": {
      "format": "mso_mdoc",
      "doctype": "org.iso.18013.5.1.mDL",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake mDL (ISO 18013-5) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Mobile Driver\u0027s License"
          }
        ]
      },
      "scope": "org.iso.18013.5.1.mDL"
    },
    "org.iso.23220.photoid.1": {
      "format": "mso_mdoc",
      "doctype": "org.iso.23220.photoid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake Photo ID (ISO/IEC TS 23220-4) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Photo ID"
          }
        ]
      },
      "scope": "org.iso.23220.photoid.1"
    },
    "org.iso.18013.5.1.mDL.attestation": {
      "format": "mso_mdoc",
      "doctype": "org.iso.18013.5.1.mDL",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake mDL (ISO 18013-5): Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Mobile Driver\u0027s License"
          }
        ]
      },
      "scope": "org.iso.18013.5.1.mDL.attestation"
    },
    "eu.europa.ec.eudi.pid.1.nobinding": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (No Holder Binding) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID without cryptographic holder binding"
          }
        ]
      },
      "scope": "eudi.pid.1.nobinding"
    },
    "net.openid.examples.certification.1.sdjwtvc": {
      "format": "dc+sd-jwt",
      "vct": "urn:openid:example:certification:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake OpenID Certification BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Certification"
          }
        ]
      },
      "scope": "openid.example.cert.1"
    },
    "net.openid.examples.certification.1.mdoc": {
      "format": "mso_mdoc",
      "doctype": "net.openid.examples.certification.1.mdoc",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake OpenID Certification (mdoc) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Certification"
          }
        ]
      },
      "scope": "openid.example.cert.1"
    }
  }
}
2026-11-12 21:28:16
VCIAddOpenIdCredentialToAuthorizationDetailsSupportedIfScopeIsMissing
No need to add openid_credential to authorization_details_types_supported in oauth authorization server metadata as all credential configurations use a scope
2026-11-12 21:28:16
VCIInjectCredentialConfigurationIdHint
Using implicit credential_configuration_id eu.europa.ec.eudi.pid.1
credential_configuration_id
eu.europa.ec.eudi.pid.1
2026-11-12 21:28:16 SUCCESS
CheckServerConfiguration
Found required server configuration keys
required
[
  "authorization_endpoint",
  "token_endpoint",
  "issuer"
]
2026-11-12 21:28:16 SUCCESS
FAPI2FinalEnsureMinimumServerKeyLength
Validated minimum key lengths for server_jwks
server_jwks
{
  "keys": [
    {
      "kty": "EC",
      "d": "9cez3K_DuFS4egCVhvySFQsacFt4v6njd_fZ3Ox00jw",
      "use": "sig",
      "crv": "P-256",
      "kid": "server-key-1",
      "x": "3DB83F3-PlsZuOeCKbiB1Z086DHttKREjakcnBBZYPU",
      "y": "lLDSzUs8cDQAqwGucLIP_7QRC1PnSPrWcw2O8HG1zME",
      "alg": "ES256"
    }
  ]
}
2026-11-12 21:28:16 SUCCESS
LoadUserInfo
Added user information
user_info
{
  "sub": "user-subject-1234531",
  "name": "Demo T. User",
  "email": "user@example.com",
  "email_verified": false
}
Verify configuration of first client
2026-11-12 21:28:16 SUCCESS
GetStaticClientConfiguration
Found a static client object
client_id
siros-wallet-test
redirect_uri
http://localhost:3010/
jwks
{
  "keys": [
    {
      "kty": "EC",
      "x": "ktT77AqMntawPyU772lBg8nd7cwENrYyOL_KWbYN8Jc",
      "y": "67lPXEq5gJdimDYD0AacxLfRfIm2-fSNd3HBqyXXvBI",
      "crv": "P-256",
      "kid": "client-key-1",
      "use": "sig",
      "alg": "ES256"
    }
  ]
}
private_key
{
  "kty": "EC",
  "x": "ktT77AqMntawPyU772lBg8nd7cwENrYyOL_KWbYN8Jc",
  "y": "67lPXEq5gJdimDYD0AacxLfRfIm2-fSNd3HBqyXXvBI",
  "crv": "P-256",
  "d": "KJEKZo2PQq6E40P6HMenViCVBRXoWD2FDyevRsJnlG0",
  "kid": "client-key-1",
  "use": "sig",
  "alg": "ES256"
}
Validate the JWK set in client configuration
2026-11-12 21:28:16 SUCCESS
MapJwksToValidationLocation
Selected the JWK set in client configuration for validation
jwks
{
  "keys": [
    {
      "kty": "EC",
      "x": "ktT77AqMntawPyU772lBg8nd7cwENrYyOL_KWbYN8Jc",
      "y": "67lPXEq5gJdimDYD0AacxLfRfIm2-fSNd3HBqyXXvBI",
      "crv": "P-256",
      "kid": "client-key-1",
      "use": "sig",
      "alg": "ES256"
    }
  ]
}
2026-11-12 21:28:16 SUCCESS
EnsureJwksHasNoPrivateOrSymmetricKeyMaterial
The JWK set in client configuration contains only public key material
jwks_source
client configuration
2026-11-12 21:28:16 SUCCESS
ValidateJwksStructure
The JWK set in client configuration is structurally valid
jwks_source
client configuration
2026-11-12 21:28:16 SUCCESS
ParseUsableJwksKeys
All usable keys in the JWK set in client configuration parse successfully
jwks_source
client configuration
2026-11-12 21:28:16 SUCCESS
WarnOnUnusableJwksKeys
All keys in the JWK set in client configuration use a supported key type, curve and algorithm
jwks_source
client configuration
2026-11-12 21:28:16 SUCCESS
ExtractJWKsFromStaticClientConfiguration
Extracted client JWK
client_jwks
{
  "keys": [
    {
      "kty": "EC",
      "x": "ktT77AqMntawPyU772lBg8nd7cwENrYyOL_KWbYN8Jc",
      "y": "67lPXEq5gJdimDYD0AacxLfRfIm2-fSNd3HBqyXXvBI",
      "crv": "P-256",
      "kid": "client-key-1",
      "use": "sig",
      "alg": "ES256"
    }
  ]
}
client_public_jwks
{
  "keys": [
    {
      "kty": "EC",
      "use": "sig",
      "crv": "P-256",
      "kid": "client-key-1",
      "x": "ktT77AqMntawPyU772lBg8nd7cwENrYyOL_KWbYN8Jc",
      "y": "67lPXEq5gJdimDYD0AacxLfRfIm2-fSNd3HBqyXXvBI",
      "alg": "ES256"
    }
  ]
}
2026-11-12 21:28:16 SUCCESS
CheckDistinctKeyIdValueInClientJWKs
Distinct 'kid' value in all keys of client_jwks
see
https://bitbucket.org/openid/connect/issues/1127
2026-11-12 21:28:16 SUCCESS
FAPI2FinalEnsureMinimumClientKeyLength
Validated minimum key lengths for client_jwks
client_jwks
{
  "keys": [
    {
      "kty": "EC",
      "x": "ktT77AqMntawPyU772lBg8nd7cwENrYyOL_KWbYN8Jc",
      "y": "67lPXEq5gJdimDYD0AacxLfRfIm2-fSNd3HBqyXXvBI",
      "crv": "P-256",
      "kid": "client-key-1",
      "use": "sig",
      "alg": "ES256"
    }
  ]
}
2026-11-12 21:28:16 SUCCESS
CreateAuthorizationServerDpopNonce
Created Authorization Server DPoP nonce
authorization_server_dpop_nonce
eVNhZWRuZWGmoajTyEuxkyGcLnlXWLCGjRCIydRtPXDtedYlzt5734100279-|'{$=*^:}]{&$]){;&?[@-:&`:<)`
2026-11-12 21:28:16 SUCCESS
CreateResourceServerDpopNonce
Created Resource Server nonce
resource_server_dpop_nonce
kABBzqgesFaAJeouxQexuwUcAwUSYJRHBbiDDuIYgwqnvISTgw4244537313@|)&).@%^>`=)%/^+):+#%,-_@'${}
2026-11-12 21:28:16 SUCCESS
CheckDistinctKeyIdValueInServerJWKs
Distinct 'kid' value in all keys of server_jwks
see
https://bitbucket.org/openid/connect/issues/1127
2026-11-12 21:28:16
oid4vci-1_0-wallet-test-credential-issuance-notification
Setup Done
2026-11-12 21:28:16
VCICreateCredentialOffer
Using credential_configuration_id eu.europa.ec.eudi.pid.1
credential_configuration_id
eu.europa.ec.eudi.pid.1
2026-11-12 21:28:16
VCICreateCredentialOffer
Generated credential offer
credential_offer
{
  "credential_issuer": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
  "credential_configuration_ids": [
    "eu.europa.ec.eudi.pid.1"
  ],
  "grants": {
    "authorization_code": {
      "issuer_state": "SGPSWNbgQHKwBXFsxQXEQnnjHIFwtJnisUbfouKhUt"
    }
  }
}
issuer_state
SGPSWNbgQHKwBXFsxQXEQnnjHIFwtJnisUbfouKhUt
grant_type
AUTHORIZATION_CODE
2026-11-12 21:28:16 SUCCESS
VCICreateCredentialOfferRedirectUrl
Created credential offer redirect url
credential_offer_redirect_url
openid-credential-offer://?credential_offer=%7B%22credential_issuer%22:%22https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/%22,%22credential_configuration_ids%22:%5B%22eu.europa.ec.eudi.pid.1%22%5D,%22grants%22:%7B%22authorization_code%22:%7B%22issuer_state%22:%22SGPSWNbgQHKwBXFsxQXEQnnjHIFwtJnisUbfouKhUt%22%7D%7D%7D
credential_offer_type
BY_VALUE
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /.well-known/openid-credential-issuer/test/a/siros-wallet-vci-test/
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/.well-known/openid-credential-issuer/test/a/siros-wallet-vci-test/",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "sec-ch-ua-platform": "\"Windows\"",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept": "application/openid-credential-issuer+jwt, application/json",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "accept-language": "en-US",
  "sec-ch-ua-mobile": "?0",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/.well-known/openid-credential-issuer/test/a/siros-wallet-vci-test/
incoming_body_form_params
incoming_method
GET
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
Get Credential Issuer Metadata
2026-11-12 21:28:17 SUCCESS
EnsureIncomingRequestMethodIsGet
Client correctly used http GET method
2026-11-12 21:28:17 SUCCESS
VCICheckIssuerMetadataRequestUrl
Issuer metadata request is for correct URL
request_url
https://localhost.emobix.co.uk:8443/.well-known/openid-credential-issuer/test/a/siros-wallet-vci-test/
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
200
outgoing_body
{
  "credential_issuer": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
  "credential_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/credential",
  "nonce_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/nonce",
  "deferred_credential_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/deferred_credential",
  "notification_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/notification",
  "authorization_servers": [
    "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/"
  ],
  "credential_configurations_supported": {
    "eu.europa.ec.eudi.pid.1": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1"
    },
    "eu.europa.ec.eudi.pid.1.attestation": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.attestation"
    },
    "eu.europa.ec.eudi.pid.1.jwt.keyattest": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: JWT Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.jwt.keyattest"
    },
    "eu.europa.ec.eudi.pid.1.attestation.keyattest": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: Attestation Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.attestation.keyattest"
    },
    "eu.europa.ec.eudi.pid.1.jwt_and_attestation.keyattest": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        },
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: JWT and Attestation Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.jwt_and_attestation.keyattest"
    },
    "eu.europa.ec.eudi.pid.mdoc.1": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1"
    },
    "eu.europa.ec.eudi.pid.mdoc.1.attestation": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc): Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1.attestation"
    },
    "eu.europa.ec.eudi.pid.mdoc.1.jwt.keyattest": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc): JWT Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1.jwt.keyattest"
    },
    "eu.europa.ec.eudi.pid.mdoc.1.attestation.keyattest": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc): Attestation Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1.attestation.keyattest"
    },
    "org.iso.18013.5.1.mDL": {
      "format": "mso_mdoc",
      "doctype": "org.iso.18013.5.1.mDL",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake mDL (ISO 18013-5) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Mobile Driver\u0027s License"
          }
        ]
      },
      "scope": "org.iso.18013.5.1.mDL"
    },
    "org.iso.23220.photoid.1": {
      "format": "mso_mdoc",
      "doctype": "org.iso.23220.photoid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake Photo ID (ISO/IEC TS 23220-4) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Photo ID"
          }
        ]
      },
      "scope": "org.iso.23220.photoid.1"
    },
    "org.iso.18013.5.1.mDL.attestation": {
      "format": "mso_mdoc",
      "doctype": "org.iso.18013.5.1.mDL",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake mDL (ISO 18013-5): Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Mobile Driver\u0027s License"
          }
        ]
      },
      "scope": "org.iso.18013.5.1.mDL.attestation"
    },
    "eu.europa.ec.eudi.pid.1.nobinding": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (No Holder Binding) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID without cryptographic holder binding"
          }
        ]
      },
      "scope": "eudi.pid.1.nobinding"
    },
    "net.openid.examples.certification.1.sdjwtvc": {
      "format": "dc+sd-jwt",
      "vct": "urn:openid:example:certification:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake OpenID Certification BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Certification"
          }
        ]
      },
      "scope": "openid.example.cert.1"
    },
    "net.openid.examples.certification.1.mdoc": {
      "format": "mso_mdoc",
      "doctype": "net.openid.examples.certification.1.mdoc",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake OpenID Certification (mdoc) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Certification"
          }
        ]
      },
      "scope": "openid.example.cert.1"
    }
  }
}
outgoing_headers
{
  "headers": {
    "Content-Type": [
      "application/json"
    ]
  }
}
outgoing_path

                                
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /.well-known/oauth-authorization-server/test/a/siros-wallet-vci-test
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/.well-known/oauth-authorization-server/test/a/siros-wallet-vci-test",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "sec-ch-ua-platform": "\"Windows\"",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept": "application/json",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "accept-language": "en-US",
  "sec-ch-ua-mobile": "?0",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/.well-known/oauth-authorization-server/test/a/siros-wallet-vci-test
incoming_body_form_params
incoming_method
GET
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
Get OAuth Authorization Metadata
2026-11-12 21:28:17 SUCCESS
EnsureIncomingRequestMethodIsGet
Client correctly used http GET method
2026-11-12 21:28:17 SUCCESS
VCICheckOAuthAuthorizationServerMetadataRequestUrl
OAuth authorization server metadata request is for correct URL
request_url
https://localhost.emobix.co.uk:8443/.well-known/oauth-authorization-server/test/a/siros-wallet-vci-test
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
200
outgoing_body
{
  "issuer": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
  "authorization_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/authorize",
  "token_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/token",
  "registration_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/register",
  "userinfo_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/userinfo",
  "mtls_endpoint_aliases": {
    "token_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/token",
    "registration_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/register",
    "userinfo_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/userinfo",
    "pushed_authorization_request_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/par"
  },
  "response_types_supported": [
    "code"
  ],
  "authorization_response_iss_parameter_supported": true,
  "code_challenge_methods_supported": [
    "S256"
  ],
  "id_token_signing_alg_values_supported": [
    "ES256"
  ],
  "dpop_signing_alg_values_supported": [
    "PS256",
    "ES256",
    "EdDSA",
    "Ed25519"
  ],
  "token_endpoint_auth_methods_supported": [
    "private_key_jwt"
  ],
  "pushed_authorization_request_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/par",
  "require_pushed_authorization_requests": true,
  "token_endpoint_auth_signing_alg_values_supported": [
    "PS256",
    "ES256",
    "EdDSA",
    "Ed25519"
  ],
  "status_list_aggregation_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/statuslists"
}
outgoing_headers
{
  "headers": {
    "Content-Type": [
      "application/json"
    ]
  }
}
outgoing_path

                                
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /test/a/siros-wallet-vci-test/par
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/test/a/siros-wallet-vci-test/par",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "content-length": "796",
  "sec-ch-ua-platform": "\"Windows\"",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept": "application/json",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "content-type": "application/x-www-form-urlencoded",
  "sec-ch-ua-mobile": "?0",
  "accept-language": "en-US",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/test/a/siros-wallet-vci-test/par
incoming_body_form_params
{
  "response_type": "code",
  "client_id": "siros-wallet-test",
  "redirect_uri": "http://localhost:3010/",
  "state": "hSQ8rzI0Z67xNXsVAX2xIQ",
  "scope": "eudi.pid.1",
  "issuer_state": "SGPSWNbgQHKwBXFsxQXEQnnjHIFwtJnisUbfouKhUt",
  "code_challenge": "hQSrDtc4Ouc-c95034vpPD9tajjhXkdcpulErN-FMmc",
  "code_challenge_method": "S256",
  "client_assertion_type": "urn:ietf:params:oauth:client-assertion-type:jwt-bearer",
  "client_assertion": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6ImM5MjM1MDNmZGU4M2Q2YmMzNWRhMzBiYyIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.7LygdQ3JWOSxBPQqhCNg4ZiMLWjY-_CkS-AiPZ41TrzJN_37tf64xl1owpaiAtrDE9i_VJ1gvjrgacUUGb_y3Q"
}
incoming_method
POST
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
response_type=code&client_id=siros-wallet-test&redirect_uri=http%3A%2F%2Flocalhost%3A3010%2F&state=hSQ8rzI0Z67xNXsVAX2xIQ&scope=eudi.pid.1&issuer_state=SGPSWNbgQHKwBXFsxQXEQnnjHIFwtJnisUbfouKhUt&code_challenge=hQSrDtc4Ouc-c95034vpPD9tajjhXkdcpulErN-FMmc&code_challenge_method=S256&client_assertion_type=urn%3Aietf%3Aparams%3Aoauth%3Aclient-assertion-type%3Ajwt-bearer&client_assertion=eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6ImM5MjM1MDNmZGU4M2Q2YmMzNWRhMzBiYyIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.7LygdQ3JWOSxBPQqhCNg4ZiMLWjY-_CkS-AiPZ41TrzJN_37tf64xl1owpaiAtrDE9i_VJ1gvjrgacUUGb_y3Q
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls12WithBCP195SecureCipherOrTls13
Found TLS 1.3 connection
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls13
TLS 1.3 in use
PAR endpoint
2026-11-12 21:28:17 SUCCESS
ExtractClientAssertion
Parsed client assertion
client_assertion
{
  "value": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6ImM5MjM1MDNmZGU4M2Q2YmMzNWRhMzBiYyIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.7LygdQ3JWOSxBPQqhCNg4ZiMLWjY-_CkS-AiPZ41TrzJN_37tf64xl1owpaiAtrDE9i_VJ1gvjrgacUUGb_y3Q",
  "header": {
    "kid": "client-key-1",
    "typ": "JWT",
    "alg": "ES256"
  },
  "claims": {
    "aud": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
    "sub": "siros-wallet-test",
    "iss": "siros-wallet-test",
    "exp": 1794519197,
    "iat": 1794518897,
    "jti": "c923503fde83d6bc35da30bc"
  }
}
2026-11-12 21:28:17
EnsureClientAssertionSignatureAlgorithmMatchesRegistered
token_endpoint_auth_signing_alg is not set for the client, any supported algorithm can be used
2026-11-12 21:28:17 SUCCESS
ValidateClientAssertionSignature
client_assertion signature validated
client_assertion
eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6ImM5MjM1MDNmZGU4M2Q2YmMzNWRhMzBiYyIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.7LygdQ3JWOSxBPQqhCNg4ZiMLWjY-_CkS-AiPZ41TrzJN_37tf64xl1owpaiAtrDE9i_VJ1gvjrgacUUGb_y3Q
2026-11-12 21:28:17 SUCCESS
EnsureClientAssertionTypeIsJwt
Found JWT assertion type
assertion type
urn:ietf:params:oauth:client-assertion-type:jwt-bearer
2026-11-12 21:28:17 SUCCESS
ValidateClientAssertionClaimsForPAREndpoint
Client Assertion passed all validation checks
2026-11-12 21:28:17 SUCCESS
CheckForClientAssertionJtiReuse
No reuse found for client_assertion JWT for jti=c923503fde83d6bc35da30bc
2026-11-12 21:28:17 SUCCESS
ValidateClientAssertionAudClaimIsIssuerAsString
private_key_jwt client Assertion 'aud' claim matches the authentication server issuer url
2026-11-12 21:28:17 SUCCESS
EnsureUnsignedPAREndpointRequestDoesNotContainRequestParameter
PAR endpoint request does not contain a request parameter
2026-11-12 21:28:17 SUCCESS
EnsurePAREndpointRequestDoesNotContainRequestUriParameter
PAR endpoint request does not contain a request_uri parameter
2026-11-12 21:28:17 INFO
ValidateEncryptedRequestObjectHasKid
Skipped evaluation due to missing required element: authorization_request_object jwe_header
path
jwe_header
mapped
object
authorization_request_object
2026-11-12 21:28:17 INFO
ExtractDpopProofFromHeader
Skipped evaluation due to missing required element: incoming_request headers.dpop
path
headers.dpop
mapped
object
incoming_request
2026-11-12 21:28:17 SUCCESS
ExtractParAuthorizationCodeDpopBindingKey
Request does not use DPoP Authorization code binding
2026-11-12 21:28:17 SUCCESS
CreatePAREndpointResponse
par_endpoint_response_headers
{}
Created PAR endpoint response
{
  "request_uri": "urn:ietf:params:oauth:request_uri:f167a3ea-a409-463c-bad9-f251217677c4",
  "expires_in": 600
}
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
201
outgoing_body
{
  "request_uri": "urn:ietf:params:oauth:request_uri:f167a3ea-a409-463c-bad9-f251217677c4",
  "expires_in": 600
}
outgoing_headers
{
  "headers": {}
}
outgoing_path
par
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /test/a/siros-wallet-vci-test/authorize
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/test/a/siros-wallet-vci-test/authorize?client_id\u003dsiros-wallet-test\u0026request_uri\u003durn%3Aietf%3Aparams%3Aoauth%3Arequest_uri%3Af167a3ea-a409-463c-bad9-f251217677c4",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "sec-ch-ua-mobile": "?0",
  "sec-ch-ua-platform": "\"Windows\"",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept-language": "en-US",
  "accept": "text/html,application/xhtml+xml,application/xml;q\u003d0.9,image/jxl,image/avif,image/webp,image/apng,*/*;q\u003d0.8,application/signed-exchange;v\u003db3;q\u003d0.7",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "navigate",
  "sec-fetch-user": "?1",
  "sec-fetch-dest": "document",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd",
  "cookie": "JSESSIONID\u003d9A3497C2B90F51145FF9C3DA372FB8C1"
}
incoming_path
/test/a/siros-wallet-vci-test/authorize
incoming_body_form_params
incoming_method
GET
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{
  "client_id": "siros-wallet-test",
  "request_uri": "urn:ietf:params:oauth:request_uri:f167a3ea-a409-463c-bad9-f251217677c4"
}
incoming_body
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls12WithBCP195SecureCipherOrTls13
Found TLS 1.3 connection
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls13
TLS 1.3 in use
Authorization endpoint
2026-11-12 21:28:17 SUCCESS
EnsureAuthorizationRequestDoesNotContainRequestWhenUsingPAR
Request does not contain a request parameter
2026-11-12 21:28:17 SUCCESS
EnsureAuthorizationRequestContainsOnlyExpectedParamsWhenUsingPAR
Request does not contain any unexpected parameters
2026-11-12 21:28:17 SUCCESS
VCIVerifyIssuerStateInAuthorizationRequest
Issuer state matches expected issuer state
actual
SGPSWNbgQHKwBXFsxQXEQnnjHIFwtJnisUbfouKhUt
expected
SGPSWNbgQHKwBXFsxQXEQnnjHIFwtJnisUbfouKhUt
2026-11-12 21:28:17 INFO
ValidateEncryptedRequestObjectHasKid
Skipped evaluation due to missing required element: authorization_request_object jwe_header
path
jwe_header
mapped
object
authorization_request_object
2026-11-12 21:28:17 SUCCESS
CreateEffectiveAuthorizationPARRequestParameters
Merged http request parameters with request object claims
effective_authorization_endpoint_request
{
  "client_id": "siros-wallet-test",
  "response_type": "code",
  "redirect_uri": "http://localhost:3010/",
  "state": "hSQ8rzI0Z67xNXsVAX2xIQ",
  "scope": "eudi.pid.1",
  "issuer_state": "SGPSWNbgQHKwBXFsxQXEQnnjHIFwtJnisUbfouKhUt",
  "code_challenge": "hQSrDtc4Ouc-c95034vpPD9tajjhXkdcpulErN-FMmc",
  "code_challenge_method": "S256",
  "client_assertion_type": "urn:ietf:params:oauth:client-assertion-type:jwt-bearer",
  "client_assertion": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6ImM5MjM1MDNmZGU4M2Q2YmMzNWRhMzBiYyIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.7LygdQ3JWOSxBPQqhCNg4ZiMLWjY-_CkS-AiPZ41TrzJN_37tf64xl1owpaiAtrDE9i_VJ1gvjrgacUUGb_y3Q"
}
2026-11-12 21:28:17 SUCCESS
EnsureResponseTypeIsCode
Response type is expected value
expected
code
2026-11-12 21:28:17 INFO
CheckForUnexpectedClaimsInRequestObject
Skipped evaluation due to missing required element: authorization_request_object claims
path
claims
mapped
object
authorization_request_object
2026-11-12 21:28:17 SUCCESS
EnsureAuthorizationRequestContainsPkceCodeChallenge
Found required PKCE parameters in request
code_challenge_method
S256
code_challenge
hQSrDtc4Ouc-c95034vpPD9tajjhXkdcpulErN-FMmc
2026-11-12 21:28:17 SUCCESS
ExtractRequestedScopes
Requested scopes
scope
eudi.pid.1
2026-11-12 21:28:17 SUCCESS
VCIEnsureRequestedScopeIncludesCredentialConfigurationScope
The requested scope names a credential configuration in the credential issuer metadata
matching_scope_values
[
  "eudi.pid.1"
]
requested_scope_values
[
  "eudi.pid.1"
]
2026-11-12 21:28:17 SUCCESS
VCIEnsureRequestedScopeIncludesOfferedCredentialConfiguration
The requested scope includes the scope of an offered credential configuration
offered_credential_configuration_ids
[
  "eu.europa.ec.eudi.pid.1"
]
scope_value
eudi.pid.1
2026-11-12 21:28:17 SUCCESS
EnsureMatchingClientId
Client ID matched
client_id
siros-wallet-test
2026-11-12 21:28:17 SUCCESS
CreateAuthorizationCode
Created authorization code
authorization_code
FykB6eWrK3c45duiqJmFx1LBWYqYWcMj
2026-11-12 21:28:17 SUCCESS
EnsureAuthorizationRequestContainsStateParameter
Found state parameter
state
hSQ8rzI0Z67xNXsVAX2xIQ
2026-11-12 21:28:17 SUCCESS
CreateAuthorizationEndpointResponseParams
Added authorization_endpoint_response_params to environment
params
{
  "redirect_uri": "http://localhost:3010/",
  "state": "hSQ8rzI0Z67xNXsVAX2xIQ"
}
2026-11-12 21:28:17 SUCCESS
AddCodeToAuthorizationEndpointResponseParams
Added code to authorization endpoint response params
authorization_endpoint_response_params
{
  "redirect_uri": "http://localhost:3010/",
  "state": "hSQ8rzI0Z67xNXsVAX2xIQ",
  "code": "FykB6eWrK3c45duiqJmFx1LBWYqYWcMj"
}
2026-11-12 21:28:17 SUCCESS
AddIssToAuthorizationEndpointResponseParams
Added Iss to authorization endpoint response params
authorization_endpoint_response_params
{
  "redirect_uri": "http://localhost:3010/",
  "state": "hSQ8rzI0Z67xNXsVAX2xIQ",
  "code": "FykB6eWrK3c45duiqJmFx1LBWYqYWcMj",
  "iss": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/"
}
2026-11-12 21:28:17
SendAuthorizationResponseWithResponseModeQuery
Redirecting back to client
uri
http://localhost:3010/?state=hSQ8rzI0Z67xNXsVAX2xIQ&code=FykB6eWrK3c45duiqJmFx1LBWYqYWcMj&iss=https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/
2026-11-12 21:28:17 SUCCESS
CheckForInvalidCharsInState
State is empty or contains only URL safe characters
2026-11-12 21:28:17 SUCCESS
CheckStateLength
State is empty or does not exceed 128 characters
2026-11-12 21:28:17 SUCCESS
CreateAuthorizationServerDpopNonce
Created Authorization Server DPoP nonce
authorization_server_dpop_nonce
xJSqqauJcfhDsxnprCDdiNyKMHflrSkizdJzZERBhRMdqtzUPb5710844331@__'#)+_;*[>%>^,/=^)'%$>!`^$>~
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing
org.springframework.web.servlet.view.RedirectView: [RedirectView]; URL [http://localhost:3010/?state=hSQ8rzI0Z67xNXsVAX2xIQ&code=FykB6eWrK3c45duiqJmFx1LBWYqYWcMj&iss=https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/]
outgoing_path
authorize
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /.well-known/openid-credential-issuer/test/a/siros-wallet-vci-test/
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/.well-known/openid-credential-issuer/test/a/siros-wallet-vci-test/",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "sec-ch-ua-platform": "\"Windows\"",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept": "application/openid-credential-issuer+jwt, application/json",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "accept-language": "en-US",
  "sec-ch-ua-mobile": "?0",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/.well-known/openid-credential-issuer/test/a/siros-wallet-vci-test/
incoming_body_form_params
incoming_method
GET
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
Get Credential Issuer Metadata
2026-11-12 21:28:17 SUCCESS
EnsureIncomingRequestMethodIsGet
Client correctly used http GET method
2026-11-12 21:28:17 SUCCESS
VCICheckIssuerMetadataRequestUrl
Issuer metadata request is for correct URL
request_url
https://localhost.emobix.co.uk:8443/.well-known/openid-credential-issuer/test/a/siros-wallet-vci-test/
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
200
outgoing_body
{
  "credential_issuer": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
  "credential_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/credential",
  "nonce_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/nonce",
  "deferred_credential_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/deferred_credential",
  "notification_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/notification",
  "authorization_servers": [
    "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/"
  ],
  "credential_configurations_supported": {
    "eu.europa.ec.eudi.pid.1": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1"
    },
    "eu.europa.ec.eudi.pid.1.attestation": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.attestation"
    },
    "eu.europa.ec.eudi.pid.1.jwt.keyattest": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: JWT Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.jwt.keyattest"
    },
    "eu.europa.ec.eudi.pid.1.attestation.keyattest": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: Attestation Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.attestation.keyattest"
    },
    "eu.europa.ec.eudi.pid.1.jwt_and_attestation.keyattest": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        },
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID: JWT and Attestation Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID description"
          }
        ]
      },
      "scope": "eudi.pid.1.jwt_and_attestation.keyattest"
    },
    "eu.europa.ec.eudi.pid.mdoc.1": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1"
    },
    "eu.europa.ec.eudi.pid.mdoc.1.attestation": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc): Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1.attestation"
    },
    "eu.europa.ec.eudi.pid.mdoc.1.jwt.keyattest": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc): JWT Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1.jwt.keyattest"
    },
    "eu.europa.ec.eudi.pid.mdoc.1.attestation.keyattest": {
      "format": "mso_mdoc",
      "doctype": "eu.europa.ec.eudi.pid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ],
          "key_attestations_required": {}
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (mdoc): Attestation Proof with Key Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID in mso_mdoc format"
          }
        ]
      },
      "scope": "eudi.pid.mdoc.1.attestation.keyattest"
    },
    "org.iso.18013.5.1.mDL": {
      "format": "mso_mdoc",
      "doctype": "org.iso.18013.5.1.mDL",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake mDL (ISO 18013-5) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Mobile Driver\u0027s License"
          }
        ]
      },
      "scope": "org.iso.18013.5.1.mDL"
    },
    "org.iso.23220.photoid.1": {
      "format": "mso_mdoc",
      "doctype": "org.iso.23220.photoid.1",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "jwt": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake Photo ID (ISO/IEC TS 23220-4) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Photo ID"
          }
        ]
      },
      "scope": "org.iso.23220.photoid.1"
    },
    "org.iso.18013.5.1.mDL.attestation": {
      "format": "mso_mdoc",
      "doctype": "org.iso.18013.5.1.mDL",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake mDL (ISO 18013-5): Attestation BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Mobile Driver\u0027s License"
          }
        ]
      },
      "scope": "org.iso.18013.5.1.mDL.attestation"
    },
    "eu.europa.ec.eudi.pid.1.nobinding": {
      "format": "dc+sd-jwt",
      "vct": "urn:eudi:pid:1",
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "credential_metadata": {
        "display": [
          {
            "name": "Fake PID (No Holder Binding) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake PID without cryptographic holder binding"
          }
        ]
      },
      "scope": "eudi.pid.1.nobinding"
    },
    "net.openid.examples.certification.1.sdjwtvc": {
      "format": "dc+sd-jwt",
      "vct": "urn:openid:example:certification:1",
      "cryptographic_binding_methods_supported": [
        "jwk"
      ],
      "credential_signing_alg_values_supported": [
        "ES256"
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake OpenID Certification BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Certification"
          }
        ]
      },
      "scope": "openid.example.cert.1"
    },
    "net.openid.examples.certification.1.mdoc": {
      "format": "mso_mdoc",
      "doctype": "net.openid.examples.certification.1.mdoc",
      "cryptographic_binding_methods_supported": [
        "cose_key"
      ],
      "credential_signing_alg_values_supported": [
        -7
      ],
      "proof_types_supported": {
        "attestation": {
          "proof_signing_alg_values_supported": [
            "ES256"
          ]
        }
      },
      "credential_metadata": {
        "display": [
          {
            "name": "Fake OpenID Certification (mdoc) BoFJ6lUNUofmpLm",
            "description": "OpenID Conformance Test Fake Certification"
          }
        ]
      },
      "scope": "openid.example.cert.1"
    }
  }
}
outgoing_headers
{
  "headers": {
    "Content-Type": [
      "application/json"
    ]
  }
}
outgoing_path

                                
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /.well-known/oauth-authorization-server/test/a/siros-wallet-vci-test
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/.well-known/oauth-authorization-server/test/a/siros-wallet-vci-test",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "sec-ch-ua-platform": "\"Windows\"",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept": "application/json",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "accept-language": "en-US",
  "sec-ch-ua-mobile": "?0",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/.well-known/oauth-authorization-server/test/a/siros-wallet-vci-test
incoming_body_form_params
incoming_method
GET
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
Get OAuth Authorization Metadata
2026-11-12 21:28:17 SUCCESS
EnsureIncomingRequestMethodIsGet
Client correctly used http GET method
2026-11-12 21:28:17 SUCCESS
VCICheckOAuthAuthorizationServerMetadataRequestUrl
OAuth authorization server metadata request is for correct URL
request_url
https://localhost.emobix.co.uk:8443/.well-known/oauth-authorization-server/test/a/siros-wallet-vci-test
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
200
outgoing_body
{
  "issuer": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
  "authorization_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/authorize",
  "token_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/token",
  "registration_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/register",
  "userinfo_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/userinfo",
  "mtls_endpoint_aliases": {
    "token_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/token",
    "registration_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/register",
    "userinfo_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/userinfo",
    "pushed_authorization_request_endpoint": "https://localhost:8444/test-mtls/a/siros-wallet-vci-test/par"
  },
  "response_types_supported": [
    "code"
  ],
  "authorization_response_iss_parameter_supported": true,
  "code_challenge_methods_supported": [
    "S256"
  ],
  "id_token_signing_alg_values_supported": [
    "ES256"
  ],
  "dpop_signing_alg_values_supported": [
    "PS256",
    "ES256",
    "EdDSA",
    "Ed25519"
  ],
  "token_endpoint_auth_methods_supported": [
    "private_key_jwt"
  ],
  "pushed_authorization_request_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/par",
  "require_pushed_authorization_requests": true,
  "token_endpoint_auth_signing_alg_values_supported": [
    "PS256",
    "ES256",
    "EdDSA",
    "Ed25519"
  ],
  "status_list_aggregation_endpoint": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/statuslists"
}
outgoing_headers
{
  "headers": {
    "Content-Type": [
      "application/json"
    ]
  }
}
outgoing_path

                                
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /test/a/siros-wallet-vci-test/token
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/test/a/siros-wallet-vci-test/token",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "content-length": "715",
  "sec-ch-ua-platform": "\"Windows\"",
  "accept-language": "en-US",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "sec-ch-ua-mobile": "?0",
  "dpop": "eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJNYVJsYWdoTHQzMHVVU09UUHpGR3JBIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvdG9rZW4iLCJpYXQiOjE3OTQ1MTg4OTd9.UpRRzktpRQPdrNXU89jARH9OIAQcRKd5eKIRi6chxyeYKwkt7gEIXVRyp3XLF0h2IBLNnBXZSlT5ibEZYP1faA",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept": "application/json",
  "content-type": "application/x-www-form-urlencoded",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/test/a/siros-wallet-vci-test/token
incoming_body_form_params
{
  "grant_type": "authorization_code",
  "code": "FykB6eWrK3c45duiqJmFx1LBWYqYWcMj",
  "redirect_uri": "http://localhost:3010/",
  "client_id": "siros-wallet-test",
  "code_verifier": "8olKNiyqCF1oRdHgfJfEz1nJ5UMEiLhuJAWdA3_WY30",
  "client_assertion_type": "urn:ietf:params:oauth:client-assertion-type:jwt-bearer",
  "client_assertion": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6ImMxYzIwZTJmMDgxYWE0OTBmY2JjZjI0NSIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.iGJU4XDvAZeKFYPhhVR_AHgrjcBDK2EJPNRezX_yqXPm0ufBMl6hWnimdWKJIAv_XUnkzSSqwJ5icLF48T5G_A"
}
incoming_method
POST
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
grant_type=authorization_code&code=FykB6eWrK3c45duiqJmFx1LBWYqYWcMj&redirect_uri=http%3A%2F%2Flocalhost%3A3010%2F&client_id=siros-wallet-test&code_verifier=8olKNiyqCF1oRdHgfJfEz1nJ5UMEiLhuJAWdA3_WY30&client_assertion_type=urn%3Aietf%3Aparams%3Aoauth%3Aclient-assertion-type%3Ajwt-bearer&client_assertion=eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6ImMxYzIwZTJmMDgxYWE0OTBmY2JjZjI0NSIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.iGJU4XDvAZeKFYPhhVR_AHgrjcBDK2EJPNRezX_yqXPm0ufBMl6hWnimdWKJIAv_XUnkzSSqwJ5icLF48T5G_A
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls12WithBCP195SecureCipherOrTls13
Found TLS 1.3 connection
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls13
TLS 1.3 in use
Token endpoint
2026-11-12 21:28:17 SUCCESS
CheckClientIdMatchesOnTokenRequestIfPresent
Extracted client_id matches the expected value
client_id
siros-wallet-test
2026-11-12 21:28:17 SUCCESS
ExtractClientAssertion
Parsed client assertion
client_assertion
{
  "value": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6ImMxYzIwZTJmMDgxYWE0OTBmY2JjZjI0NSIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.iGJU4XDvAZeKFYPhhVR_AHgrjcBDK2EJPNRezX_yqXPm0ufBMl6hWnimdWKJIAv_XUnkzSSqwJ5icLF48T5G_A",
  "header": {
    "kid": "client-key-1",
    "typ": "JWT",
    "alg": "ES256"
  },
  "claims": {
    "aud": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
    "sub": "siros-wallet-test",
    "iss": "siros-wallet-test",
    "exp": 1794519197,
    "iat": 1794518897,
    "jti": "c1c20e2f081aa490fcbcf245"
  }
}
2026-11-12 21:28:17
EnsureClientAssertionSignatureAlgorithmMatchesRegistered
token_endpoint_auth_signing_alg is not set for the client, any supported algorithm can be used
2026-11-12 21:28:17 SUCCESS
ValidateClientAssertionSignature
client_assertion signature validated
client_assertion
eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6ImMxYzIwZTJmMDgxYWE0OTBmY2JjZjI0NSIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.iGJU4XDvAZeKFYPhhVR_AHgrjcBDK2EJPNRezX_yqXPm0ufBMl6hWnimdWKJIAv_XUnkzSSqwJ5icLF48T5G_A
2026-11-12 21:28:17 SUCCESS
EnsureClientAssertionTypeIsJwt
Found JWT assertion type
assertion type
urn:ietf:params:oauth:client-assertion-type:jwt-bearer
2026-11-12 21:28:17 SUCCESS
ValidateClientAssertionClaims
Client Assertion passed all validation checks
2026-11-12 21:28:17 SUCCESS
CheckForClientAssertionJtiReuse
No reuse found for client_assertion JWT for jti=c1c20e2f081aa490fcbcf245
2026-11-12 21:28:17 SUCCESS
ValidateClientAssertionAudClaimIsIssuerAsString
private_key_jwt client Assertion 'aud' claim matches the authentication server issuer url
2026-11-12 21:28:17 SUCCESS
ExtractDpopProofFromHeader
Found and parsed the incoming_dpop_proof from incoming_request
value
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJNYVJsYWdoTHQzMHVVU09UUHpGR3JBIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvdG9rZW4iLCJpYXQiOjE3OTQ1MTg4OTd9.UpRRzktpRQPdrNXU89jARH9OIAQcRKd5eKIRi6chxyeYKwkt7gEIXVRyp3XLF0h2IBLNnBXZSlT5ibEZYP1faA
header
{
  "typ": "dpop+jwt",
  "alg": "ES256",
  "jwk": {
    "kty": "EC",
    "crv": "P-256",
    "x": "DbFdMmtbrS_tuMeijviaMWFJyiWZeluzMWYyWhP75oM",
    "y": "Wht5mxpOeET5hMmE5DNsYOsFX7bf-fzVG2r0CFmCLiQ"
  }
}
claims
{
  "htm": "POST",
  "htu": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/token",
  "iat": 1794518897,
  "jti": "MaRlaghLt30uUSOTPzFGrA"
}
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofTokenRequest
DPoP Proof type, alg, jwk, jti, htm, htu, iat, exp, nbf passed validation checks
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofIat
DPoP Proof iat value passed validation checks
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofNbf
DPoP Proof nbf value passed validation checks
2026-11-12 21:28:17 SUCCESS
EnsureDpopProofJtiNotAlreadyUsed
Proof jti seems to be unique to this request
jti
MaRlaghLt30uUSOTPzFGrA
2026-11-12 21:28:17
ValidateTokenEndpointDpopProofNonce
DPoP Proof nonce not supplied
expected
xJSqqauJcfhDsxnprCDdiNyKMHflrSkizdJzZERBhRMdqtzUPb5710844331@__'#)+_;*[>%>^,/=^)'%$>!`^$>~
2026-11-12 21:28:17
ValidateTokenEndpointDpopProofNonce
Token endpoint DPoP nonce is invalid
expected
xJSqqauJcfhDsxnprCDdiNyKMHflrSkizdJzZERBhRMdqtzUPb5710844331@__'#)+_;*[>%>^,/=^)'%$>!`^$>~
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofSignature
DPoP Proof signature validated
DPoP Proof
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJNYVJsYWdoTHQzMHVVU09UUHpGR3JBIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvdG9rZW4iLCJpYXQiOjE3OTQ1MTg4OTd9.UpRRzktpRQPdrNXU89jARH9OIAQcRKd5eKIRi6chxyeYKwkt7gEIXVRyp3XLF0h2IBLNnBXZSlT5ibEZYP1faA
2026-11-12 21:28:17 SUCCESS
ValidateAuthorizationCodeDpopBindingKey
Authorization request does not use DPoP authorization code binding
dpop_jkt
6wt6AJdYTexW1eQgaGYBpWyF-f656sF6NenkRTTAg5k
2026-11-12 21:28:17
CreateTokenEndpointDpopErrorResponse
Condition ran but did not log anything
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
400
outgoing_body
{
  "error": "use_dpop_nonce",
  "error_description": "Authorization server requires nonce in DPoP proof"
}
outgoing_headers
{
  "headers": {
    "DPoP-Nonce": [
      "xJSqqauJcfhDsxnprCDdiNyKMHflrSkizdJzZERBhRMdqtzUPb5710844331@__\u0027#)+_;*[\u003e%\u003e^,/\u003d^)\u0027%$\u003e!`^$\u003e~"
    ]
  }
}
outgoing_path
token
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /test/a/siros-wallet-vci-test/token
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/test/a/siros-wallet-vci-test/token",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "content-length": "715",
  "sec-ch-ua-platform": "\"Windows\"",
  "accept-language": "en-US",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "sec-ch-ua-mobile": "?0",
  "dpop": "eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJ6OGVkdjBwYVoyNUtacXRSMGN2cjlBIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvdG9rZW4iLCJpYXQiOjE3OTQ1MTg4OTcsIm5vbmNlIjoieEpTcXFhdUpjZmhEc3hucHJDRGRpTnlLTUhmbHJTa2l6ZEp6WkVSQmhSTWRxdHpVUGI1NzEwODQ0MzMxQF9fJyMpK187Kls-JT5eLC89XiknJSQ-IWBeJD5-In0.Gz2MC_wuXJ6CtujZU0PbJgidA-N3HOeTq84bD0_9q157MADSEQ2mKxAQtoJRwMOViIA-euYALoZX6rk6tVzVBw",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept": "application/json",
  "content-type": "application/x-www-form-urlencoded",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/test/a/siros-wallet-vci-test/token
incoming_body_form_params
{
  "grant_type": "authorization_code",
  "code": "FykB6eWrK3c45duiqJmFx1LBWYqYWcMj",
  "redirect_uri": "http://localhost:3010/",
  "client_id": "siros-wallet-test",
  "code_verifier": "8olKNiyqCF1oRdHgfJfEz1nJ5UMEiLhuJAWdA3_WY30",
  "client_assertion_type": "urn:ietf:params:oauth:client-assertion-type:jwt-bearer",
  "client_assertion": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6IjFiMDQxOWE2NTgzY2JiN2I2MmYzNmU3NiIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.BMFn6wC8rvxHDVXUGofgjkCaU0C36sZezXi4V4FW_FUUgPQlui0SUtW31u8fSJKLfmZZrV-tCSZ04odf-BtRfw"
}
incoming_method
POST
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
grant_type=authorization_code&code=FykB6eWrK3c45duiqJmFx1LBWYqYWcMj&redirect_uri=http%3A%2F%2Flocalhost%3A3010%2F&client_id=siros-wallet-test&code_verifier=8olKNiyqCF1oRdHgfJfEz1nJ5UMEiLhuJAWdA3_WY30&client_assertion_type=urn%3Aietf%3Aparams%3Aoauth%3Aclient-assertion-type%3Ajwt-bearer&client_assertion=eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6IjFiMDQxOWE2NTgzY2JiN2I2MmYzNmU3NiIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.BMFn6wC8rvxHDVXUGofgjkCaU0C36sZezXi4V4FW_FUUgPQlui0SUtW31u8fSJKLfmZZrV-tCSZ04odf-BtRfw
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls12WithBCP195SecureCipherOrTls13
Found TLS 1.3 connection
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls13
TLS 1.3 in use
Token endpoint
2026-11-12 21:28:17 SUCCESS
CheckClientIdMatchesOnTokenRequestIfPresent
Extracted client_id matches the expected value
client_id
siros-wallet-test
2026-11-12 21:28:17 SUCCESS
ExtractClientAssertion
Parsed client assertion
client_assertion
{
  "value": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6IjFiMDQxOWE2NTgzY2JiN2I2MmYzNmU3NiIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.BMFn6wC8rvxHDVXUGofgjkCaU0C36sZezXi4V4FW_FUUgPQlui0SUtW31u8fSJKLfmZZrV-tCSZ04odf-BtRfw",
  "header": {
    "kid": "client-key-1",
    "typ": "JWT",
    "alg": "ES256"
  },
  "claims": {
    "aud": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
    "sub": "siros-wallet-test",
    "iss": "siros-wallet-test",
    "exp": 1794519197,
    "iat": 1794518897,
    "jti": "1b0419a6583cbb7b62f36e76"
  }
}
2026-11-12 21:28:17
EnsureClientAssertionSignatureAlgorithmMatchesRegistered
token_endpoint_auth_signing_alg is not set for the client, any supported algorithm can be used
2026-11-12 21:28:17 SUCCESS
ValidateClientAssertionSignature
client_assertion signature validated
client_assertion
eyJhbGciOiJFUzI1NiIsImtpZCI6ImNsaWVudC1rZXktMSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImV4cCI6MTc5NDUxOTE5NywiaWF0IjoxNzk0NTE4ODk3LCJpc3MiOiJzaXJvcy13YWxsZXQtdGVzdCIsImp0aSI6IjFiMDQxOWE2NTgzY2JiN2I2MmYzNmU3NiIsInN1YiI6InNpcm9zLXdhbGxldC10ZXN0In0.BMFn6wC8rvxHDVXUGofgjkCaU0C36sZezXi4V4FW_FUUgPQlui0SUtW31u8fSJKLfmZZrV-tCSZ04odf-BtRfw
2026-11-12 21:28:17 SUCCESS
EnsureClientAssertionTypeIsJwt
Found JWT assertion type
assertion type
urn:ietf:params:oauth:client-assertion-type:jwt-bearer
2026-11-12 21:28:17 SUCCESS
ValidateClientAssertionClaims
Client Assertion passed all validation checks
2026-11-12 21:28:17 SUCCESS
CheckForClientAssertionJtiReuse
No reuse found for client_assertion JWT for jti=1b0419a6583cbb7b62f36e76
2026-11-12 21:28:17 SUCCESS
ValidateClientAssertionAudClaimIsIssuerAsString
private_key_jwt client Assertion 'aud' claim matches the authentication server issuer url
2026-11-12 21:28:17 SUCCESS
ExtractDpopProofFromHeader
Found and parsed the incoming_dpop_proof from incoming_request
value
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJ6OGVkdjBwYVoyNUtacXRSMGN2cjlBIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvdG9rZW4iLCJpYXQiOjE3OTQ1MTg4OTcsIm5vbmNlIjoieEpTcXFhdUpjZmhEc3hucHJDRGRpTnlLTUhmbHJTa2l6ZEp6WkVSQmhSTWRxdHpVUGI1NzEwODQ0MzMxQF9fJyMpK187Kls-JT5eLC89XiknJSQ-IWBeJD5-In0.Gz2MC_wuXJ6CtujZU0PbJgidA-N3HOeTq84bD0_9q157MADSEQ2mKxAQtoJRwMOViIA-euYALoZX6rk6tVzVBw
header
{
  "typ": "dpop+jwt",
  "alg": "ES256",
  "jwk": {
    "kty": "EC",
    "crv": "P-256",
    "x": "DbFdMmtbrS_tuMeijviaMWFJyiWZeluzMWYyWhP75oM",
    "y": "Wht5mxpOeET5hMmE5DNsYOsFX7bf-fzVG2r0CFmCLiQ"
  }
}
claims
{
  "htm": "POST",
  "htu": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/token",
  "iat": 1794518897,
  "nonce": "xJSqqauJcfhDsxnprCDdiNyKMHflrSkizdJzZERBhRMdqtzUPb5710844331@__\u0027#)+_;*[\u003e%\u003e^,/\u003d^)\u0027%$\u003e!`^$\u003e~",
  "jti": "z8edv0paZ25KZqtR0cvr9A"
}
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofTokenRequest
DPoP Proof type, alg, jwk, jti, htm, htu, iat, exp, nbf passed validation checks
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofIat
DPoP Proof iat value passed validation checks
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofNbf
DPoP Proof nbf value passed validation checks
2026-11-12 21:28:17 SUCCESS
EnsureDpopProofJtiNotAlreadyUsed
Proof jti seems to be unique to this request
jti
z8edv0paZ25KZqtR0cvr9A
2026-11-12 21:28:17 SUCCESS
ValidateTokenEndpointDpopProofNonce
Token endpoint DPoP nonce matches expected value
expected
xJSqqauJcfhDsxnprCDdiNyKMHflrSkizdJzZERBhRMdqtzUPb5710844331@__'#)+_;*[>%>^,/=^)'%$>!`^$>~
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofSignature
DPoP Proof signature validated
DPoP Proof
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJ6OGVkdjBwYVoyNUtacXRSMGN2cjlBIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvdG9rZW4iLCJpYXQiOjE3OTQ1MTg4OTcsIm5vbmNlIjoieEpTcXFhdUpjZmhEc3hucHJDRGRpTnlLTUhmbHJTa2l6ZEp6WkVSQmhSTWRxdHpVUGI1NzEwODQ0MzMxQF9fJyMpK187Kls-JT5eLC89XiknJSQ-IWBeJD5-In0.Gz2MC_wuXJ6CtujZU0PbJgidA-N3HOeTq84bD0_9q157MADSEQ2mKxAQtoJRwMOViIA-euYALoZX6rk6tVzVBw
2026-11-12 21:28:17 SUCCESS
ValidateAuthorizationCodeDpopBindingKey
Authorization request does not use DPoP authorization code binding
dpop_jkt
6wt6AJdYTexW1eQgaGYBpWyF-f656sF6NenkRTTAg5k
2026-11-12 21:28:17 SUCCESS
ValidateAuthorizationCode
Found authorization code
authorization_code
FykB6eWrK3c45duiqJmFx1LBWYqYWcMj
2026-11-12 21:28:17 SUCCESS
ValidateRedirectUri
Found redirect uri
redirect_uri
http://localhost:3010/
2026-11-12 21:28:17 SUCCESS
ValidateCodeVerifierWithS256
Validated code_verifier successfully
code_challenge_method
S256
code_verifier
8olKNiyqCF1oRdHgfJfEz1nJ5UMEiLhuJAWdA3_WY30
code_challenge
hQSrDtc4Ouc-c95034vpPD9tajjhXkdcpulErN-FMmc
2026-11-12 21:28:17 SUCCESS
EnsureMinimumPkceCodeVerifierEntropy
Calculated shannon entropy seems sufficient
actual
210.57449695002674
expected
180.0
value
8olKNiyqCF1oRdHgfJfEz1nJ5UMEiLhuJAWdA3_WY30
2026-11-12 21:28:17 SUCCESS
EnsureMinimumPkceCodeVerifierLength
PKCE code verifier is of sufficient length
actual
344
required
344
2026-11-12 21:28:17 SUCCESS
EnsurePkceCodeVerifierNotUsed
Code verifier has not been used
code_verifier
8olKNiyqCF1oRdHgfJfEz1nJ5UMEiLhuJAWdA3_WY30
2026-11-12 21:28:17 SUCCESS
GenerateDpopAccessToken
Generated DPoP access token and jkt for DPoP Proof JWK
dpop_access_token
{
  "value": "zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T",
  "jkt": "6wt6AJdYTexW1eQgaGYBpWyF-f656sF6NenkRTTAg5k"
}
2026-11-12 21:28:17
GenerateAccessTokenExpiration
Set access_token_expiration to 900
2026-11-12 21:28:17 SUCCESS
CalculateAtHash
Successful at_hash encoding
at_hash
zX7kqk3261nrrbh1R9Rr1Q
2026-11-12 21:28:17
CreateRefreshToken
Created refresh token
refresh_token
DnuEMYPVLRLnSFLjjFZuSnCDUfFiIfDfkpoYsbCuXsrVBHriNC3521277919-[./;
2026-11-12 21:28:17 SUCCESS
CreateTokenEndpointResponse
Created token endpoint response
{
  "access_token": "zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T",
  "token_type": "DPoP",
  "refresh_token": "DnuEMYPVLRLnSFLjjFZuSnCDUfFiIfDfkpoYsbCuXsrVBHriNC3521277919-[./;",
  "scope": "eudi.pid.1",
  "expires_in": 900
}
token_endpoint_response_headers
{}
2026-11-12 21:28:17
VCIAddCredentialDataToAuthorizationDetailsForTokenEndpointResponse
Used credential_configuration from scope
credential_identifiers
[
  "eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209"
]
credential_configuration_ids
[
  "eu.europa.ec.eudi.pid.1"
]
credential_scope
eudi.pid.1
2026-11-12 21:28:17 SUCCESS
AddRarToTokenEndpointResponse
RAR payload included on token endpoint response
access_token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
token_type
DPoP
refresh_token
DnuEMYPVLRLnSFLjjFZuSnCDUfFiIfDfkpoYsbCuXsrVBHriNC3521277919-[./;
scope
eudi.pid.1
expires_in
900
authorization_details
[
  {
    "type": "openid_credential",
    "credential_configuration_id": "eu.europa.ec.eudi.pid.1",
    "credential_identifiers": [
      "eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209"
    ]
  }
]
2026-11-12 21:28:17 SUCCESS
CreateAuthorizationServerDpopNonce
Created Authorization Server DPoP nonce
authorization_server_dpop_nonce
tsAcrgvDUqAVQgFQATlcgqWqHmvjCzDAChNYpKvuiwqQyNmFpE9918811924$@:],*)>|_`(-/!&+`;$$#]`!~&;@}
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
200
outgoing_body
{
  "access_token": "zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T",
  "token_type": "DPoP",
  "refresh_token": "DnuEMYPVLRLnSFLjjFZuSnCDUfFiIfDfkpoYsbCuXsrVBHriNC3521277919-[./;",
  "scope": "eudi.pid.1",
  "expires_in": 900,
  "authorization_details": [
    {
      "type": "openid_credential",
      "credential_configuration_id": "eu.europa.ec.eudi.pid.1",
      "credential_identifiers": [
        "eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209"
      ]
    }
  ]
}
outgoing_headers
{
  "headers": {}
}
outgoing_path
token
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /test/a/siros-wallet-vci-test/nonce
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/test/a/siros-wallet-vci-test/nonce",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "content-length": "0",
  "sec-ch-ua-platform": "\"Windows\"",
  "dpop": "eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJzck04ako3ZWl6WUdTU1dnMG1EaTF3IiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3Qvbm9uY2UiLCJpYXQiOjE3OTQ1MTg4OTd9.NiDcH6aUPDa2qhLcPgXzOHzHWQwpqbfWyQcYxRcUVqP6levN-2rKKcwN9nuwOS-4MYU7LxB7e8TRNaSOm8h1AA",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept": "application/json",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "accept-language": "en-US",
  "sec-ch-ua-mobile": "?0",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/test/a/siros-wallet-vci-test/nonce
incoming_body_form_params
incoming_method
POST
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls12WithBCP195SecureCipherOrTls13
Found TLS 1.3 connection
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls13
TLS 1.3 in use
Nonce endpoint
2026-11-12 21:28:17 SUCCESS
CreateFapiInteractionIdIfNeeded
Created new FAPI interaction ID
fapi_interaction_id
37012867-6068-4b6e-b21e-e118ab830fe1
2026-11-12 21:28:17 SUCCESS
EnsureIncomingRequestMethodIsPost
Client correctly used http POST method
2026-11-12 21:28:17 SUCCESS
GenerateCredentialNonce
Created credential nonce
nonce
HXargZ6J97OJz2euaojdGWEYGn5akT26
2026-11-12 21:28:17 SUCCESS
GenerateCredentialNonceResponse
Created credential nonce response
credential_issuer_nonce_response
{
  "c_nonce": "HXargZ6J97OJz2euaojdGWEYGn5akT26"
}
credential_nonce_response_headers
{
  "x-fapi-interaction-id": "37012867-6068-4b6e-b21e-e118ab830fe1",
  "content-type": "application/json",
  "Cache-Control": "no-store"
}
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
200
outgoing_body
{
  "c_nonce": "HXargZ6J97OJz2euaojdGWEYGn5akT26"
}
outgoing_headers
{
  "headers": {
    "x-fapi-interaction-id": [
      "37012867-6068-4b6e-b21e-e118ab830fe1"
    ],
    "content-type": [
      "application/json"
    ],
    "Cache-Control": [
      "no-store"
    ]
  }
}
outgoing_path
nonce
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /test/a/siros-wallet-vci-test/credential
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/test/a/siros-wallet-vci-test/credential",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "content-length": "783",
  "sec-ch-ua-platform": "\"Windows\"",
  "authorization": "DPoP zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T",
  "accept-language": "en-US",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "sec-ch-ua-mobile": "?0",
  "dpop": "eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJaMElHYncwVm43WFNHaEwwU0ptckZnIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSJ9.u8qh0YwuVHUGWtu9f4AbyiCZwMD1sT27LyWSz_1WDk-G7lOXmZ40cXBQ1wLfIWGqQepN0Y61E1LhD9lMgpUzlg",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept": "application/json",
  "content-type": "application/json",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/test/a/siros-wallet-vci-test/credential
incoming_body_form_params
incoming_method
POST
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
{"credential_identifier":"eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209","proofs":{"jwt":["eyJhbGciOiJFUzI1NiIsImp3ayI6eyJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJrdHkiOiJFQyIsIngiOiJINGZPR0NCSDFzUXZEeGVWcG5kcFM2MHhMTmF0OElKRjQ0ZHdfWk10bHdrIiwieSI6Ilp2S250ZlFvZmlsY2IyUW93R0dKdjFSWVRfRmZwdmxXcHBQbUxMOWs5NTAifSwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImlhdCI6MTc5NDUxODg5NywiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3QuZW1vYml4LmNvLnVrOjg0NDMvdGVzdC9hL3Npcm9zLXdhbGxldC12Y2ktdGVzdC8iLCJub25jZSI6IkhYYXJnWjZKOTdPSnoyZXVhb2pkR1dFWUduNWFrVDI2In0.8rcWzak4WDR89mz-GaDfAZGCXWRr-PHTLoJf5YkF50pOviQmYFdKwwrB9Vnt_aFmmRbgl4t8tOE5TPXKA-aYEA"]}}
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
{
  "credential_identifier": "eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209",
  "proofs": {
    "jwt": [
      "eyJhbGciOiJFUzI1NiIsImp3ayI6eyJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJrdHkiOiJFQyIsIngiOiJINGZPR0NCSDFzUXZEeGVWcG5kcFM2MHhMTmF0OElKRjQ0ZHdfWk10bHdrIiwieSI6Ilp2S250ZlFvZmlsY2IyUW93R0dKdjFSWVRfRmZwdmxXcHBQbUxMOWs5NTAifSwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImlhdCI6MTc5NDUxODg5NywiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3QuZW1vYml4LmNvLnVrOjg0NDMvdGVzdC9hL3Npcm9zLXdhbGxldC12Y2ktdGVzdC8iLCJub25jZSI6IkhYYXJnWjZKOTdPSnoyZXVhb2pkR1dFWUduNWFrVDI2In0.8rcWzak4WDR89mz-GaDfAZGCXWRr-PHTLoJf5YkF50pOviQmYFdKwwrB9Vnt_aFmmRbgl4t8tOE5TPXKA-aYEA"
    ]
  }
}
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls12WithBCP195SecureCipherOrTls13
Found TLS 1.3 connection
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls13
TLS 1.3 in use
Credential endpoint
2026-11-12 21:28:17 SUCCESS
VCIEnsureBearerAccessTokenNotInParams
Client correctly did not send access token in query parameters or form body
2026-11-12 21:28:17 SUCCESS
ExtractDpopProofFromHeader
Found and parsed the incoming_dpop_proof from incoming_request
value
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJaMElHYncwVm43WFNHaEwwU0ptckZnIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSJ9.u8qh0YwuVHUGWtu9f4AbyiCZwMD1sT27LyWSz_1WDk-G7lOXmZ40cXBQ1wLfIWGqQepN0Y61E1LhD9lMgpUzlg
header
{
  "typ": "dpop+jwt",
  "alg": "ES256",
  "jwk": {
    "kty": "EC",
    "crv": "P-256",
    "x": "DbFdMmtbrS_tuMeijviaMWFJyiWZeluzMWYyWhP75oM",
    "y": "Wht5mxpOeET5hMmE5DNsYOsFX7bf-fzVG2r0CFmCLiQ"
  }
}
claims
{
  "htm": "POST",
  "ath": "zX7kqk3261nrrbh1R9Rr1f887t-2BmSHPLfGK2QtSAM",
  "htu": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/credential",
  "iat": 1794518897,
  "jti": "Z0IGbw0Vn7XSGhL0SJmrFg"
}
2026-11-12 21:28:17 SUCCESS
ExtractDpopAccessTokenFromHeader
Found DPoP access token
DPoP token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofResourceRequest
DPoP Proof type, alg, jwk, jti, htm, htu, iat, exp, nbf passed validation checks
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofIat
DPoP Proof iat value passed validation checks
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofNbf
DPoP Proof nbf value passed validation checks
2026-11-12 21:28:17 SUCCESS
EnsureDpopProofJtiNotAlreadyUsed
Proof jti seems to be unique to this request
jti
Z0IGbw0Vn7XSGhL0SJmrFg
2026-11-12 21:28:17
ValidateResourceEndpointDpopProofNonce
DPoP Proof nonce not supplied
expected
kABBzqgesFaAJeouxQexuwUcAwUSYJRHBbiDDuIYgwqnvISTgw4244537313@|)&).@%^>`=)%/^+):+#%,-_@'${}
2026-11-12 21:28:17
ValidateResourceEndpointDpopProofNonce
Resource endpoint DPoP nonce is invalid
expected
kABBzqgesFaAJeouxQexuwUcAwUSYJRHBbiDDuIYgwqnvISTgw4244537313@|)&).@%^>`=)%/^+):+#%,-_@'${}
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofSignature
DPoP Proof signature validated
DPoP Proof
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJaMElHYncwVm43WFNHaEwwU0ptckZnIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSJ9.u8qh0YwuVHUGWtu9f4AbyiCZwMD1sT27LyWSz_1WDk-G7lOXmZ40cXBQ1wLfIWGqQepN0Y61E1LhD9lMgpUzlg
2026-11-12 21:28:17 SUCCESS
ValidateDpopAccessToken
DPoP Access Token is valid
DPoP Access Token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:17 SUCCESS
ValidateDpopAccessTokenJkt
DPoP Access Token is constrained to DPoP Proof JWK
DPoP Access Token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofAccessTokenHash
DPoP Proof ath claim matches DPoP access token hash
ath
zX7kqk3261nrrbh1R9Rr1f887t-2BmSHPLfGK2QtSAM
2026-11-12 21:28:17 INFO
ExtractFapiDateHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-auth-date
path
headers.x-fapi-auth-date
mapped
object
incoming_request
2026-11-12 21:28:17 INFO
ExtractFapiIpAddressHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-customer-ip-address
path
headers.x-fapi-customer-ip-address
mapped
object
incoming_request
2026-11-12 21:28:17 INFO
ExtractFapiInteractionIdHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-interaction-id
path
headers.x-fapi-interaction-id
mapped
object
incoming_request
2026-11-12 21:28:17 SUCCESS
ValidateFAPIInteractionIdInResourceRequest
x-fapi-interaction-id in resource request headers is a valid UUID
interaction_id
37012867-6068-4b6e-b21e-e118ab830fe1
2026-11-12 21:28:17 SUCCESS
EnsureIncomingRequestMethodIsPost
Client correctly used http POST method
2026-11-12 21:28:17
CreateResourceEndpointDpopErrorResponse
Condition ran but did not log anything
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
401
outgoing_body
outgoing_headers
{
  "headers": {
    "WWW-Authenticate": [
      "DPoP error\u003d\"use_dpop_nonce\", error_description\u003d\"Resource server requires nonce in DPoP proof\""
    ],
    "DPoP-Nonce": [
      "kABBzqgesFaAJeouxQexuwUcAwUSYJRHBbiDDuIYgwqnvISTgw4244537313@|)\u0026).@%^\u003e`\u003d)%/^+):+#%,-_@\u0027${}"
    ]
  }
}
outgoing_path
credential
2026-11-12 21:28:17 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /test/a/siros-wallet-vci-test/credential
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/test/a/siros-wallet-vci-test/credential",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "content-length": "783",
  "sec-ch-ua-platform": "\"Windows\"",
  "authorization": "DPoP zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T",
  "accept-language": "en-US",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "sec-ch-ua-mobile": "?0",
  "dpop": "eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJxdDVkbUFOb2pOVlpRd2tfNU9mMFZ3IiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSIsIm5vbmNlIjoia0FCQnpxZ2VzRmFBSmVvdXhRZXh1d1VjQXdVU1lKUkhCYmlERHVJWWd3cW52SVNUZ3c0MjQ0NTM3MzEzQHwpJikuQCVePmA9KSUvXispOisjJSwtX0AnJHt9In0.-OWoXjI-FsPzY0Cw7ravn45brAJkxC35jG563_1GYaKsjSrgiD_5lBarhRnkDC52QdTT5umkF5DHJRRhqnJdaQ",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "accept": "application/json",
  "content-type": "application/json",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/test/a/siros-wallet-vci-test/credential
incoming_body_form_params
incoming_method
POST
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
{"credential_identifier":"eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209","proofs":{"jwt":["eyJhbGciOiJFUzI1NiIsImp3ayI6eyJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJrdHkiOiJFQyIsIngiOiJINGZPR0NCSDFzUXZEeGVWcG5kcFM2MHhMTmF0OElKRjQ0ZHdfWk10bHdrIiwieSI6Ilp2S250ZlFvZmlsY2IyUW93R0dKdjFSWVRfRmZwdmxXcHBQbUxMOWs5NTAifSwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImlhdCI6MTc5NDUxODg5NywiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3QuZW1vYml4LmNvLnVrOjg0NDMvdGVzdC9hL3Npcm9zLXdhbGxldC12Y2ktdGVzdC8iLCJub25jZSI6IkhYYXJnWjZKOTdPSnoyZXVhb2pkR1dFWUduNWFrVDI2In0.8rcWzak4WDR89mz-GaDfAZGCXWRr-PHTLoJf5YkF50pOviQmYFdKwwrB9Vnt_aFmmRbgl4t8tOE5TPXKA-aYEA"]}}
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
{
  "credential_identifier": "eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209",
  "proofs": {
    "jwt": [
      "eyJhbGciOiJFUzI1NiIsImp3ayI6eyJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJrdHkiOiJFQyIsIngiOiJINGZPR0NCSDFzUXZEeGVWcG5kcFM2MHhMTmF0OElKRjQ0ZHdfWk10bHdrIiwieSI6Ilp2S250ZlFvZmlsY2IyUW93R0dKdjFSWVRfRmZwdmxXcHBQbUxMOWs5NTAifSwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImlhdCI6MTc5NDUxODg5NywiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3QuZW1vYml4LmNvLnVrOjg0NDMvdGVzdC9hL3Npcm9zLXdhbGxldC12Y2ktdGVzdC8iLCJub25jZSI6IkhYYXJnWjZKOTdPSnoyZXVhb2pkR1dFWUduNWFrVDI2In0.8rcWzak4WDR89mz-GaDfAZGCXWRr-PHTLoJf5YkF50pOviQmYFdKwwrB9Vnt_aFmmRbgl4t8tOE5TPXKA-aYEA"
    ]
  }
}
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls12WithBCP195SecureCipherOrTls13
Found TLS 1.3 connection
2026-11-12 21:28:17 SUCCESS
EnsureIncomingTls13
TLS 1.3 in use
Credential endpoint
2026-11-12 21:28:17 SUCCESS
VCIEnsureBearerAccessTokenNotInParams
Client correctly did not send access token in query parameters or form body
2026-11-12 21:28:17 SUCCESS
ExtractDpopProofFromHeader
Found and parsed the incoming_dpop_proof from incoming_request
value
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJxdDVkbUFOb2pOVlpRd2tfNU9mMFZ3IiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSIsIm5vbmNlIjoia0FCQnpxZ2VzRmFBSmVvdXhRZXh1d1VjQXdVU1lKUkhCYmlERHVJWWd3cW52SVNUZ3c0MjQ0NTM3MzEzQHwpJikuQCVePmA9KSUvXispOisjJSwtX0AnJHt9In0.-OWoXjI-FsPzY0Cw7ravn45brAJkxC35jG563_1GYaKsjSrgiD_5lBarhRnkDC52QdTT5umkF5DHJRRhqnJdaQ
header
{
  "typ": "dpop+jwt",
  "alg": "ES256",
  "jwk": {
    "kty": "EC",
    "crv": "P-256",
    "x": "DbFdMmtbrS_tuMeijviaMWFJyiWZeluzMWYyWhP75oM",
    "y": "Wht5mxpOeET5hMmE5DNsYOsFX7bf-fzVG2r0CFmCLiQ"
  }
}
claims
{
  "htm": "POST",
  "ath": "zX7kqk3261nrrbh1R9Rr1f887t-2BmSHPLfGK2QtSAM",
  "htu": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/credential",
  "iat": 1794518897,
  "nonce": "kABBzqgesFaAJeouxQexuwUcAwUSYJRHBbiDDuIYgwqnvISTgw4244537313@|)\u0026).@%^\u003e`\u003d)%/^+):+#%,-_@\u0027${}",
  "jti": "qt5dmANojNVZQwk_5Of0Vw"
}
2026-11-12 21:28:17 SUCCESS
ExtractDpopAccessTokenFromHeader
Found DPoP access token
DPoP token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofResourceRequest
DPoP Proof type, alg, jwk, jti, htm, htu, iat, exp, nbf passed validation checks
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofIat
DPoP Proof iat value passed validation checks
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofNbf
DPoP Proof nbf value passed validation checks
2026-11-12 21:28:17 SUCCESS
EnsureDpopProofJtiNotAlreadyUsed
Proof jti seems to be unique to this request
jti
qt5dmANojNVZQwk_5Of0Vw
2026-11-12 21:28:17 SUCCESS
ValidateResourceEndpointDpopProofNonce
Resource endpoint DPoP nonce matches expected value
expected
kABBzqgesFaAJeouxQexuwUcAwUSYJRHBbiDDuIYgwqnvISTgw4244537313@|)&).@%^>`=)%/^+):+#%,-_@'${}
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofSignature
DPoP Proof signature validated
DPoP Proof
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJxdDVkbUFOb2pOVlpRd2tfNU9mMFZ3IiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSIsIm5vbmNlIjoia0FCQnpxZ2VzRmFBSmVvdXhRZXh1d1VjQXdVU1lKUkhCYmlERHVJWWd3cW52SVNUZ3c0MjQ0NTM3MzEzQHwpJikuQCVePmA9KSUvXispOisjJSwtX0AnJHt9In0.-OWoXjI-FsPzY0Cw7ravn45brAJkxC35jG563_1GYaKsjSrgiD_5lBarhRnkDC52QdTT5umkF5DHJRRhqnJdaQ
2026-11-12 21:28:17 SUCCESS
ValidateDpopAccessToken
DPoP Access Token is valid
DPoP Access Token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:17 SUCCESS
ValidateDpopAccessTokenJkt
DPoP Access Token is constrained to DPoP Proof JWK
DPoP Access Token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:17 SUCCESS
ValidateDpopProofAccessTokenHash
DPoP Proof ath claim matches DPoP access token hash
ath
zX7kqk3261nrrbh1R9Rr1f887t-2BmSHPLfGK2QtSAM
2026-11-12 21:28:17 INFO
ExtractFapiDateHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-auth-date
path
headers.x-fapi-auth-date
mapped
object
incoming_request
2026-11-12 21:28:17 INFO
ExtractFapiIpAddressHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-customer-ip-address
path
headers.x-fapi-customer-ip-address
mapped
object
incoming_request
2026-11-12 21:28:17 INFO
ExtractFapiInteractionIdHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-interaction-id
path
headers.x-fapi-interaction-id
mapped
object
incoming_request
2026-11-12 21:28:17 SUCCESS
ValidateFAPIInteractionIdInResourceRequest
x-fapi-interaction-id in resource request headers is a valid UUID
interaction_id
37012867-6068-4b6e-b21e-e118ab830fe1
2026-11-12 21:28:17 SUCCESS
EnsureIncomingRequestMethodIsPost
Client correctly used http POST method
2026-11-12 21:28:17 SUCCESS
VCIEnsureCredentialRequestUsesApplicationJson
Credential request Content-Type is application/json
content_type
application/json
2026-11-12 21:28:17 SUCCESS
VCIEnsureCredentialRequestEncryptedIfResponseEncryptionRequested
Plaintext credential request body does not include credential_response_encryption
content_type
application/json
2026-11-12 21:28:17 SUCCESS
VCIValidateCredentialRequestStructure
OID4VCI Credential Request input is valid
input
{
  "credential_identifier": "eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209",
  "proofs": {
    "jwt": [
      "eyJhbGciOiJFUzI1NiIsImp3ayI6eyJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJrdHkiOiJFQyIsIngiOiJINGZPR0NCSDFzUXZEeGVWcG5kcFM2MHhMTmF0OElKRjQ0ZHdfWk10bHdrIiwieSI6Ilp2S250ZlFvZmlsY2IyUW93R0dKdjFSWVRfRmZwdmxXcHBQbUxMOWs5NTAifSwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImlhdCI6MTc5NDUxODg5NywiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3QuZW1vYml4LmNvLnVrOjg0NDMvdGVzdC9hL3Npcm9zLXdhbGxldC12Y2ktdGVzdC8iLCJub25jZSI6IkhYYXJnWjZKOTdPSnoyZXVhb2pkR1dFWUduNWFrVDI2In0.8rcWzak4WDR89mz-GaDfAZGCXWRr-PHTLoJf5YkF50pOviQmYFdKwwrB9Vnt_aFmmRbgl4t8tOE5TPXKA-aYEA"
    ]
  }
}
schema_link
/json-schemas/oid4vci/credential_request-1_0.json
2026-11-12 21:28:17 SUCCESS
CheckForUnexpectedParametersInCredentialRequest
No unknown properties were found in the OID4VCI Credential Request
input
{
  "credential_identifier": "eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209",
  "proofs": {
    "jwt": [
      "eyJhbGciOiJFUzI1NiIsImp3ayI6eyJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJrdHkiOiJFQyIsIngiOiJINGZPR0NCSDFzUXZEeGVWcG5kcFM2MHhMTmF0OElKRjQ0ZHdfWk10bHdrIiwieSI6Ilp2S250ZlFvZmlsY2IyUW93R0dKdjFSWVRfRmZwdmxXcHBQbUxMOWs5NTAifSwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImlhdCI6MTc5NDUxODg5NywiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3QuZW1vYml4LmNvLnVrOjg0NDMvdGVzdC9hL3Npcm9zLXdhbGxldC12Y2ktdGVzdC8iLCJub25jZSI6IkhYYXJnWjZKOTdPSnoyZXVhb2pkR1dFWUduNWFrVDI2In0.8rcWzak4WDR89mz-GaDfAZGCXWRr-PHTLoJf5YkF50pOviQmYFdKwwrB9Vnt_aFmmRbgl4t8tOE5TPXKA-aYEA"
    ]
  }
}
schema_link
/json-schemas/oid4vci/credential_request-1_0.json
2026-11-12 21:28:17
VCIResolveRequestedCredentialConfigurationFromRequest
Found requested credential_configuration via credential_identifier eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209
credential_identifier
eu.europa.ec.eudi.pid.1:c46865e7-bea2-4f11-afb6-b9e80dae2209
credential_configuration
{
  "format": "dc+sd-jwt",
  "vct": "urn:eudi:pid:1",
  "cryptographic_binding_methods_supported": [
    "jwk"
  ],
  "credential_signing_alg_values_supported": [
    "ES256"
  ],
  "proof_types_supported": {
    "jwt": {
      "proof_signing_alg_values_supported": [
        "ES256"
      ]
    }
  },
  "credential_metadata": {
    "display": [
      {
        "name": "Fake PID BoFJ6lUNUofmpLm",
        "description": "OpenID Conformance Test Fake PID description"
      }
    ]
  },
  "scope": "eudi.pid.1"
}
2026-11-12 21:28:17 SUCCESS
VCIResolveRequestedCredentialConfigurationFromRequest
Resolved requested credential_configuration to eu.europa.ec.eudi.pid.1
credential_configuration
{
  "format": "dc+sd-jwt",
  "vct": "urn:eudi:pid:1",
  "cryptographic_binding_methods_supported": [
    "jwk"
  ],
  "credential_signing_alg_values_supported": [
    "ES256"
  ],
  "proof_types_supported": {
    "jwt": {
      "proof_signing_alg_values_supported": [
        "ES256"
      ]
    }
  },
  "credential_metadata": {
    "display": [
      {
        "name": "Fake PID BoFJ6lUNUofmpLm",
        "description": "OpenID Conformance Test Fake PID description"
      }
    ]
  },
  "scope": "eudi.pid.1"
}
2026-11-12 21:28:17
VCIExtractCredentialRequestProof
Found proofs element in credential request
proofs
{
  "jwt": [
    "eyJhbGciOiJFUzI1NiIsImp3ayI6eyJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJrdHkiOiJFQyIsIngiOiJINGZPR0NCSDFzUXZEeGVWcG5kcFM2MHhMTmF0OElKRjQ0ZHdfWk10bHdrIiwieSI6Ilp2S250ZlFvZmlsY2IyUW93R0dKdjFSWVRfRmZwdmxXcHBQbUxMOWs5NTAifSwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImlhdCI6MTc5NDUxODg5NywiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3QuZW1vYml4LmNvLnVrOjg0NDMvdGVzdC9hL3Npcm9zLXdhbGxldC12Y2ktdGVzdC8iLCJub25jZSI6IkhYYXJnWjZKOTdPSnoyZXVhb2pkR1dFWUduNWFrVDI2In0.8rcWzak4WDR89mz-GaDfAZGCXWRr-PHTLoJf5YkF50pOviQmYFdKwwrB9Vnt_aFmmRbgl4t8tOE5TPXKA-aYEA"
  ]
}
2026-11-12 21:28:17
VCIExtractCredentialRequestProof
Found 1 JWT(s) for 'jwt' proof.
jwts
[
  "eyJhbGciOiJFUzI1NiIsImp3ayI6eyJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJrdHkiOiJFQyIsIngiOiJINGZPR0NCSDFzUXZEeGVWcG5kcFM2MHhMTmF0OElKRjQ0ZHdfWk10bHdrIiwieSI6Ilp2S250ZlFvZmlsY2IyUW93R0dKdjFSWVRfRmZwdmxXcHBQbUxMOWs5NTAifSwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImlhdCI6MTc5NDUxODg5NywiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3QuZW1vYml4LmNvLnVrOjg0NDMvdGVzdC9hL3Npcm9zLXdhbGxldC12Y2ktdGVzdC8iLCJub25jZSI6IkhYYXJnWjZKOTdPSnoyZXVhb2pkR1dFWUduNWFrVDI2In0.8rcWzak4WDR89mz-GaDfAZGCXWRr-PHTLoJf5YkF50pOviQmYFdKwwrB9Vnt_aFmmRbgl4t8tOE5TPXKA-aYEA"
]
2026-11-12 21:28:17 SUCCESS
VCIExtractCredentialRequestProof
Extracted 1 'jwt' proof(s) from credential request
proof_jwts
[
  {
    "value": "eyJhbGciOiJFUzI1NiIsImp3ayI6eyJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJrdHkiOiJFQyIsIngiOiJINGZPR0NCSDFzUXZEeGVWcG5kcFM2MHhMTmF0OElKRjQ0ZHdfWk10bHdrIiwieSI6Ilp2S250ZlFvZmlsY2IyUW93R0dKdjFSWVRfRmZwdmxXcHBQbUxMOWs5NTAifSwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImlhdCI6MTc5NDUxODg5NywiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3QuZW1vYml4LmNvLnVrOjg0NDMvdGVzdC9hL3Npcm9zLXdhbGxldC12Y2ktdGVzdC8iLCJub25jZSI6IkhYYXJnWjZKOTdPSnoyZXVhb2pkR1dFWUduNWFrVDI2In0.8rcWzak4WDR89mz-GaDfAZGCXWRr-PHTLoJf5YkF50pOviQmYFdKwwrB9Vnt_aFmmRbgl4t8tOE5TPXKA-aYEA",
    "header": {
      "typ": "openid4vci-proof+jwt",
      "alg": "ES256",
      "jwk": {
        "kty": "EC",
        "crv": "P-256",
        "kid": "Mb4ps9Qb67DFjYUbHkG2ZFwE2nm4m1DXiLo4MvDPVSs",
        "x": "H4fOGCBH1sQvDxeVpndpS60xLNat8IJF44dw_ZMtlwk",
        "y": "ZvKntfQofilcb2QowGGJv1RYT_FfpvlWppPmLL9k950"
      }
    },
    "claims": {
      "aud": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
      "iss": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
      "iat": 1794518897,
      "nonce": "HXargZ6J97OJz2euaojdGWEYGn5akT26"
    }
  }
]
proof_count
1
2026-11-12 21:28:17 SUCCESS
VCIEnsureSingleProofWhenBatchIssuanceNotAdvertised
The wallet sent a single proof
proofs_sent
1
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Detected proof type jwt is allowed by credential_configuration_id: eu.europa.ec.eudi.pid.1
credential_configuration_id
eu.europa.ec.eudi.pid.1
proof_type
jwt
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Found expected proof type: jwt
header
openid4vci-proof+jwt
proof_type
jwt
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Found expected algorithm for proof type: jwt
algorithm
{
  "name": "ES256",
  "requirement": "RECOMMENDED"
}
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Found public key by jwk header
jwk
{
  "kty": "EC",
  "crv": "P-256",
  "kid": "Mb4ps9Qb67DFjYUbHkG2ZFwE2nm4m1DXiLo4MvDPVSs",
  "x": "H4fOGCBH1sQvDxeVpndpS60xLNat8IJF44dw_ZMtlwk",
  "y": "ZvKntfQofilcb2QowGGJv1RYT_FfpvlWppPmLL9k950"
}
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Detected an EC public key
kid
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Detected EC public key with curve P-256
kid
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Skipping nested key_attestation validation, as it is not required by credential_configuration_id: eu.europa.ec.eudi.pid.1
credential_configuration_id
eu.europa.ec.eudi.pid.1
key_attestation
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Detected valid proof JWT for proof type: jwt
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Detected expected nonce
nonce
HXargZ6J97OJz2euaojdGWEYGn5akT26
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
JWT proof iat is within acceptable time window
max_accepted_iat
"Nov 12, 2026, 9:33:17 PM"
now
"Nov 12, 2026, 9:28:17 PM"
min_accepted_iat
"Nov 12, 2026, 9:23:17 PM"
iat
"Nov 12, 2026, 9:28:17 PM"
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Found expected audience 'https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/' for proof type: jwt
audience
https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/
proof_type
jwt
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Successfully validated proof jwt
claims
{
  "aud": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
  "iss": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/",
  "iat": 1794518897,
  "nonce": "HXargZ6J97OJz2euaojdGWEYGn5akT26"
}
jwt
eyJhbGciOiJFUzI1NiIsImp3ayI6eyJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJrdHkiOiJFQyIsIngiOiJINGZPR0NCSDFzUXZEeGVWcG5kcFM2MHhMTmF0OElKRjQ0ZHdfWk10bHdrIiwieSI6Ilp2S250ZlFvZmlsY2IyUW93R0dKdjFSWVRfRmZwdmxXcHBQbUxMOWs5NTAifSwidHlwIjoib3BlbmlkNHZjaS1wcm9vZitqd3QifQ.eyJhdWQiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0LyIsImlhdCI6MTc5NDUxODg5NywiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3QuZW1vYml4LmNvLnVrOjg0NDMvdGVzdC9hL3Npcm9zLXdhbGxldC12Y2ktdGVzdC8iLCJub25jZSI6IkhYYXJnWjZKOTdPSnoyZXVhb2pkR1dFWUduNWFrVDI2In0.8rcWzak4WDR89mz-GaDfAZGCXWRr-PHTLoJf5YkF50pOviQmYFdKwwrB9Vnt_aFmmRbgl4t8tOE5TPXKA-aYEA
2026-11-12 21:28:17
VCIValidateCredentialRequestJwtProof
Detected and invalidated expected nonce
nonce
HXargZ6J97OJz2euaojdGWEYGn5akT26
2026-11-12 21:28:17 SUCCESS
VCIValidateCredentialRequestJwtProof
Successfully validated 1 proof jwt(s)
proof_count
1
2026-11-12 21:28:17
VCIValidateAttestedKeysInKeyAttestationFromJwtProof
Skipping key_attestation_jwt validation, as it is not present in the environment
2026-11-12 21:28:17 INFO
CreateFapiInteractionIdIfNeeded
Found existing FAPI interaction ID
fapi_interaction_id
37012867-6068-4b6e-b21e-e118ab830fe1
2026-11-12 21:28:17
oid4vci-1_0-wallet-test-credential-issuance-notification
Creating credential with format: dc+sd-jwt, credential_configuration: {"format":"dc+sd-jwt","vct":"urn:eudi:pid:1","cryptographic_binding_methods_supported":["jwk"],"credential_signing_alg_values_supported":["ES256"],"proof_types_supported":{"jwt":{"proof_signing_alg_values_supported":["ES256"]}},"credential_metadata":{"display":[{"name":"Fake PID BoFJ6lUNUofmpLm","description":"OpenID Conformance Test Fake PID description"}]},"scope":"eudi.pid.1"}, variant credential_format: sd_jwt_vc
2026-11-12 21:28:17
CreateSdJwtCredential
Found 1 JWK(s) from jwt proofs
keys
[
  {
    "kty": "EC",
    "crv": "P-256",
    "kid": "Mb4ps9Qb67DFjYUbHkG2ZFwE2nm4m1DXiLo4MvDPVSs",
    "x": "H4fOGCBH1sQvDxeVpndpS60xLNat8IJF44dw_ZMtlwk",
    "y": "ZvKntfQofilcb2QowGGJv1RYT_FfpvlWppPmLL9k950"
  }
]
2026-11-12 21:28:17
CreateSdJwtCredential
Created urn:eudi:pid:1 in SD-JWT VC format
credential_count
1
credentials
[
  {
    "credential": "eyJ4NWMiOlsiTUlJQmF6Q0NBUktnQXdJQkFnSVVRWVQrcXZ6L3NvbTluYjZ2T0xCZWFINVFHVG93Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJZeEZEQVNCZ05WQkFNTUMzUmxjM1F0YzJsbmJtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVEQzlYOWxsN2o5SmFsK0FIdU1nUFJLRFZ1NlF4NTc1ZFM3anA2Qnl3ZWgyTlBvTjU4WVNob2h0M1dBTys1em9Sb1FKWG9iTktOSXFYUStPMG5vSm1RNk5DTUVBd0hRWURWUjBPQkJZRUZIeEF6MWp3OW1YSmxWZmNRTUZrY0RyZW9QNXJNQjhHQTFVZEl3UVlNQmFBRklxQzM0VDd6RjlYeHYxdE1lenRiKy84RndOeE1Bb0dDQ3FHU000OUJBTUNBMGNBTUVRQ0lCZkV6NnFYOTBNNDY1ZFJqUXpvOUtzcjdsanJsTi9mWnRMWm9sZ2FmQXJBQWlCQTNlcmFzOHJvTzlNMHQvTm55L0hwb2QvNGJaMlM2Z0lsS0dGYzVDNkVtUT09IiwiTUlJQmVEQ0NBUitnQXdJQkFnSVVYVnhVVGdRQTJYWHFBNVhmNDNZQTFyaDdnR0l3Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJJeEVEQU9CZ05WQkFNTUIxUmxjM1FnUTBFd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DQUFSWlJvQnFmbGtTREFoRDhmSE00bDFjSVl6eFNGZFVyc09QTDBlWnJaVUN2OUV4M3BpeU9xekZJL2tESUwybVBPeC9KZlYyY2NEc2VQeHVtM0dFT0syYW8xTXdVVEFkQmdOVkhRNEVGZ1FVaW9MZmhQdk1YMWZHL1cweDdPMXY3L3dYQTNFd0h3WURWUjBqQkJnd0ZvQVVpb0xmaFB2TVgxZkcvVzB4N08xdjcvd1hBM0V3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJIUWh1WHpsR0tDb082SjVvblB1dXRBWFpoK3pkYWlLVGtnSnNzd0dtL01RSWdXN0ZaMzg5Y0tadlFzY2RYZ2VVbnY0bngwQkFHT1FqeUdlYTRZZkdpTnBnPSJdLCJ0eXAiOiJkYytzZC1qd3QiLCJhbGciOiJFUzI1NiJ9.eyJpc3MiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0IiwiX3NkIjpbIi1xV0x2T19UV1hRNm43em1jRlZKdEE4UHVTRm9sNjBXTGNSTl9TLTVLdUUiLCIyNE10WDF5N01qbkVKOXFldDV6bUstbTB5UVVMRXE1VTdlUFBTMU4yUlpzIiwiM09zQWh2WXRWdnpnQ2xMRmJMaHprazZzeHdqRjQxQ0VyaWFRUTkxQkhmbyIsIjVpajZBWFY0R3ZabFZPSU5Qc2YyV0dXVHpvdDVDVnNmNExYcjd6RGQ4bEUiLCJBNlN1UnhzajR1NE1aU05YWmpyRkREVm91NkRJVXdjQV9CaktCVHZVUnlRIiwiS2xoUnpiNWU4eGtjb3VUT3EwMjRGb0R0UFBINzRRODJRa0htY2VlWkoyUSIsIk5DRUp1MlN1dmZpM3JaNVROSklwVEh3SHZlY096TnpwTzJLNDZibWJJUUUiLCJPUllzX0ZsSmdiUDlubzZ6X0lCQ0lxaklURW03UTF6WXdTZ0ZsM1VDemtZIiwiU3lWYjJCLWVkMWR3WmJrNXRuRmxYX29HM2k3QmRUZk5VVV9KX1UzVGE3ZyIsIl9VTlRGOEJObWdwVFpLOGZyVGdLN2ZVSzhVSTQ0NUg0cjhFUm9YNFJWcjQiLCJ5WEVOMXNBRlhraHM4TU5BclBMamE3QlkzYk9EejhMMWRUeV8zMTIzZDJJIl0sImNuZiI6eyJqd2siOnsia3R5IjoiRUMiLCJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJ4IjoiSDRmT0dDQkgxc1F2RHhlVnBuZHBTNjB4TE5hdDhJSkY0NGR3X1pNdGx3ayIsInkiOiJadktudGZRb2ZpbGNiMlFvd0dHSnYxUllUX0ZmcHZsV3BwUG1MTDlrOTUwIn19LCJleHAiOjE3OTQ2MDAwMDAsImlhdCI6MTc5NDUxNzIwMCwidmN0IjoidXJuOmV1ZGk6cGlkOjEifQ.GOZq7qgyKdY37Pt7oE4gNqrGlE_N3eti-Y2EARhHUa6Qb72ylwuOSYqYJuouNv8ckASW4cldXK4cCuycuoHoUQ~WyJ1UmFoNU5hbFVZeDVkWEU1VktpVjF3IiwiZ2l2ZW5fbmFtZSIsIkplYW4iXQ~WyJjaElXUjYwbTgxOWEzM0RmeHdUX2F3IiwiZmFtaWx5X25hbWUiLCJEdXBvbnQiXQ~WyJaTG1ON0ZGazVTS2RsbkwtVm5JTzRnIiwiYmlydGhkYXRlIiwiMTk4MC0wNS0yMyJd~WyJ2OHB5aTV0VVJjakx6cENJNkpQZGJBIiwiRlIiXQ~WyJyVWM0N1BJRFZtT1pybzJWRFlfWDF3IiwibmF0aW9uYWxpdGllcyIsW3siLi4uIjoiUWJlYnczVVdUZFZqVE5DRVhWQnlCZ3VmRmVHVFl2WE5jMm5YcUZxajQ4MCJ9XV0~WyJSVVlybWYwRVhnTVFGNU44ZHNwLTJ3IiwiY291bnRyeSIsIkZSIl0~WyJyaG1UUUFyTUpUU2NoQkk1dVpJbDJBIiwicGxhY2Vfb2ZfYmlydGgiLHsiX3NkIjpbIkkwZ3RhQ2dmWjRPTkVGcC1BZnZnaEFOOTZBd1MtUk9wWk1kQW52enJOZjQiXX1d~WyJIMWVQOXdzWU9GTkljVTNqUml0b2F3IiwiaXNzdWluZ19hdXRob3JpdHkiLCJUZXN0IElzc3VpbmcgQXV0aG9yaXR5Il0~WyJnOFlUTUtkS1J3RHBmOWpSdHZXbXJBIiwiaXNzdWluZ19jb3VudHJ5IiwiRlIiXQ~WyJ1ZWxqWm5CWkVtdThvSVcwdk1zYW9nIiwicGljdHVyZSIsImRhdGE6aW1hZ2UvanBlZztiYXNlNjQsLzlqLzRBQVFTa1pKUmdBQkFRQUFBUUFCQUFELzJ3QkRBQkFMREE0TUNoQU9EUTRTRVJBVEdDZ2FHQllXR0RFakpSMG9Pak05UERrek9EZEFTRnhPUUVSWFJUYzRVRzFSVjE5aVoyaG5QazF4ZVhCa2VGeGxaMlAvMndCREFSRVNFaGdWR0M4YUdpOWpRamhDWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyUC93QUFSQ0FBRkFBUURBU0lBQWhFQkF4RUIvOFFBSHdBQUFRVUJBUUVCQVFFQUFBQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkFBQWdFREF3SUVBd1VGQkFRQUFBRjlBUUlEQUFRUkJSSWhNVUVHRTFGaEJ5SnhGREtCa2FFSUkwS3h3UlZTMGZBa00ySnlnZ2tLRmhjWUdSb2xKaWNvS1NvME5UWTNPRGs2UTBSRlJrZElTVXBUVkZWV1YxaFpXbU5rWldabmFHbHFjM1IxZG5kNGVYcURoSVdHaDRpSmlwS1RsSldXbDVpWm1xS2pwS1dtcDZpcHFyS3p0TFcydDdpNXVzTER4TVhHeDhqSnl0TFQxTlhXMTlqWjJ1SGk0K1RsNXVmbzZlcng4dlAwOWZiMytQbjYvOFFBSHdFQUF3RUJBUUVCQVFFQkFRQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkVBQWdFQ0JBUURCQWNGQkFRQUFRSjNBQUVDQXhFRUJTRXhCaEpCVVFkaGNSTWlNb0VJRkVLUm9iSEJDU016VXZBVlluTFJDaFlrTk9FbDhSY1lHUm9tSnlncEtqVTJOemc1T2tORVJVWkhTRWxLVTFSVlZsZFlXVnBqWkdWbVoyaHBhbk4wZFhaM2VIbDZnb09FaFlhSGlJbUtrcE9VbFphWG1KbWFvcU9rcGFhbnFLbXFzck8wdGJhM3VMbTZ3c1BFeGNiSHlNbkswdFBVMWRiWDJObmE0dVBrNWVibjZPbnE4dlAwOWZiMytQbjYvOW9BREFNQkFBSVJBeEVBUHdDblJSUldacWYvMlE9PSJd~"
  }
]
2026-11-12 21:28:17 SUCCESS
VCICreateDeferredCredentialResponse
Created deferred credential response with transaction_id
transaction_id
2JcW3K8FUYFFfFlBnpX9Xk3qwT8mEaQM
credential_endpoint_response
{
  "transaction_id": "2JcW3K8FUYFFfFlBnpX9Xk3qwT8mEaQM",
  "interval": 5
}
credential_endpoint_response_headers
{
  "x-fapi-interaction-id": "37012867-6068-4b6e-b21e-e118ab830fe1",
  "content-type": "application/json"
}
2026-11-12 21:28:17
ClearAccessTokenFromRequest
Removed incoming access token from environment
2026-11-12 21:28:17 SUCCESS
CreateResourceServerDpopNonce
Created Resource Server nonce
resource_server_dpop_nonce
MBaDqyoBNuqyCGvIoTsNtnhuJVzEduDFKZAedPtnZonPyjPusa6253574295^!)*(~]#`-_<_':~,/$<);}}&&{_]'
2026-11-12 21:28:17
oid4vci-1_0-wallet-test-credential-issuance-notification
Credential endpoint responded with HTTP 202; the wallet still needs to fetch the credential (e.g. via the deferred credential endpoint) before the test can be considered complete.
2026-11-12 21:28:17 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
202
outgoing_body
{
  "transaction_id": "2JcW3K8FUYFFfFlBnpX9Xk3qwT8mEaQM",
  "interval": 5
}
outgoing_headers
{
  "headers": {
    "x-fapi-interaction-id": [
      "37012867-6068-4b6e-b21e-e118ab830fe1"
    ],
    "content-type": [
      "application/json"
    ]
  }
}
outgoing_path
credential
2026-11-12 21:28:22 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /test/a/siros-wallet-vci-test/deferred_credential
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/test/a/siros-wallet-vci-test/deferred_credential",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "content-length": "53",
  "sec-ch-ua-platform": "\"Windows\"",
  "authorization": "DPoP zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T",
  "accept-language": "en-US",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "sec-ch-ua-mobile": "?0",
  "dpop": "eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJZTlZONkRZRmd5eDRLeTh6MWJDMGF3IiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvZGVmZXJyZWRfY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSJ9.kSBXAZ7O4uKnnKWWGochqis_r1R8og-Wccnocp31eZDcH6N9swckFWVBhHcfpz7TTo-Uk50QiZ4M3tlghzmHTA",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "content-type": "application/json",
  "accept": "*/*",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/test/a/siros-wallet-vci-test/deferred_credential
incoming_body_form_params
incoming_method
POST
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
{"transaction_id":"2JcW3K8FUYFFfFlBnpX9Xk3qwT8mEaQM"}
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
{
  "transaction_id": "2JcW3K8FUYFFfFlBnpX9Xk3qwT8mEaQM"
}
2026-11-12 21:28:22 SUCCESS
EnsureIncomingTls12WithBCP195SecureCipherOrTls13
Found TLS 1.3 connection
2026-11-12 21:28:22 SUCCESS
EnsureIncomingTls13
TLS 1.3 in use
Deferred credential endpoint
2026-11-12 21:28:22 SUCCESS
VCIEnsureBearerAccessTokenNotInParams
Client correctly did not send access token in query parameters or form body
2026-11-12 21:28:22 SUCCESS
ExtractDpopProofFromHeader
Found and parsed the incoming_dpop_proof from incoming_request
value
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJZTlZONkRZRmd5eDRLeTh6MWJDMGF3IiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvZGVmZXJyZWRfY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSJ9.kSBXAZ7O4uKnnKWWGochqis_r1R8og-Wccnocp31eZDcH6N9swckFWVBhHcfpz7TTo-Uk50QiZ4M3tlghzmHTA
header
{
  "typ": "dpop+jwt",
  "alg": "ES256",
  "jwk": {
    "kty": "EC",
    "crv": "P-256",
    "x": "DbFdMmtbrS_tuMeijviaMWFJyiWZeluzMWYyWhP75oM",
    "y": "Wht5mxpOeET5hMmE5DNsYOsFX7bf-fzVG2r0CFmCLiQ"
  }
}
claims
{
  "htm": "POST",
  "ath": "zX7kqk3261nrrbh1R9Rr1f887t-2BmSHPLfGK2QtSAM",
  "htu": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/deferred_credential",
  "iat": 1794518897,
  "jti": "YNVN6DYFgyx4Ky8z1bC0aw"
}
2026-11-12 21:28:22 SUCCESS
ExtractDpopAccessTokenFromHeader
Found DPoP access token
DPoP token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofResourceRequest
DPoP Proof type, alg, jwk, jti, htm, htu, iat, exp, nbf passed validation checks
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofIat
DPoP Proof iat value passed validation checks
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofNbf
DPoP Proof nbf value passed validation checks
2026-11-12 21:28:22 SUCCESS
EnsureDpopProofJtiNotAlreadyUsed
Proof jti seems to be unique to this request
jti
YNVN6DYFgyx4Ky8z1bC0aw
2026-11-12 21:28:22
ValidateResourceEndpointDpopProofNonce
DPoP Proof nonce not supplied
expected
MBaDqyoBNuqyCGvIoTsNtnhuJVzEduDFKZAedPtnZonPyjPusa6253574295^!)*(~]#`-_<_':~,/$<);}}&&{_]'
2026-11-12 21:28:22
ValidateResourceEndpointDpopProofNonce
Resource endpoint DPoP nonce is invalid
expected
MBaDqyoBNuqyCGvIoTsNtnhuJVzEduDFKZAedPtnZonPyjPusa6253574295^!)*(~]#`-_<_':~,/$<);}}&&{_]'
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofSignature
DPoP Proof signature validated
DPoP Proof
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJZTlZONkRZRmd5eDRLeTh6MWJDMGF3IiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvZGVmZXJyZWRfY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSJ9.kSBXAZ7O4uKnnKWWGochqis_r1R8og-Wccnocp31eZDcH6N9swckFWVBhHcfpz7TTo-Uk50QiZ4M3tlghzmHTA
2026-11-12 21:28:22 SUCCESS
ValidateDpopAccessToken
DPoP Access Token is valid
DPoP Access Token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:22 SUCCESS
ValidateDpopAccessTokenJkt
DPoP Access Token is constrained to DPoP Proof JWK
DPoP Access Token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofAccessTokenHash
DPoP Proof ath claim matches DPoP access token hash
ath
zX7kqk3261nrrbh1R9Rr1f887t-2BmSHPLfGK2QtSAM
2026-11-12 21:28:22 INFO
ExtractFapiDateHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-auth-date
path
headers.x-fapi-auth-date
mapped
object
incoming_request
2026-11-12 21:28:22 INFO
ExtractFapiIpAddressHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-customer-ip-address
path
headers.x-fapi-customer-ip-address
mapped
object
incoming_request
2026-11-12 21:28:22 INFO
ExtractFapiInteractionIdHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-interaction-id
path
headers.x-fapi-interaction-id
mapped
object
incoming_request
2026-11-12 21:28:22 SUCCESS
ValidateFAPIInteractionIdInResourceRequest
x-fapi-interaction-id in resource request headers is a valid UUID
interaction_id
37012867-6068-4b6e-b21e-e118ab830fe1
2026-11-12 21:28:22 SUCCESS
VCIEnsureCredentialRequestUsesApplicationJson
Credential request Content-Type is application/json
content_type
application/json
2026-11-12 21:28:22 SUCCESS
VCIEnsureCredentialRequestEncryptedIfResponseEncryptionRequested
Plaintext credential request body does not include credential_response_encryption
content_type
application/json
2026-11-12 21:28:22 SUCCESS
VCIValidateDeferredCredentialRequest
Deferred credential request is valid
transaction_id
2JcW3K8FUYFFfFlBnpX9Xk3qwT8mEaQM
2026-11-12 21:28:22 INFO
CreateFapiInteractionIdIfNeeded
Found existing FAPI interaction ID
fapi_interaction_id
37012867-6068-4b6e-b21e-e118ab830fe1
2026-11-12 21:28:22 SUCCESS
VCICreateCredentialEndpointResponse
Created credential response object
credential_count
1
credential_endpoint_response
{
  "credentials": [
    {
      "credential": "eyJ4NWMiOlsiTUlJQmF6Q0NBUktnQXdJQkFnSVVRWVQrcXZ6L3NvbTluYjZ2T0xCZWFINVFHVG93Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJZeEZEQVNCZ05WQkFNTUMzUmxjM1F0YzJsbmJtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVEQzlYOWxsN2o5SmFsK0FIdU1nUFJLRFZ1NlF4NTc1ZFM3anA2Qnl3ZWgyTlBvTjU4WVNob2h0M1dBTys1em9Sb1FKWG9iTktOSXFYUStPMG5vSm1RNk5DTUVBd0hRWURWUjBPQkJZRUZIeEF6MWp3OW1YSmxWZmNRTUZrY0RyZW9QNXJNQjhHQTFVZEl3UVlNQmFBRklxQzM0VDd6RjlYeHYxdE1lenRiKy84RndOeE1Bb0dDQ3FHU000OUJBTUNBMGNBTUVRQ0lCZkV6NnFYOTBNNDY1ZFJqUXpvOUtzcjdsanJsTi9mWnRMWm9sZ2FmQXJBQWlCQTNlcmFzOHJvTzlNMHQvTm55L0hwb2QvNGJaMlM2Z0lsS0dGYzVDNkVtUT09IiwiTUlJQmVEQ0NBUitnQXdJQkFnSVVYVnhVVGdRQTJYWHFBNVhmNDNZQTFyaDdnR0l3Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJJeEVEQU9CZ05WQkFNTUIxUmxjM1FnUTBFd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DQUFSWlJvQnFmbGtTREFoRDhmSE00bDFjSVl6eFNGZFVyc09QTDBlWnJaVUN2OUV4M3BpeU9xekZJL2tESUwybVBPeC9KZlYyY2NEc2VQeHVtM0dFT0syYW8xTXdVVEFkQmdOVkhRNEVGZ1FVaW9MZmhQdk1YMWZHL1cweDdPMXY3L3dYQTNFd0h3WURWUjBqQkJnd0ZvQVVpb0xmaFB2TVgxZkcvVzB4N08xdjcvd1hBM0V3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJIUWh1WHpsR0tDb082SjVvblB1dXRBWFpoK3pkYWlLVGtnSnNzd0dtL01RSWdXN0ZaMzg5Y0tadlFzY2RYZ2VVbnY0bngwQkFHT1FqeUdlYTRZZkdpTnBnPSJdLCJ0eXAiOiJkYytzZC1qd3QiLCJhbGciOiJFUzI1NiJ9.eyJpc3MiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0IiwiX3NkIjpbIi1xV0x2T19UV1hRNm43em1jRlZKdEE4UHVTRm9sNjBXTGNSTl9TLTVLdUUiLCIyNE10WDF5N01qbkVKOXFldDV6bUstbTB5UVVMRXE1VTdlUFBTMU4yUlpzIiwiM09zQWh2WXRWdnpnQ2xMRmJMaHprazZzeHdqRjQxQ0VyaWFRUTkxQkhmbyIsIjVpajZBWFY0R3ZabFZPSU5Qc2YyV0dXVHpvdDVDVnNmNExYcjd6RGQ4bEUiLCJBNlN1UnhzajR1NE1aU05YWmpyRkREVm91NkRJVXdjQV9CaktCVHZVUnlRIiwiS2xoUnpiNWU4eGtjb3VUT3EwMjRGb0R0UFBINzRRODJRa0htY2VlWkoyUSIsIk5DRUp1MlN1dmZpM3JaNVROSklwVEh3SHZlY096TnpwTzJLNDZibWJJUUUiLCJPUllzX0ZsSmdiUDlubzZ6X0lCQ0lxaklURW03UTF6WXdTZ0ZsM1VDemtZIiwiU3lWYjJCLWVkMWR3WmJrNXRuRmxYX29HM2k3QmRUZk5VVV9KX1UzVGE3ZyIsIl9VTlRGOEJObWdwVFpLOGZyVGdLN2ZVSzhVSTQ0NUg0cjhFUm9YNFJWcjQiLCJ5WEVOMXNBRlhraHM4TU5BclBMamE3QlkzYk9EejhMMWRUeV8zMTIzZDJJIl0sImNuZiI6eyJqd2siOnsia3R5IjoiRUMiLCJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJ4IjoiSDRmT0dDQkgxc1F2RHhlVnBuZHBTNjB4TE5hdDhJSkY0NGR3X1pNdGx3ayIsInkiOiJadktudGZRb2ZpbGNiMlFvd0dHSnYxUllUX0ZmcHZsV3BwUG1MTDlrOTUwIn19LCJleHAiOjE3OTQ2MDAwMDAsImlhdCI6MTc5NDUxNzIwMCwidmN0IjoidXJuOmV1ZGk6cGlkOjEifQ.GOZq7qgyKdY37Pt7oE4gNqrGlE_N3eti-Y2EARhHUa6Qb72ylwuOSYqYJuouNv8ckASW4cldXK4cCuycuoHoUQ~WyJ1UmFoNU5hbFVZeDVkWEU1VktpVjF3IiwiZ2l2ZW5fbmFtZSIsIkplYW4iXQ~WyJjaElXUjYwbTgxOWEzM0RmeHdUX2F3IiwiZmFtaWx5X25hbWUiLCJEdXBvbnQiXQ~WyJaTG1ON0ZGazVTS2RsbkwtVm5JTzRnIiwiYmlydGhkYXRlIiwiMTk4MC0wNS0yMyJd~WyJ2OHB5aTV0VVJjakx6cENJNkpQZGJBIiwiRlIiXQ~WyJyVWM0N1BJRFZtT1pybzJWRFlfWDF3IiwibmF0aW9uYWxpdGllcyIsW3siLi4uIjoiUWJlYnczVVdUZFZqVE5DRVhWQnlCZ3VmRmVHVFl2WE5jMm5YcUZxajQ4MCJ9XV0~WyJSVVlybWYwRVhnTVFGNU44ZHNwLTJ3IiwiY291bnRyeSIsIkZSIl0~WyJyaG1UUUFyTUpUU2NoQkk1dVpJbDJBIiwicGxhY2Vfb2ZfYmlydGgiLHsiX3NkIjpbIkkwZ3RhQ2dmWjRPTkVGcC1BZnZnaEFOOTZBd1MtUk9wWk1kQW52enJOZjQiXX1d~WyJIMWVQOXdzWU9GTkljVTNqUml0b2F3IiwiaXNzdWluZ19hdXRob3JpdHkiLCJUZXN0IElzc3VpbmcgQXV0aG9yaXR5Il0~WyJnOFlUTUtkS1J3RHBmOWpSdHZXbXJBIiwiaXNzdWluZ19jb3VudHJ5IiwiRlIiXQ~WyJ1ZWxqWm5CWkVtdThvSVcwdk1zYW9nIiwicGljdHVyZSIsImRhdGE6aW1hZ2UvanBlZztiYXNlNjQsLzlqLzRBQVFTa1pKUmdBQkFRQUFBUUFCQUFELzJ3QkRBQkFMREE0TUNoQU9EUTRTRVJBVEdDZ2FHQllXR0RFakpSMG9Pak05UERrek9EZEFTRnhPUUVSWFJUYzRVRzFSVjE5aVoyaG5QazF4ZVhCa2VGeGxaMlAvMndCREFSRVNFaGdWR0M4YUdpOWpRamhDWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyUC93QUFSQ0FBRkFBUURBU0lBQWhFQkF4RUIvOFFBSHdBQUFRVUJBUUVCQVFFQUFBQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkFBQWdFREF3SUVBd1VGQkFRQUFBRjlBUUlEQUFRUkJSSWhNVUVHRTFGaEJ5SnhGREtCa2FFSUkwS3h3UlZTMGZBa00ySnlnZ2tLRmhjWUdSb2xKaWNvS1NvME5UWTNPRGs2UTBSRlJrZElTVXBUVkZWV1YxaFpXbU5rWldabmFHbHFjM1IxZG5kNGVYcURoSVdHaDRpSmlwS1RsSldXbDVpWm1xS2pwS1dtcDZpcHFyS3p0TFcydDdpNXVzTER4TVhHeDhqSnl0TFQxTlhXMTlqWjJ1SGk0K1RsNXVmbzZlcng4dlAwOWZiMytQbjYvOFFBSHdFQUF3RUJBUUVCQVFFQkFRQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkVBQWdFQ0JBUURCQWNGQkFRQUFRSjNBQUVDQXhFRUJTRXhCaEpCVVFkaGNSTWlNb0VJRkVLUm9iSEJDU016VXZBVlluTFJDaFlrTk9FbDhSY1lHUm9tSnlncEtqVTJOemc1T2tORVJVWkhTRWxLVTFSVlZsZFlXVnBqWkdWbVoyaHBhbk4wZFhaM2VIbDZnb09FaFlhSGlJbUtrcE9VbFphWG1KbWFvcU9rcGFhbnFLbXFzck8wdGJhM3VMbTZ3c1BFeGNiSHlNbkswdFBVMWRiWDJObmE0dVBrNWVibjZPbnE4dlAwOWZiMytQbjYvOW9BREFNQkFBSVJBeEVBUHdDblJSUldacWYvMlE9PSJd~"
    }
  ]
}
credential_endpoint_response_headers
{
  "x-fapi-interaction-id": "37012867-6068-4b6e-b21e-e118ab830fe1",
  "content-type": "application/json"
}
2026-11-12 21:28:22
VCIAddNotificationIdToCredentialEndpointResponse
Added notification_id to credential response object
credential_endpoint_response
{
  "credentials": [
    {
      "credential": "eyJ4NWMiOlsiTUlJQmF6Q0NBUktnQXdJQkFnSVVRWVQrcXZ6L3NvbTluYjZ2T0xCZWFINVFHVG93Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJZeEZEQVNCZ05WQkFNTUMzUmxjM1F0YzJsbmJtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVEQzlYOWxsN2o5SmFsK0FIdU1nUFJLRFZ1NlF4NTc1ZFM3anA2Qnl3ZWgyTlBvTjU4WVNob2h0M1dBTys1em9Sb1FKWG9iTktOSXFYUStPMG5vSm1RNk5DTUVBd0hRWURWUjBPQkJZRUZIeEF6MWp3OW1YSmxWZmNRTUZrY0RyZW9QNXJNQjhHQTFVZEl3UVlNQmFBRklxQzM0VDd6RjlYeHYxdE1lenRiKy84RndOeE1Bb0dDQ3FHU000OUJBTUNBMGNBTUVRQ0lCZkV6NnFYOTBNNDY1ZFJqUXpvOUtzcjdsanJsTi9mWnRMWm9sZ2FmQXJBQWlCQTNlcmFzOHJvTzlNMHQvTm55L0hwb2QvNGJaMlM2Z0lsS0dGYzVDNkVtUT09IiwiTUlJQmVEQ0NBUitnQXdJQkFnSVVYVnhVVGdRQTJYWHFBNVhmNDNZQTFyaDdnR0l3Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJJeEVEQU9CZ05WQkFNTUIxUmxjM1FnUTBFd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DQUFSWlJvQnFmbGtTREFoRDhmSE00bDFjSVl6eFNGZFVyc09QTDBlWnJaVUN2OUV4M3BpeU9xekZJL2tESUwybVBPeC9KZlYyY2NEc2VQeHVtM0dFT0syYW8xTXdVVEFkQmdOVkhRNEVGZ1FVaW9MZmhQdk1YMWZHL1cweDdPMXY3L3dYQTNFd0h3WURWUjBqQkJnd0ZvQVVpb0xmaFB2TVgxZkcvVzB4N08xdjcvd1hBM0V3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJIUWh1WHpsR0tDb082SjVvblB1dXRBWFpoK3pkYWlLVGtnSnNzd0dtL01RSWdXN0ZaMzg5Y0tadlFzY2RYZ2VVbnY0bngwQkFHT1FqeUdlYTRZZkdpTnBnPSJdLCJ0eXAiOiJkYytzZC1qd3QiLCJhbGciOiJFUzI1NiJ9.eyJpc3MiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0IiwiX3NkIjpbIi1xV0x2T19UV1hRNm43em1jRlZKdEE4UHVTRm9sNjBXTGNSTl9TLTVLdUUiLCIyNE10WDF5N01qbkVKOXFldDV6bUstbTB5UVVMRXE1VTdlUFBTMU4yUlpzIiwiM09zQWh2WXRWdnpnQ2xMRmJMaHprazZzeHdqRjQxQ0VyaWFRUTkxQkhmbyIsIjVpajZBWFY0R3ZabFZPSU5Qc2YyV0dXVHpvdDVDVnNmNExYcjd6RGQ4bEUiLCJBNlN1UnhzajR1NE1aU05YWmpyRkREVm91NkRJVXdjQV9CaktCVHZVUnlRIiwiS2xoUnpiNWU4eGtjb3VUT3EwMjRGb0R0UFBINzRRODJRa0htY2VlWkoyUSIsIk5DRUp1MlN1dmZpM3JaNVROSklwVEh3SHZlY096TnpwTzJLNDZibWJJUUUiLCJPUllzX0ZsSmdiUDlubzZ6X0lCQ0lxaklURW03UTF6WXdTZ0ZsM1VDemtZIiwiU3lWYjJCLWVkMWR3WmJrNXRuRmxYX29HM2k3QmRUZk5VVV9KX1UzVGE3ZyIsIl9VTlRGOEJObWdwVFpLOGZyVGdLN2ZVSzhVSTQ0NUg0cjhFUm9YNFJWcjQiLCJ5WEVOMXNBRlhraHM4TU5BclBMamE3QlkzYk9EejhMMWRUeV8zMTIzZDJJIl0sImNuZiI6eyJqd2siOnsia3R5IjoiRUMiLCJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJ4IjoiSDRmT0dDQkgxc1F2RHhlVnBuZHBTNjB4TE5hdDhJSkY0NGR3X1pNdGx3ayIsInkiOiJadktudGZRb2ZpbGNiMlFvd0dHSnYxUllUX0ZmcHZsV3BwUG1MTDlrOTUwIn19LCJleHAiOjE3OTQ2MDAwMDAsImlhdCI6MTc5NDUxNzIwMCwidmN0IjoidXJuOmV1ZGk6cGlkOjEifQ.GOZq7qgyKdY37Pt7oE4gNqrGlE_N3eti-Y2EARhHUa6Qb72ylwuOSYqYJuouNv8ckASW4cldXK4cCuycuoHoUQ~WyJ1UmFoNU5hbFVZeDVkWEU1VktpVjF3IiwiZ2l2ZW5fbmFtZSIsIkplYW4iXQ~WyJjaElXUjYwbTgxOWEzM0RmeHdUX2F3IiwiZmFtaWx5X25hbWUiLCJEdXBvbnQiXQ~WyJaTG1ON0ZGazVTS2RsbkwtVm5JTzRnIiwiYmlydGhkYXRlIiwiMTk4MC0wNS0yMyJd~WyJ2OHB5aTV0VVJjakx6cENJNkpQZGJBIiwiRlIiXQ~WyJyVWM0N1BJRFZtT1pybzJWRFlfWDF3IiwibmF0aW9uYWxpdGllcyIsW3siLi4uIjoiUWJlYnczVVdUZFZqVE5DRVhWQnlCZ3VmRmVHVFl2WE5jMm5YcUZxajQ4MCJ9XV0~WyJSVVlybWYwRVhnTVFGNU44ZHNwLTJ3IiwiY291bnRyeSIsIkZSIl0~WyJyaG1UUUFyTUpUU2NoQkk1dVpJbDJBIiwicGxhY2Vfb2ZfYmlydGgiLHsiX3NkIjpbIkkwZ3RhQ2dmWjRPTkVGcC1BZnZnaEFOOTZBd1MtUk9wWk1kQW52enJOZjQiXX1d~WyJIMWVQOXdzWU9GTkljVTNqUml0b2F3IiwiaXNzdWluZ19hdXRob3JpdHkiLCJUZXN0IElzc3VpbmcgQXV0aG9yaXR5Il0~WyJnOFlUTUtkS1J3RHBmOWpSdHZXbXJBIiwiaXNzdWluZ19jb3VudHJ5IiwiRlIiXQ~WyJ1ZWxqWm5CWkVtdThvSVcwdk1zYW9nIiwicGljdHVyZSIsImRhdGE6aW1hZ2UvanBlZztiYXNlNjQsLzlqLzRBQVFTa1pKUmdBQkFRQUFBUUFCQUFELzJ3QkRBQkFMREE0TUNoQU9EUTRTRVJBVEdDZ2FHQllXR0RFakpSMG9Pak05UERrek9EZEFTRnhPUUVSWFJUYzRVRzFSVjE5aVoyaG5QazF4ZVhCa2VGeGxaMlAvMndCREFSRVNFaGdWR0M4YUdpOWpRamhDWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyUC93QUFSQ0FBRkFBUURBU0lBQWhFQkF4RUIvOFFBSHdBQUFRVUJBUUVCQVFFQUFBQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkFBQWdFREF3SUVBd1VGQkFRQUFBRjlBUUlEQUFRUkJSSWhNVUVHRTFGaEJ5SnhGREtCa2FFSUkwS3h3UlZTMGZBa00ySnlnZ2tLRmhjWUdSb2xKaWNvS1NvME5UWTNPRGs2UTBSRlJrZElTVXBUVkZWV1YxaFpXbU5rWldabmFHbHFjM1IxZG5kNGVYcURoSVdHaDRpSmlwS1RsSldXbDVpWm1xS2pwS1dtcDZpcHFyS3p0TFcydDdpNXVzTER4TVhHeDhqSnl0TFQxTlhXMTlqWjJ1SGk0K1RsNXVmbzZlcng4dlAwOWZiMytQbjYvOFFBSHdFQUF3RUJBUUVCQVFFQkFRQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkVBQWdFQ0JBUURCQWNGQkFRQUFRSjNBQUVDQXhFRUJTRXhCaEpCVVFkaGNSTWlNb0VJRkVLUm9iSEJDU016VXZBVlluTFJDaFlrTk9FbDhSY1lHUm9tSnlncEtqVTJOemc1T2tORVJVWkhTRWxLVTFSVlZsZFlXVnBqWkdWbVoyaHBhbk4wZFhaM2VIbDZnb09FaFlhSGlJbUtrcE9VbFphWG1KbWFvcU9rcGFhbnFLbXFzck8wdGJhM3VMbTZ3c1BFeGNiSHlNbkswdFBVMWRiWDJObmE0dVBrNWVibjZPbnE4dlAwOWZiMytQbjYvOW9BREFNQkFBSVJBeEVBUHdDblJSUldacWYvMlE9PSJd~"
    }
  ],
  "notification_id": "2K44RUjPfcKyoTce2WuvsV"
}
notification_id
2K44RUjPfcKyoTce2WuvsV
2026-11-12 21:28:22
ClearAccessTokenFromRequest
Removed incoming access token from environment
2026-11-12 21:28:22 SUCCESS
VCIEncryptCredentialResponse
No credential_response_encryption in request, returning unencrypted response
2026-11-12 21:28:22
CreateResourceEndpointDpopErrorResponse
Condition ran but did not log anything
2026-11-12 21:28:22 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
401
outgoing_body
outgoing_headers
{
  "headers": {
    "WWW-Authenticate": [
      "DPoP error\u003d\"use_dpop_nonce\", error_description\u003d\"Resource server requires nonce in DPoP proof\""
    ],
    "DPoP-Nonce": [
      "MBaDqyoBNuqyCGvIoTsNtnhuJVzEduDFKZAedPtnZonPyjPusa6253574295^!)*(~]#`-_\u003c_\u0027:~,/$\u003c);}}\u0026\u0026{_]\u0027"
    ]
  }
}
outgoing_path
deferred_credential
2026-11-12 21:28:22 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /test/a/siros-wallet-vci-test/deferred_credential
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/test/a/siros-wallet-vci-test/deferred_credential",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "content-length": "53",
  "sec-ch-ua-platform": "\"Windows\"",
  "authorization": "DPoP zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T",
  "accept-language": "en-US",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "sec-ch-ua-mobile": "?0",
  "dpop": "eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiI5RDZoanBQYnRhYnhGS1pjRkhiMEVnIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvZGVmZXJyZWRfY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSIsIm5vbmNlIjoiTUJhRHF5b0JOdXF5Q0d2SW9Uc050bmh1SlZ6RWR1REZLWkFlZFB0blpvblB5alB1c2E2MjUzNTc0Mjk1XiEpKih-XSNgLV88Xyc6fiwvJDwpO319JiZ7X10nIn0.998nmS5VNRkSzKQ1mIHV-rpnfMPfbKYCD9R9e9MQphkjxu_B_vBqrQ4YYRgCpJ3N6cC9cWuPVUdGDm3O-XfeSw",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "content-type": "application/json",
  "accept": "*/*",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/test/a/siros-wallet-vci-test/deferred_credential
incoming_body_form_params
incoming_method
POST
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
{"transaction_id":"2JcW3K8FUYFFfFlBnpX9Xk3qwT8mEaQM"}
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
{
  "transaction_id": "2JcW3K8FUYFFfFlBnpX9Xk3qwT8mEaQM"
}
2026-11-12 21:28:22 SUCCESS
EnsureIncomingTls12WithBCP195SecureCipherOrTls13
Found TLS 1.3 connection
2026-11-12 21:28:22 SUCCESS
EnsureIncomingTls13
TLS 1.3 in use
Deferred credential endpoint
2026-11-12 21:28:22 SUCCESS
VCIEnsureBearerAccessTokenNotInParams
Client correctly did not send access token in query parameters or form body
2026-11-12 21:28:22 SUCCESS
ExtractDpopProofFromHeader
Found and parsed the incoming_dpop_proof from incoming_request
value
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiI5RDZoanBQYnRhYnhGS1pjRkhiMEVnIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvZGVmZXJyZWRfY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSIsIm5vbmNlIjoiTUJhRHF5b0JOdXF5Q0d2SW9Uc050bmh1SlZ6RWR1REZLWkFlZFB0blpvblB5alB1c2E2MjUzNTc0Mjk1XiEpKih-XSNgLV88Xyc6fiwvJDwpO319JiZ7X10nIn0.998nmS5VNRkSzKQ1mIHV-rpnfMPfbKYCD9R9e9MQphkjxu_B_vBqrQ4YYRgCpJ3N6cC9cWuPVUdGDm3O-XfeSw
header
{
  "typ": "dpop+jwt",
  "alg": "ES256",
  "jwk": {
    "kty": "EC",
    "crv": "P-256",
    "x": "DbFdMmtbrS_tuMeijviaMWFJyiWZeluzMWYyWhP75oM",
    "y": "Wht5mxpOeET5hMmE5DNsYOsFX7bf-fzVG2r0CFmCLiQ"
  }
}
claims
{
  "htm": "POST",
  "ath": "zX7kqk3261nrrbh1R9Rr1f887t-2BmSHPLfGK2QtSAM",
  "htu": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/deferred_credential",
  "iat": 1794518897,
  "nonce": "MBaDqyoBNuqyCGvIoTsNtnhuJVzEduDFKZAedPtnZonPyjPusa6253574295^!)*(~]#`-_\u003c_\u0027:~,/$\u003c);}}\u0026\u0026{_]\u0027",
  "jti": "9D6hjpPbtabxFKZcFHb0Eg"
}
2026-11-12 21:28:22 SUCCESS
ExtractDpopAccessTokenFromHeader
Found DPoP access token
DPoP token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofResourceRequest
DPoP Proof type, alg, jwk, jti, htm, htu, iat, exp, nbf passed validation checks
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofIat
DPoP Proof iat value passed validation checks
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofNbf
DPoP Proof nbf value passed validation checks
2026-11-12 21:28:22 SUCCESS
EnsureDpopProofJtiNotAlreadyUsed
Proof jti seems to be unique to this request
jti
9D6hjpPbtabxFKZcFHb0Eg
2026-11-12 21:28:22 SUCCESS
ValidateResourceEndpointDpopProofNonce
Resource endpoint DPoP nonce matches expected value
expected
MBaDqyoBNuqyCGvIoTsNtnhuJVzEduDFKZAedPtnZonPyjPusa6253574295^!)*(~]#`-_<_':~,/$<);}}&&{_]'
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofSignature
DPoP Proof signature validated
DPoP Proof
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiI5RDZoanBQYnRhYnhGS1pjRkhiMEVnIiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3QvZGVmZXJyZWRfY3JlZGVudGlhbCIsImlhdCI6MTc5NDUxODg5NywiYXRoIjoielg3a3FrMzI2MW5ycmJoMVI5UnIxZjg4N3QtMkJtU0hQTGZHSzJRdFNBTSIsIm5vbmNlIjoiTUJhRHF5b0JOdXF5Q0d2SW9Uc050bmh1SlZ6RWR1REZLWkFlZFB0blpvblB5alB1c2E2MjUzNTc0Mjk1XiEpKih-XSNgLV88Xyc6fiwvJDwpO319JiZ7X10nIn0.998nmS5VNRkSzKQ1mIHV-rpnfMPfbKYCD9R9e9MQphkjxu_B_vBqrQ4YYRgCpJ3N6cC9cWuPVUdGDm3O-XfeSw
2026-11-12 21:28:22 SUCCESS
ValidateDpopAccessToken
DPoP Access Token is valid
DPoP Access Token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:22 SUCCESS
ValidateDpopAccessTokenJkt
DPoP Access Token is constrained to DPoP Proof JWK
DPoP Access Token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofAccessTokenHash
DPoP Proof ath claim matches DPoP access token hash
ath
zX7kqk3261nrrbh1R9Rr1f887t-2BmSHPLfGK2QtSAM
2026-11-12 21:28:22 INFO
ExtractFapiDateHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-auth-date
path
headers.x-fapi-auth-date
mapped
object
incoming_request
2026-11-12 21:28:22 INFO
ExtractFapiIpAddressHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-customer-ip-address
path
headers.x-fapi-customer-ip-address
mapped
object
incoming_request
2026-11-12 21:28:22 INFO
ExtractFapiInteractionIdHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-interaction-id
path
headers.x-fapi-interaction-id
mapped
object
incoming_request
2026-11-12 21:28:22 SUCCESS
ValidateFAPIInteractionIdInResourceRequest
x-fapi-interaction-id in resource request headers is a valid UUID
interaction_id
37012867-6068-4b6e-b21e-e118ab830fe1
2026-11-12 21:28:22 SUCCESS
VCIEnsureCredentialRequestUsesApplicationJson
Credential request Content-Type is application/json
content_type
application/json
2026-11-12 21:28:22 SUCCESS
VCIEnsureCredentialRequestEncryptedIfResponseEncryptionRequested
Plaintext credential request body does not include credential_response_encryption
content_type
application/json
2026-11-12 21:28:22 SUCCESS
VCIValidateDeferredCredentialRequest
Deferred credential request is valid
transaction_id
2JcW3K8FUYFFfFlBnpX9Xk3qwT8mEaQM
2026-11-12 21:28:22 INFO
CreateFapiInteractionIdIfNeeded
Found existing FAPI interaction ID
fapi_interaction_id
37012867-6068-4b6e-b21e-e118ab830fe1
2026-11-12 21:28:22 SUCCESS
VCICreateCredentialEndpointResponse
Created credential response object
credential_count
1
credential_endpoint_response
{
  "credentials": [
    {
      "credential": "eyJ4NWMiOlsiTUlJQmF6Q0NBUktnQXdJQkFnSVVRWVQrcXZ6L3NvbTluYjZ2T0xCZWFINVFHVG93Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJZeEZEQVNCZ05WQkFNTUMzUmxjM1F0YzJsbmJtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVEQzlYOWxsN2o5SmFsK0FIdU1nUFJLRFZ1NlF4NTc1ZFM3anA2Qnl3ZWgyTlBvTjU4WVNob2h0M1dBTys1em9Sb1FKWG9iTktOSXFYUStPMG5vSm1RNk5DTUVBd0hRWURWUjBPQkJZRUZIeEF6MWp3OW1YSmxWZmNRTUZrY0RyZW9QNXJNQjhHQTFVZEl3UVlNQmFBRklxQzM0VDd6RjlYeHYxdE1lenRiKy84RndOeE1Bb0dDQ3FHU000OUJBTUNBMGNBTUVRQ0lCZkV6NnFYOTBNNDY1ZFJqUXpvOUtzcjdsanJsTi9mWnRMWm9sZ2FmQXJBQWlCQTNlcmFzOHJvTzlNMHQvTm55L0hwb2QvNGJaMlM2Z0lsS0dGYzVDNkVtUT09IiwiTUlJQmVEQ0NBUitnQXdJQkFnSVVYVnhVVGdRQTJYWHFBNVhmNDNZQTFyaDdnR0l3Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJJeEVEQU9CZ05WQkFNTUIxUmxjM1FnUTBFd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DQUFSWlJvQnFmbGtTREFoRDhmSE00bDFjSVl6eFNGZFVyc09QTDBlWnJaVUN2OUV4M3BpeU9xekZJL2tESUwybVBPeC9KZlYyY2NEc2VQeHVtM0dFT0syYW8xTXdVVEFkQmdOVkhRNEVGZ1FVaW9MZmhQdk1YMWZHL1cweDdPMXY3L3dYQTNFd0h3WURWUjBqQkJnd0ZvQVVpb0xmaFB2TVgxZkcvVzB4N08xdjcvd1hBM0V3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJIUWh1WHpsR0tDb082SjVvblB1dXRBWFpoK3pkYWlLVGtnSnNzd0dtL01RSWdXN0ZaMzg5Y0tadlFzY2RYZ2VVbnY0bngwQkFHT1FqeUdlYTRZZkdpTnBnPSJdLCJ0eXAiOiJkYytzZC1qd3QiLCJhbGciOiJFUzI1NiJ9.eyJpc3MiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0IiwiX3NkIjpbIi1xV0x2T19UV1hRNm43em1jRlZKdEE4UHVTRm9sNjBXTGNSTl9TLTVLdUUiLCIyNE10WDF5N01qbkVKOXFldDV6bUstbTB5UVVMRXE1VTdlUFBTMU4yUlpzIiwiM09zQWh2WXRWdnpnQ2xMRmJMaHprazZzeHdqRjQxQ0VyaWFRUTkxQkhmbyIsIjVpajZBWFY0R3ZabFZPSU5Qc2YyV0dXVHpvdDVDVnNmNExYcjd6RGQ4bEUiLCJBNlN1UnhzajR1NE1aU05YWmpyRkREVm91NkRJVXdjQV9CaktCVHZVUnlRIiwiS2xoUnpiNWU4eGtjb3VUT3EwMjRGb0R0UFBINzRRODJRa0htY2VlWkoyUSIsIk5DRUp1MlN1dmZpM3JaNVROSklwVEh3SHZlY096TnpwTzJLNDZibWJJUUUiLCJPUllzX0ZsSmdiUDlubzZ6X0lCQ0lxaklURW03UTF6WXdTZ0ZsM1VDemtZIiwiU3lWYjJCLWVkMWR3WmJrNXRuRmxYX29HM2k3QmRUZk5VVV9KX1UzVGE3ZyIsIl9VTlRGOEJObWdwVFpLOGZyVGdLN2ZVSzhVSTQ0NUg0cjhFUm9YNFJWcjQiLCJ5WEVOMXNBRlhraHM4TU5BclBMamE3QlkzYk9EejhMMWRUeV8zMTIzZDJJIl0sImNuZiI6eyJqd2siOnsia3R5IjoiRUMiLCJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJ4IjoiSDRmT0dDQkgxc1F2RHhlVnBuZHBTNjB4TE5hdDhJSkY0NGR3X1pNdGx3ayIsInkiOiJadktudGZRb2ZpbGNiMlFvd0dHSnYxUllUX0ZmcHZsV3BwUG1MTDlrOTUwIn19LCJleHAiOjE3OTQ2MDAwMDAsImlhdCI6MTc5NDUxNzIwMCwidmN0IjoidXJuOmV1ZGk6cGlkOjEifQ.GOZq7qgyKdY37Pt7oE4gNqrGlE_N3eti-Y2EARhHUa6Qb72ylwuOSYqYJuouNv8ckASW4cldXK4cCuycuoHoUQ~WyJ1UmFoNU5hbFVZeDVkWEU1VktpVjF3IiwiZ2l2ZW5fbmFtZSIsIkplYW4iXQ~WyJjaElXUjYwbTgxOWEzM0RmeHdUX2F3IiwiZmFtaWx5X25hbWUiLCJEdXBvbnQiXQ~WyJaTG1ON0ZGazVTS2RsbkwtVm5JTzRnIiwiYmlydGhkYXRlIiwiMTk4MC0wNS0yMyJd~WyJ2OHB5aTV0VVJjakx6cENJNkpQZGJBIiwiRlIiXQ~WyJyVWM0N1BJRFZtT1pybzJWRFlfWDF3IiwibmF0aW9uYWxpdGllcyIsW3siLi4uIjoiUWJlYnczVVdUZFZqVE5DRVhWQnlCZ3VmRmVHVFl2WE5jMm5YcUZxajQ4MCJ9XV0~WyJSVVlybWYwRVhnTVFGNU44ZHNwLTJ3IiwiY291bnRyeSIsIkZSIl0~WyJyaG1UUUFyTUpUU2NoQkk1dVpJbDJBIiwicGxhY2Vfb2ZfYmlydGgiLHsiX3NkIjpbIkkwZ3RhQ2dmWjRPTkVGcC1BZnZnaEFOOTZBd1MtUk9wWk1kQW52enJOZjQiXX1d~WyJIMWVQOXdzWU9GTkljVTNqUml0b2F3IiwiaXNzdWluZ19hdXRob3JpdHkiLCJUZXN0IElzc3VpbmcgQXV0aG9yaXR5Il0~WyJnOFlUTUtkS1J3RHBmOWpSdHZXbXJBIiwiaXNzdWluZ19jb3VudHJ5IiwiRlIiXQ~WyJ1ZWxqWm5CWkVtdThvSVcwdk1zYW9nIiwicGljdHVyZSIsImRhdGE6aW1hZ2UvanBlZztiYXNlNjQsLzlqLzRBQVFTa1pKUmdBQkFRQUFBUUFCQUFELzJ3QkRBQkFMREE0TUNoQU9EUTRTRVJBVEdDZ2FHQllXR0RFakpSMG9Pak05UERrek9EZEFTRnhPUUVSWFJUYzRVRzFSVjE5aVoyaG5QazF4ZVhCa2VGeGxaMlAvMndCREFSRVNFaGdWR0M4YUdpOWpRamhDWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyUC93QUFSQ0FBRkFBUURBU0lBQWhFQkF4RUIvOFFBSHdBQUFRVUJBUUVCQVFFQUFBQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkFBQWdFREF3SUVBd1VGQkFRQUFBRjlBUUlEQUFRUkJSSWhNVUVHRTFGaEJ5SnhGREtCa2FFSUkwS3h3UlZTMGZBa00ySnlnZ2tLRmhjWUdSb2xKaWNvS1NvME5UWTNPRGs2UTBSRlJrZElTVXBUVkZWV1YxaFpXbU5rWldabmFHbHFjM1IxZG5kNGVYcURoSVdHaDRpSmlwS1RsSldXbDVpWm1xS2pwS1dtcDZpcHFyS3p0TFcydDdpNXVzTER4TVhHeDhqSnl0TFQxTlhXMTlqWjJ1SGk0K1RsNXVmbzZlcng4dlAwOWZiMytQbjYvOFFBSHdFQUF3RUJBUUVCQVFFQkFRQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkVBQWdFQ0JBUURCQWNGQkFRQUFRSjNBQUVDQXhFRUJTRXhCaEpCVVFkaGNSTWlNb0VJRkVLUm9iSEJDU016VXZBVlluTFJDaFlrTk9FbDhSY1lHUm9tSnlncEtqVTJOemc1T2tORVJVWkhTRWxLVTFSVlZsZFlXVnBqWkdWbVoyaHBhbk4wZFhaM2VIbDZnb09FaFlhSGlJbUtrcE9VbFphWG1KbWFvcU9rcGFhbnFLbXFzck8wdGJhM3VMbTZ3c1BFeGNiSHlNbkswdFBVMWRiWDJObmE0dVBrNWVibjZPbnE4dlAwOWZiMytQbjYvOW9BREFNQkFBSVJBeEVBUHdDblJSUldacWYvMlE9PSJd~"
    }
  ]
}
credential_endpoint_response_headers
{
  "x-fapi-interaction-id": "37012867-6068-4b6e-b21e-e118ab830fe1",
  "content-type": "application/json"
}
2026-11-12 21:28:22
VCIAddNotificationIdToCredentialEndpointResponse
Added notification_id to credential response object
credential_endpoint_response
{
  "credentials": [
    {
      "credential": "eyJ4NWMiOlsiTUlJQmF6Q0NBUktnQXdJQkFnSVVRWVQrcXZ6L3NvbTluYjZ2T0xCZWFINVFHVG93Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJZeEZEQVNCZ05WQkFNTUMzUmxjM1F0YzJsbmJtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVEQzlYOWxsN2o5SmFsK0FIdU1nUFJLRFZ1NlF4NTc1ZFM3anA2Qnl3ZWgyTlBvTjU4WVNob2h0M1dBTys1em9Sb1FKWG9iTktOSXFYUStPMG5vSm1RNk5DTUVBd0hRWURWUjBPQkJZRUZIeEF6MWp3OW1YSmxWZmNRTUZrY0RyZW9QNXJNQjhHQTFVZEl3UVlNQmFBRklxQzM0VDd6RjlYeHYxdE1lenRiKy84RndOeE1Bb0dDQ3FHU000OUJBTUNBMGNBTUVRQ0lCZkV6NnFYOTBNNDY1ZFJqUXpvOUtzcjdsanJsTi9mWnRMWm9sZ2FmQXJBQWlCQTNlcmFzOHJvTzlNMHQvTm55L0hwb2QvNGJaMlM2Z0lsS0dGYzVDNkVtUT09IiwiTUlJQmVEQ0NBUitnQXdJQkFnSVVYVnhVVGdRQTJYWHFBNVhmNDNZQTFyaDdnR0l3Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJJeEVEQU9CZ05WQkFNTUIxUmxjM1FnUTBFd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DQUFSWlJvQnFmbGtTREFoRDhmSE00bDFjSVl6eFNGZFVyc09QTDBlWnJaVUN2OUV4M3BpeU9xekZJL2tESUwybVBPeC9KZlYyY2NEc2VQeHVtM0dFT0syYW8xTXdVVEFkQmdOVkhRNEVGZ1FVaW9MZmhQdk1YMWZHL1cweDdPMXY3L3dYQTNFd0h3WURWUjBqQkJnd0ZvQVVpb0xmaFB2TVgxZkcvVzB4N08xdjcvd1hBM0V3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJIUWh1WHpsR0tDb082SjVvblB1dXRBWFpoK3pkYWlLVGtnSnNzd0dtL01RSWdXN0ZaMzg5Y0tadlFzY2RYZ2VVbnY0bngwQkFHT1FqeUdlYTRZZkdpTnBnPSJdLCJ0eXAiOiJkYytzZC1qd3QiLCJhbGciOiJFUzI1NiJ9.eyJpc3MiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0IiwiX3NkIjpbIi1xV0x2T19UV1hRNm43em1jRlZKdEE4UHVTRm9sNjBXTGNSTl9TLTVLdUUiLCIyNE10WDF5N01qbkVKOXFldDV6bUstbTB5UVVMRXE1VTdlUFBTMU4yUlpzIiwiM09zQWh2WXRWdnpnQ2xMRmJMaHprazZzeHdqRjQxQ0VyaWFRUTkxQkhmbyIsIjVpajZBWFY0R3ZabFZPSU5Qc2YyV0dXVHpvdDVDVnNmNExYcjd6RGQ4bEUiLCJBNlN1UnhzajR1NE1aU05YWmpyRkREVm91NkRJVXdjQV9CaktCVHZVUnlRIiwiS2xoUnpiNWU4eGtjb3VUT3EwMjRGb0R0UFBINzRRODJRa0htY2VlWkoyUSIsIk5DRUp1MlN1dmZpM3JaNVROSklwVEh3SHZlY096TnpwTzJLNDZibWJJUUUiLCJPUllzX0ZsSmdiUDlubzZ6X0lCQ0lxaklURW03UTF6WXdTZ0ZsM1VDemtZIiwiU3lWYjJCLWVkMWR3WmJrNXRuRmxYX29HM2k3QmRUZk5VVV9KX1UzVGE3ZyIsIl9VTlRGOEJObWdwVFpLOGZyVGdLN2ZVSzhVSTQ0NUg0cjhFUm9YNFJWcjQiLCJ5WEVOMXNBRlhraHM4TU5BclBMamE3QlkzYk9EejhMMWRUeV8zMTIzZDJJIl0sImNuZiI6eyJqd2siOnsia3R5IjoiRUMiLCJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJ4IjoiSDRmT0dDQkgxc1F2RHhlVnBuZHBTNjB4TE5hdDhJSkY0NGR3X1pNdGx3ayIsInkiOiJadktudGZRb2ZpbGNiMlFvd0dHSnYxUllUX0ZmcHZsV3BwUG1MTDlrOTUwIn19LCJleHAiOjE3OTQ2MDAwMDAsImlhdCI6MTc5NDUxNzIwMCwidmN0IjoidXJuOmV1ZGk6cGlkOjEifQ.GOZq7qgyKdY37Pt7oE4gNqrGlE_N3eti-Y2EARhHUa6Qb72ylwuOSYqYJuouNv8ckASW4cldXK4cCuycuoHoUQ~WyJ1UmFoNU5hbFVZeDVkWEU1VktpVjF3IiwiZ2l2ZW5fbmFtZSIsIkplYW4iXQ~WyJjaElXUjYwbTgxOWEzM0RmeHdUX2F3IiwiZmFtaWx5X25hbWUiLCJEdXBvbnQiXQ~WyJaTG1ON0ZGazVTS2RsbkwtVm5JTzRnIiwiYmlydGhkYXRlIiwiMTk4MC0wNS0yMyJd~WyJ2OHB5aTV0VVJjakx6cENJNkpQZGJBIiwiRlIiXQ~WyJyVWM0N1BJRFZtT1pybzJWRFlfWDF3IiwibmF0aW9uYWxpdGllcyIsW3siLi4uIjoiUWJlYnczVVdUZFZqVE5DRVhWQnlCZ3VmRmVHVFl2WE5jMm5YcUZxajQ4MCJ9XV0~WyJSVVlybWYwRVhnTVFGNU44ZHNwLTJ3IiwiY291bnRyeSIsIkZSIl0~WyJyaG1UUUFyTUpUU2NoQkk1dVpJbDJBIiwicGxhY2Vfb2ZfYmlydGgiLHsiX3NkIjpbIkkwZ3RhQ2dmWjRPTkVGcC1BZnZnaEFOOTZBd1MtUk9wWk1kQW52enJOZjQiXX1d~WyJIMWVQOXdzWU9GTkljVTNqUml0b2F3IiwiaXNzdWluZ19hdXRob3JpdHkiLCJUZXN0IElzc3VpbmcgQXV0aG9yaXR5Il0~WyJnOFlUTUtkS1J3RHBmOWpSdHZXbXJBIiwiaXNzdWluZ19jb3VudHJ5IiwiRlIiXQ~WyJ1ZWxqWm5CWkVtdThvSVcwdk1zYW9nIiwicGljdHVyZSIsImRhdGE6aW1hZ2UvanBlZztiYXNlNjQsLzlqLzRBQVFTa1pKUmdBQkFRQUFBUUFCQUFELzJ3QkRBQkFMREE0TUNoQU9EUTRTRVJBVEdDZ2FHQllXR0RFakpSMG9Pak05UERrek9EZEFTRnhPUUVSWFJUYzRVRzFSVjE5aVoyaG5QazF4ZVhCa2VGeGxaMlAvMndCREFSRVNFaGdWR0M4YUdpOWpRamhDWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyUC93QUFSQ0FBRkFBUURBU0lBQWhFQkF4RUIvOFFBSHdBQUFRVUJBUUVCQVFFQUFBQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkFBQWdFREF3SUVBd1VGQkFRQUFBRjlBUUlEQUFRUkJSSWhNVUVHRTFGaEJ5SnhGREtCa2FFSUkwS3h3UlZTMGZBa00ySnlnZ2tLRmhjWUdSb2xKaWNvS1NvME5UWTNPRGs2UTBSRlJrZElTVXBUVkZWV1YxaFpXbU5rWldabmFHbHFjM1IxZG5kNGVYcURoSVdHaDRpSmlwS1RsSldXbDVpWm1xS2pwS1dtcDZpcHFyS3p0TFcydDdpNXVzTER4TVhHeDhqSnl0TFQxTlhXMTlqWjJ1SGk0K1RsNXVmbzZlcng4dlAwOWZiMytQbjYvOFFBSHdFQUF3RUJBUUVCQVFFQkFRQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkVBQWdFQ0JBUURCQWNGQkFRQUFRSjNBQUVDQXhFRUJTRXhCaEpCVVFkaGNSTWlNb0VJRkVLUm9iSEJDU016VXZBVlluTFJDaFlrTk9FbDhSY1lHUm9tSnlncEtqVTJOemc1T2tORVJVWkhTRWxLVTFSVlZsZFlXVnBqWkdWbVoyaHBhbk4wZFhaM2VIbDZnb09FaFlhSGlJbUtrcE9VbFphWG1KbWFvcU9rcGFhbnFLbXFzck8wdGJhM3VMbTZ3c1BFeGNiSHlNbkswdFBVMWRiWDJObmE0dVBrNWVibjZPbnE4dlAwOWZiMytQbjYvOW9BREFNQkFBSVJBeEVBUHdDblJSUldacWYvMlE9PSJd~"
    }
  ],
  "notification_id": "QFcTiDDQ1udrSj95Sg0eYE"
}
notification_id
QFcTiDDQ1udrSj95Sg0eYE
2026-11-12 21:28:22
ClearAccessTokenFromRequest
Removed incoming access token from environment
2026-11-12 21:28:22 SUCCESS
VCIEncryptCredentialResponse
No credential_response_encryption in request, returning unencrypted response
2026-11-12 21:28:22 SUCCESS
CreateResourceServerDpopNonce
Created Resource Server nonce
resource_server_dpop_nonce
bYMVJvdNHMHoIMuNreVKmHZHzMaWBpMgBepoXlyISGJNpNqiTy5726394546)-<?:`@!(%$',?*>!;_}+/^/.`$(:)
2026-11-12 21:28:22
oid4vci-1_0-wallet-test-credential-issuance-notification
Credential delivered to wallet. Waiting up to 20 seconds for the wallet to call the notification endpoint before deciding the test outcome.
2026-11-12 21:28:22 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
200
outgoing_body
{
  "credentials": [
    {
      "credential": "eyJ4NWMiOlsiTUlJQmF6Q0NBUktnQXdJQkFnSVVRWVQrcXZ6L3NvbTluYjZ2T0xCZWFINVFHVG93Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJZeEZEQVNCZ05WQkFNTUMzUmxjM1F0YzJsbmJtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVEQzlYOWxsN2o5SmFsK0FIdU1nUFJLRFZ1NlF4NTc1ZFM3anA2Qnl3ZWgyTlBvTjU4WVNob2h0M1dBTys1em9Sb1FKWG9iTktOSXFYUStPMG5vSm1RNk5DTUVBd0hRWURWUjBPQkJZRUZIeEF6MWp3OW1YSmxWZmNRTUZrY0RyZW9QNXJNQjhHQTFVZEl3UVlNQmFBRklxQzM0VDd6RjlYeHYxdE1lenRiKy84RndOeE1Bb0dDQ3FHU000OUJBTUNBMGNBTUVRQ0lCZkV6NnFYOTBNNDY1ZFJqUXpvOUtzcjdsanJsTi9mWnRMWm9sZ2FmQXJBQWlCQTNlcmFzOHJvTzlNMHQvTm55L0hwb2QvNGJaMlM2Z0lsS0dGYzVDNkVtUT09IiwiTUlJQmVEQ0NBUitnQXdJQkFnSVVYVnhVVGdRQTJYWHFBNVhmNDNZQTFyaDdnR0l3Q2dZSUtvWkl6ajBFQXdJd0VqRVFNQTRHQTFVRUF3d0hWR1Z6ZENCRFFUQWVGdzB5TmpBMU1ERXhOak16TkRkYUZ3MHlOekExTURFeE5qTXpORGRhTUJJeEVEQU9CZ05WQkFNTUIxUmxjM1FnUTBFd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DQUFSWlJvQnFmbGtTREFoRDhmSE00bDFjSVl6eFNGZFVyc09QTDBlWnJaVUN2OUV4M3BpeU9xekZJL2tESUwybVBPeC9KZlYyY2NEc2VQeHVtM0dFT0syYW8xTXdVVEFkQmdOVkhRNEVGZ1FVaW9MZmhQdk1YMWZHL1cweDdPMXY3L3dYQTNFd0h3WURWUjBqQkJnd0ZvQVVpb0xmaFB2TVgxZkcvVzB4N08xdjcvd1hBM0V3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJIUWh1WHpsR0tDb082SjVvblB1dXRBWFpoK3pkYWlLVGtnSnNzd0dtL01RSWdXN0ZaMzg5Y0tadlFzY2RYZ2VVbnY0bngwQkFHT1FqeUdlYTRZZkdpTnBnPSJdLCJ0eXAiOiJkYytzZC1qd3QiLCJhbGciOiJFUzI1NiJ9.eyJpc3MiOiJodHRwczovL2xvY2FsaG9zdC5lbW9iaXguY28udWs6ODQ0My90ZXN0L2Evc2lyb3Mtd2FsbGV0LXZjaS10ZXN0IiwiX3NkIjpbIi1xV0x2T19UV1hRNm43em1jRlZKdEE4UHVTRm9sNjBXTGNSTl9TLTVLdUUiLCIyNE10WDF5N01qbkVKOXFldDV6bUstbTB5UVVMRXE1VTdlUFBTMU4yUlpzIiwiM09zQWh2WXRWdnpnQ2xMRmJMaHprazZzeHdqRjQxQ0VyaWFRUTkxQkhmbyIsIjVpajZBWFY0R3ZabFZPSU5Qc2YyV0dXVHpvdDVDVnNmNExYcjd6RGQ4bEUiLCJBNlN1UnhzajR1NE1aU05YWmpyRkREVm91NkRJVXdjQV9CaktCVHZVUnlRIiwiS2xoUnpiNWU4eGtjb3VUT3EwMjRGb0R0UFBINzRRODJRa0htY2VlWkoyUSIsIk5DRUp1MlN1dmZpM3JaNVROSklwVEh3SHZlY096TnpwTzJLNDZibWJJUUUiLCJPUllzX0ZsSmdiUDlubzZ6X0lCQ0lxaklURW03UTF6WXdTZ0ZsM1VDemtZIiwiU3lWYjJCLWVkMWR3WmJrNXRuRmxYX29HM2k3QmRUZk5VVV9KX1UzVGE3ZyIsIl9VTlRGOEJObWdwVFpLOGZyVGdLN2ZVSzhVSTQ0NUg0cjhFUm9YNFJWcjQiLCJ5WEVOMXNBRlhraHM4TU5BclBMamE3QlkzYk9EejhMMWRUeV8zMTIzZDJJIl0sImNuZiI6eyJqd2siOnsia3R5IjoiRUMiLCJjcnYiOiJQLTI1NiIsImtpZCI6Ik1iNHBzOVFiNjdERmpZVWJIa0cyWkZ3RTJubTRtMURYaUxvNE12RFBWU3MiLCJ4IjoiSDRmT0dDQkgxc1F2RHhlVnBuZHBTNjB4TE5hdDhJSkY0NGR3X1pNdGx3ayIsInkiOiJadktudGZRb2ZpbGNiMlFvd0dHSnYxUllUX0ZmcHZsV3BwUG1MTDlrOTUwIn19LCJleHAiOjE3OTQ2MDAwMDAsImlhdCI6MTc5NDUxNzIwMCwidmN0IjoidXJuOmV1ZGk6cGlkOjEifQ.GOZq7qgyKdY37Pt7oE4gNqrGlE_N3eti-Y2EARhHUa6Qb72ylwuOSYqYJuouNv8ckASW4cldXK4cCuycuoHoUQ~WyJ1UmFoNU5hbFVZeDVkWEU1VktpVjF3IiwiZ2l2ZW5fbmFtZSIsIkplYW4iXQ~WyJjaElXUjYwbTgxOWEzM0RmeHdUX2F3IiwiZmFtaWx5X25hbWUiLCJEdXBvbnQiXQ~WyJaTG1ON0ZGazVTS2RsbkwtVm5JTzRnIiwiYmlydGhkYXRlIiwiMTk4MC0wNS0yMyJd~WyJ2OHB5aTV0VVJjakx6cENJNkpQZGJBIiwiRlIiXQ~WyJyVWM0N1BJRFZtT1pybzJWRFlfWDF3IiwibmF0aW9uYWxpdGllcyIsW3siLi4uIjoiUWJlYnczVVdUZFZqVE5DRVhWQnlCZ3VmRmVHVFl2WE5jMm5YcUZxajQ4MCJ9XV0~WyJSVVlybWYwRVhnTVFGNU44ZHNwLTJ3IiwiY291bnRyeSIsIkZSIl0~WyJyaG1UUUFyTUpUU2NoQkk1dVpJbDJBIiwicGxhY2Vfb2ZfYmlydGgiLHsiX3NkIjpbIkkwZ3RhQ2dmWjRPTkVGcC1BZnZnaEFOOTZBd1MtUk9wWk1kQW52enJOZjQiXX1d~WyJIMWVQOXdzWU9GTkljVTNqUml0b2F3IiwiaXNzdWluZ19hdXRob3JpdHkiLCJUZXN0IElzc3VpbmcgQXV0aG9yaXR5Il0~WyJnOFlUTUtkS1J3RHBmOWpSdHZXbXJBIiwiaXNzdWluZ19jb3VudHJ5IiwiRlIiXQ~WyJ1ZWxqWm5CWkVtdThvSVcwdk1zYW9nIiwicGljdHVyZSIsImRhdGE6aW1hZ2UvanBlZztiYXNlNjQsLzlqLzRBQVFTa1pKUmdBQkFRQUFBUUFCQUFELzJ3QkRBQkFMREE0TUNoQU9EUTRTRVJBVEdDZ2FHQllXR0RFakpSMG9Pak05UERrek9EZEFTRnhPUUVSWFJUYzRVRzFSVjE5aVoyaG5QazF4ZVhCa2VGeGxaMlAvMndCREFSRVNFaGdWR0M4YUdpOWpRamhDWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyTmpZMk5qWTJOalkyUC93QUFSQ0FBRkFBUURBU0lBQWhFQkF4RUIvOFFBSHdBQUFRVUJBUUVCQVFFQUFBQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkFBQWdFREF3SUVBd1VGQkFRQUFBRjlBUUlEQUFRUkJSSWhNVUVHRTFGaEJ5SnhGREtCa2FFSUkwS3h3UlZTMGZBa00ySnlnZ2tLRmhjWUdSb2xKaWNvS1NvME5UWTNPRGs2UTBSRlJrZElTVXBUVkZWV1YxaFpXbU5rWldabmFHbHFjM1IxZG5kNGVYcURoSVdHaDRpSmlwS1RsSldXbDVpWm1xS2pwS1dtcDZpcHFyS3p0TFcydDdpNXVzTER4TVhHeDhqSnl0TFQxTlhXMTlqWjJ1SGk0K1RsNXVmbzZlcng4dlAwOWZiMytQbjYvOFFBSHdFQUF3RUJBUUVCQVFFQkFRQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTC84UUF0UkVBQWdFQ0JBUURCQWNGQkFRQUFRSjNBQUVDQXhFRUJTRXhCaEpCVVFkaGNSTWlNb0VJRkVLUm9iSEJDU016VXZBVlluTFJDaFlrTk9FbDhSY1lHUm9tSnlncEtqVTJOemc1T2tORVJVWkhTRWxLVTFSVlZsZFlXVnBqWkdWbVoyaHBhbk4wZFhaM2VIbDZnb09FaFlhSGlJbUtrcE9VbFphWG1KbWFvcU9rcGFhbnFLbXFzck8wdGJhM3VMbTZ3c1BFeGNiSHlNbkswdFBVMWRiWDJObmE0dVBrNWVibjZPbnE4dlAwOWZiMytQbjYvOW9BREFNQkFBSVJBeEVBUHdDblJSUldacWYvMlE9PSJd~"
    }
  ],
  "notification_id": "QFcTiDDQ1udrSj95Sg0eYE"
}
outgoing_headers
{
  "headers": {
    "x-fapi-interaction-id": [
      "37012867-6068-4b6e-b21e-e118ab830fe1"
    ],
    "content-type": [
      "application/json"
    ]
  }
}
outgoing_path
deferred_credential
2026-11-12 21:28:22 INCOMING
oid4vci-1_0-wallet-test-credential-issuance-notification
Incoming HTTP request to /test/a/siros-wallet-vci-test/notification
incoming_headers
{
  "host": "localhost.emobix.co.uk",
  "x-forwarded-uri": "/test/a/siros-wallet-vci-test/notification",
  "forwarded": "by\u003d172.18.0.8;for\u003d172.18.0.1;host\u003dlocalhost.emobix.co.uk;proto\u003dhttps",
  "connection": "close",
  "content-length": "74",
  "sec-ch-ua-platform": "\"Windows\"",
  "authorization": "DPoP zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T",
  "accept-language": "en-US",
  "sec-ch-ua": "\"Not-A.Brand\";v\u003d\"99\", \"Google Chrome\";v\u003d\"157\", \"Chromium\";v\u003d\"157\"",
  "sec-ch-ua-mobile": "?0",
  "dpop": "eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJZM19EdHVXUWNocmstSXdvWlJhU2R3IiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3Qvbm90aWZpY2F0aW9uIiwiaWF0IjoxNzk0NTE4ODk3LCJhdGgiOiJ6WDdrcWszMjYxbnJyYmgxUjlScjFmODg3dC0yQm1TSFBMZkdLMlF0U0FNIn0.qtdd2jYBskkvMfLww8Q5cdAehHh2SCoFA7HgWLArqO6mz9YMxICQaS0jqZEIqaoNo0VjyEIXZEo33aARA7QWTg",
  "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Safari/537.36",
  "content-type": "application/json",
  "accept": "*/*",
  "sec-fetch-site": "cross-site",
  "sec-fetch-mode": "cors",
  "sec-fetch-dest": "empty",
  "referer": "http://localhost:3010/",
  "accept-encoding": "gzip, deflate, br, zstd"
}
incoming_path
/test/a/siros-wallet-vci-test/notification
incoming_body_form_params
incoming_method
POST
incoming_tls_version
TLSv1.3
incoming_tls_cert
incoming_query_string_params
{}
incoming_body
{"event":"credential_accepted","notification_id":"QFcTiDDQ1udrSj95Sg0eYE"}
incoming_tls_chain
[
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL",
  "CONFORMANCE_SUITE_JSON_NULL"
]
incoming_body_json_parse_error
incoming_tls_cipher
TLS_AES_256_GCM_SHA384
incoming_body_json
{
  "event": "credential_accepted",
  "notification_id": "QFcTiDDQ1udrSj95Sg0eYE"
}
2026-11-12 21:28:22 SUCCESS
EnsureIncomingTls12WithBCP195SecureCipherOrTls13
Found TLS 1.3 connection
2026-11-12 21:28:22 SUCCESS
EnsureIncomingTls13
TLS 1.3 in use
Notification endpoint
2026-11-12 21:28:22 SUCCESS
VCIEnsureBearerAccessTokenNotInParams
Client correctly did not send access token in query parameters or form body
2026-11-12 21:28:22 SUCCESS
ExtractDpopProofFromHeader
Found and parsed the incoming_dpop_proof from incoming_request
value
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJZM19EdHVXUWNocmstSXdvWlJhU2R3IiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3Qvbm90aWZpY2F0aW9uIiwiaWF0IjoxNzk0NTE4ODk3LCJhdGgiOiJ6WDdrcWszMjYxbnJyYmgxUjlScjFmODg3dC0yQm1TSFBMZkdLMlF0U0FNIn0.qtdd2jYBskkvMfLww8Q5cdAehHh2SCoFA7HgWLArqO6mz9YMxICQaS0jqZEIqaoNo0VjyEIXZEo33aARA7QWTg
header
{
  "typ": "dpop+jwt",
  "alg": "ES256",
  "jwk": {
    "kty": "EC",
    "crv": "P-256",
    "x": "DbFdMmtbrS_tuMeijviaMWFJyiWZeluzMWYyWhP75oM",
    "y": "Wht5mxpOeET5hMmE5DNsYOsFX7bf-fzVG2r0CFmCLiQ"
  }
}
claims
{
  "htm": "POST",
  "ath": "zX7kqk3261nrrbh1R9Rr1f887t-2BmSHPLfGK2QtSAM",
  "htu": "https://localhost.emobix.co.uk:8443/test/a/siros-wallet-vci-test/notification",
  "iat": 1794518897,
  "jti": "Y3_DtuWQchrk-IwoZRaSdw"
}
2026-11-12 21:28:22 SUCCESS
ExtractDpopAccessTokenFromHeader
Found DPoP access token
DPoP token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofResourceRequest
DPoP Proof type, alg, jwk, jti, htm, htu, iat, exp, nbf passed validation checks
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofIat
DPoP Proof iat value passed validation checks
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofNbf
DPoP Proof nbf value passed validation checks
2026-11-12 21:28:22 SUCCESS
EnsureDpopProofJtiNotAlreadyUsed
Proof jti seems to be unique to this request
jti
Y3_DtuWQchrk-IwoZRaSdw
2026-11-12 21:28:22
ValidateResourceEndpointDpopProofNonce
DPoP Proof nonce not supplied
expected
bYMVJvdNHMHoIMuNreVKmHZHzMaWBpMgBepoXlyISGJNpNqiTy5726394546)-<?:`@!(%$',?*>!;_}+/^/.`$(:)
2026-11-12 21:28:22
ValidateResourceEndpointDpopProofNonce
Resource endpoint DPoP nonce is invalid
expected
bYMVJvdNHMHoIMuNreVKmHZHzMaWBpMgBepoXlyISGJNpNqiTy5726394546)-<?:`@!(%$',?*>!;_}+/^/.`$(:)
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofSignature
DPoP Proof signature validated
DPoP Proof
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRwb3Arand0IiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiRGJGZE1tdGJyU190dU1laWp2aWFNV0ZKeWlXWmVsdXpNV1l5V2hQNzVvTSIsInkiOiJXaHQ1bXhwT2VFVDVoTW1FNUROc1lPc0ZYN2JmLWZ6VkcycjBDRm1DTGlRIn19.eyJqdGkiOiJZM19EdHVXUWNocmstSXdvWlJhU2R3IiwiaHRtIjoiUE9TVCIsImh0dSI6Imh0dHBzOi8vbG9jYWxob3N0LmVtb2JpeC5jby51azo4NDQzL3Rlc3QvYS9zaXJvcy13YWxsZXQtdmNpLXRlc3Qvbm90aWZpY2F0aW9uIiwiaWF0IjoxNzk0NTE4ODk3LCJhdGgiOiJ6WDdrcWszMjYxbnJyYmgxUjlScjFmODg3dC0yQm1TSFBMZkdLMlF0U0FNIn0.qtdd2jYBskkvMfLww8Q5cdAehHh2SCoFA7HgWLArqO6mz9YMxICQaS0jqZEIqaoNo0VjyEIXZEo33aARA7QWTg
2026-11-12 21:28:22 SUCCESS
ValidateDpopAccessToken
DPoP Access Token is valid
DPoP Access Token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:22 SUCCESS
ValidateDpopAccessTokenJkt
DPoP Access Token is constrained to DPoP Proof JWK
DPoP Access Token
zBzqURmUFv7cZ3Sd4P4kR5z1JWjJeRk7UttCidgLyRYYJFkq7T
2026-11-12 21:28:22 SUCCESS
ValidateDpopProofAccessTokenHash
DPoP Proof ath claim matches DPoP access token hash
ath
zX7kqk3261nrrbh1R9Rr1f887t-2BmSHPLfGK2QtSAM
2026-11-12 21:28:22 INFO
ExtractFapiDateHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-auth-date
path
headers.x-fapi-auth-date
mapped
object
incoming_request
2026-11-12 21:28:22 INFO
ExtractFapiIpAddressHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-customer-ip-address
path
headers.x-fapi-customer-ip-address
mapped
object
incoming_request
2026-11-12 21:28:22 INFO
ExtractFapiInteractionIdHeader
Skipped evaluation due to missing required element: incoming_request headers.x-fapi-interaction-id
path
headers.x-fapi-interaction-id
mapped
object
incoming_request
2026-11-12 21:28:22 SUCCESS
ValidateFAPIInteractionIdInResourceRequest
x-fapi-interaction-id in resource request headers is a valid UUID
interaction_id
37012867-6068-4b6e-b21e-e118ab830fe1
2026-11-12 21:28:22 SUCCESS
EnsureIncomingRequestMethodIsPost
Client correctly used http POST method
2026-11-12 21:28:22 SUCCESS
VCIValidateNotificationRequest
Notification request is valid
notification_id
QFcTiDDQ1udrSj95Sg0eYE
event
credential_accepted
2026-11-12 21:28:22 SUCCESS
VCICheckForUnknownFieldsInNotificationRequest
Found no unknown fields in notification request
2026-11-12 21:28:22
oid4vci-1_0-wallet-test-credential-issuance-notification
Received notification event 'credential_accepted' (notification_id=QFcTiDDQ1udrSj95Sg0eYE) from wallet. Waiting for the grace-period timer to decide the test outcome.
event
credential_accepted
notification_id
QFcTiDDQ1udrSj95Sg0eYE
2026-11-12 21:28:22 OUTGOING
oid4vci-1_0-wallet-test-credential-issuance-notification
Response to HTTP request to test instance BoFJ6lUNUofmpLm
outgoing_status_code
204
outgoing_body
outgoing_headers
{
  "headers": {}
}
outgoing_path
notification
2026-11-12 21:28:42
oid4vci-1_0-wallet-test-credential-issuance-notification
Grace period expired. Notification endpoint was called; completing the test successfully.
2026-11-12 21:28:42 FINISHED
oid4vci-1_0-wallet-test-credential-issuance-notification
Test has run to completion
testmodule_result
PASSED
2026-11-12 21:28:43
TEST-RUNNER
Alias has now been claimed by another test
alias
siros-wallet-vci-test
new_test_id
qDIYLADDpo3fw7G
Test Results