Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/01/2010, 06:28
Avatar de maycolalvarez
maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 7 meses
Puntos: 1532
Respuesta: encriptacion datos

primero: ambas funciones no devuelven nada (no hay return)

Código PHP:
Ver original
  1. <?php
  2.     DEFINE('MI_CIFRADO',mcrypt_module_open('rijndael-256', '', 'nofb', ''));
  3.     DEFINE('MI_KS',mcrypt_enc_get_key_size(MI_CIFRADO));    
  4.     DEFINE('MI_IV',mcrypt_create_iv(mcrypt_enc_get_iv_size(MI_CIFRADO), MCRYPT_DEV_RANDOM));
  5.     DEFINE('MI_LLAVE',substr(md5('a1b2c3d4e5'), 0, MI_KS));
  6.  
  7.  
  8.     function encripto_datos($datos_a_encriptar){
  9.         mcrypt_generic_init(MI_CIFRADO, MI_LLAVE, MI_IV);
  10.         $dato_encriptado = mcrypt_generic(MI_CIFRADO, $datos_a_encriptar);
  11.         $r= $dato_encriptado;
  12.         mcrypt_generic_deinit(MI_CIFRADO);
  13.         return $r;
  14.     }
  15.  
  16.     function desencripto_datos($datos_a_desencriptar){
  17.         mcrypt_generic_init(MI_CIFRADO, MI_LLAVE, MI_IV);
  18.         $dato_desencriptado = mdecrypt_generic(MI_CIFRADO, $datos_a_desencriptar);
  19.         $r= trim($dato_desencriptado) . "\n";
  20.         mcrypt_generic_deinit(MI_CIFRADO);
  21.         mcrypt_module_close(MI_CIFRADO);
  22.         return $r;
  23.     }
  24.  
  25.     $dato = '1234567890';
  26.  
  27.     $dat1 = encripto_datos($dato);
  28.     echo '<br />Encriptado: '.$dat1;
  29.  
  30.     $datmedio = $dat1;
  31.     $dat2 = desencripto_datos($datmedio);
  32.     echo '<br />Valor: '.$dat2;

a pesar de los Warning, el resultado fue completo:

Código HTML:
Ver original
  1. Warning: mcrypt_create_iv() [function.mcrypt-create-iv]: Cannot open source device in C:\wamp\www\cripto.php on line 4
  2.  
  3. Warning: mcrypt_generic_init() [function.mcrypt-generic-init]: Iv size incorrect; supplied length: 0, needed: 32 in C:\wamp\www\cripto.php on line 9
  4.  
  5. Encriptado: Aÿ†‹.oDž
  6. Warning: mcrypt_generic_init() [function.mcrypt-generic-init]: Iv size incorrect; supplied length: 0, needed: 32 in C:\wamp\www\cripto.php on line 17
  7.  
  8. Valor: 1234567890