応用情報暗記無料で始める

ハッシュ関数とは?はっしゅかんすう

ハッシュ関数とは、任意の長さのデータから固定長の値を求める一方向の関数。同じ入力からは必ず同じ値が得られる一方、得られた値から元のデータを求めることも、同じ値になる別のデータを作ることも計算量的に困難であるよう設計されている。改ざんの検知、パスワードの保存、ディジタル署名の前処理に使われる。

最終更新:2026-10-06

試験情報

応用情報技術者試験の過去問では5回出題され、ほかに3問の解説で触れられています(2016年度〜2024年度)。

応用情報技術者試験の頻出用語/テクノロジ系

この語が出る過去問を解く →

背景

長い文書をそのまま公開鍵暗号で署名しようとすると処理が重く現実的でない。パスワードを平文で保管すれば、漏えいした瞬間にそのまま悪用される。どちらの場面でも「元へは戻せないが、同じものかどうかは確認できる」短い代表値が必要になる。強度は計算機の性能向上とともに相対的に落ちるため、MD5やSHA-1は現在では用途を限る扱いになり、世代交代が続いている点も出題される。

具体例

配布物の正しさの確認に使われるのが典型で、ソフトウェアの配布ページには本体と一緒にSHA-256の値が掲載され、受け取った側が手元で再計算して一致を確かめる。Gitがコミットをハッシュ値で識別しているのも、内容が1ビットでも違えば別の値になるという性質を利用したものである。

試験での引っ掛け

一方向性は「ハッシュ値から元のメッセージを求められない」性質、衝突困難性は「同じハッシュ値になる別のメッセージを見つけられない」性質で、この2つを入れ替えた選択肢が定番である。事前に計算した対応表で逆引きするレインボーテーブル攻撃には、利用者ごとに異なるソルトを加えるのが対策になる。

関連用語

出た過去問

問題文で直接問われたものと、解説の中で触れられたものが含まれます。

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 試験では5回出題(2016年度〜2024年度)
  • 分野:テクノロジ系
  • 一方向性は「ハッシュ値から元のメッセージを求められない」性質、衝突困難性は「同じハッシュ値になる別のメッセージを見つけられない」性質で、この2つを入れ替えた選択肢が定番である。