Anti-Cheat Toolkit [Asset Store]

Части и запчасти к проектам, дополнительное программное обеспечение.

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение Syberex 10 янв 2016, 01:14

Начал встраивать античит в проект ;)
А вот если у меня есть переменная в инвентаре с префиксом readonly
public readonly string id = "";
нужно ли ее античитить?
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение focus 10 янв 2016, 15:00

Syberex писал(а):Начал встраивать античит в проект ;)
А вот если у меня есть переменная в инвентаре с префиксом readonly
public readonly string id = "";
нужно ли ее античитить?


Обычно читят то, что часто меняется в процессе игры, жизни, деньги и т.д. с помощью поиска и отсева (не)изменившихся переменных.
Readonly переменная не меняется в процессе игры и найти её будет непросто, если значение изначально неизвестно читеру.

Попробуйте сами её найти в памяти и тогда уже сможете определиться стоит накрывать или нет.
Полезные плагины:
Maintainer | Anti-Cheat Toolkit | Advanced FPS Counter
Аватара пользователя
focus
UNITрон
 
Сообщения: 263
Зарегистрирован: 20 авг 2013, 22:59
Откуда: Russia, Saint-Petersburg
  • Сайт

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение Syberex 10 янв 2016, 23:24

Я понял. Я просто подумал, что если подменить id-шник предмета, то можно не изменять количество, оно там уже может быть большое.
Но я тоже так думал, что не требуется. Спасибо.

И еще вопрос, когда я должен делать SetNewCryptoKey(), только при первом запуске игры или при каждом запуске?
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение focus 11 янв 2016, 12:47

Syberex писал(а):И еще вопрос, когда я должен делать SetNewCryptoKey(), только при первом запуске игры или при каждом запуске?

Нужно вызывать этот метод при каждом запуске приложения.
Полезные плагины:
Maintainer | Anti-Cheat Toolkit | Advanced FPS Counter
Аватара пользователя
focus
UNITрон
 
Сообщения: 263
Зарегистрирован: 20 авг 2013, 22:59
Откуда: Russia, Saint-Petersburg
  • Сайт

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение VitaMin00 11 фев 2016, 16:01

У меня вопрос. прописываю я значит при каждом запуске в Awake() следующее:
ObscuredInt r = UnityEngine.Random.Range(int.MinValue, int.MaxValue);
ObscuredPrefs.SetNewCryptoKey(r.ToString());
Я так понимаю, что делаю это не правильно? Потому что все сохранения сразу слетают. Можно поподробнее, как правильно это использовать? я так понимаю это для того, что бы сохранения были у всех с разными именами? А то был случай, что в игре было сохранение с названием Gold. Один взломал и всем показал какое значение менять и на что. Хотел бы узнать, как этого избежать. спасибо.
VitaMin00
UNITрон
 
Сообщения: 187
Зарегистрирован: 12 мар 2012, 19:54

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение focus 11 фев 2016, 16:35

VitaMin00 писал(а):У меня вопрос. прописываю я значит при каждом запуске в Awake() следующее:
ObscuredInt r = UnityEngine.Random.Range(int.MinValue, int.MaxValue);
ObscuredPrefs.SetNewCryptoKey(r.ToString());
Я так понимаю, что делаю это не правильно?

Да, так не сработает.
Ключ при сохранении данных должен совпадать с ключом при чтении.
Вы можете включить привязку к устройствам, тогда для разных пользователей сохраненные данные будут выглядеть по-разному.
Либо самостоятельно генерируйте уникальные для пользователей ключи.
Важно чтобы ключ не менялся между сессиями, либо не забывайте считывать данные с использованием старого ключа прежде чем записывать их с новым.
Полезные плагины:
Maintainer | Anti-Cheat Toolkit | Advanced FPS Counter
Аватара пользователя
focus
UNITрон
 
