「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

SHA-2

pointこの用語のポイント

pointハッシュ関数だよ

pointSHA-1の後継者だよ

pointSHA-224、SHA-256、SHA-384、SHA-512、SHA-512/224、SHA-512/256の総称だよ

point「SHA」の部分は「Secure Hash Algorithm」の略だよ

スポンサーリンク

簡単に書くよ

SHA-2(読:エスエィチエー2)とは

入力されたデータをもとにして作った適当な値を返してくれる関数(処理のまとまり)(ハッシュ関数)のひとつ
です。
もう少し具体的に書くと

「SHA-224」「SHA-256」「SHA-384」「SHA-512」「SHA-512/224」「SHA-512/256」の総称
であり

SHA-1がパワーアップしたやつ
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として

関数
ハッシュ関数
SHA-1


について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

関数は「何かを入れると何かをやって何かを返してくれる、処理のまとまり」です。
一般的には、入力を受けて処理をやり、その結果として出力があります。

SHA-2

ついでなので書いておくと、関数に入れる値は「引数(ヒキスウ)」と言います。

SHA-22

関数から出てくる値は「戻り値」です。

SHA-23

ちょっと汚い話で恐縮ですが、人間は、ご飯を食べて、ウンチを出します。

SHA-24

人間が関数だと考えてください。
ご飯に相当するものが引数です。
ウンチに相当するものが戻り値になります。

SHA-25

ハッシュ関数は「入力に対応する適当な値(適当に見える値)を返してくれる関数」です。

例えば、ハッシュ関数に「愛媛みかん」を入れると「3」が返ってくるとしましょう。
同じように「青森りんご」を入れると「4」が返ってきます。
「栃木苺」を入れた場合は「5」が返ってきます。

SHA-26

ハッシュ関数は同じ物を入れれば必ず同じ値が返ってきます。

「愛媛みかん」を入れた場合に返ってくるのは、必ず「3」です。
何回入れても「3」が返ってきます。
「4」が返ってくることは ありません。

SHA-27

ハッシュ関数には

1.適当な値が返ってくる
2.同じ入力に対しては同じ値が返ってくる


という特徴があります。
※話を単純化するために「適当な値」という表現を使っていますが、実際には適当では ありません。入力されたデータを「特定のルールに沿って」ぐちゃぐちゃにした値が返ってきます。

さて、このハッシュ関数ですが、世の中に1つしかないわけでは ありません。
いろいろな種類のハッシュ関数があります。

例えば、返してくれる値(適当な値)の作り方が違ったりですね。
あるいは、返してくれる値の桁数が違ったりですね。
一口に「ハッシュ関数」と言っても、いくつかの種類があるのです。

そんな、いろいろあるハッシュ関数のひとつが「SHA-1」です。
SHA-1は

何か入れると長さが160ビットの適当な値を返してくれるハッシュ関数

です。

ちなみに「SHA」の部分は「Secure Hash Algorithm(セキュア・ハッシュ・アルゴリズム)」の省略ね。

SHA-28

secure(セキュア)の意味は「安全な」です。
hash(ハッシュ)はハッシュ関数の「ハッシュ」です。
algorithm(アルゴリズム)はカタカナで「アルゴリズム」で伝わりますかね。

単純にくっつけると

安全なハッシュアルゴリズム

となります。

SHA-29

以上を踏まえて

SHA-1がパワーアップしたやつ

が「SHA-2」です。
つまり、SHA-2もハッシュ関数のひとつです。

SHA-210

一口に「SHA-2」と言っても、実は、いくつかの種類があります。

SHA-224
SHA-256
SHA-384
SHA-512
SHA-512/224
SHA-512/256


の6種類です。
この6つのハッシュ関数の総称が「SHA-2」です。

SHA-211

少し、ややこしいですけどね。
頑張って、ついてきてください。

まずは

・SHA-256
・SHA-512


の2つを覚えましょう。

どちらもSHA-2なハッシュ関数です。
ただし、返ってくる値の長さが違います。
それぞれ

・SHA-256:256ビット
・SHA-512:512ビット


の長さの値が返ってきます。
「256」とか「512」の数字が返ってくる値の長さを表しています。

SHA-212

次に

・SHA-224

を覚えましょう。

「224」と書いてありますね。

そうです。
SHA-224は224ビットの長さの値が返ってきます。

ただし、ここでSHA-256が登場します。

SHA-224はSHA-256の仲間です。
SHA-224の中ではSHA-256と同じようなことをやっています。

SHA-256から返ってくる値の長さは256ビットでした。

SHA-213

SHA-224では、SHA-256から返ってきた256ビットをぶった切って224ビットに切り詰めているイメージです。

SHA-214

最後に

・SHA-384
・SHA-512/224
・SHA-512/256


をまとめて覚えましょう。

この3つはSHA-512の仲間です。

関係性は、SHA-256とSHA-224の関係性と同じです。
SHA-512から返ってきた512ビットの値をぶった切って

・SHA-384:384ビット
・SHA-512/224:224ビット
・SHA-512/256:256ビット


の長さに切り詰めているイメージです。

SHA-215

ここまでをまとめると以下のようになります。
それぞれのハッシュ関数から返ってくる値の長さは

・SHA-224:224ビット(SHA-256から返ってくる値をぶった切る)
・SHA-256:256ビット
・SHA-384:384ビット(SHA-512から返ってくる値をぶった切る)
・SHA-512:512ビット
・SHA-512/224:224ビット(SHA-512から返ってくる値をぶった切る)
・SHA-512/256:256ビット(SHA-512から返ってくる値をぶった切る)


です。

系統としてはSHA-256とSHA-512の2種類です。
この2種類のハッシュ関数から返ってくる値をぶった切ることによって6種類に枝分かれしています。

SHA-216

ここまでの説明が、よく分からない人は

1.「SHA-○○」の「○○」が返ってくる値の長さを示している
2.256と512以外は、256か512をぶった切って作る
3.「SHA-512/○○」は「512をぶった切って○○にしているよ!」の意味


の3つを押さえてください。
それだけ覚えておけば何とかなると思います。


image piyo2

一言でまとめるよ

まぁ「SHA-2」って単語が出てきたら「ハッシュ関数(入力されたデータをもとにして作った適当な値を返してくれる関数)(のひとつ)なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像058
書籍画像032


書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
7日間でハッキングをはじめる本 TryHackMeを使って身体で覚える攻撃手法と脆弱性
AI用語図鑑 ビジネス・開発・試験対策に使える厳選キーワード256