Laravel 4 で BCrypt の代わりに SHA1 暗号化を使用する
SHA1 暗号化を必須とする外部システムとのインターフェースなど、特定のシナリオでは、 Laravel のデフォルトの BCrypt 暗号化メカニズムをバイパスする必要があります。この記事では、代わりに SHA1 を利用する方法について概説します。
ステップ 1: カスタム ハッシュ クラスを実装する
IlluminateHashingHasherInterface を実装する SHAHasher などのカスタム ハッシュ クラスを作成します。このクラスは、ハッシュ化、ハッシュの確認、再ハッシュが必要かどうかの判断のためのメソッドを提供します。
ステップ 2: SHA ハッシュ サービス プロバイダーを定義する
拡張する SHAHashServiceProvider を作成するIlluminateSupportServiceProvider。このサービスプロバイダーは、Laravel のデフォルトのハッシュメカニズムとしてカスタムハッシュクラスを登録します。
ステップ 3: デフォルトのハッシュプロバイダーをオーバーライドします
app/config/app。 php で、デフォルトのハッシュ サービス プロバイダー ('IlluminateHashingHashServiceProvider') を削除し、カスタム SHAHashServiceProvider を追加します。
ステップ 4: SHA1 を使用してパスワードを暗号化する
カスタム ハッシュ プロバイダーが追加されたら、代わりに、次のような SHA1 暗号化を使用するようにパスワード ハッシュ操作を更新できます。
<code class="php">$password = sha1($input['password']);</code>
ステップ 5: ログイン検証を上書きする (オプション)
外部システムでは、パスワード ハッシュ以外の追加の検証が必要です。SHA1 暗号化を明示的に処理するには、コントローラーの post_login メソッドをオーバーライドする必要がある場合があります。
追加の考慮事項:
以上がLaravelでBCryptの代わりにSHA1暗号化を使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。