#image #file-format #data-protection
#изображение #формат файла #защита данных
Вопрос:
Когда я устанавливаю игры на свой компьютер, профессиональный и любительский, я обнаруживаю, что такие ресурсы, как картинки, имеют странные расширения, поэтому я не могу их открыть.
Поскольку я не могу найти эти расширения в Google, я решил, что это способ защитить ваши иллюстрации, чтобы их не было так легко украсть.
У меня есть куча файлов JPEG, PNG и bitmap, с которыми я хотел бы сделать это, чтобы люди не могли так легко копировать их, когда я распространяю свою игру.
Я использую C и DirectX, если это имеет какое-либо значение.
Кто-нибудь знает, как это делается? Я знаю, что могу изменить расширение .txt на любое, и моя программа будет читать его точно так же, но будет ли это работать с изображениями?
Ответ №1:
Поскольку я не могу найти эти расширения в Google, я решил, что это способ защитить ваши иллюстрации, чтобы их не было так легко украсть.
Создать собственное расширение несложно, просто решите, как вы хотите интерпретировать свое изображение, и создайте конвертер для создания их из существующих изображений…
… Но … форматы выбираются ради программиста и художественных инструментов, а не для защиты. Вы никогда не сможете по-настоящему защитить свои рисунки от кражи, поскольку в какой-то момент вашему коду придется преобразовать графику в raw DDB (растровое изображение, зависящее от устройства) или DIB (независимое от устройства растровое изображение), прежде чем выводить их на экран или отправлять в DX / OpenGL. Честно говоря, коммерческие игры на картриджах, которые не соответствуют стандартным форматам, легко перезаписываются. Хакеры даже создают редакторы уровней для проприетарных игровых движков, которые не известны широкой публике.
Я не использую png и jpg в своем игровом коде по той простой причине, что я не смог использовать libpng в своем коде, ни декодер jpeg, и мне нужно было, чтобы моя графика была представлена в виде плиток 8×8 с 4/8-битной палитрой with (цвет 0 прозрачный) или 16-битной RGBA_555_1, чего нельзя достичь с помощью png и jpeg.
В лучшем случае вы можете скрыть свою графику, сохранив ее в вашем собственном формате, зашифровав или даже сжав, вот и все. Но будьте осторожны, ваш код должен будет расшифровать его, и изображение в какой-то момент окажется в памяти вора.
Итак, да, вы можете легко изменить тип файла, но это не помешает любому пользователю (а) изменить имя файла или (б) определить тип файла, поместив его в программу, которая может легко распознать тип файла. И как человек, который также занимался видеомонтажом, я могу сказать вам, что многие программы с радостью интерпретируют любой файл и определяют реальный формат. И это не остановит (c), добросовестного хакера от копирования ваших работ. На самом деле, просто взгляните на то, что хакеры сделали с форматом пополнения Propellerhead, поскольку они не могли понять, как его прочитать, они создали программу, которая использовала программу Propellerhead для его чтения — подумайте об этом. На самом деле не нужно много использовать отладчик Vanjar Fukar, чтобы отслеживать ваш код при загрузке изображений, идентифицировать ваш код при загрузке изображения и либо скопировать его, либо вызвать самостоятельно (среди сотни других тактик взлома).
Комментарии:
1. Этот ответ требует большего… Голосую за! 1 за очень хороший ответ, с пунктами, которые я никогда не рассматривал.
Ответ №2:
Обычно программы не заботятся о расширениях при чтении файлов, поэтому изменение расширения на неизвестное не должно вызвать у вас проблем.