Криптоанализатор: Шифрование и взлом с использованием JavaFX. Финальный проект к модулю 1 курса JavaRush https://javarush.com/quests/lectures/jru.module1.lecture51
Криптоанализатор — это приложение с графическим интерфейсом, разработанное на JavaFX. Оно предоставляет инструменты для работы с шифром Цезаря, включая шифрование, расшифровку, brute force и взлом с использованием статистического анализа текста.
- Шифрование текста: реализация шифра Цезаря для преобразования исходного текста.
- Расшифровка текста: расшифровка зашифрованного текста при известном ключе.
- Brute Force: автоматический подбор ключа для расшифровки текста.
- Статистический анализ: взлом шифра Цезаря на основе частотного анализа символов.
- JavaFX: для создания графического интерфейса пользователя.
- Core Java: реализация шифрования, алгоритмов brute force и статистического анализа.
- FXML: для описания структуры интерфейса.
- Описание: Позволяет зашифровать текст с использованием шифра Цезаря.
- Инструкции:
- Выберите текстовый файл или введите текст вручную в соответствующее поле.
- Укажите числовой ключ шифрования (сдвиг символов).
- Нажмите кнопку "Зашифровать".
- Сохраните результат в файл или скопируйте его в буфер обмена.
- Описание: Позволяет расшифровать текст, если известен ключ.
- Инструкции:
- Загрузите зашифрованный текст из файла или вставьте его в текстовое поле.
- Введите известный ключ расшифровки.
- Нажмите кнопку "Расшифровать".
- Получите исходный текст для дальнейшего использования.
- Описание: Автоматически подбирает ключ для расшифровки текста методом перебора всех возможных значений.
- Инструкции:
- Загрузите зашифрованный текст из файла.
- Нажмите кнопку "Brute Force".
- Приложение переберёт все ключи и покажет наиболее вероятный расшифрованный текст.
- Проверьте результат вручную и сохраните его при необходимости.
- Описание: Использует частотный анализ символов для взлома зашифрованного текста.
- Инструкции:
- Загрузите зашифрованный текст из файла.
- Нажмите кнопку "Взлом через анализ".
- Приложение выполнит анализ, сравнив частотное распределение символов с эталонным (например, для русского или английского алфавита).
- Получите расшифрованный текст с максимальной вероятностью точности.