首页 > 后端开发 > php教程 > PHP实现的加密解密处理类

PHP实现的加密解密处理类

PHPz
发布: 2021-05-31 16:22:22
转载
3333 人浏览过

本篇文章给大家介绍一下PHP实现加密解密处理类的方法,结合实例形式分析了php加密解密类的定义与使用技巧。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

PHP实现的加密解密处理类

PHP实现的加密解密处理类

<?php
class SysCrypt {
 private $crypt_key;
 // 构造函数
 public function __construct($crypt_key) {
  $this -> crypt_key = $crypt_key;
 }
 public function php_encrypt($txt) {
  srand((double)microtime() * 1000000);
  $encrypt_key = md5(rand(0,32000));
  $ctr = 0;
  $tmp = &#39;&#39;;
  for($i = 0;$i<strlen($txt);$i++) {
   $ctr = $ctr == strlen($encrypt_key) ? 0 : $ctr;
   $tmp .= $encrypt_key[$ctr].($txt[$i]^$encrypt_key[$ctr++]);
  }
  return base64_encode(self::__key($tmp,$this -> crypt_key));
 }
 public function php_decrypt($txt) {
  $txt = self::__key(base64_decode($txt),$this -> crypt_key);
  $tmp = &#39;&#39;;
  for($i = 0;$i < strlen($txt); $i++) {
   $md5 = $txt[$i];
   $tmp .= $txt[++$i] ^ $md5;
  }
  return $tmp;
 }
 private function __key($txt,$encrypt_key) {
  $encrypt_key = md5($encrypt_key);
  $ctr = 0;
  $tmp = &#39;&#39;;
  for($i = 0; $i < strlen($txt); $i++) {
   $ctr = $ctr == strlen($encrypt_key) ? 0 : $ctr;
   $tmp .= $txt[$i] ^ $encrypt_key[$ctr++];
  }
  return $tmp;
 }
 public function __destruct() {
  $this -> crypt_key = null;
 }
 }
 //执行代码
 $sc = new SysCrypt(&#39;phpwms&#39;);
 $text = &#39;abc10000008910000000990099hh&#39;; //需要加密的数据
 print($sc -> php_encrypt($text)); //加密
 print(&#39;<br>&#39;);
 print($sc -> php_decrypt($sc -> php_encrypt($text))); //解密
?>
登录后复制

推荐学习:《PHP视频教程

相关标签:
来源:jb51.net
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板