Esta pregunta se puede abordar de diferentes formas, sin embargo te mostramos la respuesta más completa para nosotros.
Solución:
APP_KEY se utiliza para cifrado y no hash. Todos los datos que encripta en su aplicación usan APP_KEY en segundo plano. recuerda eso encriptado los datos pueden ser descifrado pero los datos hash no se pueden descifrar.
Un concepto erróneo común de APP_KEY es que está relacionado con el hashing de contraseñas, la verdad es que no lo está. Y aquí está la prueba.
el tuit de Taylor
Puedes ver en el tweet anterior que APP_KEY no tiene nada que ver con TROCEADO datos
El comentario aquí dice que se usa en el encriptador. Lo encontré aquí y aquí usado con openssl_encrypt y openssl_decrypt. Sin eso key no puede descifrar nada encriptado con esas dos funciones, como las cookies de sesión almacenadas en la computadora del usuario. Si no estuvieran encriptados, cualquier persona con acceso a ellos podría iniciar sesión en la aplicación como usted.
Dónde se usa:
Cada componente de laravel usando cifrado (no hashing) en su aplicación utiliza APP_KEY. (Sesiones, tokens CSRF y Cookies).
Donde no se usa:
Donde larva usando hashme gusta Contraseñas, password_reset_token.
Por lo tanto, cambiar APP_KEY no genera ningún problema para sus contraseñas o tokens de restablecimiento de contraseña.
Cómo funciona:
APP_KEY es un privado string (Clave de encriptación) en su aplicación que nadie conoce. Entonces, si solo su aplicación conoce el keysolo su aplicación puede descifrar los datos cifrados por este key. Así es como funciona su seguridad.
** Para obtener más información sobre cómo funciona funcionalmente, simplemente puede consultar este archivo en su proyecto: EncryptionServiceProvider.php
Algunas mejores prácticas son:
- Solo guárdelo en un archivo .env. (No lo almacene en config/app.php ni en ningún archivo rastreado de GIT)
- Cámbialo solo cuando aparezcan estas situaciones:
- Te enteras de que tu key se puede filtrar. (Para que otros puedan descifrar sus datos)
- Desea cerrar la sesión de todos los usuarios (usuarios administrados por sesión, no tokens api)
- Quiere invalidar las cookies.
Puntuaciones y comentarios
Si piensas que ha resultado de utilidad nuestro post, nos gustaría que lo compartas con el resto programadores de esta manera nos ayudas a extender nuestro contenido.