Сообщения: 263
Зарегистрирован: 20 авг 2013, 22:59
Откуда: Russia, Saint-Petersburg
  • Сайт

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение VitaMin00 11 фев 2016, 20:35

Привязка к устройствам не вариант. Помню были эксперименты на ios с данным плагином, и когда на устройстве обновлялась версия ios, то идентификаторы менялись и считалось, что это новое устройство.
А SetNewCryptoKey - это только имена сохранений в файле? или значения тоже шифруются по другому?
VitaMin00
UNITрон
 
Сообщения: 187
Зарегистрирован: 12 мар 2012, 19:54

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение focus 11 фев 2016, 21:24

VitaMin00 писал(а):Привязка к устройствам не вариант. Помню были эксперименты на ios с данным плагином, и когда на устройстве обновлялась версия ios, то идентификаторы менялись и считалось, что это новое устройство.
А SetNewCryptoKey - это только имена сохранений в файле? или значения тоже шифруются по другому?

Да, на iOS с привязкой надо осторожно, на остальных платформах проблем быть не должно, они позволяют получать нормальный id устройства.

SetNewCryptoKey меняет ключ шифрования, соответственно полностью меняется итоговый внешний вид шифрованных данных.
Полезные плагины:
Maintainer | Anti-Cheat Toolkit | Advanced FPS Counter
Аватара пользователя
focus
UNITрон
 
Сообщения: 263
Зарегистрирован: 20 авг 2013, 22:59
Откуда: Russia, Saint-Petersburg
  • Сайт

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение ZakkArn 17 мар 2016, 14:27

А можно как-то без особого геморроя отправлять через RPC (pun) Obscured типы?
Last Survivor- _ttp://vk.com/lastsurvivor
ZakkArn
UNIт
 
Сообщения: 102
Зарегистрирован: 18 ноя 2014, 21:21

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение focus 17 мар 2016, 14:35

ZakkArn писал(а):А можно как-то без особого геморроя отправлять через RPC (pun) Obscured типы?

Используйте методы GetEncrypted \ SetEncrypted для передачи сырого зашифрованного значения по сети.
Полезные плагины:
Maintainer | Anti-Cheat Toolkit | Advanced FPS Counter
Аватара пользователя
focus
UNITрон
 
Сообщения: 263
Зарегистрирован: 20 авг 2013, 22:59
Откуда: Russia, Saint-Petersburg
  • Сайт

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение ZakkArn 17 мар 2016, 14:37

focus писал(а):
ZakkArn писал(а):А можно как-то без особого геморроя отправлять через RPC (pun) Obscured типы?

Используйте методы GetEncrypted \ SetEncrypted для передачи сырого зашифрованного значения по сети.


Так и предполагал, спасибо.
Last Survivor- _ttp://vk.com/lastsurvivor
ZakkArn
UNIт
 
Сообщения: 102
Зарегистрирован: 18 ноя 2014, 21:21

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение focus 31 мар 2016, 02:12

Всем привет!

Рад сообщить о том, что новая версия 1.5.1.0 прошла ревью и стала доступна в сторе!

Важнейшая часть обновления - новый редактор для ObscuredPrefs и PlayerPrefs.
Это простой, интуитивно понятный и полезный инструмент. Теперь вы с лёгкостью сможете отлаживать все префсы во время разработки проекта в ректоре Unity:

Изображение

Весь список изменений в этом обновлении:

1.5.1.0
- added ObscuredPrefs Editor!
    * edit both PlayerPrefs and Obscured prefs in Unity Editor
    * encrypt regular PlayerPrefs with configurable encryption key
    * decrypt ObscuredPrefs to the regular PlayerPrefs
    * search in prefs names
    * sort prefs by name, type, or encrypted state
    * smart prefs reading progress bar
    * shows 50 prefs per page allowing to work with huge collections
    * overwrite notice to prevent data loss
    * coloration of obscured prefs for easier navigation
    * copy prefs to clipboard
    * copy raw obscured prefs to clipboard
    * works on Win, Mac, Linux​
