Pelajari lebih lanjut tentang atestasi di WebAuthn / passkey dan temukan relevansinya dalam autentikasi pengguna, beserta hubungannya dengan layanan metadata FIDO.
Vincent
Created: June 17, 2025
Updated: March 25, 2026

See the original glossary version in English here.
Atestasi dapat merujuk pada tiga hal (seringkali dalam bahasa lisan, istilah-istilah ini digunakan secara bergantian meskipun memiliki arti yang berbeda jika dipahami secara tepat):
Pertama dan secara lebih umum, atestasi dalam dunia kriptografi adalah istilah di mana satu pihak "menyatakan" secara kriptografis sebuah pernyataan kepada pihak lain.
Kedua, selama fase pendaftaran di WebAuthn, sebuah objek atestasi dibuat oleh autentikator dan dikembalikan ke Relying Party. Ini adalah objek wadah yang berisi informasi berikut:
fmt)attStmt - lihat di bawah)authData)Become part of our Passkeys Community for updates & support.
Alur proses Pendaftaran berikut menunjukkan peran atestasi (objek) dalam WebAuthn:
{ "root": { "id": "QFPlQVypLmmx71e0tmS3IfCFky0", "rawId": "QFPlQVypLmmx71e0tmS3IfCFky0", "response": { "attestationObject": { "fmt": "none", "attStmt": {}, "authData": { "rpIdHash": "t8DGRTBfls-BhOH2QC404lvdhe_t2_NkvM0nQWEEADc", "flags": { "userPresent": true, "userVerified": true, "backupEligible": true, "backupStatus": true, "attestedData": true, "extensionData": false }, "counter": 0, "aaguid": "00000000-0000-0000-0000-000000000000", "credentialID": "QFPlQVypLmmx71eOtmS3IfCFky0", "credentialPublicKey": "pQECAyYgASFYIEa-lpSiQ4P...", "parsedCredentialPublicKey": { "keyType": "EC2 (2)", "algorithm": "ES256 (-7)", "curve": 1, "x": "Rr6WlKJDg8MlbIq9mmHQzk2p2c_s7QoNKr7yMa7I8pM", "y": "tAELYp7h3sYNjZZIZgHPYiaSzF×QVT18cgZ_7wm13Vw" } } }, "clientDataJSON": { "type": "webauthn.create", "challenge": "AAABeB78HrIemh1jTdJICr_3QG_RMOhp", "origin": "https://passkeys.eu", "crossOrigin": false }, "transports": ["hybrid", "internal"], "publicKeyAlgorithm": -7 }, "authenticatorAttachment": "cross-platform" } }
Pada tangkapan layar di atas, tidak ada AAGUID dan tidak ada pernyataan atestasi yang diberikan.
Want to experiment with passkey flows? Try our Passkeys Debugger.
Lanjutkan membaca untuk rincian teknis dari atribut yang paling penting.
Dalam WebAuthn, atestasi memastikan bahwa autentikasi pengguna aman dan transparan. Dengan pernyataan atestasi, Anda dapat memastikan bahwa kredensial dibuat pada autentikator / perangkat tertentu.
Jenis-jenis atestasi ini mengacu pada pernyataan atestasi (bukan objek atestasi). Ini dianggap sebagai preferensi oleh relying party (sehingga autentikator dapat berperilaku berbeda karena ini hanya preferensi).
none): Untuk kasus di mana privasi menjadi perhatian utama atau
perangkat yang disinkronkan digunakan, jenis ini tidak memberikan informasi tentang
perangkat, memastikan privasi pengguna tetap terjaga. Alasan lain untuk menggunakan
nilai ini mungkin untuk menghemat perjalanan bolak-balik ke otoritas sertifikat (CA).
none juga merupakan nilai default.indirect): Relying party lebih
suka mendapatkan atestasi tetapi memungkinkan klien untuk memutuskan cara mendapatkan
pernyataan atestasi. Klien dapat mengganti pernyataan atestasi yang dihasilkan
autentikator dengan pernyataan atestasi anonim untuk melindungi privasi pengguna.direct): Ini adalah bentuk yang paling transparan. Di sini,
relying party memberitahu autentikator bahwa ia menginginkan pernyataan atestasi,
sehingga relying party mendapatkan informasi rinci tentang perangkat, termasuk merek,
model, dan spesifik lainnya. Meskipun menawarkan transparansi tertinggi, ini dapat
menimbulkan kekhawatiran privasi dalam skenario tertentu atau mungkin tidak benar-benar
dapat digunakan untuk kredensial yang disinkronkan.enterprise): Relying party ingin menerima pernyataan atestasi
yang dapat mencakup informasi identifikasi unik. Jenis atestasi ini biasanya digunakan
dalam bisnis atau organisasi yang ingin melacak perangkat / autentikator tertentu. Agen
pengguna (browser web) tidak boleh memberikan atestasi rinci ini kecuali pengaturannya
mengizinkannya secara khusus untuk pihak yang meminta. Jika pengaturan mengizinkannya,
browser harus memberitahu perangkat saat dibutuhkan (di awal proses) bahwa jenis
atestasi spesifik ini sedang diminta. Browser kemudian harus meneruskan ID unik
perangkat dan bukti atestasi persis seperti yang diterimanya kepada relying party.Subscribe to our Passkeys Substack for the latest news.
Objek atestasi berisi banyak atribut, berikut adalah penjelasan singkat dari beberapa atribut yang dipilih:
"attestationObject": { "fmt": "none", "attStmt": {}, "authData": { "rpIdHash": "t8DGRTBfls-BhOH2QC404lvdhe_t2_NkvM0nQWEEADc", "flags": { "userPresent": true, "userVerified": true, "backupEligible": true, "backupStatus": true, "attestedData": true, "extensionData": false }, "counter": 0, "aaguid": "00000000-0000-0000-0000-000000000000", "credentialID": "QFPlQVypLmmx71eOtmS3IfCFky0", "credentialPublicKey": "pQECAyYgASFYIEa-lpSiQ4P...", "parsedCredentialPublicKey": { "keyType": "EC2 (2)", "algorithm": "ES256 (-7)", "curve": 1, "x": "Rr6WlKJDg8MlbIq9mmHQzk2p2c_s7QoNKr7yMa7I8pM", "y": "tAELYp7h3sYNjZZIZgHPYiaSzF×QVT18cgZ_7wm13Vw" } }
attestationObject adalah objek yang dikodekan CBOR, berisi informasi tentang kredensial yang baru dibuat, kunci publik, dan data relevan lainnya:
Berbeda dengan objek atestasi di atas di mana attStmt dibiarkan kosong untuk alasan
keterbacaan, inilah tampilan pernyataan atestasi yang terisi.
{ "alg": -65535, "sig": "MBHX7qov53SWqqPYCrxE5fcoAeDI83a0DzVJ2-N1KI6IAaCGGvINAIFzTEn44F6giANKte-8yEMDZbvbgDG1weaRj7SqsVaTty-TEQ", "ver": "2.0", "x5c": [ "MIIFwDCCA6oIaK6tZ7M", "MIIG6zCCBNpG18-MCJrHyrpMT-ul7RgxE4dFxqcG59ftTXqJ1f-X_Lpo7K-d7OgKoQrUgzxgATz8YXtFAk3rE1cHXvW9W52V637eAihKn9-UKC0ijzVXrBGX4Iq1o1M0ZfR-tFoOn498xasMCTnharKiM562GBLVJtlvV3DMSLEBl5SfuGM-qYjQgTQknXccks9guCmNaN_b2fo1DisbufXfjM3DVaMqx7IJpSc3wAnxooMrAYGpPM" ], "pubArea": "AAEACwAw_c3Ousz865mUPx8O3w", "certInfo": "_1RDR4AXAniCekfsiDI" }
alg: Properti alg menunjukkan pengidentifikasi algoritma kriptografi yang digunakan
oleh autentikator untuk menandatangani pernyataan atestasi.sig: Properti sig berisi tanda tangan digital yang dihasilkan oleh autentikator. Tanda
tangan ini digunakan untuk memverifikasi keaslian pernyataan atestasi.ver: Properti ver menentukan versi format pernyataan atestasi.x5c: Array x5c berisi satu atau lebih sertifikat X.509 yang membentuk jalur
sertifikasi, yang membantu dalam memvalidasi atestasi.pubArea: Properti pubArea berisi informasi rinci tentang kunci publik dan
karakteristik autentikator.certInfo: Properti certInfo biasanya mencakup informasi tentang sertifikasi
autentikator oleh pihak tepercaya."clientDataJSON": { "type": "webauthn.create", "challenge": "AAABeB78HrIemh1jTdJICr_3QG_RMOhp", "origin": "https://www.passkeys-debugger.io", "crossOrigin": false }
Baca lebih lanjut tentang clientDataJSON di artikel glosarium terkait.
"transports": [ "hybrid", "internal" ]
Properti transports menunjukkan mekanisme di mana autentikator dapat berkomunikasi dengan klien. Beberapa kombinasi nilai sampel yang umum adalah:
"transports": ["internal","hybrid"]: Passkey dapat digunakan dari autentikator
platform (misalnya Face ID, Touch ID,
Windows Hello) atau melalui autentikasi lintas perangkat
(menggunakan kode QR & Bluetooth)."transports": ["internal"]: Passkey dapat digunakan dari autentikator platform
(misalnya Face ID, Touch ID,
Windows Hello)transports yang diatur: perilaku default yang tidak memberikan
indikasi apa pun.Atestasi (pernyataan atestasi) dalam WebAuthn penting karena menawarkan bukti keaslian sebuah autentikator. Ini memastikan bahwa proses autentikasi dilakukan oleh perangkat tepercaya, sehingga melindungi dari potensi ancaman keamanan.
Ben Gould
Head of Engineering
I’ve built hundreds of integrations in my time, including quite a few with identity providers and I’ve never been so impressed with a developer experience as I have been with Corbado.
3,000+ devs trust Corbado & make the Internet safer with passkeys. Got questions? We’ve written 150+ blog posts on passkeys.
Join Passkeys CommunityYa, karena passkey dapat disinkronkan di seluruh perangkat (misalnya dari iPhone ke
MacBook melalui Keychain), relying party tidak dapat lagi benar-benar menentukan perangkat
mana yang diates yang benar-benar masuk ke aplikasi atau situs web. Oleh karena itu, Apple
dan Google memutuskan bahwa untuk passkey yang disinkronkan, mereka tidak akan lagi
memberikan pernyataan atestasi. Namun, untuk meningkatkan UX bagi relying party dan
memberi mereka kesempatan untuk mengenali dan menampilkan passkey dari ekosistem Apple dan
Google (iCloud Keychain dan Pengelola
Sandi Google), AAGUID akan tetap
diberikan (selama atestasi diatur ke direct atau indirect dalam pengaturan server
WebAuthn untuk PublicKeyCredentialCreationOptions. Lihat
isu GitHub ini untuk detailnya.
Jika Anda ingin mengintegrasikan
autentikasi passkey di situs web dan aplikasi
Anda, dan ingin menawarkan UX passkey yang hebat kepada pengguna Anda, Anda harus
mempertimbangkan hal berikut. Kami berasumsi Anda membangun solusi Anda terutama untuk
skenario di mana sebagian besar pengguna Anda menggunakan sistem operasi Windows,
iOS, macOS, atau Android. Selain itu, kami berasumsi
bahwa sebagian besar passkey (selain dari Windows) adalah passkey yang disinkronkan.
Karena baik iOS, macOS, maupun Android tidak lagi mengirimkan pernyataan atestasi,
validasi nyata dari sebuah autentikator tidak lagi digunakan (untuk Windows ini masih
berfungsi, mungkin karena Windows belum menawarkan passkey yang disinkronkan melalui
Windows Hello). Namun, untuk mendapatkan AAGUID, misalnya untuk
manajemen passkey yang lebih baik di pengaturan
akun, kami merekomendasikan untuk mengatur preferensi atestasi ke indirect, karena ini
masih memungkinkan untuk mendapatkan AAGUID sementara pernyataan atestasi dikirim
(Windows) atau tidak dikirim (iOS, macOS, Android).
Layanan metadata FIDO menyediakan repositori metadata untuk berbagai autentikator. Selama atestasi, layanan ini dapat dikueri untuk mengambil dan memvalidasi detail tentang autentikator, memastikan akurasi dan meningkatkan kepercayaan proses. Layanan metadata FIDO memeriksa pernyataan atestasi (bukan objek atestasi).
Ya, atestasi langsung (dalam pernyataan atestasi), meskipun menawarkan transparansi tertinggi dengan memberikan informasi rinci tentang perangkat, dapat menimbulkan kekhawatiran privasi dalam skenario tertentu. Sangat penting untuk menilai kebutuhan akan transparansi versus privasi saat memilih jenis atestasi.
WebAuthn menawarkan berbagai jenis preferensi atestasi
– tanpa, tidak langsung, langsung, dan perusahaan. Untuk skenario di mana privasi pengguna
penting, attestation=none dapat digunakan, yang tidak memberikan detail tentang
perangkat, memastikan privasi pengguna tetap terlindungi.
Table of Contents
Related Articles