Professional Documents
Culture Documents
La base de datos
Ingresamos a phpMyAdmin para diseñar nuestra base de datos (la nombraré ‘datos’),
para no complicarnos el ejercicio y centrarnos en lo que nos interesa agregamos la
tabla ‘usuarios’ con la siguiente estructura (5 campos):
Campo Atributos
Pág. 1
Ver este artículo en el blog - Google+ - @tuprimeraweb
Pág. 2
Ver este artículo en el blog - Google+ - @tuprimeraweb
La primera fila está en ‘enabled’ y significa que si soporta hash, la segunda fila
muestra todas las funciones hash que están soportadas.
La función hash_hmac() requiere al menos de 3 parámetros (tipo cadena) en este
orden:
1. El algoritmo de cifrado que se va a usar, usaré en este ejercicio sha512, que en
lo personal me parece bastante seguro (recordemos que la seguridad está en
una serie de buenas prácticas y no solamente en encriptar).
2. La cadena a cifrar
3. Otra cadena que se usará en el algoritmo para encriptar la cadena 2 (usaré
‘primeraweb’).
4. Opcionalmente un valor booleano, al omitir permanece en FALSE y la salida
estará en valor hexadecimal en minúsculas.
Otro dato importante es que la cadena encriptada no podrá ser desencriptada, en
realidad lo que haremos en el segundo ejercicio es comparar dos cadenas
encriptadas.
El formulario
Ahora el formulario en donde se registrará el nuevo usuario, solicitaremos su nombre y
apellido, su nombre de usuario y su contraseña, en la pagina encripta1.php, las
excusas del caso, omitiré las mayorías de las etiquetas para ir directamente al
formulario:
<header>
<h1>Formulario de registro</h1>
</header>
<form name="f1" action="encripta2.php" method="post">
Nombre y apellido<input type="text" name="nombres" placeholder="Su
nombre y apellido" autofocus required />
<br />
Nombre de usuario<input type="text" name="nick" placeholder="Nombre
de usuario" required />
<br />
Contraseña<input type="password" name="clave" required />
<br />
<input type="submit" value="Registrar mis datos" />
Pág. 3
Ver este artículo en el blog - Google+ - @tuprimeraweb
</form>
Nota: Si van a copiar y pegar es muy probable que tendrán que corregir las comillas.
Al cargar en el navegador tendremos esto (el navegador de Microsoft 8 y anteriores no
sirven para HTML5):
En el action del formulario indicamos que los datos se enviarán a ‘encripta2.php’, allí
procesaremos los datos encriptando la clave y almacenado en la BD, nuevamente iré
directo a la implementación que nos interesa:
Pág. 4
Ver este artículo en el blog - Google+ - @tuprimeraweb
Pág. 5
Ver este artículo en el blog - Google+ - @tuprimeraweb
Este documento es para libre distribución, siempre que se use con fines educativos y
no para propósitos lucrativos.
Pág. 6