Für die European Digital Identity Wallet mit CodeB entwickeln.
Ob Sie als Relying Party eine Vorlage anfordern, als öffentliche Stelle Credentials ausstellen, als Wallet-Anbieter Ihre Wallet-Attestation-Trust-Anchors veröffentlichen oder als Betreiber einer nationalen Trust List arbeiten — die Endpunkte, Snippets und Drop-in-Skripte unten koppeln direkt an das Ökosystem der European Digital Identity Wallet an. Referenz: docs.eudi.dev. Nichts auf dieser Seite ist von der Europäischen Kommission bestätigt.
Ehrlicher Umfang. CodeB liefert heute OID4VP FINAL, OID4VCI Draft 15, SD-JWT VC, mso_mdoc und HAIP Abschnitt 5.11 Wallet Attestation.
Wählen Sie Ihre Rolle
Verifier / Relying Party
Fordern Sie eine Vorlage aus dem Wallet des Holders an. Polling bis Abschluss, Claims auslesen.
Issuer
SD-JWT VC oder mso_mdoc Credentials via OID4VCI Credential Offer ausstellen.
Wallet-Anbieter
Wallet-Attestation-JWKS/PEM veröffentlichen, damit Verifier HAIP §5.11 erzwingen können.
Trust-Anchor-Betreiber
LOTL, SD-JWT-VC-Issuer oder mDoc-Issuer-Zertifikate in den Verifier-Trust-Store einliefern.
Verifier-Setup
Jeder Verifier-Flow gegen den CodeB-Tenant besteht aus denselben drei Schritten: vp-start öffnet eine Presentation-Session, der zurückgelieferte Deep-Link wird gerendert (QR oder nativer Aufruf), anschließend wird vp-status gepollt bis das Wallet abschließt.
1. Session öffnen
2. Deep-Link rendern
Am Desktop als QR-Code darstellen, mobil direkt aufrufen. Schema openid4vp:// (oder haip://, wenn der Tenant für HAIP konfiguriert ist).
3. Auf Abschluss pollen
4. Kopierfertiges JS
Das Vanilla-JS-Snippet erledigt Render + Poll. Es exportiert eine Funktion:
React-Hook: verifier-react-hook.jsx. Vue und Angular liegen im Verifier-Cookbook.
Issuer-Setup
Der Issuer-Flow folgt OID4VCI Draft 15. Sie deklarieren die unterstützten Credential-Typen, erzeugen pro Holder ein Credential Offer und übergeben dem Wallet einen openid-credential-offer://-Deep-Link.
1. VCTs deklarieren
VCT-Metadaten unter App_Data/<tenant>/vci/ ablegen oder über vci-admin verwalten. Jedes VCT deklariert Format (vc+sd-jwt oder mso_mdoc), Claims und Krypto-Constraints.
2. Credential Offer erzeugen
3. Kopierfertige Credential-Offer-JSON
- issuer-credential-offer-sample.json — SD-JWT VC, Pre-Authorized-Code-Grant (Einmal-Bearer, ohne PIN).
- issuer-credential-offer-mdoc-sample.json — mso_mdoc PID, Authorization-Code-Flow.
Wallet-Anbieter-Setup
Wallet-Anbieter veröffentlichen die öffentlichen Schlüssel, die HAIP-§5.11-Wallet-Attestation-JWTs signieren. So können RPs erzwingen, dass eine Vorlage tatsächlich aus einem bestimmten Wallet-Produkt stammt.
1. JWKS veröffentlichen
Statisch unter https://<IHRE_WALLET_DOMAIN>/.well-known/wallet-provider.jwks.json. Musterform: wallet-provider-jwks.json.
2. Beim Tenant hinterlegen
3. Wallet-Attestation erzwingen
Oidc:WalletAttestationRequired=true pro Tenant lehnt Vorlagen ohne gültiges HAIP-§5.11-Attestation-JWT ab. Rauchtest: testscripts/wallet-attestation-smoke.py.
Trust-Anchor-Setup
Verifier-Tenants brauchen drei Trust-Stores: LOTL für eIDAS-Zertifikatsketten, SD-JWT-VC-Issuer-Set und mDoc-Issuer-Set. Alle unter App_Data/<tenant>/trust/ als PEM/JSON/DER. Die ausführliche Anleitung inkl. nächtlichem Reconciler und wacs-Cert-Refresh: HAIP Operator Setup.
Deep-Link-Builder (Testhilfe)
Baut schnell eine openid4vp://- oder openid-credential-offer://-URL für Wallet-Interop-Tests. Rein clientseitig. Quellcode: openid4vp-deep-link-builder.js.
Referenz: docs.eudi.dev für Upstream-Referenzimplementierungen und Protokollprofile der European Digital Identity Wallet.
Entwickler-Kochbuecher: OIDC-Anmeldung - JWT-Validierung - M2M-API-Keys - Webhooks