"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Cómo implementar el cifrado SHA1 en Laravel 4: una guía paso a paso

Cómo implementar el cifrado SHA1 en Laravel 4: una guía paso a paso

Publicado el 2025-03-23
Navegar:851

How to Implement SHA1 Encryption in Laravel 4: A Step-by-Step Guide

usando el cifrado SHA1 en Laravel 4: una guía paso a paso

en Laravel 4, BCrypt se usa como el mecanismo de hashes predeterminado para obtener contraseñas. Sin embargo, puede haber casos en los que sea necesario usar el cifrado SHA1, particularmente cuando se trata de sistemas externos o aplicaciones heredadas que requieren autenticación SHA1. En este artículo, proporcionaremos una guía completa sobre cómo reemplazar BCRYPT con el cifrado SHA1 en Laravel 4.

Creación de la clase Sha1 Hasher

para implementar SHA1 Hashing, debemos crear una clase de Hasher personalizada que implementa la Haperface proporcionada por Laravel.

[&] [&]. llamado shahasher en el directorio de app/bibliotecas.
  1. implementa la clase, check (), y NeedsreHash () como sigue:
Shahasher implementa iluminar \ Hashing \ Hasherinterface { Función pública Make ($ value) { return hash ('sha1', $ valor); } Check de funciones públicas ($ valor, $ HashedValue) { devolver $ this-> make ($ value) === $ HashedValue; } NEDECTURA DE LA FUNCIÓN PÚBLICA ($ HashedValue) { devolver falso; } }
class SHAHasher implements Illuminate\Hashing\HasherInterface {

    public function make($value) {
        return hash('sha1', $value);
    }

    public function check($value, $hashedValue) {
        return $this->make($value) === $hashedValue;
    }

    public function needsRehash($hashedValue) {
        return false;
    }

}
registrando el sha1 hasher

una vez que se crea la clase Shahasher, debemos registrarlo con el contenedor de servicio Laravel como el hasher predeterminado.

. directorio.

    Registre la clase Shahasher usando el siguiente código:
  1. class ShahashserviceProvider extiende Illuminate \ Support \ ServiceProvider { registro de funciones públicas () { $ this-> app ['hash'] = $ this-> app-> share (function () { devolver nuevo Shahasher (); }); } }
class SHAHashServiceProvider extends Illuminate\Support\ServiceProvider {

    public function register() {
        $this->app['hash'] = $this->app->share(function () {
            return new SHAHasher();
        });
    }

}

para usar el shahasher como el hasher predeterminado, necesitamos actualizar el archivo de configuración de la aplicación:

en app/config/app.php, eliminar la siguiente línea de los proveedores Array:

  1. 'Illuminate \ Hashing \ HashserviceProvider',
'Illuminate\Hashing\HashServiceProvider',
  1. 'shahashserviceProvider',
'SHAHashServiceProvider',

siguiendo estos pasos, puede usar efectivamente la encriptación de Sha1 en lugar de bcRypt en Laravel 4. Esto le permite integrar su aplicación con la aplicación con los servicios de leguminato o la autenticación que requiere sha1. Mantener un mecanismo de hashing seguro para su aplicación.

Declaración de liberación Este artículo se reproduce en: 1729483278 si hay alguna infracción, comuníquese con [email protected] para eliminarlo.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3