[ Index ]
 

Code source de Mantis 1.1.0rc3

Accédez au Source d'autres logiciels libres

Classes | Fonctions | Variables | Constantes | Tables

title

Body

[fermer]

/core/adodb/session/ -> crypt.inc.php (source)

   1  <?php
   2  //     Session Encryption by Ari Kuorikoski <ari.kuorikoski@finebyte.com>
   3  class MD5Crypt{
   4  		function keyED($txt,$encrypt_key)
   5          {
   6                  $encrypt_key = md5($encrypt_key);
   7                  $ctr=0;
   8                  $tmp = "";
   9                  for ($i=0;$i<strlen($txt);$i++){
  10                          if ($ctr==strlen($encrypt_key)) $ctr=0;
  11                          $tmp.= substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1);
  12                          $ctr++;
  13                  }
  14                  return $tmp;
  15          }
  16  
  17  		function Encrypt($txt,$key)
  18          {
  19                  srand((double)microtime()*1000000);
  20                  $encrypt_key = md5(rand(0,32000));
  21                  $ctr=0;
  22                  $tmp = "";
  23                  for ($i=0;$i<strlen($txt);$i++)
  24                  {
  25                  if ($ctr==strlen($encrypt_key)) $ctr=0;
  26                  $tmp.= substr($encrypt_key,$ctr,1) .
  27                  (substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1));
  28                  $ctr++;
  29                  }
  30                  return base64_encode($this->keyED($tmp,$key));
  31          }
  32  
  33  		function Decrypt($txt,$key)
  34          {
  35                  $txt = $this->keyED(base64_decode($txt),$key);
  36                  $tmp = "";
  37                  for ($i=0;$i<strlen($txt);$i++){
  38                          $md5 = substr($txt,$i,1);
  39                          $i++;
  40                          $tmp.= (substr($txt,$i,1) ^ $md5);
  41                  }
  42                  return $tmp;
  43          }
  44  
  45  		function RandPass()
  46          {
  47                  $randomPassword = "";
  48                  srand((double)microtime()*1000000);
  49                  for($i=0;$i<8;$i++)
  50                  {
  51                          $randnumber = rand(48,120);
  52  
  53                          while (($randnumber >= 58 && $randnumber <= 64) || ($randnumber >= 91 && $randnumber <= 96))
  54                          {
  55                                  $randnumber = rand(48,120);
  56                          }
  57  
  58                          $randomPassword .= chr($randnumber);
  59                  }
  60                  return $randomPassword;
  61          }
  62  
  63  }
  64  
  65  
  66  class SHA1Crypt{
  67  
  68  		function keyED($txt,$encrypt_key)
  69          {
  70  
  71                  $encrypt_key = sha1($encrypt_key);
  72                  $ctr=0;
  73                  $tmp = "";
  74  
  75                  for ($i=0;$i<strlen($txt);$i++){
  76                          if ($ctr==strlen($encrypt_key)) $ctr=0;
  77                          $tmp.= substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1);
  78                          $ctr++;
  79                  }
  80                  return $tmp;
  81  
  82          }
  83  
  84  
  85  
  86  		function Encrypt($txt,$key)
  87          {
  88  
  89                  srand((double)microtime()*1000000);
  90                  $encrypt_key = sha1(rand(0,32000));
  91                  $ctr=0;
  92                  $tmp = "";
  93  
  94                  for ($i=0;$i<strlen($txt);$i++)
  95  
  96                  {
  97  
  98                  if ($ctr==strlen($encrypt_key)) $ctr=0;
  99  
 100                  $tmp.= substr($encrypt_key,$ctr,1) .
 101  
 102                  (substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1));
 103  
 104                  $ctr++;
 105  
 106                  }
 107  
 108                  return base64_encode($this->keyED($tmp,$key));
 109  
 110          }
 111  
 112  
 113  
 114  		function Decrypt($txt,$key)
 115          {
 116  
 117                  $txt = $this->keyED(base64_decode($txt),$key);
 118  
 119                  $tmp = "";
 120  
 121                  for ($i=0;$i<strlen($txt);$i++){
 122  
 123                          $sha1 = substr($txt,$i,1);
 124  
 125                          $i++;
 126  
 127                          $tmp.= (substr($txt,$i,1) ^ $sha1);
 128  
 129                  }
 130  
 131                  return $tmp;
 132          }
 133  
 134  
 135  
 136  		function RandPass()
 137          {
 138                  $randomPassword = "";
 139                  srand((double)microtime()*1000000);
 140  
 141                  for($i=0;$i<8;$i++)
 142                  {
 143  
 144                          $randnumber = rand(48,120);
 145  
 146                          while (($randnumber >= 58 && $randnumber <= 64) || ($randnumber >= 91 && $randnumber <= 96))
 147                          {
 148                                  $randnumber = rand(48,120);
 149                          }
 150  
 151                          $randomPassword .= chr($randnumber);
 152                  }
 153  
 154                  return $randomPassword;
 155  
 156          }
 157  
 158  
 159  
 160  }
 161  ?>


Généré le : Thu Nov 29 09:42:17 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics