В Статье Википедии о Режимах Блочного шифра у них есть аккуратная небольшая схема незашифрованного изображения, того же изображения, зашифрованного с помощью режима ЕЦБ и другой версии того же изображения, зашифрованного с помощью другого метода.
В университете я разработал свою собственную реализацию DES (можно найти его здесь), и мы должны продемонстрировать нашу реализацию в презентации.
Я хотел бы отобразить подобный пример как показано выше использования нашей реализации. Однако большинству файлов изображений связали блоки заголовка с ними, которые при шифровании файла с нашей реализацией, также будьте зашифрованы. Таким образом, когда Вы идете для открытия их в программе просмотра изображений, они, как предполагается, повреждаются и не могут быть просмотрены.
Я задавался вопросом, если кто-либо новый из простого формата изображения заголовка меньше, который мы могли использовать для отображения их? Или если у кого-либо была какая-либо идея относительно того, как исходный создатель изображений выше достиг вышеупомянутого результата?
Любая справка ценилась бы,
Спасибо
Примечание: Я понимаю, что прокрутка Вашей собственной библиотеки криптографии глупа, и DES считают поврежденным, и режим ЕЦБ является очень дефектным для любой полезной криптографии, это было просто академическим осуществлением для школы. Таким образом, никакие лекции, я знаю развертку.
Если вы используете язык высокого уровня, такой как Java, python и т. Д., Вы можете загрузить изображение и прочитать данные пикселей в массив в памяти. Затем выполните шифрование этих необработанных байтов, а затем сохраните изображение, когда закончите. Пусть все данные заголовка обрабатываются библиотеками того языка, который вы используете. Другими словами, не обрабатывайте файл как необработанную последовательность байтов. Надеюсь, это поможет.
Просто обрежьте заголовки перед шифрованием (сохраните их где-нибудь). Затем зашифруйте только остальное. Затем добавьте заголовки перед результатом.
Это особенно просто с форматом Netpbm , потому что вам нужно только знать, сколько строк нужно обрезать. Данные хранятся в виде десятичных чисел, поэтому вам, вероятно, следует учитывать это при шифровании (сначала преобразовать их в двоичную форму).