Rumah > pembangunan bahagian belakang > tutorial php > Kelas pemprosesan penyulitan dan penyahsulitan dilaksanakan dalam PHP

Kelas pemprosesan penyulitan dan penyahsulitan dilaksanakan dalam PHP

PHPz
Lepaskan: 2021-05-31 16:22:22
ke hadapan
3343 orang telah melayarinya

Artikel ini akan memperkenalkan anda kepada kaedah melaksanakan kelas pemprosesan penyulitan dan penyahsulitan dalam PHP, dan menganalisis definisi dan kemahiran penggunaan kelas penyulitan dan penyahsulitan PHP dalam bentuk contoh. Ia mempunyai nilai rujukan tertentu Rakan-rakan yang memerlukan boleh merujuk kepadanya.

Kelas pemprosesan penyulitan dan penyahsulitan dilaksanakan dalam PHP

Kelas pemprosesan penyulitan dan penyahsulitan dilaksanakan oleh 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))); //解密
?>
Salin selepas log masuk

Pembelajaran yang disyorkan: "Tutorial video PHP

Label berkaitan:
sumber:jb51.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan