Diciembre 22, 2014, 06:58:47 pm

Autor Tema: [Tutorial] Encriptar password y login básico [Xt3mP]  (Leído 635 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Xt3mP

  • I'm back to fuck.
  • User Destacado
  • *
  • Mensajes: 443
  • Agradecimientos: 0
  • Ellos me están buscando, pero yo los encontraré.
    • MSN Messenger - Xt3mP@h4x0rz.us
    • AOL Instant Messenger - Xt3mP@h4x0rz.us
    • Yahoo Instant Messenger - Xt3mP@h4x0rz.us
    • Ver Perfil
    • Xt3mP
[Tutorial] Encriptar password y login básico [Xt3mP]
« en: Marzo 19, 2010, 01:19:36 am »
#########################################################################

En este tutorial trataré de enseñarles como encriptar una clave con varios métodos lo cuál si logran desencriptar una parte quedará todavía demasiado por desencriptar así que pues prácticamente nuestro login sería totalmente (en su mayoría) seguro.

Consistirá en 5 páginas, dos HTML (Registro y Login), 3 PHP que una sería la que llevará acabo el registro, la otra sería la conexión a la base de datos y la última sería comprobar el login.

Comenzarémos con el archivo config.php:

Código: PHP
  1. <?php
  2. $dbhost="localhost"; //Host del db
  3. $dbuser="xt3mpme_user"; //Usuario del db
  4. $dbpass="xt3mpme_pass"; //Password del db
  5. $db="xt3mpme_users"; //db donde se creara la tabla users
  6. You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login("$dbhost","$dbuser","$dbpass");
  7. You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login("$db");
  8. //Ya explique para que sirve cada variable.
  9. ?>
  10.  

Una vez hecho esto comenzarémos con el formulario de registro que se llamará registrar.html el cuál será demasiado simple para que lo tomen simplemente como referencia:

Código: HTML5
  1. <You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login action="registrar.php" method="POST">
  2. Usuario:<You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login>
  3. <You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login type="text" name="user" id="user"><You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login>
  4. Password:<You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login>
  5. <You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login type="password" name="passwd" id="passwd"><You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login>
  6. Repetir Password:<You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login>
  7. <You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login type="password" name="passwd2" id="passwd2">
  8. <You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login type="submit" value="Registrar" id="submit">
  9.  

Una vez hecho esto, seguirémos finalmente con la encriptación la cuál en está si explicaré mas o menos lo que sería la encriptación, se llamará registrar.php:

Código: PHP
  1. <?php
  2. include('config.php');//Incluimos la conexion a la base de datos.
  3. if (($_POST['user']== '') or ($_POST['passwd']== '') or ($_POST['passwd2']== '')){
  4. echo "Te faltaron rellenar campos";
  5. }else{
  6. if($_POST['passwd'] != $_POST['passwd2']){
  7. echo "Las contrasenas no coinciden";
  8. }else{
  9. $user = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($_POST["user"]);
  10. $user = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($user);
  11. // Quitamos las etiquetas html y lo relacionado a el usuario.
  12. $pass = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($_POST["passwd"]);
  13. $pass = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($pass);
  14. // Quitamos las etiquetas html y lo relacionado a el password.
  15. /* _____________________________________ */
  16. // Comenzamos con la encriptacion a el estilo de Xt3mP.
  17. $pass_encriptada1 = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login ($pass); //Encriptacion nivel 1
  18. $pass_encriptada2 = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($pass_encriptada1); //Encriptacion nivel 1
  19. $pass_encriptada3 = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($pass_encriptada2, "xtemp"); //Encriptacion nivel 2
  20. $pass_encriptada4 = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login("xtemp".$pass_encriptada3); //Encriptacion nivel 3
  21. // Aqui será demasiado dificil poder llegar a la password verdadera ya que por ejemplo, podrian desencriptar el md5 pero aún faltaria demasiado.
  22. $usuarios = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login("SELECT usuarios FROM cuentas WHERE usuarios='$user' ");
  23. // Seleccionamos el campo usuarios de la tabla cuentas en donde el usuario es el que escriben en el campo user
  24. if($usuarios2 = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($usuarios))
  25. {
  26. echo 'El usuario '.$user.' ya esta registrado';
  27. You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($usuarios);
  28. // Liberamos la memoria
  29. }else{
  30. You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login("INSERT INTO cuentas (usuarios,pass) values ('$user','$pass')");
  31. //Insertamos los valores de el user y pass en los campos usuarios y pass de la tabla cuentas
  32. echo "El usuario '.$user.' ha sido registrado con éxito.';
  33. //Decimos que el usuario ha sido registrado, etc.
  34. }
  35. }
  36. }
  37. ?>
  38.  

Ahora procederémos a hacer el login.html:

Código: Text
  1. <form action="logear.php" method="POST">
  2. User:<br>
  3. <input type="text" name="user" id="pass"><br>
  4. Pass:<br>
  5. <input type="password" name="pass" id="pass"><br>
  6. <input type="submit" value="Logear" id="submit">
  7.  

Creo que ya le entienden, así que haremos el logear.php:

Código: PHP
  1. <?php
  2. include('config.php'); //Incluimos la conexion a la base de datos.
  3. if( ($_POST["user"] == '') or ($_POST["pass"] == '') )
  4. {
  5. echo "Necesitas introducir datos de logeo";
  6. }else{
  7. $user = $_POST['user'];
  8. $pass = $_POST['pass'];
  9. $pass_encriptada1 = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login ($pass); //Encriptacion nivel 1
  10. $pass_encriptada2 = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($pass_encriptada1); //Encriptacion nivel 1
  11. $pass_encriptada3 = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($pass_encriptada2, "xtemp"); //Encriptacion nivel 2
  12. $pass_encriptada4 = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login("xtemp".$pass_encriptada3); //Encriptacion nivel 3
  13. $usuarios = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login("SELECT * FROM cuentas WHERE usuarios='$user' and pass='$pass_encriptada4'");
  14. //Comprobamos que si el usuario y la pass introducidas existan
  15. if($usuarios2 = You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login($usuarios))
  16. {
  17. //Si existen los datos introducidos registraremos dos sesiones
  18. You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login("login");
  19. You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login("user");
  20. $_SESSION['login'] = "SI";//Le damos el valor SI a la sesion login.
  21. $_SESSION['user'] = $usuarios2["usuarios"];//Le damos el valor del nombre de usuario a la sesion user.
  22. echo '<script language="JavaScript" type="text/javascript">
  23. alert("Bienvenido.");//Mostramos alerta de bienvenida
  24. </script>';
  25. echo "<meta http-equiv='Refresh' content='2;url=index.php'>";//Redirigimos a nuestro index
  26. }else{
  27. echo 'Username y Password incorrecto.';
  28. }
  29. }
  30. }
  31. ?>
  32.  

Ahora un PLUS, mostrar contenido si es que esta logeado:

Código: PHP
  1. <?php
  2. if ($_SESSION['login'] = "SI"){//Si la Sesion LOGIN es igual a SI (Se registro si nos logeamos bien)
  3. echo "Hola: ".$_SESSION['user'];
  4. }else{//Si la Sesion LOGIN no es si (Se registro si nos logeamos bien)
  5. echo "Esta seccion es prohibida";
  6. }
  7. ?>
  8.  

Y eso sería todo, no es fácil ni díficil, es intermedio, los resultados de la password si ponemos xt3mp sería:

Encriptación MD5: 0fcf520c7c5f6a56b69244eeb9bfb98d
Encriptación MD5/crc32: -521765068
Encriptación MD5/crc32/Semilla: xtOtXrnGfYSMM
Encriptación MD5/crc32/Semilla/sha1: fa097e6b9dd4149f78b3e8c9917ff9eb38995da8

La base de datos realmente no sería díficil, si necesitan el código de crear base de datos por phpMyADMIN me lo hacen saber.

Saludos.
« Última modificación: Marzo 27, 2014, 06:12:05 pm por Expermicid »
Cada vez que me das Karma me motivas