Skip to content

Verify SD-JWT-based Verifiable Credentials

This guide shows how to verify an SD-JWT-based digital credential that follows draft-ietf-oauth-sd-jwt-vc-08 with the Vidos Verifier service.

Before you start, complete the setup guide so your verifier endpoint and API key are ready.


The credential is a compact SD-JWT string that combines the issuer-signed payload, the selective disclosure sections, and the key-binding JWT.

draft-ietf-oauth-sd-jwt-vc-08 credential sample
eyJhbGciOiJFUzI1NiIsInR5cCI6ImRjK3NkLWp3dCIsIng1YyI6WyJNSUlDaXpDQ0FoR2dBd0lCQWdJUU1qVHozbzdtVWxnd3ZEZnlnenM5WHpBS0JnZ3Foa2pPUFFRREF6QXVNUjh3SFFZRFZRUUREQlpQVjBZZ1RYVnNkR2x3WVhvZ1ZFVlRWQ0JKUVVOQk1Rc3dDUVlEVlFRR0RBSlZVekFlRncweU5UQTVNamt3T1RRM05EUmFGdzB5TmpFeU1qZ3dPVFEzTkRSYU1Dd3hIVEFiQmdOVkJBTU1GRTlYUmlCTmRXeDBhWEJoZWlCVVJWTlVJRVJUTVFzd0NRWURWUVFHREFKVlV6QlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJQMzVrbk9qQXV3RG4xVHVKSm1DdFdJRHR6ZXVMSHVoNktTSVI2QTExbGpibGNMd3VJZUJzc3JoeW9oNmdycWU0Wm50MzB2emxBd2x5UVp1c0plVjJNcWpnZ0VSTUlJQkRUQWZCZ05WSFNNRUdEQVdnQlNyWlJ2Z1ZzS1FVL0hkZjJ6a2g3NW8zbURKOVRBT0JnTlZIUThCQWY4RUJBTUNCNEF3RlFZRFZSMGxBUUgvQkFzd0NRWUhLSUdNWFFVQkFqQk1CZ05WSFJJRVJUQkRoa0ZvZEhSd2N6b3ZMMmRwZEdoMVlpNWpiMjB2YjNCbGJuZGhiR3hsZEMxbWIzVnVaR0YwYVc5dUxXeGhZbk12YVdSbGJuUnBkSGt0WTNKbFpHVnVkR2xoYkRCV0JnTlZIUjhFVHpCTk1FdWdTYUJIaGtWb2RIUndjem92TDJkcGRHaDFZaTVqYjIwdmIzQmxibmRoYkd4bGRDMW1iM1Z1WkdGMGFXOXVMV3hoWW5NdmFXUmxiblJwZEhrdFkzSmxaR1Z1ZEdsaGJDOWpjbXd3SFFZRFZSME9CQllFRktxQU9IUjJ4dWtyZUZHWDJreDZhbHNmZGZIZE1Bb0dDQ3FHU000OUJBTURBMmdBTUdVQ01HTjJWazBYNE9xWWZTQ0tPYTVmUnkvRTYyYUloWEhZYlY2RlluQmxzcnFFVE5qRVoxVnR3b3VFSGhzNlE0UVd2QUl4QUpPa3hBNVd4OU0wbWNTR2txSDM1SlhrOW1Ha0daSUxVQnpKQ3BoWDcrV0I3TktUV1NzaVlrZEN0UThzZ0xjN2pnIl19.eyJpc3MiOiJodHRwczovL2V4YW1wbGUtaXNzdWVyLmNvbSIsInZjdCI6InVybjpldWRpOnBpZDoxIiwiaWF0IjoxNzU5MjIyMDY4LCJuYmYiOjE3NTkyMjIwNjgsImV4cCI6MTc5MDc2MTY2OCwiX3NkIjpbIkVKc21jOW5USHpyV2VGdGV1dzFFbFBtM2pyV0ZHOUl6c2RzdmVpeWszVTQiLCI4RDdHbUl3MG94RWVPbmhIdE1UczRZVzlPQ3hZZmxtd05zOFhKSXVkOWJjIiwiWFpmREQ1WGxCa2Z4ZURiWHlud1dNRDVsSHB6S2JHeGpQMGFPSHhZQ21qayIsIlBmSkJRU3lVNnd0XzFCWGR5ZGRtUXdOd1VaUllmcThkX0cxTjBlS081Y1kiLCJ1aDlqTEtfMWM3UUdkQ0phMEFjYm5vU0Z0MHBBVjVQOWlGMWRpX0Y3c20wIiwiSWZ6cWQxem1jOWMzd1h5OVo5UFhRYkEzVmh0eEpfQTNMNEVHZGZHNThRdyIsImdCRE9iaDJtMWZYX0g4NXFGYkl4eFlmVUFIZnFwbkVrVnZyMXVxS200X1EiLCJLRHU1a3VsWFQxQUlucXB6SUFFclludTlGNUl2QkZnOHJoY1c3VzVGWjJ3IiwianhyOS1PVGN5ZHlSV1c3VGtfOEVPNEFBZTMwTjJUR25ZRmFieEZ6cmltcyIsInJtR0lpNGhIRFVRRUExSHI0MjhZQ3lTMzJmanVxSURZZjR6dnFROFk2YnciLCJiSFBkV2J4cG5rNGREWHR4R3d2dmIyMUw2TjNHd2VhcmxXUkpJQk5uRzhNIiwiTmY1a2pVYlN3M3hpbTZaRUJzUzhkT2wwMEo1WWZlWWlPS3UwRy1WZXAwNCIsIkhJSnB6Q1A0dHAyMm1pSmJodE1zWXRuMHhTVEIwSjlqY2lEQ0JVRHVDMVUiLCJvcl9qQnZMVnh1UzRoc25nb19rZXRuVFYyNFc4RTcwQ2hZSm1VdUI5NDkwIiwiYTcxZVZiYUU4cFpEVWJ6OGhzQnBheUdwS0NicmNNelRHM2Z0Qko3YWxXSSIsIkhBeWdaVjZVdFNmemxRZFJyWU9oV3U2eFd2MEZwMVlBMVctWXRHTktZNkUiLCJPYl9La1dVRnU5UlFJWm1PcGstbWJUMkE5eTMyU0hnbmZ5Vkp4R0NaS3lFIiwibkp6czdGeVhETktWLWpxRUYwaFE3NTFfODdBSVFBNGUzb2dIS2RHZ3VaNCIsIlRhc3BFMmd3OWY5NUt6WWFJN2JHZGdRNkVmeTBBbjlwUkJiX0tvYXk1LWMiLCJhT0tlS29vaEg0YXhMOTFrNm5uV3FHWFNVUklRYklsUHRsaEtSQWlHRDlNIiwiODd0eE9XUzg2bkRGOFQ5ZmRpQzRWQ09oNVJFWUdOZlEyeXJTOWctWWU0ayIsIlZleTVyc0FSYnB1bHNGTjJpalNiV2MtcVdmcWU5VnlmelpMTU9JUklNdEkiXSwiX3NkX2FsZyI6InNoYS0yNTYiLCJjbmYiOnsiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4Ijoib1FOd2NxQ1phZ25BUmI2SDFNZk1jbWJ6WDdrbFMybnJRTWpjd1pFVHdlayIsInkiOiJQTFMtYS1sWDlQMVJ5QmFxWl8ycG8yRnF6enlPUUItcUh2dDYyZWlUSnNnIn19fQ.RIoIVbzfb_2u8BFaRqHHrfKDnj1G9nTO77WjKTtZ2B08XiqXBrwaF9b5un7HN9GhdHe4avWuZjgO3zWU0dyB8g~WyI5NEF1UEwyUHFUMU95RGlMNUN0V0tnIiwiZmFtaWx5X25hbWUiLCJNdXN0ZXJtYW5uIl0~WyJ0ZW16XzRweXF5TFFGN21POERreWNBIiwiZ2l2ZW5fbmFtZSIsIkVyaWthIl0~WyJqX0NBaVBTVVBiWXIzU0xrb2hmU0VRIiwiYmlydGhkYXRlIiwiMTk3MS0wOS0wMSJd~WyI2bFZNRVJtVFFRX3kybVBwZGRWaWJnIiwiY291bnRyeSIsIlpaIl0~WyJZVWo2OVJleDZ1NldLVkZHM3REZlFRIiwicmVnaW9uIiwiU2FtcGxlIFN0YXRlIl0~WyJ6RzFRazVkZDhVSlVQSklET2Qwekh3IiwibG9jYWxpdHkiLCJTYW1wbGUgQ2l0eSJd~WyJUMi1yVE5xOW5FYkRVamZNY09YZDNBIiwicGxhY2Vfb2ZfYmlydGgiLHsiX3NkIjpbIlRuakhXcHRMWW1fMllra085WDZQekhnWjU0bnhuRWFrNW11aUVuUndOSFkiLCJGT0dUX1lVc1B1Q2xUYlk0UzVCRVN5LXVlM3lmM1c3SFU0bjFnVWp1Z1EwIiwiaGtUOFhkZ1B3MHphUGoxRFRhX3JYMzN2M0hvOE5tSm9TbDg4RndaM2kyayJdfV0~WyJENTR1bDR3ZnhuTzlMNlhEeTF4XzBRIiwiWloiXQ~WyJUdWxIeldaUFkzVTE1NS1jdGRaTnp3IiwiWFoiXQ~WyJzUFpPZGQ5OE9IQ2RBNnZrRkhyb3RnIiwibmF0aW9uYWxpdGllcyIsW3siLi4uIjoiVldwQW00dklmQTVlSjBnVGEzM3pHNmZYWmxITjNScVBWaG0yWHBaZGZiQSJ9LHsiLi4uIjoiS3V1SVFPM3dPM19oYm5hODRId3RTWWZ2VWcwRUdwNThkS1BvempnbHRMQSJ9XV0~WyIxTUJkTEpSSDFHXzh0VjhLbXF3dkFBIiwiZGF0ZV9vZl9leHBpcnkiLCIyMDI4LTA5LTAxIl0~WyI3YVpNNUZxMjhsR21lNGpUM2Q1T2lnIiwiaXNzdWluZ19hdXRob3JpdHkiLCJVdG9waWEgQ2VudHJhbCBSZWdpc3RyeSJd~WyJMNWU1NE9GdFVVb3ZYMHR3azlza2tnIiwiaXNzdWluZ19jb3VudHJ5IiwiVVMiXQ~eyJhbGciOiJFUzI1NiIsInR5cCI6ImtiK2p3dCJ9.eyJub25jZSI6Im4tNjU5OTIxNDYtMTVhOS00Y2NlLWI1YzMtYTJhYzQyZjAwMjRkIiwiYXVkIjoieDUwOV9zYW5fZG5zOmJhcmVseS1jZXJ0YWluLW1hbW1vdGgubmdyb2stZnJlZS5hcHAiLCJpYXQiOjE3NTkyMzU2ODYsInNkX2hhc2giOiJuLWtMQzJXWm1Pa3NMdnBHQkFpQ2JzNU9XdXFrWmFfZHpXV0tBcTYyaTkwIn0.kqOiOnCFRIKSANOc10P6j-00XNRADVgH2x65YYnvH-YtHL3ZCVa-SG9UAf2WMoteNB6Qm6auKPaIMhDMB6OtiQ

