0,0 → 1,64 |
<?php |
// Session Encryption by Ari Kuorikoski <ari.kuorikoski@finebyte.com> |
class MD5Crypt{ |
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 base64_encode($this->keyED($tmp,$key)); |
} |
|
function Decrypt($txt,$key) |
{ |
$txt = $this->keyED(base64_decode($txt),$key); |
$tmp = ""; |
for ($i=0;$i<strlen($txt);$i++){ |
$md5 = substr($txt,$i,1); |
$i++; |
$tmp.= (substr($txt,$i,1) ^ $md5); |
} |
return $tmp; |
} |
|
function RandPass() |
{ |
$randomPassword = ""; |
srand((double)microtime()*1000000); |
for($i=0;$i<8;$i++) |
{ |
$randnumber = rand(48,120); |
|
while (($randnumber >= 58 && $randnumber <= 64) || ($randnumber >= 91 && $randnumber <= 96)) |
{ |
$randnumber = rand(48,120); |
} |
|
$randomPassword .= chr($randnumber); |
} |
return $randomPassword; |
} |
|
} |
?> |