
17.09.2009, 19:38
|
|
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
С нами:
9950786
Репутация:
214
|
|
Сообщение от restart_05
мне нужно закодировать пароль пользователей и отправлять их Get запросом типа $pas=65gb347h7858j и на другой странице раскодировать это 65gb347h7858j и вернуть прежний вид паролю
напиши свой простой алгоритм шифрации и думаю не составит труда написать дешифрацию и будет тебе счастье
вот простой класс шифрования, думаю тебе подойдет
PHP код:
class Crypter{
var $key;
function Crypter($clave){
$this->key = $clave;
}
function setKey($clave){
$this->key = $clave;
}
function keyED($txt) {
$encrypt_key = md5($this->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){
//srand((double)microtime()*1000000);
$encrypt_key = md5($this->key);
$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));
}
function decrypt($txt) {
$txt = $this->keyED(base64_decode($txt));
$tmp = "";
for ($i=0;$i<strlen($txt);$i++){
$md5 = substr($txt,$i,1);
$i++;
$tmp.= (substr($txt,$i,1) ^ $md5);
}
return $tmp;
}
}
Далее вызываем класс и определяем ключ для нашего шифрования
PHP код:
$crypt= new Crypter('ТУТ ПИШЕМ КЛЮЧ');
Например
$crypt= new Crypter('anti4at');
чтобы зашифровать строку
PHP код:
$str='password'; // строка которую надо зашифровать
$crp=$crypt->encrypt($str);
в переменной crp лежит зашифрованая строка password
чтобы расшифровать
PHP код:
$decrp=$crypt->decrypt($crp);
Последний раз редактировалось svesve; 17.09.2009 в 19:49..
|
|
|