Passkeys vs Password: Masa Depan Autentikasi Web di 2026
Password sudah berusia lebih dari 60 tahun - dan masih menjadi titik terlemah keamanan digital. Di 2026, passkeys hadir sebagai pengganti yang lebih aman, lebih cepat, dan lebih mudah digunakan.
Masalah dengan Password
- Reuse - 65% pengguna pakai password yang sama di banyak situs
- Phishing - password bisa dicuri via halaman login palsu
- Brute force - password lemah bisa ditebak dalam hitungan menit
- Data breach - database bocor = jutaan password terekspos
Apa Itu Passkeys?
Passkeys menggunakan kriptografi public-key (sama seperti SSH key). Saat register, device Anda generate key pair:
- Private key - tersimpan di device (tidak pernah dikirim ke server)
- Public key - disimpan di server
Saat login, server kirim challenge โ device sign dengan private key โ server verify dengan public key. Tidak ada "password" yang bisa dicuri.
Passkeys vs Password + OTP
| Aspek | Password + OTP | Passkeys |
|---|---|---|
| Phishing-proof | Tidak (OTP bisa di-intercept) | Ya (bound ke domain) |
| User experience | Ketik password + tunggu OTP | 1 tap (biometric) |
| Server breach risk | Hash bisa di-crack | Public key tidak berguna tanpa device |
| Cross-device | Mudah (email/SMS) | Sync via iCloud/Google (improving) |
Kapan OTP Masih Relevan?
Meskipun passkeys lebih superior, OTP tetap punya tempat:
- Verifikasi kepemilikan nomor - membuktikan user punya akses ke nomor HP tertentu (use case utama layanan OTP virtual)
- Fallback - saat device hilang dan passkey tidak bisa diakses
- Onboarding - verifikasi awal sebelum passkey di-setup
Implementasi Passkeys (Web)
// Register (client-side)
const credential = await navigator.credentials.create({
publicKey: {
challenge: serverChallenge,
rp: { name: "MyApp", id: "myapp.com" },
user: { id: userId, name: email, displayName: name },
pubKeyCredParams: [{ alg: -7, type: "public-key" }],
authenticatorSelection: { residentKey: "required" }
}
});
// Kirim credential.response ke server untuk disimpan
Kesimpulan
Passkeys adalah evolusi natural dari password. Adopsi masih bertahap - Google, Apple, dan Microsoft sudah support penuh. Untuk developer, mulai support passkeys sebagai opsi login sambil tetap sediakan fallback (password + OTP) untuk kompatibilitas.