- ObscuredFloat/Double now may be assigned to ObscuredInt
- changed the randomize crypto key logic for all obscured types
- added support for the Unity 5.4 SceneManager.sceneLoaded delegate
- more editor actions are undoable now
- minor ObscuredPrefs API changes

Следите за обновлениями, впереди ещё немало интересного!
Полезные плагины:
Maintainer | Anti-Cheat Toolkit | Advanced FPS Counter
Аватара пользователя
focus
UNITрон
 
Сообщения: 263
Зарегистрирован: 20 авг 2013, 22:59
Откуда: Russia, Saint-Petersburg
  • Сайт

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение VitaMin00 13 апр 2016, 22:00

Вечер добрый. Не могу понять. Запихнул в Awake.
KeySave = ObscuredPrefs.GetBool("KeySave", false);
if (!KeySave)
{
Debug.Log("!");
ObscuredInt r = UnityEngine.Random.Range(int.MinValue, int.MaxValue);
ObscuredPrefs.CryptoKey = (r.ToString());
ObscuredPrefs.SetBool("KeySave", true);
KeySave = true;
}
Хочу новый ключ, при новой игре, пусть то установка или переустановка. Так у меня при каждом запуске он новый. Можно правильный вариант?)))
VitaMin00
UNITрон
 
Сообщения: 187
Зарегистрирован: 12 мар 2012, 19:54

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение focus 13 апр 2016, 22:38

VitaMin00 писал(а):Вечер добрый. Не могу понять. Запихнул в Awake.
KeySave = ObscuredPrefs.GetBool("KeySave", false);
if (!KeySave)
{
Debug.Log("!");
ObscuredInt r = UnityEngine.Random.Range(int.MinValue, int.MaxValue);
ObscuredPrefs.CryptoKey = (r.ToString());
ObscuredPrefs.SetBool("KeySave", true);
KeySave = true;
}
Хочу новый ключ, при новой игре, пусть то установка или переустановка. Так у меня при каждом запуске он новый. Можно правильный вариант?)))


Привет!
Проблема в том что вы пишете переменную KeySave уже используя новый ключ (CryptoKey меняете до SetBool("KeySave")).
А потом читаете его при запуске игры, но ключ у вас дефолтный, потому GetBool возвращает дефолтный false.

ObscuredPrefs.CryptoKey не хранится между сессиями, потому его нужно выставлять на кастомный при каждом запуске.

Правильный варинт был бы примерно таким:

key = ObscuredPrefs.GetString("NewKey");
if (string.IsNullOrEmpty(key))
{
Debug.Log("!");
ObscuredInt r = UnityEngine.Random.Range(int.MinValue, int.MaxValue);
string newKey = r.ToString();
ObscuredPrefs.SetString("NewKey", newKey);
ObscuredPrefs.CryptoKey = newKey;
}
else
{
ObscuredPrefs.CryptoKey = key;
}

В этом случае клю хранился бы прямо в префсах, но пошифрованный дефолтным ключём.
Если ключ хотите хранитьв не префсов - то можно и так, как вам удобнее. Главное его где-то хранить после генерации и потом подгружать и присваивать свойству ObscuredPrefs.CryptoKey.
Полезные плагины:
Maintainer | Anti-Cheat Toolkit | Advanced FPS Counter
Аватара пользователя
focus
UNITрон
 
Сообщения: 263
Зарегистрирован: 20 авг 2013, 22:59
Откуда: Russia, Saint-Petersburg
  • Сайт

Re: Anti-Cheat Toolkit [Asset Store]

Сообщение VitaMin00 13 апр 2016, 23:40

Спасибо большое за быстрый ответ)
VitaMin00
UNITрон
 
Сообщения: 187
Зарегистрирован: 12 мар 2012, 19:54

Пред.След.

Вернуться в Компоненты (Копилка)

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2