pkcs5_pad($str, $size);
if (mcrypt_generic_init($cipher, $this->key, $this->iv) != -1)
{
$cipherText = mcrypt_generic($cipher, $str);
mcrypt_generic_deinit($cipher);
return base64_encode($cipherText);
}
mcrypt_module_close($cipher);
}
/**
* blowfish + cbc模式 + pkcs5 解密 去补码
* @param string $str 加密的数据
* @return string 解密的数据
*/
public function blowfish_cbc_pkcs5_decrypt($str)
{
$cipher = mcrypt_module_open(MCRYPT_BLOWFISH, '', MCRYPT_MODE_CBC, '');
if (mcrypt_generic_init($cipher, $this->key, $this->iv) != -1)
{
$cipherText = mdecrypt_generic($cipher, base64_decode($str));
mcrypt_generic_deinit($cipher);
return $this->pkcs5_unpad($cipherText);
}
mcrypt_module_close($cipher);
}
private function pkcs5_pad($text, $blocksize){
$pad = $blocksize - (strlen ( $text ) % $blocksize);
return $text . str_repeat ( chr ( $pad ), $pad );
}
private function pkcs5_unpad($str){
$pad = ord($str[($len = strlen($str)) - 1]);
return substr($str, 0, strlen($str) - $pad);
}
}
0
0
跳至
[1]
[全屏预览]
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门AI工具
相关专题
Golang 性能分析与pprof调优实战
本专题系统讲解 Golang 应用的性能分析与调优方法,重点覆盖 pprof 的使用方式,包括 CPU、内存、阻塞与 goroutine 分析,火焰图解读,常见性能瓶颈定位思路,以及在真实项目中进行针对性优化的实践技巧。通过案例讲解,帮助开发者掌握 用数据驱动的方式持续提升 Go 程序性能与稳定性。
9
2026.01.22
热门下载
相关下载
精品课程
相关推荐
/
热门推荐
/
最新课程








