Skip to content

Тестовое задание по перебору паролей для расшифровки текста

Notifications You must be signed in to change notification settings

romanmusii/brute_force_decryptor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Описание

В рамках тестового задания нужно написать программу на C++, которая найдет пароль и расшифрует приложенный файл. Искать пароль следует методом перебора. Известно, что пароль состоит из трех (3) латинских букв и цифр (т.е. [0-9A-Za-z]). Аргументами программы должны быть Имя входного файла Например program.exe target.bin Программа должна использовать все доступные вычислительные ресурсы компьютера.

Формат файла

Атакуемый файл имеет следующий формат:

  1. 8 байт initial value для Triple DES
  2. Зашифрованный блок
  3. 32 байта SHA256 от оригинального текста

Схема шифрования

Данные зашифрованы при помощи Triple DES (EDE/DED) с начальным значением из пункта 1, режим CBC. Оригинальный текст читается блоками по 16 байт, шифруется и записывается в выходной файл. Если размер входного блока меньше 16, то его размер выравнивается до кратности 16 пробелами. Ключ шифрования TripleDES - это MD5 digest от пароля.

Тестовый пример

Для проверки алгоритма можно использовать приложенный файл test.bin для которого должен подходить пароль abc.

Методика оценки

Мы ожидаем найденный пароль и обращаем внимание на код.

Компиляция

Для компилирования решения была использована библиотека Crypto++® Library 5.6.5. (https://www.cryptopp.com/cryptopp565.zip)

About

Тестовое задание по перебору паролей для расшифровки текста

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published