Автор |
Сообщение |
shinobi-sk8
Участник
Зарегистрирован: 28 фев 2015, 15:18 Сообщения: 25 Поблагодарили: 0 раз.
|
Добрый день. Кто может знает, есть ли у панели api? в документации не нашёл. (бесплатная версия пу)
|
08 мар 2015, 22:18 |
|
|
Nikita
V.I.P.
Зарегистрирован: 10 ноя 2011, 19:05 Сообщения: 1945 Поблагодарили: 13 раз. Откуда: СПб
|
Добрый день. Какой API вам нужен? Внешний через HTTP?
|
08 мар 2015, 22:48 |
|
|
shinobi-sk8
Участник
Зарегистрирован: 28 фев 2015, 15:18 Сообщения: 25 Поблагодарили: 0 раз.
|
да, именно такой.
|
08 мар 2015, 23:10 |
|
|
shinobi-sk8
Участник
Зарегистрирован: 28 фев 2015, 15:18 Сообщения: 25 Поблагодарили: 0 раз.
|
нашёл баг: когда запускаем обновление, а оно уже есть в задачах - то кнопка назад ведён на неверный урл (скрины приложил)
Вложения:
2.png [ 8.83 КБ | Просмотров: 8751 ]
24f00-clip-48kb.jpg [ 47.67 КБ | Просмотров: 8751 ]
|
08 мар 2015, 23:40 |
|
|
shinobi-sk8
Участник
Зарегистрирован: 28 фев 2015, 15:18 Сообщения: 25 Поблагодарили: 0 раз.
|
и сразу вопрос ещё один надо решить: для пользователя создаётся пароль в какой то кодировке и хэш (это я про базу данных, таблицу юзеров). вопросы: 1. зачем нужен хэш 2. какой алгоритм создания пароля (либо в каком файле глянуть) ?
|
09 мар 2015, 22:22 |
|
|
GordonFreeman
Специалист
Зарегистрирован: 25 янв 2012, 20:30 Сообщения: 487 Поблагодарили: 19 раз. Откуда: Uzbekistan
|
shinobi-sk8 писал(а): 2. какой алгоритм создания пароля (либо в каком файле глянуть) ? Если не ошибаюсь, то в файле application/helpers/safety_helper.php. Функция hash_password.
|
10 мар 2015, 12:02 |
|
|
Nikita
V.I.P.
Зарегистрирован: 10 ноя 2011, 19:05 Сообщения: 1945 Поблагодарили: 13 раз. Откуда: СПб
|
1. Это хеш случайной строки, он нужен для авторизации. Если его удалить, то пользователь не будет авторизован, но он появится снова, когда пользователь зайдёт в панель. 2. Алгоритм BlowFish, специально созданный для хеширования паролей, т.к. их подбор уходит гораздо больше времени. Если злоумышленник получит эту строку, то шансы узнать пароль минимальны (даже если пароль не слишком сложный).
|
10 мар 2015, 13:33 |
|
|
shinobi-sk8
Участник
Зарегистрирован: 28 фев 2015, 15:18 Сообщения: 25 Поблагодарили: 0 раз.
|
благодарю за ответы!
но вопросы остаются: 1. что про апи? есть ли оно? 2. случайной строки? из каких строк берётся эта случайная? и в каком файле идёт проверка этой случайной строки, т.е. в каком файле мне найти код сверки авторизации (хочу изменить, чтоб авторизация была сразу в отдельном моём биллинге и в данной ПУ). 3. в файле application/helpers/safety_helper.php проверяется пароль и для реги и для логина?
|
10 мар 2015, 17:08 |
|
|
Nikita
V.I.P.
Зарегистрирован: 10 ноя 2011, 19:05 Сообщения: 1945 Поблагодарили: 13 раз. Откуда: СПб
|
1. Нет, такого API нет. Если интересует вопросы интеграции с чем-то, то пишите, помогу.
2. Рандомная строка, IP и UserAgent. Это в файле application/models/users.php, метод get_user_hash() Сам процесс проверки логина и пароля происходит в методе user_auth()
3. В safety_helper.php пароли не проверяются.
|
10 мар 2015, 17:56 |
|
|
shinobi-sk8
Участник
Зарегистрирован: 28 фев 2015, 15:18 Сообщения: 25 Поблагодарили: 0 раз.
|
благодарю за быстрый ответ, буду разбираться!
|
10 мар 2015, 18:40 |
|
|
shinobi-sk8
Участник
Зарегистрирован: 28 фев 2015, 15:18 Сообщения: 25 Поблагодарили: 0 раз.
|
с кодом авторизации всё получилось. теперь вопрос - как же создаётся кодированный ркон пароль в базе? я получил мд5 ключ для кодировки, но пойдя дальше начал натыкаться на функцию за функцией по кодировке. можно как то коротко представить функцию по кодировке в базе ркон паролей? один поиска/распутывание цепочки функций убили кучу времени и я понял, что это ппц какой-то =) я о таблице gameap_servers и о столбце rcon
|
11 мар 2015, 04:14 |
|
|
shinobi-sk8
Участник
Зарегистрирован: 28 фев 2015, 15:18 Сообщения: 25 Поблагодарили: 0 раз.
|
и вы так и не ответили о баге с 404 страницей
|
11 мар 2015, 04:15 |
|
|
shinobi-sk8
Участник
Зарегистрирован: 28 фев 2015, 15:18 Сообщения: 25 Поблагодарили: 0 раз.
|
похоже нашёл короткий ответ: Код: function add_cipher_noise($data, $key) { $keyhash = sha1($key); $keylen = strlen($keyhash); $str = ''; for ($i = 0, $j = 0, $len = strlen($data); $i < $len; ++$i, ++$j) { if ($j >= $keylen) { $j = 0; }
$str .= chr((ord($data[$i]) + ord($keyhash[$j])) % 256); } return $str; } $key = '*************************'; $data = '123123'; $init_size = mcrypt_get_iv_size('rijndael-256', 'cbc'); $init_vect = mcrypt_create_iv($init_size, MCRYPT_RAND); $rcon=base64_encode(add_cipher_noise($init_vect.mcrypt_encrypt('rijndael-256', $key, $data, 'cbc', $init_vect), $key)); посомтрите, пожалуйста, верно ли это?
|
11 мар 2015, 04:34 |
|
|
Nikita
V.I.P.
Зарегистрирован: 10 ноя 2011, 19:05 Сообщения: 1945 Поблагодарили: 13 раз. Откуда: СПб
|
Вы зря так глубоко полезли. Все гораздо проще. В коде контроллера вставьте это: Код: $this->load->library('encrypt');
$rcon = '123'; $rcon_encrypt = $this->encrypt->encode($rcon); echo $rcon_encrypt; // Зашифрованный пароль
$rcon_decrypt = $this->encrypt->decode($rcon_encrypt); echo $rcon_decrypt; // Расшифрованный пароль
Ключ шифрования находится в application/config/gameap_config.php, параметр $config['encryption_key'].
|
11 мар 2015, 12:27 |
|
|
shinobi-sk8
Участник
Зарегистрирован: 28 фев 2015, 15:18 Сообщения: 25 Поблагодарили: 0 раз.
|
дело в том, что мне нужно сторонний скрипт написать, не связанный на прямую с пу
|
11 мар 2015, 14:07 |
|
|