WebAuthn (Web Authentication)は、Web上でセキュアかつパスワードレス認証を可能にするためにWorld Wide Web Consortium(W3C)とFIDO Allianceによって開発されたWeb標準です。これはより広範なFIDO2フレームワークの一部であり、フィッシング、クレデンシャルスタッフィング、その他の攻撃に対して脆弱であることが多い従来のパスワードへの依存を減らすことを目的としています。
WebAuthn を使用すると、ユーザーは公開鍵暗号を使用して認証できます。ユーザー名とパスワードの代わりに、ユーザーはウェブアプリケーション(Relying Party)に一意の公開鍵・秘密鍵ペアを登録します。秘密鍵はハードウェアセキュリティキー、スマートフォン、または組み込みの生体認証デバイスなどの認証器に安全に保存され、公開鍵はサーバーに保存されます。
認証中、サーバーはユーザーの秘密鍵で署名される必要があるチャレンジを発行します。署名されたチャレンジが返され、保存された公開鍵を使用して検証されます。これにより、レスポンスの整合性と発信元の両方が保証されます。このアプローチにより、資格情報の傍受や再利用を防止します。
WebAuthnは、さまざまな認証器とデバイスをサポートしており、開発者とユーザーの両方にとって柔軟です。また、PINやバイオメトリクスなどの他の要素と組み合わせると、多要素認証(MFA)が可能になり、使いやすさを犠牲にすることなくセキュリティが大幅に向上します。