I tried to create two funcions, one to encrypt params and another to decrypt them and I'm having a problem. Sometimes, when I try to decrypt any word / number, the decryption fails. Only sometimes, so, i don't know which can be the error. Going to post my functions if anyone wants to check them:
function url_base64_decode($str){
return base64_decode(strtr($str,
    array(
    '.' => '+',
    '-' => '=',
    '~' => '/'
    )
));
}
function url_base64_encode($str){
    return strtr(base64_encode($str),
        array(
            '+' => '.',
            '=' => '-',
            '/' => '~'
        )
    );
}
function mdecrypt($input){
    $key = '4oF9B2NWXbmvIC5nNLLTbnmr5knkEBNBcrJt9m3xM3kjFyCZc3QAZbolXomtaIQSBBDDxxxAAAjTPV';
    $input = trim(chop($this->url_base64_decode($input)));
    $td = mcrypt_module_open ('tripledes', '', 'ecb', '');
    $key = substr(md5($key),0,24);
    $iv = mcrypt_create_iv (mcrypt_enc_get_iv_size ($td), MCRYPT_RAND);
    mcrypt_generic_init ($td, $key, $iv);
    $decrypted_data = mdecrypt_generic ($td, $input);
    mcrypt_generic_deinit ($td);
    mcrypt_module_close ($td);
    return trim(chop($decrypted_data));
}
function mencrypt($input) {
    $key = '4oF9B2NWXbmvIC5nNLLTbnmr5knkEBNBcrJt9m3xM3kjFyCZc3QAZbolXomtaIQSBBDDxxxAAAjTPV';
    $key = substr(md5($key),0,24);
    $td = mcrypt_module_open ('tripledes', '', 'ecb', '');
    $iv = mcrypt_create_iv (mcrypt_enc_get_iv_size ($td), MCRYPT_RAND);
    mcrypt_generic_init ($td, $key, $iv);
    $encrypted_data = mcrypt_generic ($td, $input);
    mcrypt_generic_deinit ($td);
    mcrypt_module_close ($td);
    return trim(chop($this->url_base64_encode($encrypted_data)));
}
I created a loop to encrypt numbers, and for example, the number 63 fails on decrypt:
- encrypted : pECnbC3qkwg- decrypted : 60
- encrypted : yOo70iZ7LKk- decrypted : 61
- encrypted : GRkGYosxwO4- decrypted : 62
- encrypted : AJGJzNep3YU- decrypted : +ÕϤȿß
- encrypted : wvT3n6F~xkU- decrypted : 64
- encrypted : 7p.gxcfLFcE- decrypted : 65
Anyone knows what should I do?
Thank you all
 
    