はじめに
私たちは普段、さまざまな場面で認証を利用しています。
例えば、次のような場面です。
- スマートフォンを顔認証でロック解除する
- パソコンにパスワードを入力してログインする
- ネットショップにログインする
- 会社のネットワークに接続する
- VPNを使って社内システムにアクセスする
これらに共通しているのが、利用者が正しい本人であることを確認する仕組みです。
この仕組みを**認証(Authentication)**と呼びます。
今回は、はちみつ屋さんが店舗とオンラインショップを運営する場面を例に、さまざまな認証技術を学びましょう。
1. 認証とは
1-1. 認証の基本
**認証(Authentication)**とは、利用者や機器などが、主張している本人・正当な対象であることを確認する処理です。
例えば、はちみつ屋さんの管理システムにログインする場合を考えます。
【利用者】
│
│ ID・パスワードを入力
▼
【認証システム】
│
│ 登録情報と照合
▼
認証成功
│
▼
【管理システムにログイン】
認証に成功すると、システムは利用者が誰であるかを確認できます。
ただし、認証に成功したからといって、すべての操作が許可されるわけではありません。
1-2. 識別・認証・認可の違い
認証と一緒に覚えたいのが、識別と認可です。
| 用語 | 英語 | 内容 |
|---|---|---|
| 識別 | Identification | 利用者が誰であるかを名乗る |
| 認証 | Authentication | 本当にその本人なのか確認する |
| 認可 | Authorization | 利用者に許可する操作を決める |
🍯 はちみつ屋さんで例えると
従業員が在庫管理システムにログインする場合です。
① 識別
「私は従業員Aです」とユーザーIDを入力します。
② 認証
パスワードや指紋などで、本当に従業員Aなのか確認します。
③ 認可
従業員Aには在庫の閲覧を許可しますが、商品の価格変更は許可しません。
このように、識別・認証・認可は異なる役割を持っています。
2. 利用者認証の3要素
利用者認証は、認証に使用する情報によって大きく3つに分類できます。
| 認証要素 | 英語 | 具体例 |
|---|---|---|
| 知識情報 | Something You Know | パスワード、暗証番号 |
| 所持情報 | Something You Have | ICカード、セキュリティキー |
| 生体情報 | Something You Are | 指紋、顔、虹彩 |
2-1. 知識情報による認証
利用者だけが知っている情報を使用する方式です。
代表例は、パスワードや暗証番号です。
導入しやすい一方、情報が漏えいすると第三者に悪用される可能性があります。
2-2. 所持情報による認証
利用者が持っているものを使用する方式です。
例えば、次のものがあります。
- ICカード
- USBセキュリティキー
- ワンタイムパスワード生成器
- 認証用スマートフォン
所持品の紛失や盗難への対策が必要です。
2-3. 生体情報による認証
利用者の身体的・行動的な特徴を使用する方式です。
例えば、次のものがあります。
- 指紋
- 顔
- 虹彩
- 静脈
- 声紋
生体認証については、後ほど詳しく解説します。
3. 固定パスワード方式
3-1. 固定パスワード方式とは
**固定パスワード方式(Static Password Authentication)**とは、あらかじめ登録したパスワードを使用して認証する方式です。
一般的なWebサイトのログインなどで利用されています。
【利用者】
│
│ ユーザーID
│ パスワード
▼
【認証サーバー】
│
│ 登録情報と照合
▼
認証成功
3-2. メリット
固定パスワード方式には、次のメリットがあります。
- 導入が簡単
- 専用機器が不要
- 利用者が仕組みを理解しやすい
3-3. デメリット
一方、次の問題があります。
- パスワードを忘れる可能性がある
- 推測されやすいパスワードは危険
- パスワードの使い回しによる被害が発生する
- フィッシングによって盗まれる可能性がある
4. パスワードに対する攻撃
固定パスワード方式では、パスワードを狙った攻撃への対策が重要です。
4-1. ブルートフォース攻撃
**ブルートフォース攻撃(Brute Force Attack)**とは、考えられるパスワードを総当たりで試す攻撃です。
例えば、4桁の数字だけのパスワードなら、候補は次の数になります。
[ 10^4=10,000 ]
つまり、1万通りです。
4-2. 辞書攻撃
**辞書攻撃(Dictionary Attack)**とは、辞書に載っている単語や、よく使われる文字列などを候補として試す攻撃です。
4-3. パスワードリスト攻撃
**パスワードリスト攻撃(Credential Stuffing)**とは、別のサービスなどから流出したIDとパスワードの組み合わせを利用してログインを試みる攻撃です。
パスワードの使い回しが被害につながります。
4-4. パスワードの安全な管理
パスワードを安全に利用するには、次の対策が重要です。
- 長く、推測されにくいパスワードを使用する
- サービスごとに異なるパスワードを使用する
- 多要素認証を利用する
- ログイン試行回数の制限などを設ける
- パスワードマネージャーを活用する
また、システム側では、パスワードを平文のまま保存しないことが重要です。
一般に、ソルトを加えたうえで、Argon2idなどのパスワード保存用アルゴリズムを利用します。
5. チャレンジレスポンス認証
5-1. チャレンジレスポンス認証とは
**チャレンジレスポンス認証(Challenge-Response Authentication)**とは、認証サーバーが送信するランダムな値などを利用して、利用者を認証する方式です。
サーバーから送られる値をチャレンジ、利用者側が計算して返す値をレスポンスと呼びます。
5-2. 認証の流れ
【利用者】 【認証サーバー】
│ │
│ ① 認証要求 │
├───────────────────────────→│
│ │
│ ② チャレンジ送信 │
│←───────────────────────────┤
│ │
│ ③ 秘密情報を使って計算 │
│ │
│ ④ レスポンス送信 │
├───────────────────────────→│
│ │
│ ⑤ 検証
│ │
│ ⑥ 認証結果 │
│←───────────────────────────┤
手順1:認証要求
利用者が認証サーバーに接続を要求します。
手順2:チャレンジ送信
認証サーバーが、ランダムな値などを送信します。
手順3:レスポンス計算
利用者側が、チャレンジと秘密情報を使ってレスポンスを計算します。
手順4:レスポンス送信
計算結果を認証サーバーに返します。
手順5:検証
認証サーバーがレスポンスを検証します。
5-3. チャレンジレスポンス認証の特徴
チャレンジレスポンス認証では、通常、秘密情報そのものを通信経路に送信する必要がありません。
また、チャレンジを毎回変えることで、以前の認証通信をそのまま再送するリプレイ攻撃への耐性を高められます。
ただし、安全性は具体的なプロトコルや使用する暗号技術に依存します。
試験でのポイント
チャレンジレスポンス認証=毎回異なるチャレンジに対する応答を検証する方式
と覚えましょう。
6. ワンタイムパスワード
6-1. ワンタイムパスワードとは
**ワンタイムパスワード(OTP:One-Time Password)**とは、原則として一度の認証でのみ利用できるパスワードです。
固定パスワードと異なり、認証ごと、または一定時間ごとに値が変化します。
6-2. ワンタイムパスワードの特徴
ワンタイムパスワードには、次のメリットがあります。
- 同じパスワードの再利用を防ぎやすい
- 固定パスワードの漏えいによるリスクを軽減できる
- 多要素認証の追加要素として利用できる
ただし、ワンタイムパスワードでも、リアルタイムのフィッシングなどに悪用される可能性があります。
7. ワンタイムパスワードの種類
7-1. 時刻同期方式
**時刻同期方式(Time-based OTP)**とは、現在時刻などを利用してワンタイムパスワードを生成する方式です。
代表例が**TOTP(Time-based One-Time Password)**です。
TOTPでは、共有された秘密情報と時刻に基づく値からパスワードを生成します。
【認証アプリ】 【認証サーバー】
共有秘密情報 共有秘密情報
+ +
現在時刻 現在時刻
│ │
▼ ▼
OTP生成 OTP生成
│ │
└────────照合───────────────┘
7-2. カウンタ同期方式
**カウンタ同期方式(Counter-based OTP)**とは、認証回数などを表すカウンタ値を利用する方式です。
代表例が**HOTP(HMAC-based One-Time Password)**です。
認証側と利用者側で、カウンタを適切に管理する必要があります。
7-3. チャレンジレスポンス型OTP
認証サーバーから送られたチャレンジに基づいて、ワンタイムパスワードを生成する方式です。
認証のたびに異なる値を使用できます。
7-4. OTPの比較
| 方式 | 利用する情報 | 特徴 |
|---|---|---|
| 時刻同期方式 | 時刻・共有秘密情報 | 一定時間ごとに値が変わる |
| カウンタ同期方式 | カウンタ・共有秘密情報 | 利用回数などに応じて値が変わる |
| チャレンジレスポンス型 | チャレンジ・秘密情報 | 認証要求ごとに応答を生成する |
8. シングルサインオン
8-1. シングルサインオンとは
**シングルサインオン(SSO:Single Sign-On)**とは、一度の認証によって複数のシステムやサービスを利用できるようにする仕組みです。
例えば、会社で次のシステムを利用するとします。
- 勤怠管理システム
- メールシステム
- 経費精算システム
- 社内ポータル
SSOがない場合、それぞれのシステムでログインが必要になることがあります。
【SSOなし】
利用者
├─ 勤怠管理 → ログイン
├─ メール → ログイン
├─ 経費精算 → ログイン
└─ ポータル → ログイン
一方、SSOを導入すると、共通の認証基盤を利用できます。
【SSOあり】
利用者
│
▼
SSO認証基盤
│
┌──────┼──────┐
▼ ▼ ▼
勤怠 メール 経費精算
9. SSOのメリットとデメリット
9-1. メリット
- 利用者が何度もログインする手間を減らせる
- 複数のパスワードを覚える負担を軽減できる
- 認証ポリシーを集中管理しやすい
- 利用者アカウントの管理を効率化できる
9-2. デメリット
- 認証基盤に障害が発生すると、複数のシステムに影響する可能性がある
- 認証情報が悪用されると、複数のサービスに不正アクセスされる危険がある
- 導入するシステムによって連携方法が異なる
そのため、SSOでは多要素認証やアクセス制御などを組み合わせることが重要です。
10. SSOの主な方式
応用情報技術者試験では、SSOの実現方式も重要です。
今回は、次の3つを中心に解説します。
- クッキー型
- リバースプロキシ型
- SAML型
なお、これらは完全に排他的な分類ではありません。
クッキー型はセッション情報の管理方法、リバースプロキシ型はシステム構成、SAML型は認証情報の連携方式という違いがあります。
11. クッキー型SSO
11-1. クッキー型とは
クッキー型SSOとは、WebブラウザのCookieを利用して認証状態を管理する方式です。
Cookieとは、Webサイトがブラウザに保存させる小さなデータです。
例えば、利用者が一度ログインすると、認証済みであることを示すセッション情報がCookieを通じて管理されます。
11-2. クッキー型の仕組み
【利用者】
│
│ ① ログイン
▼
【認証サーバー】
│
│ ② 認証成功
│ Cookieを発行
▼
【ブラウザ】
│
│ ③ Cookieを送信
▼
【連携するWebシステム】
│
│ ④ 認証状態を確認
▼
サービス利用
11-3. クッキー型の特徴
メリット
- Webブラウザを利用した認証管理に適している
- 利用者が何度もログインする手間を減らせる
- Webアプリケーションとの親和性が高い
注意点
Cookieは、任意の異なるドメイン間で自由に共有できるわけではありません。
複数のWebサービスでSSOを実現するには、認証サーバーへのリダイレクトなど、追加の仕組みが必要になる場合があります。
また、認証Cookieが盗まれると、セッションを悪用される危険があります。
そのため、HTTPS、Secure属性、HttpOnly属性、SameSite属性などの適切な設定が重要です。
12. リバースプロキシ型SSO
12-1. リバースプロキシ型とは
リバースプロキシ型SSOとは、利用者とWebシステムの間にリバースプロキシを配置し、認証を集中的に処理する方式です。
リバースプロキシは、利用者からのリクエストを受け取り、内部のWebサーバーへ転送する仕組みです。
12-2. リバースプロキシ型の仕組み
【利用者】
│
│ アクセス
▼
【リバースプロキシ】
│
│ 認証処理
▼
【認証基盤】
│
│ 認証成功
▼
【リバースプロキシ】
│
┌───────┼───────┐
▼ ▼ ▼
システムA システムB システムC
12-3. リバースプロキシ型の特徴
メリット
- 認証処理を集中管理できる
- 既存システムへの変更を抑えられる場合がある
- 認証済み利用者だけを内部システムへ通す構成を作れる
デメリット
- リバースプロキシに負荷が集中する可能性がある
- 障害発生時に複数のシステムへ影響する可能性がある
- すべての対象通信がプロキシを通過するよう適切に構成する必要がある
13. SAML型SSO
13-1. SAMLとは
**SAML(Security Assertion Markup Language)**とは、異なるシステム間で認証情報などを交換するためのXMLベースの標準規格です。
SAMLは、企業向けクラウドサービスなどのSSOで広く利用されています。
13-2. SAMLの登場人物
SAMLでは、主に次の2つの役割が登場します。
| 用語 | 正式名称 | 役割 |
|---|---|---|
| IdP | Identity Provider | 利用者を認証し、認証情報を提供する |
| SP | Service Provider | 認証情報を受け取り、サービスを提供する |
🍯 はちみつ屋さんで例えると
はちみつ屋さんがクラウド型の勤怠管理システムを利用しているとします。
IdP
従業員が本人であることを確認する、会社の認証基盤です。
SP
認証結果を受け取り、勤怠管理サービスを提供するシステムです。
14. SAML認証の流れ
代表的なSP起点のSSOを考えます。
【利用者】 【SP】 【IdP】
│ │ │
│ ① アクセス │ │
├──────────────→│ │
│ │ │
│ ② 認証要求へリダイレクト │
│←──────────────┤ │
│ │
│ ③ IdPへアクセス │
├───────────────────────────────→│
│ │
│ ④ 利用者認証 │
│←──────────────────────────────→│
│ │
│ ⑤ SAMLレスポンスを発行 │
│←───────────────────────────────┤
│ │
│ ⑥ SPへ送信 │ │
├──────────────→│ │
│ │ │
│ ⑦ 検証 │
│ │ │
│ ⑧ 利用開始 │ │
│←──────────────┤ │
14-1. SAMLアサーション
**SAMLアサーション(SAML Assertion)**とは、IdPが発行する、認証結果などを表す情報です。
SAMLアサーションには、例えば次の情報を含められます。
- 利用者の識別情報
- 認証に関する情報
- 属性情報
- 利用条件
SPは、受け取ったSAMLレスポンスの署名や発行者、有効期間、宛先などを適切に検証します。
14-2. SAML型のメリット
- 異なるドメインのサービス間でSSOを実現できる
- クラウドサービスと社内認証基盤を連携できる
- 認証情報を集中管理しやすい
- 標準規格に基づいて連携できる
15. SSOの3方式を比較
| 項目 | クッキー型 | リバースプロキシ型 | SAML型 |
|---|---|---|---|
| 主な仕組み | Cookieによる認証状態管理 | プロキシで認証を集約 | IdPとSPで認証情報を連携 |
| 主な利用対象 | Webアプリケーション | Webシステム | Web・クラウドサービス |
| 認証の中心 | セッション管理 | リバースプロキシ | IdP |
| 特徴 | ブラウザとの親和性が高い | 既存システムに適用しやすい場合がある | 異なる組織・ドメイン間でも連携しやすい |
試験でのポイント
- クッキー型:Cookieを利用する
- リバースプロキシ型:認証処理をプロキシで集約する
- SAML型:IdPとSPが認証情報を交換する
16. バイオメトリクス認証
16-1. バイオメトリクス認証とは
**バイオメトリクス認証(Biometric Authentication)**とは、人間の身体的特徴や行動的特徴を利用して本人確認を行う方式です。
一般に、生体認証とも呼ばれます。
16-2. 生体認証の種類
| 認証方式 | 利用する特徴 |
|---|---|
| 指紋認証 | 指先の指紋 |
| 顔認証 | 顔の特徴 |
| 虹彩認証 | 目の虹彩模様 |
| 静脈認証 | 指や手の静脈パターン |
| 声紋認証 | 声の特徴 |
| 署名認証 | 筆跡や署名動作の特徴 |
17. 生体認証の仕組み
生体認証では、一般に次の処理を行います。
- 生体情報を登録する
- 生体情報から特徴量を抽出する
- 認証時に生体情報を取得する
- 登録済みの特徴量と照合する
- 一致度などに基づいて判定する
【登録時】
指紋を読み取る
│
▼
特徴量を抽出
│
▼
テンプレートを登録
【認証時】
指紋を読み取る
│
▼
特徴量を抽出
│
▼
登録テンプレートと照合
│
▼
一致度を判定
│
▼
認証成功・失敗
生体認証では、必ずしも生体画像そのものを保存するわけではありません。
特徴量を抽出したテンプレートを保存する構成もあります。
18. 生体認証の評価指標
生体認証では、本人であっても認証に失敗する場合があります。
反対に、本人ではない人を誤って認証する可能性もあります。
このような誤判定を評価する指標があります。
18-1. FRR
**FRR(False Rejection Rate:本人拒否率)**とは、正当な利用者を誤って拒否する割合です。
例えば、本人が100回認証を試み、そのうち5回失敗した場合、
[ FRR=\frac{5}{100}\times100 ]
[ =\boxed{5%} ]
となります。
18-2. FAR
**FAR(False Acceptance Rate:他人受入率)**とは、本人ではない人を誤って受け入れる割合です。
例えば、他人による認証試行が1,000回あり、そのうち2回を誤って受け入れた場合、
[ FAR=\frac{2}{1000}\times100 ]
[ =\boxed{0.2%} ]
となります。
18-3. FRRとFARの関係
一般に、照合の判定基準を厳しくすると、次の傾向があります。
- FRRは高くなる
- FARは低くなる
反対に、判定基準を緩くすると、
- FRRは低くなる
- FARは高くなる
という傾向があります。
判定を厳しくする
│
├─ 本人も拒否しやすい
│ → FRR上昇
│
└─ 他人を受け入れにくい
→ FAR低下
18-4. EER
**EER(Equal Error Rate:等誤り率)**とは、FRRとFARが等しくなる点での誤り率です。
一般に、EERが低いほど認証性能が高いと評価できます。
ただし、実際の認証システムでは、用途に応じて判定基準を設定します。
試験でのポイント
FRR=本人を拒否する割合
FAR=他人を受け入れる割合
この違いは非常に重要です。
19. 生体認証のメリットとデメリット
19-1. メリット
- パスワードを覚える必要がない場合がある
- ICカードなどを持ち歩く必要がない場合がある
- 利用者の負担を軽減できる
19-2. デメリット
- 生体情報は原則として簡単に変更できない
- 認証装置が必要になる場合がある
- 誤認識が発生する可能性がある
- 生体情報の漏えいや不適切な利用への対策が必要
20. その他の利用者認証方法
ここまで紹介した方式以外にも、さまざまな認証方法があります。
20-1. ICカード認証
ICカードに保存された情報を利用する認証方式です。
社員証や入退室管理システムなどで利用されます。
20-2. デジタル証明書による認証
デジタル証明書と対応する秘密鍵を利用して、利用者や端末を認証する方式です。
企業ネットワークやVPNなどで利用されます。
デジタル証明書については、次の記事「デジタル署名とPKI」で詳しく解説します。
20-3. 多要素認証
**多要素認証(MFA:Multi-Factor Authentication)**とは、異なる種類の認証要素を2つ以上組み合わせる方式です。
例えば、
パスワード+認証アプリ
という組み合わせです。
パスワードは知識情報、認証アプリを利用する端末は所持情報に該当します。
20-4. 二段階認証との違い
二段階認証は、認証を2段階に分けて行うことです。
例えば、次のような方式があります。
パスワード入力
│
▼
秘密の質問に回答
│
▼
認証成功
この場合、どちらも知識情報なので、多要素認証とは限りません。
重要ポイント
二段階認証=認証を2段階で行う
多要素認証=異なる種類の認証要素を組み合わせる
20-5. パスキー認証
**パスキー(Passkey)**とは、FIDO2/WebAuthnなどの技術を利用した、公開鍵暗号方式に基づく認証方法です。
一般的なパスキー認証では、利用者の端末に秘密鍵を保持し、サービス側に公開鍵を登録します。
ログイン時には、端末が秘密鍵を使って認証要求に応答します。
パスキーは、パスワードを入力する必要がなく、適切に実装された場合にはフィッシングへの耐性も高い方式です。
21. リモートアクセスとは
21-1. リモートアクセスの基本
**リモートアクセス(Remote Access)**とは、離れた場所からネットワークやシステムへ接続することです。
例えば、従業員が自宅から会社のネットワークに接続する場合です。
【自宅】
パソコン
│
│ インターネット
▼
【会社】
リモートアクセス装置
│
▼
社内ネットワーク
リモートアクセスでは、正当な利用者だけが接続できるように認証する必要があります。
22. PPPとは
22-1. PPPの基本
**PPP(Point-to-Point Protocol)**とは、2つの機器間でポイントツーポイント通信を行うためのデータリンク層のプロトコルです。
PPPは、シリアル回線などで利用されてきました。
また、PPPoEなどの関連技術にも利用されています。
22-2. PPPの主な機能
PPPには、次のような機能があります。
- データのカプセル化
- リンクの確立と管理
- ネットワーク層プロトコルの設定
- 認証
PPPの認証方式として、特に重要なのが次の2つです。
- PAP
- CHAP
23. PAPとは
23-1. PAPの基本
**PAP(Password Authentication Protocol)**とは、PPPで利用される認証方式の1つです。
PAPでは、ユーザー名とパスワードを認証側へ送信します。
23-2. PAPの認証手順
【接続端末】 【認証側】
│ │
│ ID・パスワード │
├───────────────────────→│
│ │
│ 情報を照合
│ │
│ 認証結果 │
│←───────────────────────┤
PAPの大きな特徴は、パスワードを暗号化せずに送信することです。
そのため、通信経路が別の仕組みで保護されていなければ、パスワードを盗み見られる危険があります。
24. CHAPとは
24-1. CHAPの基本
**CHAP(Challenge-Handshake Authentication Protocol)**とは、チャレンジレスポンス方式を利用するPPPの認証プロトコルです。
PAPとは異なり、パスワードそのものを通信経路に送信する必要がありません。
24-2. CHAPの認証手順
【接続端末】 【認証側】
│ │
│ ① チャレンジ │
│←─────────────────────────┤
│ │
│ ② 秘密情報などから │
│ ハッシュ値を計算 │
│ │
│ ③ レスポンス │
├─────────────────────────→│
│ │
│ ④ 検証
│ │
│ ⑤ 認証結果 │
│←─────────────────────────┤
24-3. CHAPの特徴
CHAPでは、認証側から送られたチャレンジと共有秘密情報などを利用して、レスポンスを計算します。
標準的なCHAPでは、MD5などのハッシュアルゴリズムが使用されてきました。
また、接続後に再認証を行うこともできます。
ただし、従来のCHAPは現在の高度な認証方式と比較すると制約があり、利用環境に応じてより安全な方式を選択する必要があります。
25. PAPとCHAPの比較
| 項目 | PAP | CHAP |
|---|---|---|
| 正式名称 | Password Authentication Protocol | Challenge-Handshake Authentication Protocol |
| 認証方法 | ID・パスワードを送信 | チャレンジレスポンス |
| パスワードの送信 | 平文で送信 | パスワードそのものは送信しない |
| 再認証 | 基本的になし | 可能 |
| 安全性 | 低い | PAPより改善されている |
試験でのポイント
PAP=パスワードを平文送信
CHAP=チャレンジレスポンス方式
この違いを覚えましょう。
26. RADIUS認証とは
26-1. RADIUSの基本
**RADIUS(Remote Authentication Dial-In User Service)**とは、ネットワークへのアクセス認証などを集中管理するためのプロトコルです。
RADIUSは、リモートアクセスや企業向け無線LANなどで利用されています。
27. RADIUSのAAA
RADIUSでは、主に次の3つの機能を扱います。
| 機能 | 英語 | 内容 |
|---|---|---|
| 認証 | Authentication | 利用者が本人か確認する |
| 認可 | Authorization | 利用者に許可するアクセスを決定する |
| 利用記録 | Accounting | 接続時間などの利用状況を記録する |
この3つをまとめてAAAと呼びます。
28. RADIUS認証システム
28-1. RADIUS認証システムの構成
RADIUS認証システムでは、主に次の要素が登場します。
- 利用者端末
- RADIUSクライアント
- RADIUSサーバー
ここでいうRADIUSクライアントは、一般的な利用者のパソコンではありません。
RADIUSサーバーに認証要求を送信するネットワーク機器を指します。
例えば、無線アクセスポイントやVPN装置などです。
28-2. RADIUS認証の構成図
【利用者端末】
│
│ 接続要求
▼
【無線アクセスポイント】
RADIUSクライアント
│
│ RADIUS要求
▼
【RADIUSサーバー】
│
│ 認証処理
▼
【利用者情報の確認】
│
│ 認証結果
▼
【無線アクセスポイント】
│
│ 接続許可・拒否
▼
【利用者端末】
29. RADIUSの主なメッセージ
RADIUSでは、次のようなメッセージが利用されます。
| メッセージ | 内容 |
|---|---|
| Access-Request | 認証・認可を要求する |
| Access-Accept | アクセスを許可する |
| Access-Reject | アクセスを拒否する |
| Access-Challenge | 追加の認証情報を要求する |
| Accounting-Request | 利用記録を送信する |
| Accounting-Response | 利用記録の要求に応答する |
30. RADIUSで使用するポート番号
RADIUSでは、一般的にUDPを使用します。
| 用途 | プロトコル | ポート番号 |
|---|---|---|
| 認証・認可 | UDP | 1812 |
| アカウンティング | UDP | 1813 |
※歴史的にはUDP 1645・1646が利用された環境もあります。また、TLSなどで保護するRADIUSの方式も存在します。
試験でのポイント
RADIUS認証=UDP 1812
RADIUSアカウンティング=UDP 1813
31. IEEE 802.1Xとは
31-1. IEEE 802.1Xの基本
IEEE 802.1Xとは、ネットワークへの接続を制御するためのポートベースの認証技術です。
無線LANだけでなく、有線LANでも利用できます。
IEEE 802.1Xでは、主に次の3つの役割があります。
| 役割 | 説明 |
|---|---|
| Supplicant | 認証を受ける端末 |
| Authenticator | 認証を仲介するネットワーク機器 |
| Authentication Server | 認証を実行するサーバー |
32. IEEE 802.1Xの構成
【Supplicant】
利用者のPC
│
│ EAPOL
▼
【Authenticator】
アクセスポイント
│
│ RADIUS
▼
【Authentication Server】
RADIUSサーバー
32-1. EAPOLとは
**EAPOL(EAP over LAN)**とは、LAN上でEAPメッセージをやり取りするための仕組みです。
IEEE 802.1Xでは、利用者端末とAuthenticatorの間で利用されます。
32-2. EAPとは
**EAP(Extensible Authentication Protocol)**とは、複数の認証方式を利用できるようにする認証の枠組みです。
代表的な方式には、次のものがあります。
- EAP-TLS
- PEAP
- EAP-TTLS
EAP自体が単一の認証アルゴリズムではない点が重要です。
33. IEEE 802.1XとRADIUSの認証の流れ
【端末】 【AP】 【RADIUS】
│ │ │
│ ① 接続要求 │ │
├──────────────→│ │
│ │ │
│ ② EAPによる認証情報の交換 │
│←─────────────→│ │
│ │ │
│ │ ③ RADIUS要求 │
│ ├───────────────→│
│ │ │
│ │ ④ 認証処理 │
│ │ │
│ │ ⑤ 認証結果 │
│ │←───────────────┤
│ │ │
│ ⑥ 接続許可 │ │
│←──────────────┤ │
実際には、EAPメッセージが端末と認証サーバーの間で複数回交換され、アクセスポイントが中継します。
認証成功後、必要な鍵の確立などを経て、ネットワーク通信が許可されます。
34. RADIUSとIEEE 802.1Xの違い
RADIUSとIEEE 802.1Xは、混同しやすい技術です。
しかし、それぞれ役割が異なります。
| 項目 | RADIUS | IEEE 802.1X |
|---|---|---|
| 主な目的 | 認証・認可・利用記録の集中管理 | ネットワークへのアクセス制御 |
| 主な利用場所 | VPN、無線LANなど | 有線LAN、無線LAN |
| 主な役割 | 認証要求や結果の交換 | 端末とネットワーク機器の認証制御 |
| 関係 | 認証サーバーとの通信に利用 | RADIUSと組み合わせて利用されることが多い |
🍯 はちみつ屋さんで例えると
会社のWi-Fiに接続する従業員を考えます。
IEEE 802.1X
店舗の入口にいる警備員のような存在です。
接続を許可してよいか確認します。
RADIUS
従業員名簿を管理する本部のような存在です。
認証情報を確認し、接続を許可するか判断します。
35. 認証技術の比較
ここまで学んだ認証技術を整理しましょう。
| 認証方式 | 主な特徴 | 主な利用場面 |
|---|---|---|
| 固定パスワード | 同じパスワードを継続利用 | Webログイン |
| チャレンジレスポンス | チャレンジに対する応答を検証 | ネットワーク認証 |
| OTP | 一度限りのパスワード | 多要素認証 |
| SSO | 一度の認証で複数サービスを利用 | 企業システム |
| 生体認証 | 身体的・行動的特徴を利用 | スマートフォン、入退室管理 |
| ICカード認証 | 所持情報を利用 | 社員証、入退室管理 |
| パスキー | 公開鍵暗号技術を利用 | Webサービス |
| PAP | パスワードを平文送信 | 従来のPPP認証 |
| CHAP | チャレンジレスポンス | PPP認証 |
| RADIUS | 認証・認可・利用記録を集中管理 | VPN、企業LAN |
| IEEE 802.1X | ネットワーク接続を制御 | 企業LAN |
36. 応用情報技術者試験の重要ポイント
| 用語 | 覚えるポイント |
|---|---|
| Authentication | 認証 |
| Authorization | 認可 |
| 固定パスワード | 同じパスワードを継続利用 |
| チャレンジレスポンス | 毎回異なるチャレンジへの応答を検証 |
| OTP | ワンタイムパスワード |
| TOTP | 時刻同期方式 |
| HOTP | カウンタ同期方式 |
| SSO | 一度の認証で複数サービスを利用 |
| クッキー型 | Cookieで認証状態を管理 |
| リバースプロキシ型 | プロキシで認証を集約 |
| SAML | XMLベースの認証情報連携規格 |
| IdP | 認証情報を提供する側 |
| SP | サービスを提供する側 |
| バイオメトリクス認証 | 生体情報を利用 |
| FRR | 本人拒否率 |
| FAR | 他人受入率 |
| EER | 等誤り率 |
| MFA | 多要素認証 |
| PPP | ポイントツーポイント通信のプロトコル |
| PAP | パスワードを平文送信 |
| CHAP | チャレンジレスポンス認証 |
| RADIUS | AAAを提供 |
| IEEE 802.1X | ネットワークアクセス認証 |
| EAPOL | LAN上でEAPを運ぶ仕組み |
37. 練習問題
問題1:認証の3要素
次のうち、知識情報に該当するものはどれでしょうか。
A. 指紋
B. ICカード
C. パスワード
D. 顔
解答
正解:C
パスワードは知識情報に該当します。
問題2:チャレンジレスポンス認証
チャレンジレスポンス認証の特徴として、最も適切なものはどれでしょうか。
A. パスワードを必ず平文送信する
B. サーバーから送られる値に対して応答を計算する
C. 生体情報のみを使用する
D. 認証サーバーを使用できない
解答
正解:B
チャレンジレスポンス認証では、チャレンジに対する応答を検証します。
問題3:ワンタイムパスワード
TOTPで利用する主な情報はどれでしょうか。
A. MACアドレス
B. IPアドレス
C. 時刻と共有秘密情報
D. DNSサーバーのアドレス
解答
正解:C
TOTPは、時刻と共有秘密情報を利用します。
問題4:SSO
SSOの説明として、最も適切なものはどれでしょうか。
A. すべての通信を暗号化する仕組み
B. 一度の認証で複数のシステムを利用できる仕組み
C. IPアドレスを変換する仕組み
D. データを圧縮する仕組み
解答
正解:B
SSOは、複数のシステムで認証を共通化する仕組みです。
問題5:SAML
SAMLにおいて、利用者を認証して認証情報を提供する役割はどれでしょうか。
A. SP
B. IdP
C. DNS
D. DHCP
解答
正解:B
IdPはIdentity Providerの略です。
問題6:生体認証
本人を誤って拒否する割合を表す指標はどれでしょうか。
A. FAR
B. FRR
C. EER
D. MTBF
解答
正解:B
FRRは本人拒否率です。
問題7:PPP認証
パスワードを平文で送信するPPPの認証方式はどれでしょうか。
A. CHAP
B. PAP
C. RADIUS
D. EAP-TLS
解答
正解:B
PAPでは、パスワードを平文で送信します。
問題8:CHAP
CHAPで利用される認証方法はどれでしょうか。
A. チャレンジレスポンス方式
B. 顔認証
C. ワンタイムパスワードの時刻同期方式
D. SAMLアサーション
解答
正解:A
CHAPは、チャレンジレスポンス方式を利用します。
問題9:RADIUS
RADIUSが提供するAAAに含まれないものはどれでしょうか。
A. Authentication
B. Authorization
C. Accounting
D. Availability
解答
正解:D
AAAは認証・認可・利用記録です。
問題10:IEEE 802.1X
IEEE 802.1Xにおいて、認証を仲介するネットワーク機器の役割はどれでしょうか。
A. Supplicant
B. Authenticator
C. Service Provider
D. Identity Provider
解答
正解:B
Authenticatorは、端末と認証サーバーの間で認証を仲介します。
まとめ
今回は、認証の基本から、利用者認証、リモートアクセス認証、RADIUS認証まで学びました。
特に重要なのは、次のポイントです。
- 認証:利用者が正しい本人であることを確認する
- 固定パスワード方式:同じパスワードを継続利用する
- チャレンジレスポンス認証:毎回異なるチャレンジに対する応答を検証する
- ワンタイムパスワード:一度限りのパスワードを利用する
- SSO:一度の認証で複数のシステムを利用できる
- 生体認証:指紋や顔などの特徴を利用する
- PAP:パスワードを平文で送信する
- CHAP:チャレンジレスポンス方式を利用する
- RADIUS:AAAを提供する
- IEEE 802.1X:ネットワークへのアクセスを制御する
🍯 はちみつメモ
認証は「あなたが本当に本人なのかを確認する仕組み」!
はちみつ屋さんで考えると、
固定パスワード
→ 従業員が決められた合言葉を伝える方法。
チャレンジレスポンス
→ 店長が毎回違う質問を出し、正しい答えを返せるか確認する方法。
ワンタイムパスワード
→ 一度使うと無効になる合言葉。
SSO
→ 一度本人確認すれば、店舗の複数の管理システムを利用できる仕組み。
生体認証
→ 指紋や顔など、本人の特徴で確認する方法。
PAP
→ 合言葉をそのまま伝える方法。
CHAP
→ 合言葉そのものは伝えず、質問への応答で確認する方法。
RADIUS
→ 従業員の認証情報を管理する本部。
IEEE 802.1X
→ 店舗のネットワークに入ってよいか確認する入口の警備員。
応用情報技術者試験では、**「PAPとCHAP」「FRRとFAR」「SSOの実現方式」「RADIUSとIEEE 802.1X」**の違いを重点的に覚えておこう!