Ver Mensaje Individual
  #4 (permalink)  
Antiguo 06/02/2009, 12:39
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 9 meses
Puntos: 2237
Respuesta: Olvide mi contraseña

Para almacenar las contraseñas encriptadas puedes usar solo md5, o acompañarlo con algo adicional para aumentar un poco la seguridad, ejemplo:

Código PHP:
// Creamos una llave numerica
$key 28459413;

// Encriptamos la clave
$safe_save_pass md5($key $claveusuario);

// Almacenas la clave encriptada en la base de datos
// Solo asegurate de que se pueda guardar completa (entre 40 y 50 caracteres)

// Cuando el usuario ingrese (login)
// Usas la misma $key mencionada arriba
// Encriptas la clave ingresada en el formulario
$login_pass md5($key $_POST['password']);

// Comparas las dos claves encriptadas
if($login_pass != $claveusuario)
    
// Nunca des mensaje de que el nombre es correcto y el pass no
    
die('Nombre de usuario o clave de acceso incorrectos.'); 
Problema de seguridad en tu script:

Código PHP:
include "mysql.inc"
Si a algun usuario se le ocurre teclear sitio.com/mysql.inc lo mas seguro es que obtenga ese archivo, ya sea desplegado como texto o disponible para descarga, si almacenas ahi los datos de conexion a MySQL, entonces practicamente tendra acceso libre.

Renombra el archivo a mysql.inc.php, o como prefieras, pero con extension php y, adicionalmente, define una constante en tus scripts que verificaras antes de realizar la conexion a base de datos:

Scripts:
Código PHP:
define('conecta'1);
include 
'mysql.inc.php';
// El resto de tu codigo 
mysql.inc.php:
Código PHP:
if(!defined('conecta'))
    die(
'Acceso no permitido.');

// El resto de tu codigo aqui 
__________________
- León, Guanajuato
- GV-Foto