prokreedz (что за способ шифрования)

Сообщения
9
Реакции
1
всем привет, подскажите пожалуйста, что это за способ шифрования и как его сделать? (хочу так же в своей системе мода)

Код:
new g_hltv_id;
new g_cangetwpn[] = "计时中不允许使用其它武器, 输入 /reset清除计时"
new g_szGroupStart[] = "挑战中,无法使用其它武器"
#if defined USE_SQL
/** hosen *
new g_TOP_SQL_ADDR[] = {0x2D3F3031, 0x2D363330, 0x2D2F3431, 0x36393135, 0xFF323236};
new g_TOP_SQL_USER[] = {0x6A6E716F, 0x63646471, 0xFEFEFF79};
new g_TOP_SQL_PASS[] = {0x64236745, 0x3F235E37, 0xFEFEFEFF};
/ 97Club **
new g_TOP_SQL_ADDR[] = {0x2DA13130, 0x2D333030, 0x312D3235, 0x32392F34, 0xFF352F32}
new g_TOP_SQL_USER[] = {0xFF6CDF61}
new g_TOP_SQL_PASS[] = {0x47CE6049, 0x6D554D37, 0xFEFA4460}
 
Сообщения
15
Реакции
4
Помог
1 раз(а)
sateyoke, это не шифр, а запись шестнадцатеричного кода в массив символов.
Вот пример:
Код:
new g_TOP_SQL_USER[] = {0x6A6E716F, 0x63646471, 0xFEFEFF79};
0x6A6E716F -> 1101010011011100111000101101111 ->
0x6A6E716F -> 1100011011001000110010001110001 ->
0x6A6E716F -> 11111110111111101111111101111001 ->

Если вы считаете, что это поможет защитить ваш плагин, то огорчу... любую проверку можно обойти
 
Последнее редактирование:
Сообщения
9
Реакции
1
TouchMe, все равно не понял, как реализовать эти записи.
хочу скрыть эту строчку - new pSqlHost = register_cvar( "kreedz_sql_host", "localhost",)

как мне сделать?)
 
Сообщения
9
Реакции
1
Roma, не совсем понял о чем ты, а так я ищу привязку плагина через бд.
 
Сообщения
15
Реакции
4
Помог
1 раз(а)
sateyoke, переводить букву сначала в двоичную систему, потом в шестнадцатеричную:
Код:
"host" => {'h', 'o', 's', 't'} => {01101000, 01101111, 01110011, 01110100} =>  {0x68, 0x6F, 0x73, 0x74}
 
Сообщения
584
Реакции
1,006
Помог
18 раз(а)
Сообщения
9
Реакции
1
TouchMe, как я понял, у меня слово localhost, получилось так:
Код:
 двоичная система: 01101100 01101111 01100011 01100001 01101100 01101000 01101111 01110011 01110100
из двоичной в шестнадцатеричную: 6C6F63616C686F7374
верно?
6 Май 2022
Mistrick, хорошо, спасибо.
есть какие-то варианты привязки, на первое время?
 
Сообщения
15
Реакции
4
Помог
1 раз(а)
sateyoke, Каждый символ в шестнадцатеричную переводится отдельно. Просто повтори мои шаги выше. Но. как и указал Mistrick, это не решение, тк данные к базе данных вашего сайта просто попадут в другие руки, откуда можно будет совершать различные операции (на сколько хватит привилегий вашего пользователя в SQL).. Обычно никто не запаривается над правами и выдаёт права на мутацию (изменение) данных, что в вашем случае будет фатально
 
Сообщения
15
Реакции
4
Помог
1 раз(а)
sateyoke, На первое время можно создавать ключи (без базы данных) по следующей схеме:
1. Составить строку: port сервера + ваше "секретное слово" + ip сервера
2. Получить хэш этой строки.

Проверять ключи в плагине можно так:
3. Получить ip, port сервера через встроенные функции amxmodx.
4. Получить "секретное слово" через ConVar (квар).
5. Получить ключ через ConVar (квар).
5. Сформировать хэш строки по данным из пункта (3,4) используя схему из пункта (1).
6. Сравнить Ключ с получившимся в плагине хэшем. Совпадает - значит этот сервер может использовать. Нет? set_fail_state()

Послесловие:
?. Есть оговорка. способ получения хэша должен быть одинаковый.
?. Любая проверка может и будет сломана. С другой стороны, с вашими знаниями лучше в это не лезть. Совсем :3
 
Сообщения
271
Реакции
348
Помог
15 раз(а)
Привязывать плагин через БД точно не стоит. Нужно использовать API к сайту. И уже на самом бэкенде проверять IP, с которого пришел запрос. А ну ещё нужно отправлять порт.

Но на самом деле все ваши set_fail_state, while (true) и т.п. в амхх плагинах не имеют никакого смысла. Всё это обходится 🤡
 
Сообщения
15
Реакции
4
Помог
1 раз(а)
Denzer, автору поста я уже написал об этом в первом ответе, но, у него есть цель и он не видит препятствий 😅
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу