




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一个PHP针对数字的加密解密类_ 这篇文章主要介绍了一个PHP针对数字的加密解密类,该类仅支持加密数字。比较适用于数据库中id字段的加密解密,以及依据数字显示url的加密,需要的伴侣可以参考下 代码如下: ?php /* * 加密解密类 * 该算法仅支持加密数字。比较适用于数据库中id字段的加密解密,以及依据数字显示url的加密。 * author 深秋的竹子 * version alpha * 加密原则 标记长度 + 补位 + 数字替换 * 加密步骤: * 将a-z,A-Z,0-9 62个字符打乱,取前M(数字最大的位数)位作为 标记长度字符串,取第M+1 到第M+10位为数字替换字符串,剩
2、余的为补位字符串 * 1.计算数字长度n,取乱码的第n位作为标记长度。 * 2.计算补位的长度,加密串的长度N -1 - n 为补位的长度。依据指定的算法得到补位字符串。 * 3.依据数字替换字符串替换数字,得到数字加密字符串。 * 标记长度字符 + 补位字符串 + 数字加密字符串 = 加密串 * Usage: * $obj = new XDeode(9); * $e_txt = $obj-encode(123); * echo $e_txt.br/; * echo $key-decode($e_txt); */ class XDeode private $strbase = Flpvf70C
3、sakVjqgeWUPXQxSyJizmNH6B1u3b8cAEKwTd54nRtZOMDhoG2YLrI; private $key,$length,$codelen,$codenums,$codeext; function _construct($length = 9,$key = 2543.5415412812) $this-key = $key; $this-length = $length; $this-codelen = substr($this-strbase,0,$this-length); $this-codenums = substr($this-strbase,$this
4、-length,10); $this-codeext = substr($this-strbase,$this-length + 10); function encode($nums) $rtn = ; $numslen = strlen($nums); /密文第一位标记数字的长度 $begin = substr($this-codelen,$numslen - 1,1); /密文的扩展位 $extlen = $this-length - $numslen - 1; $temp = str_replace(., , $nums / $this-key); $temp = substr($tem
5、p,-$extlen); $arrextTemp = str_split($this-codeext); $arrext = str_split($temp); foreach ($arrext as $v) $rtn .= $arrextTemp$v; $arrnumsTemp = str_split($this-codenums); $arrnums = str_split($nums); foreach ($arrnums as $v) $rtn .= $arrnumsTemp$v; return $begin.$rtn; function decode($code) $begin =
6、substr($code,0,1); $rtn = ; $len = strpos($this-codelen,$begin); if($len!= false) $len+; $arrnums = str_split(substr($code,-$len); foreach ($arrnums as $v) $rtn .= strpos($this-codenums,$v); return $rtn; /* 示例 */ $begin = 9950; $end = $begin + 50; $obj = new XDeode(9); for($i=$begin;$i$end;$i+) $en = $obj-encode($i); $de = $obj-decode($en); echoln($i=$en=$de); function echoln($str) echo $strbr/; ? 运行示例结果: 9950=vmizxPPga=9950 9951=vSNSSPPgk=9951 9952=vNQNyPPgV=9952 9953=vyyJJPPgj=9953 9954=vNzQzPPgq=9954 9955=vyNzmPPgg=9955 9956=vXxSNPPge=9956 9957=vXJ
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度生态围墙施工与节能改造承包合同范本
- 2025版铁矿石国际贸易结算合同
- 2025年度石材材料市场调研与采购合同
- 2025版企业员工职业规划与团队协作能力培训合同
- 2025版品牌皮鞋品牌授权区域市场推广费用结算合同
- 2025年度水电安装工程安全管理承包合同
- 2025版智能家居控制系统购买及售后服务合同
- 2025版事业单位借调人员管理与服务规范及薪酬福利合同
- 2025版石子包销合同范本(适用环保工程)
- 2025年度智能化企业出纳岗位聘用协议
- 餐饮店食品经营操作流程4篇
- 2025年黑龙江、吉林、辽宁、内蒙古高考生物真题试卷(解析版)
- 药物治疗监测试题及答案
- GB/T 45654-2025网络安全技术生成式人工智能服务安全基本要求
- T/CAPA 009-2023面部埋线提升技术操作规范
- 塑胶料品质协议书
- 2025届江苏省苏州市高三9月期初阳光调研-语文试卷(含答案)
- 旅行地接协议书
- DB3707T 120-2024无特定病原凡纳滨对虾种虾循环水养殖技术规范
- 安全课件小学
- 租房协议书合同txt
评论
0/150
提交评论