パスワード認証 ぱすわーどにんしょう
簡単に言うとこんな感じ!
「本人だけが知っている秘密の合言葉」でログインを許可する仕組みだよ! 鍵のかかった部屋に入るとき、合言葉を知ってる人だけ入れる感じ。IDとパスワードの組み合わせが一致したら「あなたが本人ですね」と認めるってこと!
パスワード認証とは
パスワード認証とは、システムやサービスにアクセスする際に、あらかじめ登録した秘密の文字列(パスワード)を入力して本人確認を行う仕組みです。ユーザーIDと組み合わせることで「誰が」「正しい鍵を持っているか」を判断します。スマホのロック解除からメールのログイン、企業システムへのアクセスまで、あらゆる場面で使われている最もポピュラーな認証方式です。
仕組みはシンプルで、利用者が入力したパスワードをシステム側に保存された情報と照合し、一致すれば認証成功・不一致なら拒否します。ただし現在はパスワードをそのまま保存するのではなく「ハッシュ化」という処理を施して保存するのが標準的で、万が一データが漏洩してもパスワードがすぐにわからないようにしています。
単純でわかりやすい反面、パスワードの使い回し・推測しやすい文字列・フィッシング詐欺などによる漏洩リスクがあります。そのためセキュリティ意識の高い組織では、多要素認証(MFA)と組み合わせて使うことが強く推奨されています。
パスワード認証の仕組み
認証の流れ
| ステップ | 処理内容 | ポイント |
|---|---|---|
| ① 入力 | ユーザーがIDとパスワードを入力 | 通信はTLS(HTTPS)で暗号化 |
| ② 送信 | サーバーへ安全に送信 | 平文での送信は厳禁 |
| ③ 照合 | サーバー側でハッシュ化して比較 | パスワード本体は保存しない |
| ④ 判定 | 一致→認証成功 / 不一致→拒否 | 失敗回数制限でロック機能も |
ハッシュ化とは?
パスワードをそのまま保存するのは「金庫に鍵を置いておく」ようなもの。ハッシュ化とは、パスワードを別の文字列(ハッシュ値)に変換して保存する技術です。ハッシュ値から元のパスワードに戻せないため、データが盗まれても直接的な被害を防げます。
パスワード: "MyP@ss123"
↓ ハッシュ関数(例: bcrypt)
保存される値: "$2b$12$abc...xyz" ← 元には戻せない
よくある攻撃手法
| 攻撃名 | 内容 | 対策 |
|---|---|---|
| ブルートフォース攻撃 | 全パターンを総当たり | ロックアウト・長いパスワード |
| 辞書攻撃 | よく使われる単語を試す | 複雑なパスワード設定 |
| フィッシング | 偽サイトに入力させる | URLを確認・MFA導入 |
| パスワードスプレー | 少数のパスワードを多アカウントに試す | 一般的なパスワードの禁止 |
| クレデンシャルスタッフィング | 漏洩したリストを流用 | パスワード使い回しの禁止 |
覚え方:強いパスワードの条件「長複記」
「長く・複雑に・記憶はマネージャーに任せる」
- 長: 12文字以上(できれば16文字以上)
- 複: 大文字・小文字・数字・記号を混在
- 記: パスワードマネージャーで管理(全部を丸暗記しない)
歴史と背景
- 1960年代 — MITの時分割システム(CTSS)でパスワードが初めて使われる。研究者ごとにアカウントを分けるために導入された
- 1970年代 — UNIXがハッシュ化(DES暗号ベース)によるパスワード保存を採用。/etc/passwd ファイルに保存
- 1980〜90年代 — インターネットの普及とともに、Webサービスへのログインにパスワード認証が広がる
- 2000年代 — フィッシング詐欺・大規模情報漏洩が相次ぎ、パスワード単体の限界が議論され始める
- 2012年 — LinkedInやDropboxで大規模なパスワード漏洩が発生。ハッシュアルゴリズムの強度が問われる
- 2019年 — NISTが「定期的なパスワード変更は不要」「複雑さよりも長さを重視」という新ガイドラインを発表
- 2020年代〜 — パスキー(FIDO2)など「パスワードレス認証」への移行が本格化。Googleや Appleが対応を進める
他の認証方式との比較
認証方式の三要素
認証には「本人だけが持つもの」で3つの軸があります。パスワード認証はそのうちの「知識」に頼る方式です。
方式別の比較表
| 比較項目 | パスワード認証 | SMS認証(OTP) | 生体認証 | パスキー(FIDO2) |
|---|---|---|---|---|
| コスト | 低 | 中 | 高 | 中 |
| 利便性 | 高(慣れている) | 中 | 高 | 高 |
| セキュリティ | 低〜中 | 中 | 高 | 最高 |
| フィッシング耐性 | ❌ 弱い | △ 弱い | ⭕ 強い | ✅ 最強 |
| 導入のしやすさ | ✅ 簡単 | ⭕ 普通 | △ 難しい | ⭕ 普通 |
実務上のポイント:パスワード認証単体では現代のセキュリティ要件を満たすことが難しくなっています。重要システムでは必ず多要素認証(MFA)と組み合わせて運用することを検討してください。
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| RFC 9110 | HTTPにおける認証の基本フレームワーク(Basic認証を含む) |
| NIST SP 800-63B | デジタルアイデンティティガイドライン(パスワード要件の現代的基準) |
| RFC 8018 | パスワードベースの暗号化(PKCS#5) |
| FIDO2 / WebAuthn | パスワードレス認証の標準規格(パスワード認証の次世代代替) |
関連用語
- 多要素認証(MFA) — パスワードに加えてスマホや生体情報を組み合わせる認証強化の仕組み
- パスキー — パスワード不要で秘密鍵を使うFIDO2ベースの次世代認証
- シングルサインオン(SSO) — 1回のログインで複数システムにアクセスできる仕組み
- ハッシュ関数 — パスワードを安全に保存するために使われる一方向変換の技術
- ゼロトラスト — 「社内だから安全」を前提にせず常に認証・検証するセキュリティモデル
- フィッシング — 偽サイトへの誘導でパスワードを盗み取るサイバー攻撃の手口