The Verifier policy checks that the presentation matches your challenge response. Provide the expected audience and nonce alongside the credential.

Holder binding options
{
"at": "2026-02-22T00:00:00.000Z",
"policyParams": {
"proof": {
"holderBinding": {
"type": "ietf-oauth-sd-jwt-vc",
"aud": "x509_san_dns:barely-certain-mammoth.ngrok-free.app",
"nonce": "n-65992146-15a9-4cce-b5c3-a2ac42f0024d"
}
}
}
}

Send the credential and options.

Verify the SD-JWT credential
curl \
--request POST -i "$VIDOS_VERIFIER_ENDPOINT/vidos/verifier/v1/verify" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer $VIDOS_API_KEY" \
--data '{
"credential": "eyJhbGciOiJFUzI1NiIsInR5cCI6ImRjK3NkLWp3dCIsIng1YyI6WyJNSUlDaXpDQ0FoR2dBd0lCQWdJUU1qVHozbzdtVWxnd3ZEZnlnenM5WHpBS0JnZ3Foa2pPUFFRREF6QXVNUjh3SFFZRFZRUUREQlpQVjBZZ1RYVnNkR2x3WVhvZ1ZFVlRWQ0JKUVVOQk1Rc3dDUVlEVlFRR0RBSlZVekFlRncweU5UQTVNamt3T1RRM05EUmFGdzB5TmpFeU1qZ3dPVFEzTkRSYU1Dd3hIVEFiQmdOVkJBTU1GRTlYUmlCTmRXeDBhWEJoZWlCVVJWTlVJRVJUTVFzd0NRWURWUVFHREFKVlV6QlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJQMzVrbk9qQXV3RG4xVHVKSm1DdFdJRHR6ZXVMSHVoNktTSVI2QTExbGpibGNMd3VJZUJzc3JoeW9oNmdycWU0Wm50MzB2emxBd2x5UVp1c0plVjJNcWpnZ0VSTUlJQkRUQWZCZ05WSFNNRUdEQVdnQlNyWlJ2Z1ZzS1FVL0hkZjJ6a2g3NW8zbURKOVRBT0JnTlZIUThCQWY4RUJBTUNCNEF3RlFZRFZSMGxBUUgvQkFzd0NRWUhLSUdNWFFVQkFqQk1CZ05WSFJJRVJUQkRoa0ZvZEhSd2N6b3ZMMmRwZEdoMVlpNWpiMjB2YjNCbGJuZGhiR3hsZEMxbWIzVnVaR0YwYVc5dUxXeGhZbk12YVdSbGJuUnBkSGt0WTNKbFpHVnVkR2xoYkRCV0JnTlZIUjhFVHpCTk1FdWdTYUJIaGtWb2RIUndjem92TDJkcGRHaDFZaTVqYjIwdmIzQmxibmRoYkd4bGRDMW1iM1Z1WkdGMGFXOXVMV3hoWW5NdmFXUmxiblJwZEhrdFkzSmxaR1Z1ZEdsaGJDOWpjbXd3SFFZRFZSME9CQllFRktxQU9IUjJ4dWtyZUZHWDJreDZhbHNmZGZIZE1Bb0dDQ3FHU000OUJBTURBMmdBTUdVQ01HTjJWazBYNE9xWWZTQ0tPYTVmUnkvRTYyYUloWEhZYlY2RlluQmxzcnFFVE5qRVoxVnR3b3VFSGhzNlE0UVd2QUl4QUpPa3hBNVd4OU0wbWNTR2txSDM1SlhrOW1Ha0daSUxVQnpKQ3BoWDcrV0I3TktUV1NzaVlrZEN0UThzZ0xjN2pnIl19.eyJpc3MiOiJodHRwczovL2V4YW1wbGUtaXNzdWVyLmNvbSIsInZjdCI6InVybjpldWRpOnBpZDoxIiwiaWF0IjoxNzU5MjIyMDY4LCJuYmYiOjE3NTkyMjIwNjgsImV4cCI6MTc5MDc2MTY2OCwiX3NkIjpbIkVKc21jOW5USHpyV2VGdGV1dzFFbFBtM2pyV0ZHOUl6c2RzdmVpeWszVTQiLCI4RDdHbUl3MG94RWVPbmhIdE1UczRZVzlPQ3hZZmxtd05zOFhKSXVkOWJjIiwiWFpmREQ1WGxCa2Z4ZURiWHlud1dNRDVsSHB6S2JHeGpQMGFPSHhZQ21qayIsIlBmSkJRU3lVNnd0XzFCWGR5ZGRtUXdOd1VaUllmcThkX0cxTjBlS081Y1kiLCJ1aDlqTEtfMWM3UUdkQ0phMEFjYm5vU0Z0MHBBVjVQOWlGMWRpX0Y3c20wIiwiSWZ6cWQxem1jOWMzd1h5OVo5UFhRYkEzVmh0eEpfQTNMNEVHZGZHNThRdyIsImdCRE9iaDJtMWZYX0g4NXFGYkl4eFlmVUFIZnFwbkVrVnZyMXVxS200X1EiLCJLRHU1a3VsWFQxQUlucXB6SUFFclludTlGNUl2QkZnOHJoY1c3VzVGWjJ3IiwianhyOS1PVGN5ZHlSV1c3VGtfOEVPNEFBZTMwTjJUR25ZRmFieEZ6cmltcyIsInJtR0lpNGhIRFVRRUExSHI0MjhZQ3lTMzJmanVxSURZZjR6dnFROFk2YnciLCJiSFBkV2J4cG5rNGREWHR4R3d2dmIyMUw2TjNHd2VhcmxXUkpJQk5uRzhNIiwiTmY1a2pVYlN3M3hpbTZaRUJzUzhkT2wwMEo1WWZlWWlPS3UwRy1WZXAwNCIsIkhJSnB6Q1A0dHAyMm1pSmJodE1zWXRuMHhTVEIwSjlqY2lEQ0JVRHVDMVUiLCJvcl9qQnZMVnh1UzRoc25nb19rZXRuVFYyNFc4RTcwQ2hZSm1VdUI5NDkwIiwiYTcxZVZiYUU4cFpEVWJ6OGhzQnBheUdwS0NicmNNelRHM2Z0Qko3YWxXSSIsIkhBeWdaVjZVdFNmemxRZFJyWU9oV3U2eFd2MEZwMVlBMVctWXRHTktZNkUiLCJPYl9La1dVRnU5UlFJWm1PcGstbWJUMkE5eTMyU0hnbmZ5Vkp4R0NaS3lFIiwibkp6czdGeVhETktWLWpxRUYwaFE3NTFfODdBSVFBNGUzb2dIS2RHZ3VaNCIsIlRhc3BFMmd3OWY5NUt6WWFJN2JHZGdRNkVmeTBBbjlwUkJiX0tvYXk1LWMiLCJhT0tlS29vaEg0YXhMOTFrNm5uV3FHWFNVUklRYklsUHRsaEtSQWlHRDlNIiwiODd0eE9XUzg2bkRGOFQ5ZmRpQzRWQ09oNVJFWUdOZlEyeXJTOWctWWU0ayIsIlZleTVyc0FSYnB1bHNGTjJpalNiV2MtcVdmcWU5VnlmelpMTU9JUklNdEkiXSwiX3NkX2FsZyI6InNoYS0yNTYiLCJjbmYiOnsiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4Ijoib1FOd2NxQ1phZ25BUmI2SDFNZk1jbWJ6WDdrbFMybnJRTWpjd1pFVHdlayIsInkiOiJQTFMtYS1sWDlQMVJ5QmFxWl8ycG8yRnF6enlPUUItcUh2dDYyZWlUSnNnIn19fQ.RIoIVbzfb_2u8BFaRqHHrfKDnj1G9nTO77WjKTtZ2B08XiqXBrwaF9b5un7HN9GhdHe4avWuZjgO3zWU0dyB8g~WyI5NEF1UEwyUHFUMU95RGlMNUN0V0tnIiwiZmFtaWx5X25hbWUiLCJNdXN0ZXJtYW5uIl0~WyJ0ZW16XzRweXF5TFFGN21POERreWNBIiwiZ2l2ZW5fbmFtZSIsIkVyaWthIl0~WyJqX0NBaVBTVVBiWXIzU0xrb2hmU0VRIiwiYmlydGhkYXRlIiwiMTk3MS0wOS0wMSJd~WyI2bFZNRVJtVFFRX3kybVBwZGRWaWJnIiwiY291bnRyeSIsIlpaIl0~WyJZVWo2OVJleDZ1NldLVkZHM3REZlFRIiwicmVnaW9uIiwiU2FtcGxlIFN0YXRlIl0~WyJ6RzFRazVkZDhVSlVQSklET2Qwekh3IiwibG9jYWxpdHkiLCJTYW1wbGUgQ2l0eSJd~WyJUMi1yVE5xOW5FYkRVamZNY09YZDNBIiwicGxhY2Vfb2ZfYmlydGgiLHsiX3NkIjpbIlRuakhXcHRMWW1fMllra085WDZQekhnWjU0bnhuRWFrNW11aUVuUndOSFkiLCJGT0dUX1lVc1B1Q2xUYlk0UzVCRVN5LXVlM3lmM1c3SFU0bjFnVWp1Z1EwIiwiaGtUOFhkZ1B3MHphUGoxRFRhX3JYMzN2M0hvOE5tSm9TbDg4RndaM2kyayJdfV0~WyJENTR1bDR3ZnhuTzlMNlhEeTF4XzBRIiwiWloiXQ~WyJUdWxIeldaUFkzVTE1NS1jdGRaTnp3IiwiWFoiXQ~WyJzUFpPZGQ5OE9IQ2RBNnZrRkhyb3RnIiwibmF0aW9uYWxpdGllcyIsW3siLi4uIjoiVldwQW00dklmQTVlSjBnVGEzM3pHNmZYWmxITjNScVBWaG0yWHBaZGZiQSJ9LHsiLi4uIjoiS3V1SVFPM3dPM19oYm5hODRId3RTWWZ2VWcwRUdwNThkS1BvempnbHRMQSJ9XV0~WyIxTUJkTEpSSDFHXzh0VjhLbXF3dkFBIiwiZGF0ZV9vZl9leHBpcnkiLCIyMDI4LTA5LTAxIl0~WyI3YVpNNUZxMjhsR21lNGpUM2Q1T2lnIiwiaXNzdWluZ19hdXRob3JpdHkiLCJVdG9waWEgQ2VudHJhbCBSZWdpc3RyeSJd~WyJMNWU1NE9GdFVVb3ZYMHR3azlza2tnIiwiaXNzdWluZ19jb3VudHJ5IiwiVVMiXQ~eyJhbGciOiJFUzI1NiIsInR5cCI6ImtiK2p3dCJ9.eyJub25jZSI6Im4tNjU5OTIxNDYtMTVhOS00Y2NlLWI1YzMtYTJhYzQyZjAwMjRkIiwiYXVkIjoieDUwOV9zYW5fZG5zOmJhcmVseS1jZXJ0YWluLW1hbW1vdGgubmdyb2stZnJlZS5hcHAiLCJpYXQiOjE3NTkyMzU2ODYsInNkX2hhc2giOiJuLWtMQzJXWm1Pa3NMdnBHQkFpQ2JzNU9XdXFrWmFfZHpXV0tBcTYyaTkwIn0.kqOiOnCFRIKSANOc10P6j-00XNRADVgH2x65YYnvH-YtHL3ZCVa-SG9UAf2WMoteNB6Qm6auKPaIMhDMB6OtiQ",
"options": {
"at": "2026-02-22T00:00:00.000Z",
"policyParams": {
"proof": {
"holderBinding": {
"type": "ietf-oauth-sd-jwt-vc",
"aud": "x509_san_dns:barely-certain-mammoth.ngrok-free.app",
"nonce": "n-65992146-15a9-4cce-b5c3-a2ac42f0024d"
}
}
}
}
}'

