示例#1
0
function mask2bin($mask)
{
    if (count(explode('.', $mask)) == 4) {
        return ip2long($mask);
    } else {
        if ($mask <= 32 && $mask >= 0) {
            $bin_mask = compat_str_pad('', $mask, '1');
            $bin_mask = compat_str_pad($bin_mask, 32, "0", STR_PAD_RIGHT);
            return $bin_mask;
        } else {
            return compat_str_pad('', 32, '1');
        }
    }
}
function decrypt_string($string, $key, $iv, $ciphers)
{
    global $REMOTE_ADDR, $SERVER_ADDR, $HTTP_USER_AGENT;
    $td = mcrypt_module_open(get_cipher($ciphers), "", MCRYPT_MODE_CFB, "");
    $key_max = mcrypt_enc_get_key_size($td);
    if (strlen($key) > $key_max) {
        $key = substr($key, 0, $key_max);
    }
    $iv = compat_str_pad("", mcrypt_enc_get_iv_size($td), $iv);
    mcrypt_generic_init($td, $key, $iv);
    $decrypted_data = mdecrypt_generic($td, $string);
    mcrypt_generic_deinit($td);
    return $decrypted_data;
}