В теме 2 сообщения

Доброго времени суток, пользователи pawno-rus. Ни для кого не секрет, что сейчас всё больше участились случаи взломов аккаунтов игроков на SA:MP серверах.
В большинстве случаев, виной тому - стиллеры в скаченных модах / cleo-скриптах / etc.
Злоумышленники уже научились клепать стиллеры даже в *.txd файлах.

Поэтому, у большинства проектов со временем появляется вопрос, как же дополнительно защитить аккаунты.
Отличным решением будет использование временных паролей, которые может генерировать приложение Google Authenticator.
Следовательно, если даже злоумышленник будет знать пароль - попасть в аккаунт без ввода временного пароля - будет невозможно.

Этот плагин позволяет генерировать одноразовые пароли, основанные на времени (и подсчитываемые на основе алгоритма TOTP RFC 6238).
Таким образом, сервера проекта в состоянии сверять одноразовые пароли без дополнительных API на сайте и т.д.

Natives:

native GoogleAuthenticatorCode(key[], tm);


Параметры:

  • key - секретный ключ в BASE32
  • tm - UNIXTIME



Использование:

Допустим, у нас есть секретный ключ 3ADXVY3HXVYX6XWZ.

1. Генерируем для него QR-код
2. Сканируем код приложением Google Authenticator и смотрим, что он нам выдал:
3. Прикручиваем плагин к серверу и компилим следующий код:

#include <a_samp>
#include <TOTP>

public OnFilterScriptInit()
{
    new code = GoogleAuthenticatorCode("3ADXVY3HXVYX6XWZ", gettime());
    printf("CODE: %06d", code);
}  

И смотрим, что же выдал нам сервер при загрузке:

CODE: 359493

Было бы правильнее, наверное, назвать ф-ию тоже TOTP(), но, плагин писал непосредственно для использования в связке с Google Authenticator, поэтому, если кто-то захочет её переименовать - милости прошу, исходники ниже. 

Дополнительные инструменты:
http://lightcode.ru/TOTP/secret.php - генерация рандомного секрета (F5 для генерации нового);
http://lightcode.ru/TOTP/TOTP.html - TOTP Debugger.

Скачать:
Репозиторий на GitHub: https://github.com/GamesDV/TOTP
Скомпилированный плагин для Linux и Windows (releases page): https://github.com/G...V/TOTP/releases


Пример полноценной работы:

new passwo11rd[17];
new biglet1ters[32][] = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y","Z","2", "3", "4", "5", "6", "7"};
CMD:code(playerid)
{
    for(new i = 0; i < 17; i ++) strcat(passwo11rd, biglet1ters[random(sizeof(biglet1ters))]);
    SendClientMessage(playerid,-1,passwo11rd);
    return true;
}
CMD:code2(playerid, params[])
{
    if(PlayerLogged[playerid] == false) return 1;
    if(sscanf(params, "i", params[0])) return SendClientMessage(playerid, CGREY, "Используйте: /code2 [код]");
    new heh = GoogleAuthenticatorCode(passwo11rd, gettime());
    if(params[0] != heh) SendClientMessage(playerid,-1,"Не совпадает");
    else SendClientMessage(playerid,-1,"Совпадает");
    return true;
}


Авторы: Batka1337 && Games (W1nStoN)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Бот
Великий Гуру

АВТОМАТИЧЕСКИ СФОРМИРОВАННОЕ СООБЩЕНИЕ:

Данная тема была перемещена модерацией или администрацией портала PAWNO-RUS.RU! 

Перемещена из: "Скриптинг PAWN > Готовые решения"

Перемещена в: "Скриптинг PAWN > Уроки"

 

С уважением, ваш Бот! 

Если вы НЕ согласны с переносом данной темы в раздел "Скриптинг PAWN > Уроки", пожалуйтесь на это сообщение в жалобе указав причины вашего недовольства. Спасибо. 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Kasper0
      От Kasper0
      Продаётся готовый проект CRMP.
      Готовый игровой мод База Данных с более чем 350к аккаунтов Сборка, скинпак/автомобили, карта Домены Сайт,лаунчер Чат-боты Более 5 бэкапов игрового мода, начиная с версии 0.3e Связаться: t.me/zayhhik
    • Kasper0
      От Kasper0


      Скачать файл Criminal Russia RolePlay (CRMPRP)
      Всех приветствую, в наличии мод CRMPRP. Разрабатывался с 2013 года если не ошибаюсь от бывшего Владельца (полностью оригинал + так-же имеется БД с сайтом и системой логов). Мод без бонуса, куча работ для новичков например: (Лесопилка,ферма,рыбалка,водитель автобуса,автомеханик,дольнабойщики,завод,таксист и др.) имеется система квестов, система домов (5 классов + возможность заменять интерьеры и система чердака), система гаражей (3 класса), обширная система семей, обширная система *ОПГ. Мод спокойно может выдержать 500+ онлайна
      Добавил Kasper0 Добавлено 05.07.2025 Категория Моды Автор Tim  
    • OREGON-RPG
      От OREGON-RPG
      **Привет, будущий друг!**
      Мы создаем новый сервер в >> GTA SA-MP (OregoN Role Playing Game) << и ищем таких же увлеченных игроков, как ты!!!

      Здесь ты сможешь: 

      Влиять на развитие сервера – твое мнение важно! 

      Найти друзей и классную компанию.
       
      Стать частью уютного комьюнити, где все друг за друга.

      Сервер еще в разработке – это шанс войти в историю с самого начала! 

       >>> Давай строить этот мир вместе? <<<

       Переходи по ссылке, будь в центре событий и стань частью истории: 

      [ Группа ВКонтакте: vk.com/oregonrpgru ]

      [ Форум: oregon-rpg.ru ]
    • Kasper0
      От Kasper0
      Всех приветствую, в наличии мод CRMPRP. Разрабатывался с 2013 года если не ошибаюсь от бывшего Владельца (полностью оригинал + так-же имеется БД с сайтом и системой логов). Мод без бонуса, куча работ для новичков например: (Лесопилка,ферма,рыбалка,водитель автобуса,автомеханик,дольнабойщики,завод,таксист и др.) имеется система квестов, система домов (5 классов + возможность заменять интерьеры и система чердака), система гаражей (3 класса), обширная система семей, обширная система *ОПГ. Мод спокойно может выдержать 500+ онлайна
    • Kasper0
      От Kasper0


      Скачать файл ГУЧИ CRMP | НОВАЯ ВЕРСИЯ МОДА
      Всех приветствую, мод всеми известного проекта на новой карте

      В продажу входит сам мод+карта+лаунчер и парочка скриптов, так-же в моде имеется новая система СГУ для спец. транспорта + исправлено большинство багов.
      Добавил Kasper0 Добавлено 03.07.2025 Категория Моды Автор gcrmp