Dipublikasikan: 26 November 2025
Anda dapat bergabung dalam uji coba origin untuk penerbitan Digital Credentials API mulai dari Chrome 143. API baru ini mempermudah situs menyediakan kredensial digital ke e-wallet pilihan pengguna.
Latar belakang
Dalam ekosistem identitas digital tiga pihak yang terdiri dari penerbit, pemverifikasi (pihak tepercaya), dan pemegang (dompet), pengguna biasanya menyediakan tanda pengenal digital di dompet mereka melalui penyediaan push. Selama proses ini, pengguna memulai proses penerbitan tanda pengenal langsung dari situs atau aplikasi penerbit. Misalnya, pengguna yang mengunjungi situs departemen kendaraan bermotor negara bagian (penerbit) dapat memulai proses untuk menyimpan surat izin mengemudi digital mereka ke aplikasi dompet pilihan mereka (pemegang) di perangkat mereka.
Agar model ini berhasil, penerbit memerlukan cara yang aman dan andal untuk terhubung dengan aplikasi dompet guna menerbitkan tanda pengenal. Proses ini telah terfragmentasi, karena setiap penerbit harus membangun koneksi sendiri untuk setiap aplikasi dompet yang menjadi partnernya, biasanya mengandalkan skema URI kustom. Pendekatan ini menimbulkan hambatan penerapan yang signifikan, sehingga memaksa penerbit untuk membangun dan memelihara dukungan untuk ekosistem terfragmentasi dari berbagai integrasi dompet.
Penerbitan Digital Credentials API
Untuk menyederhanakan proses ini, Chrome memperluas dukungan W3C Digital Credentials API, dengan menambahkan kemampuan penayangan yang baru saja diluncurkan.
Metode navigator.credentials.create() memungkinkan situs penerbit memanggil aplikasi wallet secara aman untuk penerbitan kredensial. Saat situs penerbit memanggil
navigator.credentials.create() dengan anggota digital, browser
mendelegasikan alur ke platform, yang terbatas pada Android, mulai Chrome 143.
Platform menampilkan daftar dompet yang kompatibel dan terinstal di perangkat.
Kemudian, pengguna dapat memilih dompet, dan memberikan izin untuk menambahkan kredensial.
Penerbitan Digital Credentials API berfungsi untuk skenario dalam perangkat yang sama (di perangkat seluler) dan lintas perangkat (dimulai di desktop). Dalam skenario lintas perangkat, browser desktop menampilkan kode QR. Saat pengguna memindai kode di perangkat seluler, alur yang dimediasi platform akan dimulai, jika kedua perangkat berada dalam jarak dekat.
Cara menggunakan API
API ini tidak bergantung pada protokol dan dirancang untuk bekerja dengan standar terbuka, misalnya, standar OpenID for Verifiable Credential Issuance (OpenID4VCI).
Untuk memulai alur penerbitan, situs penerbit harus memanggil
navigator.credentials.create() dan meneruskan permintaan penerbitan di dalam objek
digital, misalnya:
// 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.');
}
Cobalah
Sebelum Anda menguji Digital Credentials API di browser dan perangkat Android:
- Update ke Chrome 143 atau yang lebih baru di desktop dan miliki layanan Google Play 24.0 atau yang lebih baru di perangkat Android Anda.
- Aktifkan tanda di
chrome://flags/#web-identity-digital-credentials-creationdi browser Anda. - Instal aplikasi dompet yang didukung di perangkat Android Anda, misalnya, demo CMWallet.
Untuk menguji alur lintas perangkat dalam menerbitkan kredensial digital:
- Buka https://digital-credentials.dev/dmv di desktop.
- Tekan tombol Tambahkan untuk memulai alur penerbitan.
- Pindai kode QR dengan perangkat Android Anda dan ikuti perintahnya.
Setelah mengikuti langkah-langkah ini, Anda akan memiliki kredensial baru yang diterbitkan ke wallet di perangkat Android Anda.
Untuk mengaktifkan fitur ini di situs Anda bagi pengguna, bergabunglah dengan uji coba asal penerbitan Digital Credentials API. Untuk mengetahui informasi selengkapnya, baca artikel Mulai menggunakan uji coba origin.
Beri masukan
Masukan Anda sangat penting seiring upaya kami untuk terus mengembangkan platform ini. Laporkan bug atau ajukan permintaan fitur di Pelacak bug Chromium.