[ Index ] |
|
Code source de vtiger CRM 5.0.2 |
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 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Sun Feb 25 10:22:19 2007 | par Balluche grâce à PHPXref 0.7 |