ハッシュ関数とは?はっしゅかんすう
ハッシュ関数とは、入力されたデータから、規則性のない固定長の値(ハッシュ値)を生成する関数。同じ入力からは常に同じハッシュ値が得られ、逆にハッシュ値から元のデータを復元することは事実上できない(不可逆性)。わずかな入力の違いでも出力は大きく変わる。
最終更新:2026-10-10
この語が出る過去問を解く →背景
中身そのものは見せたくないが、「同じものかどうか」だけは確かめたい場面がある。長い文書やデータをそのまま比べるのは手間がかかり、原文を持ち歩けば漏えいの危険も増える。そこで、元に戻せない決まった長さの目印を作り、目印どうしを比べれば足りるようにした。小さな違いでも目印が大きく変わる性質が、この使い方を支えている。
具体例
パスワードをそのまま保存せずハッシュ値に変換して保存しておけば、データベースが漏えいしてもパスワードの原文は分からない。ファイルのハッシュ値を比較することで、ファイルが改ざんされていないかも確認できる。
試験での引っ掛け
暗号化と異なり、ハッシュ関数は「復号」を前提としない一方向の変換である点を混同しやすい。
関連用語
出た過去問
出典:令和元年度 秋期 ITパスポート試験 問93(IPA)
ディジタル署名やブロックチェーンなどで利用されているハッシュ関数の特徴に関する、次の記述中のa, bに入れる字句の適切な組合せはどれか。 ハッシュ関数によって、…
正解:a:常に同じ b:できない
要点:ハッシュは同じ入力で同じ値、逆算は不可能
ハッシュ関数は、同じ入力に対しては常に同じ固定長のハッシュ値を返す。一方で計算は一方向であり、得られたハッシュ値から元のデータを復元することは事実上できない。この性質により改ざん検知やパスワードの保管に利用される。
出典:令和8年度 秋期 ITパスポート試験 問91(IPA)
デジタル署名やブロックチェーンで用いられるハッシュ関数には、SHA-256、SHA-512などがある。このようなハッシュ関数に関する記述として、適切なものはどれ…
正解:同じハッシュ関数を用いる場合、入力したデータが同じであれば、得られるハッシュ値は常に同じになる。
要点:ハッシュは一方向で復元不能、同じ入力からは常に同じ値
ハッシュ関数は入力データから一定長の値を計算する一方向の関数で、同じ関数に同じ入力を与えれば必ず同じハッシュ値が得られる。この再現性があるからこそ、改ざんの検知やブロックチェーンの連結に使える。一方でハッシュ値から元のデータを復元することはできず、関数が違えば得られる値も異なる。
出典・参考
公式シラバスの9 技術要素 > 63. 情報セキュリティ対策・情報セキュリティ実装技術 > (2) 暗号技術に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。