No. Usar MD5 en la forma en que muestra no ayuda en absoluto a la seguridad. Y parece que no estás usando una sal, que es aún peor.
No debe usar la función PASSWORD()
MySQL. Esa función quedó en desuso en MySQL 5.7.6 y se eliminará en una versión futura de MySQL. Incluso antes de MySQL 5.7, estaba documentado en el manual de MySQL que la función PASSWORD()
era solo para contraseñas de MySQL, no para su propia aplicación o cualquier otro propósito. Incluso MySQL se está alejando de esa función.
SHA-256 es la función de cifrado criptográfico de fuerza mínima actual recomendada para usar con datos confidenciales como contraseñas o firmas digitales. SHA-256 ha sido compatible como una función integrada en MySQL desde la versión 5.5, lanzada en 2010.
- ¿Qué son los sistemas operativos de confianza?
- ¿Qué se entiende por seguridad de firewall de aplicaciones web (WAFS)?
- Cómo eliminar este virus kl.dll
- Cómo comenzar a aprender piratería ética y convertirse en un experto en seguridad
- ¿Cómo encuentran los hackers vulnerabilidades y las muestran en Pwn2Own u otras conferencias de hackers?
Es incluso mejor usar un algoritmo de estiramiento de teclas. Un buen ejemplo es bcrypt.
Las recomendaciones de otras respuestas en este hilo para usar SHA1 están desactualizadas. No uses SHA1. Vea por qué Google está apurando la Web para matar SHA-1
Las recomendaciones para usar dígitos o caracteres de puntuación están mal orientadas. Es mejor usar una contraseña más larga basada en palabras pronunciables. La siguiente caricatura sobre Password Strength ilustra por qué.
Hay usos legítimos para funciones de hash más débiles como MD5 o SHA1. Son útiles para calcular una cadena de hash rápida para los datos internos de su aplicación, por lo que puede compararla con el hash de alguna otra copia de los datos para ver si los datos han cambiado. Es una ventaja que estos algoritmos de hash más simples sean rápidos.
Pero estas funciones no son buenas cuando necesita hashing criptográfico seguro.