-1

利用した

md5(sha1(rand()))

これにより、2 レベルの暗号化と 32 の長さの出力ハッシュが得られます

cbc7a20f14eab9262efe0adb21074d0a

しかし、ハッシュを255の長さにするにはどうすればよいですか(たとえば)?

4

2 に答える 2

6

何をしていても、今すぐやめてください。

同じまたは異なる暗号化関数を繰り返し呼び出しても、複数レベルの暗号化を提供するようなことはありません。どちらかといえば、ハッシュの衝突を見つけやすくすることで暗号化を弱めます。

さらに、md5 も sha-1 も暗号的に安全ではありません。

パスワードを作成しようとしている場合は、bcrypt または PBKDF2 を使用します ( 1 回のみ)。ユニークなソルトと高い反復回数を使用することを忘れないでください。

NIST SP 800-108 または HKDF で指定されているような KBKDF (鍵ベースの鍵派生関数) を使用して、bcrypt または PBKDF2 の出力をより多くのバイトに拡張できます。ただし、これによって出力のバイト数までセキュリティ レベルが上がるわけではないことに注意してください。

于 2013-01-27T01:29:05.383 に答える
0

暗号乱数を作成したい場合、依存するものは何の役にも立ちrand()ません。どのハッシュまたは KDF を投げても構いません。

mcrypt_create_iv ($size, MCRYPT_DEV_URANDOM)代わりに、便利な$sizeパラメーターを持ち、長さの問題を同時に解決するために使用してください。

于 2013-01-27T17:37:59.223 に答える