Шифрование/ Дешифрование Файлов

Шифрование/ Дешифрование Файлов 1.1

Нет прав для скачивания
459
13
35
Clayness23 добавил(а) новый ресурс:

Шифрование/ Дешифрование PNG - Простое шифрование текстур

Простое шифрование и последующее дешифрование текстур для Вашего проекта.

Недавно столкнулся с такой проблемой, что потребовалось закриптовать некоторые изображения для другого проекта вне майнкрафта и в открытом доступе нашёл исходный код того, что мне нужно.

Решил немного переделать под себя, чтобы было удобней пользоваться и создал небольшую программу с GUI, используя библиотеку...

Узнать больше об этом ресурсе...
 
1,074
72
372
Отличная вещь. От большинства игроков, орудующих архиваторами пойдёт.
К реализации у меня есть масса претензий:
  1. Использование JavaFX в проекте избыточно и не нужно вообще. Запуска из консоли будет достаточно. Это будет удобно, в том числе для автоматизации процесса шифрования, прикрутив утилиту к системе сборки проекта.
  2. PNG в заголовке излишен. Я не увидел в коде никакой привязки к конкретному формату файла. Шифровать можно всё что угодно.
  3. Видятся слабые познания в Java. Код бездумно скопирован (n)
    1. В одном методе используется старый File и новый Path API. Может что-то одно оставить?
    2. Ненужные вызовы close() у потоковых дескрипторов. С Java 7 доступен замечательный try with resources (AutoCloseable). Это больше пожелание, чем претензия.
    3. Код обхода содержимого папки не поддерживает рекурсию, необходимую для обхода вложенных папок. Наличие вложенных папок на пути элементарно сломает этот код, проверок на тип файла нет. Используйте Files.walkFileTree()
    4. Очень плохо как для защиты, так для производительности. Зачем читать, записывать ресурс во временную папку, чтобы потом ещё раз его прочитать?
      Можно все операции проводить внутри памяти приложения: читаем ресурс, дешифруем, создаём BufferedImage из полученного массива байт, регистрируем текстуру. И не нужна никакая временная папка! В реализации помогут классы ByteArrayInputStream/ByteArrayOutputStream
 
Последнее редактирование:
7,099
324
1,510
Так во время игры расшифрованные файлы хранятся в папке с игрой. Это ведь не защитит от школо-хацкеров
 
459
13
35
Учту для будущего обновления.
Отличная вещь. От большинства игроков, орудующих архиваторами пойдёт.
К реализации у меня есть масса претензий:
  1. Использование JavaFX в проекте избыточно и не нужно вообще. Запуска из консоли будет достаточно. Это будет удобно, в том числе для автоматизации процесса шифрования, прикрутив утилиту к системе сборки проекта.
  2. PNG в заголовке излишен. Я не увидел в коде никакой привязки к конкретному формату файла. Шифровать можно всё что угодно.
  3. Видятся слабые познания в Java. Код бездумно скопирован (n)
    1. В одном методе используется старый File и новый Path API. Может что-то одно оставить?
    2. Ненужные вызовы close() у потоковых дескрипторов. С Java 7 доступен замечательный try with resources (AutoCloseable). Это больше пожелание, чем претензия.
    3. Код обхода содержимого папки не поддерживает рекурсию, необходимую для обхода вложенных папок. Наличие вложенных папок на пути элементарно сломает этот код, проверок на тип файла нет. Используйте Files.walkFileTree()
    4. Очень плохо как для защиты, так для производительности. Зачем читать, записывать ресурс во временную папку, чтобы потом ещё раз его прочитать?
      Можно все операции проводить внутри памяти приложения: читаем ресурс, дешифруем, создаём BufferedImage из полученного массива байт, регистрируем текстуру. И не нужна никакая временная папка! В реализации помогут классы ByteArrayInputStream/ByteArrayOutputStrea
 
Сверху