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; }