Halaman ini diterjemahkan secara otomatis. Baca versi asli berbahasa Inggris di sini.

Cheatsheet Passkeys. Panduan praktis, pola peluncuran, dan KPI untuk program passkeys.
Saat menggunakan kunci sandi atau bekerja di bidang implementasi kunci sandi, satu komponen menjadi sangat penting: penyedia kunci sandi. Namun, meskipun ini adalah bagian penting dalam ekosistem kunci sandi, banyak orang hanya memiliki pemahaman kasar tentang penyedia kunci sandi atau tidak mengetahui perbedaan antara penyedia kunci sandi pihak pertama , penyedia kunci sandi pihak ketiga, dan penyedia autentikasi kunci sandi.
Dapatkan assessment passkey gratis dalam 15 menit.
Postingan blog ini bertujuan untuk menjelaskannya. Baik Anda seorang pengembang perangkat lunak, manajer produk, atau sekadar ingin tahu tentang keamanan web terbaru, memahami peran dan jenis penyedia kunci sandi sangatlah penting. Dengan mengungkap topik ini, kami berusaha memberdayakan orang-orang dengan pengetahuan untuk memahami kunci sandi dengan percaya diri.
Artikel terbaru
Penyedia kunci sandi memainkan peran mendasar dalam ekosistem autentikasi berbasis kunci sandi, bertindak sebagai jembatan antara perangkat pengguna dan akses yang aman serta mulus ke pihak yang mengandalkan (layanan online). Namun apa sebenarnya penyedia kunci sandi itu, terutama karena tidak ada definisi resmi dan Anda akan menemukan interpretasi yang berbeda secara online?
Definisi berikut mencerminkan pemahaman kami dan tidak diklaim sebagai satu-satunya definisi yang akurat.
Penyedia kunci sandi pada dasarnya adalah entitas apa pun yang memungkinkan pembuatan, pengelolaan, dan penggunaan kunci sandi. Melalui penelitian kami, kami mengidentifikasi dua kategori utama di mana penyedia kunci sandi dapat diklasifikasikan: penyedia kunci sandi pihak pertama / ketiga dan penyedia autentikasi kunci sandi.
Kategori ini mencakup entitas yang mampu menghasilkan kunci sandi di sisi klien (di perangkat pengguna). Ketika kunci sandi dibuat melalui platform ini, ia dikelola dan disimpan dengan aman, seringkali di cloud produsen sistem operasi (misalnya, iCloud Keychain, Google Password Manager) atau di pengelola kata sandi pihak ketiga (misalnya KeePassXC, 1Password, Dashlane lihat selengkapnya di bawah).
Sistem operasi yang memungkinkan pembuatan dan pengelolaan kunci sandi secara bawaan dianggap sebagai penyedia kunci sandi pihak pertama. Sebaliknya, pengelola kata sandi pihak ketiga yang berintegrasi dengan platform melalui API disebut sebagai penyedia kunci sandi pihak ketiga.
Satu penyedia kunci sandi pihak pertama atau pihak ketiga memiliki Authenticator Attestation Globally Unique Identifiers (AAGUID) yang sama, yang membantu meningkatkan pengalaman pengguna (misalnya dalam pengaturan akun untuk membedakan kunci sandi dengan lebih mudah). Terkadang mereka mungkin memiliki beberapa AAGUID, yang semuanya milik penyedia kunci sandi pihak pertama atau ketiga yang sama.
Penyedia kunci sandi di perangkat iOS 17.4
Penyedia kunci sandi di perangkat Android 14
API Credential Manager Android
Kategori kedua mencakup penyedia autentikasi yang dapat diintegrasikan oleh pengembang ke dalam aplikasi mereka untuk menangani semua aspek pengelolaan kunci sandi. Jadi, ini adalah penyedia yang bekerja lebih banyak di sisi server (vs. sisi klien dari atas). Definisi ini juga akan mencakup solusi seperti Corbado, yang menawarkan solusi autentikasi yang berpusat pada kunci sandi untuk situs web dan aplikasi. Akibatnya, penyedia kunci sandi ini harus digambarkan secara lebih akurat sebagai penyedia autentikasi kunci sandi , yang membedakannya dari penyedia kunci sandi pihak pertama dan ketiga yang disebutkan di atas.
Di bagian selanjutnya dari postingan blog ini, kami akan menggunakan istilah "penyedia kunci sandi" untuk merujuk pada penyedia kunci sandi pihak pertama dan ketiga, sesuai dengan definisi kami.
Saat pengguna mulai mengadopsi kunci sandi untuk berbagai pihak yang mengandalkan, mengelolanya secara efektif muncul sebagai tantangan yang signifikan. Hal ini juga berlaku untuk pengguna yang menggunakan beberapa kunci sandi untuk satu akun, karena membedakan kunci sandi ini untuk tujuan pengeditan atau penghapusan bisa menjadi kompleks bagi pihak yang mengandalkan. Terlepas dari kenyamanan dan keamanan yang ditawarkan kunci sandi, ada potensi masalah jika pengguna kehilangan salah satu kunci sandi mereka. Untungnya, mereka masih dapat mengakses akun mereka di pihak yang mengandalkan menggunakan kunci sandi alternatif. Untuk membantu pengguna dalam mengidentifikasi kunci sandi tertentu, beberapa sumber menyarankan metadata, seperti tanggal pembuatan dan penggunaan terakhir kunci sandi di pengaturan akun. Selain itu, disarankan untuk menggunakan agen pengguna atau petunjuk klien untuk secara otomatis menamai dan mengkategorikan kunci sandi pada saat pembuatan. Namun, aplikasi Android atau iOS bawaan serta penyedia kunci sandi pihak ketiga, mungkin tidak menggunakan agen pengguna, atau mereka tidak menambahkan informasi yang menunjukkan bahwa kunci sandi telah dibuat oleh penyedia kunci sandi pihak ketiga. Keterbatasan ini menyoroti perlunya metode yang lebih baik untuk membantu pengguna mengelola kunci sandi mereka secara efisien, apa pun platform atau penyedianya.
Diambil dari spesifikasi WebAuthn W3C
Untuk memfasilitasi pengelolaan kunci sandi ini, pengembang dapat menggunakan Authenticator Attestation Globally Unique Identifier (AAGUID). AAGUID adalah pengidentifikasi unik yang diberikan ke model autentikator, bukan instans spesifiknya. Ini tertanam dalam data autentikator kredensial kunci publik, yang menawarkan cara bagi pihak yang mengandalkan untuk mengidentifikasi penyedia kunci sandi. Kemampuan ini sangat penting dalam membantu pengguna dan pihak yang mengandalkan dalam menavigasi lanskap kunci sandi, memastikan bahwa setiap kunci sandi dapat dikaitkan secara akurat dengan sumber pembuatannya.
Misalnya, jika kunci sandi dibuat menggunakan Google Password Manager di perangkat Android, pihak yang mengandalkan dapat menerima AAGUID khusus untuk Google Password Manager. Dengan merujuk pada AAGUID ini, pihak yang mengandalkan kemudian dapat menandai kunci sandi yang sesuai, menyederhanakan pengelolaan dan identifikasi bagi pengguna. Selain itu, pihak yang mengandalkan dapat mencegah pembuatan beberapa kunci sandi untuk penyedia kunci sandi yang sama dengan menggunakan opsi server WebAuthn excludeCredentials. Hal ini semakin meningkatkan UX kunci sandi karena setiap penyedia kunci sandi hanya akan memiliki satu kunci sandi, sehingga menghindari kebingungan pengguna.
{ "attestation": "none", "authenticatorSelection": { "residentKey": "preferred", "userVerification": "preferred" }, "challenge": "6V61d0VM5bNTPxWSsrv7YKz0o4awe0ryoDh1V44RPRn6-mBQwv98BTRws6nMrBhEggGn7-tk1bl3YNSwc0oZpA", "excludeCredentials": [ { "id": "1kBn2dmhv5JhuFxqeco1khCBCUBLlWYqZmFtdDujH5pM", "transports": ["internal"], "type": "public-key" } ], "extensions": { "credProps": true }, "pubKeyCredParams": [ { "alg": -7, "type": "public-key" }, { "alg": -257, "type": "public-key" } ], "rp": { "id": "Passkey Demo", "name": "passkeys.eu" }, "user": { "displayName": "Test Name", "id": "ZG1sdVkyVnxe3SFJsYzNR", "name": "Test Name" } }
Untuk menentukan penyedia kunci sandi menggunakan AAGUID, pihak yang mengandalkan dapat merujuk ke repositori AAGUID yang bersumber dari komunitas. Repositori ini menyediakan pemetaan yang diperlukan untuk mengidentifikasi penyedia kunci sandi berdasarkan nama dan, berpotensi, berdasarkan ikon, membantu memberikan antarmuka pengguna yang lebih intuitif untuk pengelolaan kunci sandi. Namun, penting untuk dicatat bahwa beberapa penyedia kunci sandi mungkin sengaja menggunakan AAGUID generik ("00000000-0000-0000-0000-0000000000000"), mewakili penyedia yang tidak dikenal atau generik.
Mengambil AAGUID sangat mudah di sebagian besar pustaka WebAuthn. Misalnya, saat menggunakan SimpleWebAuthn di sisi server, pengembang dapat mengekstrak AAGUID dari informasi pendaftaran untuk mencocokkannya dengan penyedia yang dikenal, yang meningkatkan kemampuan pengguna untuk mengelola kunci sandi mereka dengan lebih mudah (diambil dari "Tentukan penyedia kunci sandi dengan AAGUID" milik Google).
// Import a list of AAGUIDs from a JSON file import aaguids from "./aaguids.json" with { type: "json" }; // ... // Use SimpleWebAuthn handy function to verify the registration request. const { verified, registrationInfo } = await verifyRegistrationResponse({ response: credential, expectedChallenge, expectedOrigin, expectedRPID, requireUserVerification: false, }); // ... const { aaguid } = registrationInfo; const provider_name = aaguids[aaguid]?.name || "Unknown";
Meskipun AAGUID menawarkan alat yang ampuh untuk pengelolaan kunci sandi, mereka harus digunakan dengan hati-hati. Integritas AAGUID bergantung pada proses atestasi, yang memvalidasi keaslian penyedia kunci sandi. Tanpa tanda tangan atestasi yang valid, AAGUID berpotensi dimanipulasi. Pada bulan Maret 2024, perlu dicatat bahwa kunci sandi di beberapa platform tidak mendukung atestasi, yang menyoroti perlunya pertimbangan yang cermat dalam penggunaannya.
Berikut ini, Anda akan menemukan daftar penyedia kunci sandi pihak pertama dan ketiga yang tidak lengkap untuk aplikasi Android, aplikasi iOS, dan aplikasi web menggunakan versi sistem operasi dan browser kunci sandi yang sangat umum:
Berikut ini, Anda akan menemukan beberapa popup penyedia kunci sandi pihak ketiga untuk membuat / menyimpan kunci sandi:
Lihat analisis 1Password selengkapnya di sini.
Lihat analisis Dashlane selengkapnya di sini.
Lihat analisis KeePassXC selengkapnya di sini.
Pusat untuk penerapan dan pengelolaan kunci sandi adalah peran penyedia kunci sandi, entitas yang tidak hanya memfasilitasi pembuatan dan pengelolaan kunci sandi tetapi juga memastikan integrasinya yang mulus di berbagai platform dan perangkat.
Memahami apa itu penyedia kunci sandi, termasuk perbedaan antara penyedia pihak pertama dan pihak ketiga, serta peran penting Authenticator Attestation Globally Unique Identifier (AAGUID) adalah tujuan dari postingan blog ini. Penggunaan AAGUID, sebagaimana dibahas, menawarkan solusi yang menjanjikan, memungkinkan identifikasi dan pengelolaan kunci sandi yang lebih lugas.
Selain itu, kami telah menganalisis penyedia kunci sandi pihak pertama dan ketiga mana yang saat ini ada untuk Android, iOS, dan Windows yang juga membantu pengguna untuk menemukan penyedia kunci sandi pihak ketiga yang cocok atau perangkat pilihan mereka
Bagi pengembang dan manajer produk, wawasan tentang penyedia kunci sandi dan pengelolaannya tidak hanya memandu implementasi teknis autentikasi kunci sandi tetapi juga sejalan dengan tujuan yang lebih luas untuk meningkatkan pengalaman dan keamanan pengguna.
Corbado adalah Passkey Intelligence Platform untuk tim CIAM yang menjalankan autentikasi consumer dalam skala besar. Kami membantu Anda melihat apa yang tidak bisa ditunjukkan oleh log IDP dan tool analytics generik: device, versi OS, browser, dan credential manager mana yang mendukung passkey; mengapa enrollment tidak menjadi login; di mana flow WebAuthn gagal; dan kapan update OS atau browser diam-diam merusak login — semuanya tanpa mengganti Okta, Auth0, Ping, Cognito, atau IDP internal Anda. Dua produk: Corbado Observe menambah observability untuk passkey dan metode login lainnya. Corbado Connect menghadirkan managed passkey dengan analytics terintegrasi (berdampingan dengan IDP Anda). VicRoads menjalankan passkey untuk 5M+ pengguna dengan Corbado (aktivasi passkey +80%). Bicara dengan pakar Passkey →
Artikel terkait
Daftar isi