Skip to the content.

最終更新日:2026年8月24日

まず結論

パスワード認証では、パスワードそのものを保存せず、ハッシュ値に変換して保存するのが基本です。

認証時には、入力されたパスワードを同じ方法でハッシュ化し、保存済みのハッシュ値と比較します。

登録時
パスワード
↓ ハッシュ関数
ハッシュ値を保存

認証時
入力パスワード
↓ 同じ方法でハッシュ化
ハッシュ値を作る
↓
保存済みハッシュ値と比較

科目Aでは、まず次の一文で判断します。

保存するのはパスワードそのものではなく、パスワードのハッシュ値。

直感的な説明

パスワードをそのまま保存すると、パスワードファイルやデータベースを不正に見られたときに、利用者のパスワードそのものが知られてしまいます。

そこで、パスワードから「照合用の値」を作って保存します。

元のパスワード
↓
ハッシュ化
↓
照合用の値

ログインするときも同じです。

入力されたパスワードから照合用の値を作り、保存してある値と一致するかを確認します。

保存済み
ハッシュ値 A

入力されたパスワード
↓ ハッシュ化
ハッシュ値 A

一致
→ 認証成功

つまり、システムは元のパスワードを保存していなくても、入力されたパスワードが正しいかを確認できます

定義・仕組み

登録時

利用者がパスワードを設定すると、その値をハッシュ関数で変換します。

password
↓ ハッシュ関数
ハッシュ値

保存するのは、このハッシュ値です。

認証時

利用者が入力したパスワードを、登録時と同じ方法でハッシュ化します。

その結果と保存済みのハッシュ値を比較します。

段階 処理
登録時 パスワードをハッシュ化して保存
認証時 入力パスワードを同じ方法でハッシュ化
比較時 ハッシュ値同士を比較

ここで大切なのは、比較する対象はパスワードのハッシュ値同士ということです。

利用者IDは「誰か」を識別する情報であり、パスワードは「本人か」を確認する秘密情報です。

利用者ID
→ 誰かを識別する

パスワード
→ 本人かを確認する

そのため、利用者IDをハッシュ化してパスワードと比較しても、正しい認証にはなりません。

ハッシュ関数そのものの性質は、ハッシュ関数とは?改ざん検知に使う一方向の要約値で整理しています。

科目Aでどう出る?

科目Aでは、パスワードファイルへの不正アクセスを想定し、どの保存方法が適切かを選ばせる問題が出ます。

判断表

選択肢の考え方 判断
パスワードをハッシュ値で保存し、入力側もハッシュして比較 適切
利用者IDをハッシュ化して比較 不適切
パスワードを平文で保存 不適切
平文パスワードを保存して、比較時だけハッシュ化 不適切
パスワードを圧縮して保存し、認証時に復元 不適切

試験中の判断手順

① 保存ファイルに平文パスワードが残るか?
   ↓
   残るなら危険

② 認証時にハッシュ化する対象は何か?
   ↓
   入力されたパスワード

③ 何と何を比較するか?
   ↓
   ハッシュ値同士

この3点で多くの選択肢を切れます。

どんな場面で使う?

パスワードを使うログイン機能で使います。

  • Webサービス
  • 社内システム
  • 会員サイト
  • 管理画面
  • 業務アプリケーション

重要なのは、認証のために元のパスワードを取り出す必要はないことです。

元のパスワードを知りたい
→ 目的ではない

入力された値が正しいか確認したい
→ ハッシュ値の比較でよい

よくある誤解・混同

平文で保存して、認証時に両方ハッシュすれば安全?

安全ではありません。

認証時にハッシュ化していても、保存ファイルに平文パスワードが残っていれば、不正アクセスされたときにパスワードそのものが知られてしまいます。

保存時に平文
→ NG

比較方法だけでなく、保存時点で平文を残さないことが重要です。

圧縮すれば安全?

圧縮は、データサイズを小さくするための処理です。

認証時に復元できるので、元のパスワードも取り出せてしまいます。

圧縮
→ 小さくする
→ 復元できる

ハッシュ
→ 照合用の値を作る
→ 元に戻すことを前提にしない

したがって、圧縮はパスワード保護の代わりにはなりません。

ハッシュ化と暗号化は同じ?

同じではありません。

用語 目的 元に戻す?
ハッシュ化 照合・改ざん確認など 基本的に戻さない
暗号化 内容を秘密にする 鍵を使って復号する

パスワード認証では、元のパスワードを復元する必要がありません。

そのため、ハッシュ値を使って照合します。

ハッシュ化すれば絶対安全?

そこまで単純ではありません。

実際のシステムでは、単純なハッシュ化だけでなく、ソルトやパスワード向けのハッシュ方式を使って、解析を難しくします。

ただし、FE科目Aで今回のような基本問題を解くときは、まず次の対応を押さえます。

平文保存
→ 危険

パスワードのハッシュ値を保存
→ 適切な方向

まとめ(試験直前用)

  • パスワードは平文のまま保存しない
  • 登録時にパスワードをハッシュ化し、そのハッシュ値を保存する
  • 認証時は入力パスワードを同じ方法でハッシュ化する
  • 比較するのは、保存済みハッシュ値と入力パスワードから作ったハッシュ値
  • 利用者IDをハッシュ化しても、パスワード認証にはならない
  • 圧縮は復元できるので、パスワード保護の代わりにはならない
  • ハッシュは元に戻すためではなく、照合するために使う
保存
→ パスワードのハッシュ値

認証
→ 入力パスワードをハッシュ化

比較
→ ハッシュ値同士

© 2024-2026 stemtazoo. All rights reserved.