質問

のMessageDigestクラスを実装するSHA-1アルゴリズム(中).SHA-1アルゴリズムで使用されますの異なるシーズや初期ダイジェスト.見 SHA-1Psuedocode

このアルゴリズムを初期化します変数の種:

Initialize variables:
h0 = 0x67452301
h1 = 0xEFCDAB89
h2 = 0x98BADCFE
h3 = 0x10325476
h4 = 0xC3D2E1F0

しかし、MessageDigestクラスに記述されているよう オンラインのJavaのマニュアル, 提供なAPIの設定をしたこれらの初期の変数.とするものではありません状態の値を初期の変数.

設定はどのように行うのですか最初の種子は、SHA-1アルゴリズム?

場の一例でSHA-1Java、 用種の利用が重要であると考えられ?
(私は、SHA-1、実施る場合を除き、利用例 MessageDigest 代替の初期種ございます。)

役に立ちましたか?

解決 2

Java関するお問い合わせは下記に付属の初期種ございます。

コピーして、Cの実施SHA-1アルゴリズムの改良がな変化は、種の利用が重要であると考値です。

他のヒント

がんの種子は、SHA-1ダイジェスト?通常の暗号化アルゴリズムを必要とするソースの乱数シードは"必要".がSHA-1んでもランダムな数字ではありませんの種または初期ベクトルをセットです。の変数またはハード(定数)、そのアルゴリズム、または利用の価値観を変えh0-4"が使われています。

私の使用をお勧めし代わりに塩の種MessageDigest家族のハッシュ機能塩適用により、例えば、prependingの塩バイトに入力します。

Prepending塩でもより直接設定種の価値ありだから、変更の内部状態のハッシュの場合、塩ではない複数のダイジェストブロックサイズにそのまま残ってしまったもperturbトの入力を供給し、ハッシュ機能です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top