• 技术文章 >后端开发 >php教程

    PHP实现的加密解密处理类

    PHPzhongPHPzhong2021-05-31 16:22:22转载1274
    本篇文章给大家介绍一下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 = '';
      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 = '';
      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 = '';
      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('phpwms');
     $text = 'abc10000008910000000990099hh'; //需要加密的数据
     print($sc -> php_encrypt($text)); //加密
     print('<br>');
     print($sc -> php_decrypt($sc -> php_encrypt($text))); //解密
    ?>

    推荐学习:《PHP视频教程

    声明:本文转载于:脚本之家,如有侵犯,请联系admin@php.cn删除
    专题推荐:PHP 加密解密 处理类
    上一篇:php简单实现短网址(短链)还原的方法(测试可用)_php技巧 下一篇:php数据访问之增删改查操作_php技巧
    大前端线上培训班

    相关文章推荐

    • PHP加密解密函数代码实现范例• PHP中常用的加密解密方法总结• php中加密解密DES的正确使用姿势

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网