Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

17.09.2009, 19:20
|
|
Новичок
Регистрация: 04.09.2009
Сообщений: 10
Провел на форуме: 123503
Репутация:
3
|
|
md5 это шифрование в одну сторону
|
|
|

17.09.2009, 19:22
|
|
Участник форума
Регистрация: 05.05.2009
Сообщений: 126
Провел на форуме: 226966
Репутация:
8
|
|
а как подругому можно выполнить данное
|
|
|

17.09.2009, 19:27
|
|
Новичок
Регистрация: 04.09.2009
Сообщений: 10
Провел на форуме: 123503
Репутация:
3
|
|
конкретней скажи что нужно
|
|
|

17.09.2009, 19:32
|
|
Участник форума
Регистрация: 05.05.2009
Сообщений: 126
Провел на форуме: 226966
Репутация:
8
|
|
мне нужно закодировать пароль пользователей и отправлять их Get запросом типа $pas=65gb347h7858j и на другой странице раскодировать это 65gb347h7858j и вернуть прежний вид паролю
|
|
|

17.09.2009, 19:38
|
|
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
Провел на форуме: 1734541
Репутация:
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..
|
|
|

17.09.2009, 19:40
|
|
Новичок
Регистрация: 04.09.2009
Сообщений: 10
Провел на форуме: 123503
Репутация:
3
|
|
или используй любой алгоритм симетричного шифрования с ключем.
|
|
|

17.09.2009, 19:42
|
|
Участник форума
Регистрация: 05.05.2009
Сообщений: 126
Провел на форуме: 226966
Репутация:
8
|
|
$pass = "чепопало";
$code = типкодировки($pass);
Отправляем типа http://*/check.php?pass=$code
на странице check
$code = $_GET['code'];
$pass = типрасшифровки($code);
|
|
|

17.09.2009, 19:45
|
|
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме: 5749763
Репутация:
1680
|
|
вопрос по php, в общем у меня стоит в настройках php
memory_limit 5M
есть файл который весит 4849824 (то есть не 5 метров), но почему то выскакивает:
Fatal error: Allowed memory size of 5242880 bytes exhausted (tried to allocate 16 bytes) in
как мне определить ошибку заранее? То есть проверку сделать.
делаю так:
if (filesize($ipfile) > ini_get('memory_limit'))
но не тут то было, функция filesize делает в байтах, а ini_get('memory_limit') в мегабайтах и + ко всему добавляет М в конец...
Как мне сделать проверку, чтобы не выскакивало ошибки:
Fatal error: Allowed memory size of 5242880 bytes exhausted (tried to allocate 16 bytes) in
???
|
|
|

17.09.2009, 19:46
|
|
Постоянный
Регистрация: 07.03.2009
Сообщений: 357
Провел на форуме: 1284900
Репутация:
399
|
|
2 restart_05
Можеш использовать например BASE64.
1.php
Код:
$pass = "чепопало";
$code = base64_encode($pass);
2.php
Код:
$code = $_GET['code'];
$pass = base64_decode($code)
2 Nightmarе
Ограничение можно узнать так:
$limit=((int) ini_get('memory_limit'))*1024*1024;
Последний раз редактировалось Gray_Wolf; 17.09.2009 в 19:54..
|
|
|

17.09.2009, 19:50
|
|
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
Провел на форуме: 1734541
Репутация:
214
|
|
restart_05 смотри выше я тебе привел пример
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|