下面是编程之家 jb51.cc 通过网络收集整理的代码片段。
编程之家小编现在分享给大家,也给大家做个参考。
class AES_CBC_nopadding { private $iv; private $key; private $blocksize; public function __construct($key,$iv) { $this->blocksize = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128,MCRYPT_MODE_CBC); $this->key = substr(md5($key),$this->blocksize); $this->iv = substr(md5($iv),$this->blocksize); } public function encrypt($text) { $pad = $this->blocksize - strlen($text)%$this->blocksize; $text = str_pad($text,strlen($text) + $pad,"\0"); return base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_128,$this->key,$text,MCRYPT_MODE_CBC,$this->iv)); } public function decrypt($text) { $text = mcrypt_decrypt(MCRYPT_RIJNDAEL_128,base64_decode($text),$this->iv); $len = strlen($text); for($len--; $len >= 0; $len--) { if($text[$len] !== "\0") { $len++; break; } } return substr($text,$len); } } class AES_CBC_PKCS7Padding { private $iv; private $key; private $blocksize; public function __construct($key,chr($pad)); return base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_128,$this->iv); $pad = ord(substr($text,-1)); if($pad < 1 || $pad > 32) { $pad = 0; } return substr($text,strlen($text) - $pad); } }
以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。