[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

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

SHA-256

pointこの用語のポイント

pointハッシュ関数だよ

pointSHA-2に分類されるよ

point256ビットの適当な値が返ってくるよ

スポンサーリンク

簡単に書くよ

SHA-256とは

入力されたデータに対して適当な値を返してくれる関数(ハッシュ関数)のひとつ
であり

「SHA-2」と呼ばれるハッシュ関数に分類されるやつ……がいくつかあるけど、その中のひとつ
です。

image piyo

詳しく書くよ

※このページの説明は「SHA-2」の説明で書いた内容を一部抜粋して再構成しています。「SHA-2」の説明をご覧になった方は、読んでもあまり意味は無いと思います。

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

関数
ハッシュ関数
SHA-1
SHA-2


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

関数は「何かを入れると何かを計算して何かを返してくれるプログラムの部品」です。
一般的には、入力を受けて処理を行い、その結果として出力があります。

SHA-256

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

SHA-2562

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

SHA-2563

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

SHA-2564

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

SHA-2565

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

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

SHA-2566

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

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

SHA-2567

ハッシュ関数には

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


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

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

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

そんな「いくつかの種類」のひとつに「SHA-1」という名前のハッシュ関数があります。
SHA-1は

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

です。

ちなみに「SHA」の部分は「Secure Hash Algorithm(セキュア・ハッシュ・アルゴリズム)」の省略ですが、別に覚える必要はありません。
覚えていても、たいして役に立たないと思います。

さらに「SHA-2」と呼ばれるハッシュ関数もあります。
SHA-2はSHA-1をパワーアップさせたハッシュ関数です。
SHA-1の後継者がSHA-2だと思ってください。

以上が予備知識です。

ここまでを踏まえて、SHA-2に分類されるハッシュ関数のひとつが「SHA-256」です。
SHA-256は、長さが256ビットの適当な値を返してくれます。

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

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


の6種類です。
「SHA-2」という呼び名は、この6つのハッシュ関数の総称なのです。

SHA-2568

SHA-2の枠組みの中に「SHA-256」がありますよね。

SHA-2569

SHA-256はSHA-2に分類されるハッシュ関数のひとつです。

何となく分かれば満足な人は

1.ハッシュ関数だよ
2.SHA-2に分類されるよ
3.256ビットの値が返ってくるよ


の3点を押さえてください。
それだけ覚えておけば困ることは少ないと思います。

image piyo2

一言でまとめるよ

まぁ「SHA-256」って単語が出てきたら「入力に対応する適当な値を返してくれる関数(のひとつ)なんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク