API цифровых учетных данных для выдачи учетных данных

Наталья Маркобородова
Natalia Markoborodova

Опубликовано: 26 ноября 2025 г.

Начиная с Chrome версии 143, вы можете присоединиться к пробной версии API для выдачи цифровых учетных данных. Этот новый API упрощает для веб-сайтов предоставление цифровых учетных данных в предпочитаемый пользователем кошелек.

Фон

В трехсторонней экосистеме цифровой идентификации, включающей эмитентов, верификаторов (доверяющие стороны) и держателей (кошельки), пользователь часто создает цифровой идентификатор в своем кошельке с помощью push-уведомлений. В процессе создания идентификатора пользователь запускает его непосредственно на веб-сайте или в приложении эмитента. Например, пользователь, посещающий веб-сайт департамента транспортных средств штата (эмитент), может инициировать процесс сохранения своего цифрового удостоверения личности в предпочитаемом приложении-кошельке (держатель) на своем устройстве.

Для успешной работы этой модели эмитенту необходим безопасный и надежный способ подключения к приложению-кошельку для выдачи идентификатора. Этот процесс был фрагментированным, поскольку каждому эмитенту приходилось создавать собственные подключения для каждого приложения-кошелька, с которым он сотрудничал, обычно используя пользовательские схемы URI. Такой подход создавал значительные сложности при внедрении, вынуждая эмитентов создавать и поддерживать поддержку фрагментированной экосистемы различных интеграций с кошельками.

Выдача API цифровых учетных данных

Для упрощения этого процесса Chrome расширяет поддержку API цифровых учетных данных W3C , добавляя новые возможности отображения . Метод navigator.credentials.create() позволяет веб-сайтам-эмитентам безопасно вызывать приложения-кошельки для выдачи учетных данных. Когда веб-сайт-эмитент вызывает navigator.credentials.create() с digital участником, браузер передает управление платформе, которая, начиная с Chrome 143, ограничена Android. Платформа отображает список совместимых кошельков, установленных на устройстве. Затем пользователь может выбрать кошелек и дать согласие на добавление учетных данных.

Выдача цифровых учетных данных через API работает как в сценариях с использованием одного устройства (на мобильном телефоне), так и в сценариях с использованием разных устройств (инициированных с настольного компьютера). В сценарии с использованием разных устройств браузер на настольном компьютере отображает QR-код. Когда пользователь сканирует код на своем мобильном устройстве, запускается процесс, инициированный платформой, если оба устройства находятся в непосредственной близости друг от друга.

Как использовать API

API не зависит от протокола и предназначен для работы с открытыми стандартами, например, со стандартом OpenID для проверки подлинности учетных данных (OpenID4VCI) .

Для запуска процесса выпуска веб-сайт эмитента должен вызвать метод navigator.credentials.create() и передать запросы на выпуск внутри digital объекта, например:

// 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.');
}

Попробуйте!

Прежде чем тестировать API цифровых учетных данных в браузере и на устройстве Android:

  • Обновите Chrome до версии 143 или более поздней на компьютере и установите Google Play Services версии 24.0 или более поздней на своем устройстве Android.
  • Включите флаг по адресу chrome://flags/#web-identity-digital-credentials-creation в вашем браузере.
  • Установите на своё устройство Android поддерживаемое приложение-кошелек, например, демо-версию CMWallet .

Для проверки совместимости между устройствами при выдаче цифровых учетных данных:

  1. Перейдите по ссылке https://digital-credentials.dev/dmv на компьютере.
  2. Нажмите кнопку «Добавить» , чтобы запустить процесс выпуска.
  3. Отсканируйте QR-код с помощью своего устройства Android и следуйте инструкциям.

После выполнения этих шагов вам будут выданы новые учетные данные для кошелька на вашем устройстве Android.

Чтобы включить эту функцию на вашем веб-сайте для пользователей, присоединитесь к пробной версии API цифровых учетных данных для выдачи учетных данных . Для получения дополнительной информации ознакомьтесь со статьей «Начало работы с пробными версиями» .

Поделитесь своим мнением.

Ваши отзывы крайне важны для дальнейшего развития платформы. Сообщайте об ошибках или предлагайте новые функции в системе отслеживания ошибок Chromium .