php加密解密处理类--参 考:Discuz论坛的passpor_PHP教程

php中文网
发布: 2016-07-22 09:03:05
原创
1172人浏览过

<?php

魔匠AI论文
魔匠AI论文

专业原创的AI论文写作工具,一站式解决论文选题、写作、文献综述、答辩PPT全流程,支持毕业论文、课程论文等多种类型,轻松助力高质量论文写作。

魔匠AI论文 53
查看详情 魔匠AI论文
02 /*===========================================================
03 = 版权协议:
04 = GPL (The GNU GENERAL PUBLIC LICENSE Version 2, June 1991)
05 =------------------------------------------------------------
06 = 文件名称:cls.sys_crypt.php
07 = 摘    要:php加密解密处理类
08 = 版    本:1.0
09 = 参    考:Discuz论坛的passport相关函数
10 =------------------------------------------------------------
11 = Script Written By PHPWMS项目组
12 = 最后更新:xinge
13 = 最后日期:2007-12-09
14 ============================================================*/
15  
16 class SysCrypt {
17  
18 private $crypt_key;
19  
20 // 构造函数
21 public function __construct($crypt_key) {
22    $this -> crypt_key = $crypt_key;
23 }
24  
25 public function php_encrypt($txt) {
26    srand((double)microtime() * 1000000);
27    $encrypt_key = md5(rand(0,32000));
28    $ctr = 0;
29    $tmp = '';
30    for($i = 0;$i<code class="php functions">strlen($txt);$i++) {
31     $ctr = $ctr == <code class="php functions">strlen($encrypt_key) ? 0 : $ctr;
32     $tmp .= $encrypt_key[$ctr].($txt[$i]^$encrypt_key[$ctr++]);
33    }
34    return base64_encode(self::__key($tmp,$this -> crypt_key));
35 }
36  
37 public function php_decrypt($txt) {
38    $txt = self::__key(base64_decode($txt),$this -> crypt_key);
39    $tmp = '';
40    for($i = 0;$i <code class="php functions">strlen($txt); $i++) {
41     $md5 = $txt[$i];
42     $tmp .= $txt[++$i] ^ $md5;
43    }
44    return $tmp;
45 }
46  
47 private function __key($txt,$encrypt_key) {
48    $encrypt_key = md5($encrypt_key);
49    $ctr = 0;
50    $tmp = '';
51    for($i = 0; $i <code class="php functions">strlen($txt); $i++) {
52     $ctr = $ctr == <code class="php functions">strlen($encrypt_key) ? 0 : $ctr;
53     $tmp .= $txt[$i] ^ $encrypt_key[$ctr++];
54    }
55    return $tmp;
56 }
57  
58 public function __destruct() {
59    $this -> crypt_key = null;
60 }
61 }
62  
63  
64 $sc = new SysCrypt('phpwms');
65 $text = '110';
66 print($sc -> php_encrypt($text));
67 print('<br>');
68 print($sc -> php_decrypt($sc -> php_encrypt($text)));
69 ?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/371817.htmlTechArticle?php 02 /*=========================================================== 03 = 版权协议: 04 = GPL (The GNU GENERAL PUBLIC LICENSE Version 2, June 1991) 05 =----------------------...
相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号