2026'da Passkey'ler: Pratik Bir Mühendislik Rehberi
Parolalar artık güvenli değil. Paylaşılan gizli bilgilere dayanıyorlar. Eğer bir sunucu parola saklıyorsa, saldırı yüzeyinizi iki katına çıkarırsınız.
Veriler riskin devasa olduğunu gösteriyor. Veri ihlallerinin çoğu çalınan kimlik bilgileri nedeniyle gerçekleşiyor. Bilgi çalıcı (infostealer) kötü amaçlı yazılımlar her yıl milyonlarca parolayı ele geçiriyor. 2FA'nın bile kusurları var. SMS kodları SIM swapping saldırılarına maruz kalıyor. TOTP token'ları ise gerçek zamanlı oltalama (phishing) saldırılarıyla karşı karşıya kalıyor.
Passkey'ler bunu değiştiriyor. WebAuthn ve FIDO2 aracılığıyla açık anahtar kriptografisini kullanırlar.
Nasıl çalışırlar: • Cihazınız bir açık-özel anahtar çifti oluşturur. • Özel anahtar donanımınızda kalır. • Sunucu sadece açık anahtarı alır. • Giriş sırasında cihazınız rastgele bir meydan okumayı (challenge) imzalar. • Ağ üzerinden hiçbir gizli bilgi iletilmez.
Bu, oltalama saldırılarını durdurur çünkü passkey'ler belirli alan adınıza bağlanır. Siteniz için oluşturulan bir passkey, sahte bir sitede çalışmayacaktır.
Nasıl uygulanır: Ham WebAuthn kodu yazmayın. Kırılması kolaydır. TypeScript ve Node.js için SimpleWebAuthn kullanın. Sizin yerinize zorlu matematiksel işlemleri halleder.
Kurulum:
npm install @simplewebauthn/server @simplewebauthn/browser
Kaçınılması gereken yaygın hatalar: • Meydan okumaları (challenges) yeniden kullanmak. Meydan okumalar tek kullanımlık olmalı ve sunucu tarafından oluşturulmalıdır. • Sayaçları göz ardı etmek. Klonlanmış anahtarları tespit etmek için kimlik bilgisi sayacını (credential counter) her zaman güncelleyin. • Kurtarma sürecini unutmak. Eğer bir kullanıcı cihazını kaybederse, hesabını da kaybeder. Öncelikle bir kurtarma yolu oluşturun. • Kötü UX. Cihazlar arası akışlar genellikle daha düşük tamamlanma oranlarına sahiptir. Geçiş sürecinde bir yedek yöntem (fallback) bulundurun.
Geçiş stratejisi:
- Aşama 1: Parola ile giriş yaptıktan sonra passkey'leri isteğe bağlı (opt-in) bir seçenek olarak sunun.
- Aşama 2: Çoğu kullanıcı benimsedikten sonra passkey'leri birincil yöntem haline getirin.
- Aşama 3: Tüm yeni kayıtlar için passkey kullanımını zorunlu kılın.
Sektör çoktan harekete geçti. Google, passkey kullanımıyla hesap ele geçirilme oranlarının çok daha düşük olduğunu bildiriyor. Amazon ve TikTok gibi büyük platformlar bunları kullanıyor. Eğer desteklemiyorsanız, geride kalıyorsunuz demektir.
Kaynak: https://dev.to/moksh/passkeys-in-2026-a-practical-engineering-guide-to-passwordless-auth-15pj