1

crypt()PHP の関数を使用してハッシュされたパスワードを格納する PHP 5.3 で実行されるアプリがあります。ただし、使用されているハッシュ タイプ (SHA 512) は、私が現在使用している PHP 5.2 を実行するサーバーの 1 つでデフォルトでは使用できません。mcrypt を使用すると、柔軟性が大幅に向上しますが、使用がより複雑になることがわかりました。

PHP の mcrypt 関数を使用して、(SHA512 ソルトを使用して) crypt と同じ結果を得ることができますか?

したがって、SHA512 ソルトを使用して「test」と入力すると、暗号化されたデータは、crypt() を使用する場合と mcrypt() を使用する場合とで同じになるはずです。

それが不可能な場合は、他に何をすべきかアドバイスをもらえますか? 残念ながら、PHP 5.3 へのアップグレードはオプションではありません (これはクラウド サーバーであり、そのためのスクリプトを作成する時間がありません)。

4

2 に答える 2

2

php5 の mcrypt 関数を使用して crypt と同じ結果が得られるかどうか教えてください。

いいえ。Mcrypt は暗号化復号化の機能を提供します。cryptは、その欺瞞的な名前にもかかわらず、ハッシュ関数を提供します。これらは同じタスクではありません。Mcrypt はハッシュ関数を提供しておらず、使用したいアルゴリズム (SHA-512) はハッシュ アルゴリズムです。

Mcrypt でパスワードをハッシュすることはできません。それはその仕事ではありません。その役割とcryptは異なり、重複しません。

于 2015-08-25T23:27:20.827 に答える
0

残念ながら、MCrypt には SHA512 暗号がありません。ここで暗号のリストを確認できます。

http://www.php.net/manual/en/mcrypt.ciphers.php

于 2010-12-02T22:01:05.840 に答える