Digitale API voor het uitgeven van referenties

Natalia Markoborodova
Natalia Markoborodova

Gepubliceerd: 26 november 2025

U kunt deelnemen aan de oorspronkelijke proefperiode voor de uitgifte van de Digital Credentials API vanaf Chrome 143. Deze nieuwe API maakt het voor websites eenvoudiger om digitale referenties te verstrekken aan de voorkeurswallet van de gebruiker.

De achtergrond

In het digitale identiteitsecosysteem van drie partijen, bestaande uit uitgevers, verificatoren (vertrouwende partijen) en houders (wallets), is het gebruikelijk dat een gebruiker een digitale ID in zijn wallet instelt via push provisioning. Tijdens dit proces start de gebruiker het ID-uitgifteproces rechtstreeks vanaf de website of app van de uitgever. Een gebruiker die bijvoorbeeld de website van een overheidsinstantie voor motorrijtuigen (uitgever) bezoekt, kan het proces starten om zijn digitale rijbewijs op te slaan in de wallet-app van zijn voorkeur (houder) op zijn apparaat.

Om dit model succesvol te laten zijn, heeft de uitgever een veilige en betrouwbare manier nodig om verbinding te maken met de wallet-app om de ID uit te geven. Dit proces is gefragmenteerd, omdat elke uitgever zijn eigen verbindingen moest bouwen voor elke wallet-app waarmee ze samenwerkten, waarbij ze doorgaans afhankelijk waren van aangepaste URI-schema's. Deze aanpak leidde tot aanzienlijke implementatieproblemen, waardoor uitgevers gedwongen werden ondersteuning te bouwen en te onderhouden voor een gefragmenteerd ecosysteem van verschillende wallet-integraties.

Uitgifte van de Digital Credentials API

Om dit proces te stroomlijnen, breidt Chrome de ondersteuning van de W3C Digital Credentials API uit, als aanvulling op de recent geïntroduceerde presentatiemogelijkheden . De navigator.credentials.create() -methode stelt websites van uitgevers in staat om veilig wallet-apps aan te roepen voor de uitgifte van inloggegevens. Wanneer een website van een uitgever navigator.credentials.create() aanroept met een digital lid, delegeert de browser de flow naar het platform, dat vanaf Chrome 143 beperkt is tot Android. Het platform toont een lijst met compatibele wallets die op het apparaat zijn geïnstalleerd. De gebruiker kan vervolgens een wallet selecteren en toestemming geven om de inloggegevens toe te voegen.

De uitgifte van de Digital Credentials API werkt zowel voor hetzelfde apparaat (op mobiel) als voor meerdere apparaten (via desktop). In een scenario met meerdere apparaten geeft de desktopbrowser een QR-code weer. Wanneer de gebruiker de code scant op zijn of haar mobiele apparaat, wordt de platformgestuurde stroom gestart als beide apparaten zich dicht bij elkaar bevinden.

Hoe de API te gebruiken

De API is protocolonafhankelijk en ontworpen om te werken met open standaarden, zoals de standaard OpenID for Verifiable Credential Issuance (OpenID4VCI) .

Om de uitgiftestroom te starten, moet de website van de uitgever navigator.credentials.create() aanroepen en de uitgifteaanvragen in een digital object doorgeven, bijvoorbeeld:

// Check if the browser supports Digital Credentials issuance and the protocol.
if (window.DigitalCredential && DigitalCredential.userAgentAllowsProtocol('openid4vci-v1')) {

  // Construct a credential offer according to the OpenID4VCI specification.
  // Note: The API is in an active development stage. Always consult the
  // specification and documentation for the most recent implementation details
  const credentialOffer = {
    credential_issuer: 'https://digital-credentials.dev',
    credential_configuration_ids: [
      'org.iso.18013.5.1.mDL'
    ],
    authorization_server_metadata: {
      issuer: 'https://digital-credentials.dev',
      token_endpoint: 'https://digital-credentials.dev/openid4vci/token',
      authorization_endpoint: 'https://digital-credentials.dev/openid4vci/auth',
      grant_types_supported: [
        'authorization_code',
        'urn:ietf:params:oauth:grant-type:pre-authorized_code'
      ],
      response_types_supported: ['code','token']
    },
    // Metadata details to help the wallet display the credential correctly.
    credential_issuer_metadata: {
      credential_endpoint: 'https://digital-credentials.dev/openid4vci/credential',
      credential_configurations_supported: {
        'org.iso.18013.5.1.mDL': {
          format: 'mso_mdoc',
          display: [{
            name: 'Driving License',
            locale: 'en-US',
            description: 'Mobile Driving License'
          }],
          // The claims that this document contains.
          // For a full list of standard mDL claims, see the ISO/IEC 18013-5 specification.
          claims: [{
            path: ['org.iso.18013.5.1', 'family_name'],
            display: [{ name: 'Family Name', locale: 'en-US' }]
          }
          // ... Add any other claims for your document here.
          ]
        }
      }
    }
  };

  // This call is made from the issuer's frontend, likely inside a button's click handler.
  try {
    await navigator.credentials.create({
      digital: {
        requests: [{
          // The protocol identifier for this version of OpenID4VCI.
          protocol: 'openid4vci-v1',
          data: credentialOffer
          }
        }]
      }
    });
    console.log('Credential issuance handoff to OS was successful.');
  } catch (e) {
    console.error('Error starting the credential issuance flow:', e);
  }

} else {
  // The API is not supported. Provide an alternative issuance method.
  console.log('Digital Credential Issuance API is not supported in this browser.');
}

Probeer het eens

Voordat u de Digital Credentials API in uw browser en Android-apparaat test:

  • Werk Chrome bij naar versie 143 of hoger op uw desktop en gebruik Google Play Services versie 24.0 of hoger op uw Android-apparaat.
  • Schakel de vlag in op chrome://flags/#web-identity-digital-credentials-creation in uw browser.
  • Installeer een ondersteunde wallet-app op uw Android-apparaat, bijvoorbeeld de demo CMWallet .

Om de apparaatonafhankelijke stroom voor het uitgeven van digitale referenties te testen:

  1. Ga naar https://digital-credentials.dev/dmv op het bureaublad.
  2. Klik op de knop Toevoegen om de uitgiftestroom te starten.
  3. Scan de QR-code met uw Android-apparaat en volg de instructies.

Nadat u deze stappen hebt gevolgd, zijn er nieuwe inloggegevens aan de portemonnee op uw Android-apparaat toegewezen.

Om deze functie op uw website voor gebruikers beschikbaar te maken, kunt u zich aanmelden voor de Digital Credentials API voor proefversies van uitgiftebronnen . Raadpleeg voor meer informatie het artikel ' Aan de slag met proefversies van uitgiftebronnen' .

Deel uw feedback

Jouw feedback is cruciaal voor de verdere ontwikkeling van het platform. Meld bugs of functieverzoeken via de Chromium bugtracker .