Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

WebAuthn(ウェブオー スピン)とは | 意味や読み方など丁寧でわかりやすい用語解説

WebAuthn(ウェブオー スピン)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

読み方

日本語表記

ウェブオーセン (ウェブオーセン)

英語表記

WebAuthn (ウェブオーセン)

用語解説

WebAuthn(ウェブオースン)とは、Web認証(Web Authentication)の略であり、パスワードに依存しない、より安全で利便性の高い認証を実現するための標準規格である。FIDOアライアンスとWorld Wide Web Consortium(W3C)が共同で策定したもので、WebサイトやWebアプリケーションにおける認証メカニズムを大きく変革することを目指している。従来のパスワード認証が抱えるセキュリティ上の課題、例えばパスワードの使い回しによる漏洩リスクやフィッシング詐欺への脆弱性、そして複雑なパスワードの記憶によるユーザーの負担といった問題に対処するため、公開鍵暗号方式を基盤とした堅牢な認証システムを提供する。この技術は、スマートフォンやPCに内蔵された生体認証機能(指紋、顔など)、または専用のセキュリティキー(USB、Bluetooth、NFCなど)を利用してユーザーを認証する。これにより、ユーザーはWebサービスにログインする際にパスワードを入力する代わりに、デバイスのロック解除に使うような簡単な操作で認証を完了できるようになる。WebAuthnは、パスワードレス認証の実現に向けた重要なステップであり、Webセキュリティの未来を形作る技術の一つと言える。

WebAuthnは、なぜ従来のパスワード認証では不十分なのかという根本的な問いから生まれた。パスワードは人間が覚えやすい文字列であるため、どうしても推測されやすい、あるいは短く簡単なものを選びがちになる。また、複数のサービスで同じパスワードを使い回すと、一つのサービスからパスワードが漏洩した場合に、他のすべてのサービスも危険に晒される。さらに、フィッシング詐欺では、偽のWebサイトに誘導してパスワードを入力させることで、正規のパスワードを盗み出す手口が横行している。WebAuthnはこれらの課題を、公開鍵暗号方式を用いることで解決する。具体的には、ユーザーがサービスにWebAuthnで登録する際、ユーザーのデバイス(認証器と呼ばれる)が秘密鍵と公開鍵のペアを生成する。この秘密鍵は認証器の内部に安全に保存され、決して外部に出ることはない。一方、公開鍵はWebサーバーに登録され、ユーザーを一意に識別するためのユーザーIDとともに保存される。

ユーザーがログインを試みる際、Webサーバーは乱数を生成し、これをチャレンジとしてユーザーのWebブラウザ経由で認証器に送信する。認証器は、保存されている秘密鍵を使ってこのチャレンジに署名を行い、その署名されたデータと、認証器が正当なものであることを示す証明書をWebサーバーに送り返す。Webサーバーは、事前に登録されている公開鍵を使ってその署名を検証し、署名が正当であればユーザーの認証が成功したと判断する。この一連のプロセスにおいて、ユーザーは認証器に対して生体認証(指紋、顔など)を行うか、PINを入力するか、または物理的なボタンを押すといった簡単な操作をするだけで済む。秘密鍵がデバイスから出ることがないため、サーバー側で管理している公開鍵が漏洩したとしても、その情報だけではユーザーを偽装することができない。また、フィッシング詐欺に対しても強力な耐性を持つ。なぜなら、WebAuthnの認証プロセスでは、認証器が認証しようとしているWebサイトのドメイン(URL)情報を確認し、秘密鍵による署名はそのドメインに対してのみ有効であるため、偽のサイトでは認証が成立しないからである。

WebAuthnで使用される認証器には大きく分けて二つの種類がある。一つは「プラットフォーム認証器」で、これはスマートフォンやPCに内蔵されている生体認証デバイス(指紋リーダー、顔認証カメラなど)や、TPM(Trusted Platform Module)チップのようなセキュリティチップを利用するものだ。これらは通常、そのデバイス専用で、持ち運びができない。もう一つは「ローミング認証器」で、これはUSBセキュリティキー、Bluetooth、NFCなどを介してデバイスに接続する外部認証器を指す。例えば、YubiKeyのような物理的なセキュリティキーがこれにあたる。ローミング認証器は複数のデバイスで使い回すことができ、高い携帯性を持つ。

WebAuthnは主要なWebブラウザ(Chrome, Firefox, Edge, Safariなど)や主要なOS(Windows, macOS, Android, iOSなど)で広くサポートされており、既に多くのWebサービスで導入が進んでいる。ユーザーにとっては、パスワードを記憶する手間が省け、より安全に、かつ迅速にログインできるという大きなメリットがある。開発者やサービス提供者にとっては、認証処理の複雑さを軽減しつつ、セキュリティを大幅に向上させることができる。ただし、WebAuthnを利用する上での注意点もある。認証器(特にプラットフォーム認証器)が故障したり紛失したりした場合に備え、アカウントの復旧手段やバックアップ認証器を用意しておく必要がある。多くの場合、複数の認証器を登録したり、従来のパスワードやリカバリーコードを併用したりすることで対応できる。WebAuthnは、Webアプリケーションにおける認証のセキュリティと利便性を両立させるための、強力なソリューションであり、これからのWebの標準的な認証方式としてさらに普及していくことが予想される。

関連コンテンツ