「SHA-2」の版間の差分

提供: セキュリティ
移動: 案内検索
 
(同じ利用者による、間の2版が非表示)
行8: 行8:
 
[[SHA-2]] は、256ビット = 2の256乗 通りのハッシュ値をとります。
 
[[SHA-2]] は、256ビット = 2の256乗 通りのハッシュ値をとります。
 
64桁で 16進数で表されます。
 
64桁で 16進数で表されます。
 +
== SHA-2 のバリエーション ==
 +
[[SHA-2]] Niha,以下のバリエーションがあります。
 +
* SHA-224
 +
* SHA-256
 +
* SHA-384
 +
* SHA-512
 +
* SHA-512/224
 +
* SHA-512/256
 +
 +
ハッシュ長は、224,256,384,512ビットのいずれかです。
 +
== SHA-256とSHA-512 の違い ==
 +
SHA-256 は、32ビットのワード長から計算される[[ハッシュ関数]]です。
 +
SHA-512 は、64ビットのワード長から計算される[[ハッシュ関数]]です。
 +
== SHA-224とSHA-384 ==
 +
SHA-324とSHA-384 は、 SHA-256 と SHA-512 を単純に切り詰めたバージョンです。
 +
初期値のみが異なります。
 +
== SHA-512/224 と SHA-512/256 ==
 +
SHA-512 を切り詰めたバージョンです。
 
== 使い方 ==
 
== 使い方 ==
 
=== OpenSSLコマンド ===
 
=== OpenSSLコマンド ===
行13: 行31:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
$ echo hoge | openssl dgst -sha512
 
$ echo hoge | openssl dgst -sha512
(stdin)= 71cc44fbbad040fc59b11b9a84806ae055758f4de03adf741106b7fa1d530e987a6ad718b640794761c390be64d54988040d3be48c33d490aa1c1dd6d357a007
+
 
 +
(stdin)= 71cc44fbbad040fc59b11b9a84806ae055758f4de03
 +
adf741106b7fa1d530e987a6ad718b640794761c390be64d5498
 +
8040d3be48c33d490aa1c1dd6d357a007
 
</syntaxhighlight>
 
</syntaxhighlight>
  
行23: 行44:
 
-sha512        to use the sha512 message digest algorithm
 
-sha512        to use the sha512 message digest algorithm
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 
=== sha256コマンド ===
 
=== sha256コマンド ===
 
[[FreeBSD]] には、 sha256 コマンドがあります。
 
[[FreeBSD]] には、 sha256 コマンドがあります。
行30: 行52:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
== 関連項目 ==
 
== 関連項目 ==
 +
* [[SHA256とSHA512はどちらが速いか?]]
 
* [[SHA-1]]
 
* [[SHA-1]]
 
{{hash}}
 
{{hash}}

2017年8月12日 (土) 21:24時点における最新版

SHA-2 とは、SHA-1 の後継にあたるハッシュ関数です。SHA-2 ファミリーには、生成するビット長が異なる SHA-224, SHA-256, SHA-384, SHA-512 が存在します。

読み方

SHA-2
しゃー つー

概要

SHA-2 は、256ビット = 2の256乗 通りのハッシュ値をとります。 64桁で 16進数で表されます。

SHA-2 のバリエーション

SHA-2 Niha,以下のバリエーションがあります。

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

ハッシュ長は、224,256,384,512ビットのいずれかです。

SHA-256とSHA-512 の違い

SHA-256 は、32ビットのワード長から計算されるハッシュ関数です。 SHA-512 は、64ビットのワード長から計算されるハッシュ関数です。

SHA-224とSHA-384

SHA-324とSHA-384 は、 SHA-256 と SHA-512 を単純に切り詰めたバージョンです。 初期値のみが異なります。

SHA-512/224 と SHA-512/256

SHA-512 を切り詰めたバージョンです。

使い方

OpenSSLコマンド

Unixでは、OpenSSLコマンドを使用して、SHA-2を求めることができます。

$ echo hoge | openssl dgst -sha512
 
(stdin)= 71cc44fbbad040fc59b11b9a84806ae055758f4de03
adf741106b7fa1d530e987a6ad718b640794761c390be64d5498
8040d3be48c33d490aa1c1dd6d357a007

SHA-2ファミリは、以下のオプションで切り替えられます。

-sha224         to use the sha224 message digest algorithm
-sha256         to use the sha256 message digest algorithm
-sha384         to use the sha384 message digest algorithm
-sha512         to use the sha512 message digest algorithm

sha256コマンド

FreeBSD には、 sha256 コマンドがあります。

% sha256 -s hoge
SHA256 ("hoge") = ecb666d778725ec97307044d642bf4d160aabb76f56c0069c71ea25b1e926825

関連項目