Как зашифровать файлы ресурсов?
Привет, у меня есть игра, созданная на Java и Slick2d, и у меня есть папка, содержащая все мои ресурсы (изображения, звуки и т. Д.), И мне было интересно, как их зашифровать, чтобы люди не могли их редактировать? Я попробовал MD5, но я не совсем уверен, как он работает, и я не беспокоюсь о том, что люди взломают код, потому что я вставил флягу в исполняемый файл. Также, если мне нужно знать, как расшифровать файлы, чтобы их можно было использовать в коде, объясните это тоже.
3 ответа
Нет способа защитить изображения / ресурсы, все, что вы можете сделать, это сделать их немного сложнее. Если вы доставляете ваши изображения / ресурсы клиенту, они всегда могут их расшифровать, ведь клиент должен отображать их в незашифрованном виде в определенный момент времени.
Кстати: MD5 - это хэш-алгоритм, который используется для проверки целостности данных.
MD5 - это хеш-функция, которая необратима, и два входа могут давать одинаковый выход.
Если содержимое файлов не является "секретным", вы можете использовать MD5 для проверки, это должно быть довольно просто.
- Создайте хеш-тэб (или просто таблицу) с хешами всех ресурсов, которые использует ваше приложение
- После запуска апплета создайте хеш для каждого из файлов и сравните его с вашей таблицей, если он не совпадает, кто-то изменил содержимое вашего jar-файла.
Я бы рекомендовал сохранить хеш-таблицу в коде, чтобы ее было сложнее изменить
Если вы используете свои ресурсы, вы должны расшифровать их, тогда клиент может использовать их, потому что они используются в игре.