程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP加密解密的兩種方法

PHP加密解密的兩種方法

編輯:PHP綜合

一、利用md5和字符串處理函數

  <?php
  $key = "This is supposed to be a secret key !!!";
  function keyED($txt,$encrypt_key)  {
  $encrypt_key = md5($encrypt_key);
  $ctr=0;  $tmp = "";
  for ($i=0;$i<strlen($txt);$i++)  {
  if ($ctr==strlen($encrypt_key)) $ctr=0;
  $tmp.= substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1);
  $ctr++;
  }
  return $tmp;
  }
  function encrypt($txt,$key)  {
  srand((double)microtime()*1000000);
  $encrypt_key = md5(rand(0,32000));
  $ctr=0;
  $tmp = "";
  for ($i=0;$i<strlen($txt);$i++)  {
  if ($ctr==strlen($encrypt_key)) $ctr=0;
  $tmp.= substr($encrypt_key,$ctr,1) .  (substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1));
  $ctr++;
  }
  return keyED($tmp,$key);
  }
  function decrypt($txt,$key)  {
  $txt = keyED($txt,$key);
  $tmp = "";
  for ($i=0;$i<strlen($txt);$i++)  {
  $md5 = substr($txt,$i,1);
  $i++;
  $tmp.= (substr($txt,$i,1) ^ $md5);
  }
  return $tmp;
  }
  $string = "Hello World !!!";
  // encrypt $string, and store it in $enc_text  $enc_text = encrypt($string,$key);
  // decrypt the encrypted text $enc_text, and store it in $dec_text  $dec_text = decrypt($enc_text,$key);
  print "Original text : $string <Br>";
  print "Encrypted text : $enc_text <Br>";
  print "Decrypted text : $dec_text <Br>";
  ?>

二、利用md5和base64_encode及json_encode函數

  <?php
  // 表單驗證密匙$form_api_secret = 'Wuuh7ZL8n5gdhCFS2wtm6FmU/M0=';
  $options = array();
  $options['expiration'] = time()+600;
  $options['save-key'] = '/{year}/{mon}/{day}/upload_{filename}{.suffix}';
  $policy = base64_encode(json_encode($options));
  $signature = md5($policy.'&'.$form_api_secret);
  ?>
  <html>
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  </head>
  <body>
  <form action="" method="post" enctype="multipart/form-data">
  <input type="hidden" name="policy" value="<?php echo $policy?>">
  <input type="hidden" name="signature" value="<?php echo $signature?>">
  <input type="submit" value="提交">
  </form>
  </body>
  </html>

*
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved