Foros del Web » Programando para Internet » PHP »

Sacar caracteres de mcrypt

Estas en el tema de Sacar caracteres de mcrypt en el foro de PHP en Foros del Web. Saludos Requiero eliminar el caracter % cuando aplico mcrypt. Este es el código para encriptar: Código PHP: function  encripta ( $vars ){      $iv_size  =  ...
  #1 (permalink)  
Antiguo 13/12/2010, 14:02
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 10 meses
Puntos: 1
Sacar caracteres de mcrypt

Saludos

Requiero eliminar el caracter % cuando aplico mcrypt. Este es el código para encriptar:

Código PHP:
function encripta($vars){
    
$iv_size mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256MCRYPT_MODE_ECB);
    
    
$iv mcrypt_create_iv($iv_sizeMCRYPT_RAND);
    
    
$crypted_vars mcrypt_encrypt(
        
MCRYPT_RIJNDAEL_256,
        
$salt,
        
serialize($vars),
        
MCRYPT_MODE_ECB,
        
$iv
    
);
    
    
$content base64_encode(serialize(compact('crypted_vars','iv')));
    
    return 
$content;

__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #2 (permalink)  
Antiguo 13/12/2010, 14:15
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 9 meses
Puntos: 96
Respuesta: Sacar caracteres de mcrypt

Saludos

Utiliza la función str_replace
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #3 (permalink)  
Antiguo 13/12/2010, 14:55
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 10 meses
Puntos: 1
Respuesta: Sacar caracteres de mcrypt

Cita:
Iniciado por Nano_ Ver Mensaje
Saludos

Utiliza la función str_replace
Justamente al principio pense que no se podía aplicar el Replace ya que se trataba de una función para encriptar y desencriptar. Pero finalmente un amigo me envio lo siguiente:

Código PHP:
function urlsafe_b64encode($string) {
    
$data base64_encode($string);
    
$data str_replace(array('+','/','='),array('-','_',''),$data);
    return 
$data;
}

function 
urlsafe_b64decode($string) {
    
$data str_replace(array('-','_'),array('+','/'),$string);
    
$mod4 strlen($data) % 4;
    if (
$mod4) {
        
$data .= substr('===='$mod4);
    }
    return 
base64_decode($data);

Al final quedaría así el llamado:

Código PHP:
function encripta($vars){
    
$iv_size mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256MCRYPT_MODE_ECB);
    
    
$iv mcrypt_create_iv($iv_sizeMCRYPT_RAND);
    
    
$crypted_vars mcrypt_encrypt(
        
MCRYPT_RIJNDAEL_256,
        
$salt,
        
serialize($vars),
        
MCRYPT_MODE_ECB,
        
$iv
    
);
    
    
$content urlsafe_b64encode(serialize(compact('crypted_vars','iv')));
    
    return 
$content;

__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.

Etiquetas: caracteres, mcrypt
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:40.