md5 en php
Hoy quiero enseñaros como funciona la funciona la función md5() de php, haciendo un pequeño script ampliable a base de datos, o cualquier uso que nos pueda ser útil.
Según wikipedia md5:
En criptografía, MD5 significa (abreviatura de Message-Digest Algorithm 5, Algoritmo de Resumen del Mensaje 5) es un algoritmo de reducción criptográfico de 128 bits ampliamente usado
Su uso está muy extendido, sobre todo para codificaciones de claves de logins, y su utilización es realmente sencilla como podemos ver en la siguiente prueba.
<?php $clave = 'entradapormd5'; $clave_md5 = md5($clave); echo "Esta es la clave: " . $clave; echo "<br>Esta es la clave con md5: " . $clave_md5; ?>
Para guardar la variable clave en md5, lo único que tenemos que hacer es lo que aparece en la línea 3, introducir nuestra cadena como argumento de la función la funcion md5(), que viene ya definida por php.
Viendo esto podemos estructurar un formulario de login de forma realmente sencilla, como vamos a ver en el script:
<?php //primero se analiza si se ha enviado información al archivo if($_POST){ //recogemos los datos enviados $nombre = $_POST['nombre']; $clave = $_POST['clave']; //modificamos nuestra clave a md5; $clave_md5 = md5($clave); //marcamos cual es la clave md5 codificada y el usuario //estos pueden venir definidos por una consulta a una base de datos $patron_md5 = md5('accesopermitido'); $nombre_acceso = 'miguel'; //comprobamos que nombre y clace sean correctas if($nombre == $nombre_acceso && $clave_md5 == $patron_md5){ echo '<h1>Bienvenido ' . $nombre . '<h1>'; }else{//si no se realiza el login echo 'lo lamento no tiene permisos'; } }else{//este código se ejecuta si no se ha enviado informacion al archivo ?> <form method="POST" action="index.php"> Introduzca su nombre de usuario: <input type="text" required name="nombre"/><br> Introduzca su clave de usuario: <input type="password" required name="clave"/><br> <input type="submit" value="Entrar"> </form> <?php } ?>
Como vemos, lo primero que se ejecuta es el formulario, una vez que enviamos los datos, nuestro script los recoge y convierte la clave a md5, para compararla con la clave que acepta, generalmente tomada por medio de una consulta a una base de datos, donde se ha tenido que guardar previamente.
En este momento si los datos que hemos incluido en el formulario coinciden con los de acceso el script da permiso y ejecuta el código, donde guardaría las variables de sesión, mostraría información de bienvenida, abriría el menú…, de lo contrario ejecuta el código de salida.
There is One Comment.