Skip to content

makemebright/python_project_1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Аналогичное сообщение в Pull_1
В проекте реализован функционал для шифрования и дешифрования файлов на английском языке шифрами Цезаря, Вернама и Виженера, а также для взлома шифра Цезаря методом частотного анализа.
В проекте шифровальщик в файле make_parse лежит класс для ввода и вывода данных. В файле globals константные глобальные значения, в файле crypt основной функционал.
Crypt
file_check - проверяет корректность ввода input и output файлов.
key_check - проверяет корректность ввода файла-ключа для шифра Вернама
Остальные функции именованы в формате <название_шифра_encode/decodeназвание_шифра>.
caesar_encode/decode
Получает на вход файлы input и output (input - обязательно содержит в себе сообщение, output - обязательно пуст во избежание потери данных) и ключ - числовое значение.
vigenere_encode/decode
Аналогично input/output файлы и string ключ.
vernam_encode/decode
Аналогично input/output файлы и key_file - текстовый файл, содержащий в себе ключ. Длина сообщения в input и ключе должны совпадать, иначе исключение.
analyses
производит взлом сообщения, закодированного шифром Цезаря. Работает корректно при достаточно больших входных данных
Для шифрования/дешифрования небходимо в командной строке прописать сообщение:
python main.py <действие(encode/decode)> --cipher <название шифра(caesar/vigenere/vernam)> --key <ключ> --input-file <файл для чтения> --output-file <файл для записи>
либо если стоит задача взлома шифра Цезаря методами частотного анализа небходимо прописать команду: python main.py < analyse > --input-file <файл для чтения> --output-file <файл для записи>

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages