博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php mcrypt 加密解密类
阅读量:6720 次
发布时间:2019-06-25

本文共 1854 字,大约阅读时间需要 6 分钟。

  hot3.png

key = $key; } /** * @brief 设置加密计算方法 * @param string $cipher 计算方法 * @return void */ public function setCipher($cipher) { $this->cipher = $cipher; } /** * @brief 设置加密模式 * @param string $mode 加密模式 * @return void */ public function setMode($mode) { $this->mode = $mode; } /** * @brief 字符串加密 * @param string $data 加密字符串 * @return string 加密后的字符串 */ public function encrypt($data) { $td = mcrypt_module_open($this->cipher, '', $this->mode, ''); $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), $this->rand); mcrypt_generic_init($td, $this->key, $iv); $encrypt = mcrypt_generic($td, $data); mcrypt_generic_deinit($td); $encrypt = mcrypt_generic($td, $data); mcrypt_generic_deinit($td); mcrypt_module_close($td); return $iv . $encrypt; } /** * @brief 字符串解密 * @param string $data 解密的字符串 * @return string 解密后的字符串 */ public function decrypt($data) { $td = mcrypt_module_open($this->cipher, '', $this->mode, ''); $size = mcrypt_enc_get_iv_size($td); $iv = mb_substr($data, 0, $size, 'latin1'); mcrypt_generic_init($td, $this->key, $iv); $data = mb_substr($data, $size, mb_strlen($data, 'latin1'), 'latin1'); $decrypt = mdecrypt_generic($td, $data); mcrypt_generic_deinit($td); mcrypt_module_close($td); return trim($decrypt); }}?>

转载于:https://my.oschina.net/thmz/blog/97274

你可能感兴趣的文章
POJO与javabean的区别
查看>>
数据结构与算法设计--树的镜像
查看>>
Oracle常用的性能诊断语句
查看>>
Shell命令-文件及内容处理之more、less
查看>>
实验5 数独游戏界面设计
查看>>
linux 中的vim的配置文件
查看>>
深入浅出node(3) 异步I/O
查看>>
iOS,plist文件、pch文件,工程设置,小知识点
查看>>
CentOS7配置IP和网络问题排查
查看>>
java Multiple Contexts have a path of ""
查看>>
MVC2.0中的HtmlHelper大全
查看>>
《面向模式的软件体系结构3-资源管理模式》读书笔记(1)--- Lookup模式
查看>>
You must configure either the server or JDBC driver (via the serverTimezone configuration property
查看>>
扩展方法判断序列(或集合)是否包含元素
查看>>
Sql Server Profiler跟踪死锁
查看>>
使用反射操作私有(Private)方法和属性
查看>>
第二阶段团队冲刺站立会议10
查看>>
php 的rabbitmq 扩展模块amqp安装
查看>>
APK签名校验绕过
查看>>
[LeetCode] 4Sum
查看>>