获取 PHP MCrypt 密码的所有可能的密钥大小
Getting all possible key sizes for PHP MCrypt Ciphers
我正在创建 public 包,那里有一些加密,我让开发人员选择密码类型和模式,并为包的加密部分设置密钥。
现在我需要在 MCrypt 函数中使用它之前检查密钥大小。
所以我要知道的是:
1) 密码的所有可能的密钥大小。
2) 给定键的字节大小。
或者你有更好的方法欢迎分享
mcrypt_list_algorithms()
给你密码列表
mcrypt_module_get_supported_key_sizes($cipher)
为您提供支持的密钥大小(如果密钥大小是连续的,则为空)
mcrypt_module_get_algo_key_size($cipher)
为您提供最大密钥大小,以防前一个函数未返回任何内容
所有密钥大小均以字节为单位。
示例:
$algorithms = mcrypt_list_algorithms();
foreach ($algorithms as $cipher) {
echo "$cipher:\n";
$keysizes = mcrypt_module_get_supported_key_sizes($cipher);
if (count($keysizes) == 0) {
$max = mcrypt_module_get_algo_key_size($cipher);
echo " max: $max\n";
} else {
foreach ($keysizes as $keysize) {
echo " $keysize\n";
}
}
echo "\n";
}
使用 strlen($input)
检索给定字符串中的字节(应该被解码)。
我正在创建 public 包,那里有一些加密,我让开发人员选择密码类型和模式,并为包的加密部分设置密钥。 现在我需要在 MCrypt 函数中使用它之前检查密钥大小。 所以我要知道的是:
1) 密码的所有可能的密钥大小。
2) 给定键的字节大小。
或者你有更好的方法欢迎分享
mcrypt_list_algorithms()
给你密码列表mcrypt_module_get_supported_key_sizes($cipher)
为您提供支持的密钥大小(如果密钥大小是连续的,则为空)mcrypt_module_get_algo_key_size($cipher)
为您提供最大密钥大小,以防前一个函数未返回任何内容
所有密钥大小均以字节为单位。
示例:
$algorithms = mcrypt_list_algorithms();
foreach ($algorithms as $cipher) {
echo "$cipher:\n";
$keysizes = mcrypt_module_get_supported_key_sizes($cipher);
if (count($keysizes) == 0) {
$max = mcrypt_module_get_algo_key_size($cipher);
echo " max: $max\n";
} else {
foreach ($keysizes as $keysize) {
echo " $keysize\n";
}
}
echo "\n";
}
使用 strlen($input)
检索给定字符串中的字节(应该被解码)。