PHP - MCRYPT

 
Vista:

MCRYPT

Publicado por Tatiana (1 intervención) el 24/10/2011 17:37:34
Hola...
necesito que x favor me ayudes de urge...=)...estoy usando las mcrypt para encriptar y desencriptar. uso
$cifrado = MCRYPT_RIJNDAEL_256;
$modo = MCRYPT_MODE_ECB;

El inconveniente que tengo es q me encripta todo lo que ingreso, pero no me desencripta todo...me he tomado en cuenta que cuando en la incriptacion le incluye un espacio en blanco ya no le puede desencriptar.

No se si alguien tiene la solucion a este inconveniente???
O sabe cual cifrado y modo es el correcto para que coja todo tipo de valor (especialmente numeros).

Muchas gracias..=)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

MCRYPT

Publicado por xve (6935 intervenciones) el 24/10/2011 22:59:29
Hola Tatiana, nos puedes mostrar el código para revisarlo?

En la web de php, hay estos ejemplos que funcionan perfectamente:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
 function mysql_aes_decrypt($val,$ky)
 {
     $key="\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0";
     for($a=0;$a<strlen($ky);$a++)
       $key[$a % 16]=chr(ord($key[$a % 16]) ^ ord($ky[$a]));
     $mode = MCRYPT_MODE_ECB;
     $enc = MCRYPT_RIJNDAEL_128;
     $dec = @mcrypt_decrypt($enc, $key, $val, $mode, @mcrypt_create_iv( @mcrypt_get_iv_size($enc, $mode), MCRYPT_DEV_URANDOM ) );
     return rtrim($dec,(( ord(substr($dec,strlen($dec)-1,1))>=0 and ord(substr($dec, strlen($dec)-1,1))<=16)? chr(ord( substr($dec,strlen($dec)-1,1))):null));
 }
 
 function mysql_aes_encrypt($val,$ky)
 {
     $key="\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0";
     for($a=0;$a<strlen($ky);$a++)
       $key[$a % 16]=chr(ord($key[$a % 16]) ^ ord($ky[$a]));
     $mode=MCRYPT_MODE_ECB;
     $enc=MCRYPT_RIJNDAEL_128;
     $val=str_pad($val, (16*(floor(strlen($val) / 16)+(strlen($val) % 16==0?2:1))), chr(16-(strlen($val) % 16)));
     return mcrypt_encrypt($enc, $key, $val, $mode, mcrypt_create_iv( mcrypt_get_iv_size($enc, $mode), MCRYPT_DEV_URANDOM));
 }
 ?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar