WebAuthn (İngilizce: Web Authentication; Türkçe: Web Kimlik Doğrulaması) World Wide Web Consortium (W3C) tarafından yayımlanan bir web standardıdır.[1][2][3] WebAuthn, FIDO Alliance kılavuzluğunda FIDO2 Project'in temel bir bileşenidir.[4] Projenin amacı, açık anahtarlı şifrelemesi kullanarak kullanıcıları web tabanlı uygulamalara ve hizmetlere doğrulamak için bir arabirimi standartlaştırmaktır.
Altta yatan kriptografik işlemler, anahtar materyalin nasıl yönetildiğine göre çoğunlukla agnostik olan soyut bir işlevsel model olan bir kimlik doğrulayıcı tarafından gerçekleştirilir.[5] Bu, bir işlemcinin güvenilir yürütme ortamı veya bir Güvenilir Platform Modülü (TPM) kullanarak WebAuthn desteğinin tamamen yazılımda uygulanmasını mümkün kılar. Hassas kriptografik işlemlerin yükü ayrıca USB, Bluetooth Low Energy veya NFC üzerinden erişilebilen bir dolaşım donanım doğrulayıcısına aktarılabilir. Dolaşımdaki bir donanım kimlik doğrulayıcısı, FIDO İstemcisinden Kimlik Doğrulayıcı Protokolüne (CTAP) uygundur[6] ve WebAuthn'u FIDO Evrensel 2. Faktör (U2F) standardıyla etkili bir şekilde geriye dönük uyumlu hale getirir.[7]
Eski U2F'ye benzer şekilde, Web Kimlik Doğrulaması kimliğe bürünmeyi doğrulamak için dayanıklıdır, yani ortadaki aktif adam saldırılarına karşı dirençlidir,[8] ancak U2F'den farklı olarak WebAuthn geleneksel bir şifre gerektirmez. Ayrıca, bir dolaşım donanım kimlik doğrulayıcısı, özel anahtar malzemesine ana makinede çalışan yazılım tarafından hiçbir zaman erişilebilir olmadığından kötü amaçlı yazılımlara karşı dirençlidir.
WebAuthn Seviye 1 standardı, 4 Mart 2019'da bir W3C Tavsiyesi olarak yayımlandı.[9][10] Seviye 2 spesifikasyonu geliştirme aşamasındadır.[11]
FIDO2, FIDO Universal 2nd Factor (U2F) eski protokolünün halefidir. FIDO2 kimlik doğrulaması, U2F'nin tüm avantajlarına sahiptir. Birincil fark, bir FIDO2 doğrulayıcının aynı zamanda tek birçok faktörlü (şifresiz) doğrulayıcı olabilmesidir. U2F protokolü, mevcut kullanıcı adı/şifre tabanlı oturum açma akışlarını güçlendirmek için ikinci bir faktör olarak hareket edecek şekilde tasarlanmıştır.
Bir FIDO2 doğrulayıcı, tek faktör modunda veya çok faktörlü modda kullanılabilir. Tek faktör modunda, kimlik doğrulayıcı, genellikle basit bir düğmeye basmadan oluşan bir kullanıcı varlığı testi ile etkinleştirilir. Çok faktörlü modda, kimlik doğrulayıcı (sahip olduğunuz bir şey) kullanıcı doğrulaması gerçekleştirir. Kimlik doğrulayıcı yeteneklerine bağlı olarak bu şunlar olabilir:[12]
Her durumda, kimlik doğrulayıcı cihaz üzerinde yerel olarak kullanıcı doğrulaması gerçekleştirir. Kimlik doğrulayıcıda saklanan bir sır veya biyometrik web sitesi ile paylaşılmaz.[13] Ayrıca, kimlik doğrulayıcı, kullanıcı doğrulaması başarıyla tamamlandıktan sonra kimlik doğrulaması isteyen hizmet için kullanmak üzere doğru Açık anahtarlı şifrelemeyi seçeceğinden, tek bir gizli veya biyometrik tüm web siteleriyle çalışır.
Doğrulayıcı üzerindeki bir sır ve biyometrik, bir akıllı telefonda nasıl kullanılacağına benzer şekilde birlikte kullanılabilir. Örneğin, akıllı telefonunuza kolay erişim sağlamak için bir parmak izi kullanılır, ancak bazen parmak izi erişimi başarısız olur, bu durumda bir PIN kullanılabilir.
Önceki FIDO U2F gibi, W3C Web Kimlik Doğrulaması (WebAuthn) bir web sitesi, bir web tarayıcısı ve bir kimlik doğrulayıcı içerir:[1]
WebAuthn, bir davacının FIDO2 doğrulayıcısının sahipliğini ve kontrolünü WebAuthn itimat eden taraf adlı bir doğrulayıcıya nasıl gösterdiğini belirtir. Kimlik doğrulama sürecine, uyumlu bir web tarayıcısından biraz daha fazlası olan WebAuthn İstemcisi adı verilen bir varlık aracılık eder.