Tema: Encriptacion
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 02/06/2014, 00:57
Avatar de Atomycko
Atomycko
 
Fecha de Ingreso: diciembre-2005
Ubicación: Zapopan Jal.
Mensajes: 92
Antigüedad: 18 años, 4 meses
Puntos: 12
Respuesta: Encriptacion

Bueno, pues no habia visto la funcion mcrypt_create_iv() no la conocia jeje.

Podrias crear el salt usando la primera y ultima letra del nombre de usuario, por ejemplo si es juancho usar "jo":

Código HTML:
<form action="" method="post">
Nombre: <input type="text" name="nombre" />
Contraseña: <input type="password" name="contrasena" />
<button type="button" onclick="this.form.action='registro.php';this.form.submit()">Registrarse</button>
<button type="button" onclick="this.form.action='acceso.php';this.form.submit()">Acceder</button>
</form> 
registro.php
Código PHP:
<?php
$mysqli 
= new mysqli("localhost""root""""pepitoGrillo");
// $mysqli->select_db("pepitoGrillo"); <- ???!
$nombre trim($_POST['nombre']);
$salt $nombre[0] . $nombre[strlen($nombre) - 1];
$contrasena crypt($_POST['contrasena'], $salt);
if(
$mysqli->query("INSERT INTO usuarios (nombre,contrasena) VALUES ('$nombre','$contrasena')")){
    echo 
'Registro OK etc., etc...';
    exit;
}
echo 
'Error';
?>
acceso.php:
Código PHP:
<?php
$mysqli 
= new mysqli("localhost""root""""pepitoGrillo");
// $mysqli->select_db("pepitoGrillo"); <- ???!
$nombre trim($_POST['nombre']);
$salt $nombre[0] . $nombre[strlen($nombre) - 1];

// esta manera no es recomendable pero...
$contrasenaCrypt $mysqli->query("SELECT contrasena FROM usuarios WHERE nombre='$nombre' LIMIT 1")->fetch_assoc()['contrasena'];
// ...niños, no lo hagan en casa ;)

if($contrasenaCrypt && crypt($_POST['contrasena'], $salt) == $contrasenaCrypt){
    echo 
'Login OK etc., etc...';
    exit;
}
echo 
'Error';
?>
Bueno espero te sirva de guia para hacer lo que requieres.

Saludos!
__________________
PD: Los acentos fueron secuestrados.