A successful verification returns HTTP 200 with individual policy outcomes. You should see format, notBefore, notAfter, and proof entries for draft-ietf-oauth-sd-jwt-vc-08 credentials.

{
"results": [
{
"data": {
"credentialType": "dc",
"format": "ietf.dc-sd-jwt",
"version": "draft-ietf-oauth-sd-jwt-vc-08"
},
"path": [],
"policy": "format",
"service": "verifier",
"status": "success"
},
{
"data": {
"reference": "2025-03-23T11:28:08.000Z",
"status": "success",
"target": "2025-02-22T00:00:00.000Z"
},
"path": [],
"policy": "notAfter",
"service": "verifier",
"status": "success"
},
{
"data": {
"reference": "2025-02-21T11:28:08.000Z",
"status": "success",
"target": "2025-02-22T00:00:00.000Z"
},
"path": [],
"policy": "notBefore",
"service": "verifier",
"status": "success"
},
{
"data": {
"type": "ietf"
},
"path": [],
"policy": "proof",
"service": "verifier",
"status": "success"
}
]
}

You have verified the credential when:

  • The HTTP status is 200.
  • All policy entries report status: "success".
  • The format policy identifies the credential as ietf.dc-sd-jwt with the expected draft version.
  • Holder binding mismatch: Ensure the nonce and aud you supply match the values issued to the wallet during the presentation exchange.
  • Expired credential: Update the at timestamp if you are verifying historical credentials, or issue a fresh credential if it has expired.
  • Untrusted issuer keys: Confirm the verifier configuration includes the issuer JWKS or certificate chain required to validate the SD-JWT signature.