PHP中加密解密类的示例分析
发表于:2025-01-17 作者:千家信息网编辑
千家信息网最后更新 2025年01月17日,小编给大家分享一下PHP中加密解密类的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体分析如下:这段代码支持 数
千家信息网最后更新 2025年01月17日PHP中加密解密类的示例分析
小编给大家分享一下PHP中加密解密类的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
具体分析如下:
这段代码支持 数组加密 , 密文有效期, 各种对称加密
其中参数如下:
* @use ption::en($string, $key);
* @param String $string 需要加密的字串
* @param String $skey 密钥
* @param int $expiry 密文有效期, 加密时候有效, 单位 秒,0 为永久有效
* @return String
1. php代码如下:
/* * -工具库-加密解密码*/class ption{ private static $original = array('=', '+', '/'); private static $later = array('O0O0O', 'o0O0o', 'oo00o'); function __construct() { } private static function md5($skey = '') { $skey = $skey ? $skey : 'ui' ; //uicms::_config('security/authkey'); return md5(substr($skey, 0, 16)); } /** * @use ption::en($string, $key); * @param String $string 需要加密的字串 * @param String $skey 密钥 * @param int $expiry 密文有效期, 加密时候有效, 单位 秒,0 为永久有效 * @return String */ static public function en($string = '', $skey = '', $expiry=0) { if( is_array( $string ) ) { $string = json_encode($string); // uicms::json($string, true, 'en'); } $string = str_pad($expiry ? $expiry + TIME : 0, 10, 0).$string; $strArr = str_split(base64_encode($string)); $strCount = count($strArr); $skey = static::md5($skey); foreach (str_split($skey) as $key => $value) { $key < $strCount && $strArr[$key].=$value; } return str_replace(self::$original, self::$later, join('', $strArr)); } /** * @use ption::de($string, $key); * @param String $string 需要解密的字串 * @param String $skey 密钥 * @return String */ static public function de($string = '', $skey = '') { $strArr = str_split(str_replace(self::$later,self::$original,$string),2); $strCount = count($strArr); $skey = static::md5($skey); foreach (str_split($skey) as $key => $value) { $key < $strCount && $strArr[$key][1] === $value && $strArr[$key] = $strArr[$key][0]; } $result = base64_decode(join('', $strArr)); if(substr($result, 0, 10) == 0 || substr($result, 0, 10) - TIME > 0) { return substr($result, 10); } else { return false; } } }
2. 用法如下:
$str['username'] = 'oschina';$str['pw'] = '123456';$str['huoxin'] = '!@#$%^&';echo "string : " . $str . "
";echo "encode : " . ($enstring = ption::en($str)) . '
';echo "decode : " . ption::de($enstring);
以上是"PHP中加密解密类的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
加密
有效
加密解密
分析
密文
有效期
篇文章
示例
代码
内容
单位
密钥
时候
永久
对称
不怎么
参数
大部分
工具
数组
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
战术小队服务器密码是什么
机房服务器监测系统
学习java软件开发
数据库英文全称bf
顺义区现代软件开发资费
2019版网络安全应急预案要求
厦门添远网络技术有限公司
大海战2服务器怎么看
嵌入式底层软件开发实训报告
网络安全与文明的感想
桓台染色软件开发定制
职业规划书软件开发师
如何解决数据库备份问题
辛集租房网络安全
怎么写界面连接数据库
上海放牛娃互联网科技有限公司
工业控制网络技术试题
在数据库检索中常用的权属字段
网络安全从我做起活动方案
仟伯广东互联网科技公司
云熠网络技术
公司网络安全工程师属于哪个部门
四川pdu服务器专用电源生产厂
用友进销存数据库
企业文化与互联网科技进步
江西一站式软件开发费用
英雄联盟各服务器免费英雄列表
数据库触发器达梦
MIUI主题软件开发
蔚来科技互联网