Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Индивидуальная практическая работа по «Теории информации»

Автор:   •  Декабрь 6, 2020  •  Практическая работа  •  4,316 Слов (18 Страниц)  •  496 Просмотры

Страница 1 из 18

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ

Кафедра программного обеспечения информационных технологий

Факультет ЗВиДО

Специальность ПОИТ

Индивидуальная практическая работа №1

по дисциплине «Теория информации»

Вариант № 5

Выполнил студент: Хватынец А.В.  

группа 791051

Зачетная книжка № 6910024

Минск 2020

Задание

Омофонный шифратор, использующий в качестве омофонов трехзначные целые числа и англоязычные исходные тексты. Текст читать из файла. Программа должна шифровать только символы заданного алфавита, игнорируя все другие символы. Результат работы программы – зашифрованный/расшифрованный файл. Дополнительно вывести на экран сопоставление целых трехзначных чисел омофонов выбранным буквам английского языка. Программа не должна быть реализована в консольном режиме.

Введение

Система омофонов. В 1401 г. Симеоне де Крема стал использовать таблицы омофонов для сокрытия частоты появления гласных букв в тексте при помощи более чем одной шифрозамены. Такие шифры позже стали называться шифрами многозначной замены или омофонами2. Они получили развитие в XV веке. В книге «Трактат о шифрах» Леона Баттисты Альберти (итальянский ученый, архитектор, теоретик искусства, секретарь папы Климентия XII), опубликованной в 1466 г., приводится описание шифра замены, в котором каждой букве ставится в соответствие несколько эквивалентов, число которых пропорционально частоте встречаемости буквы в открытом тексте. Так, если ориентироваться на данную таблицу

[pic 1],

 то число шифрозамен для буквы О должно составлять 110, для буквы Е – 85 и т.д. При этом каждая шифрозамена должна состоять из 3 цифр и их общее количество равно 1000.

На рис.2 представлен фрагмент таблицы шифрозамен.

[pic 2]

Решение

Разработка программного обеспечения производилась Visual Studio 2019. Программа реализована на C#.

Листинг программы

using System;

using System.Collections.Generic;

using System.IO;

using System.Linq;

using System.Text;

using System.Text.RegularExpressions;

using System.Threading.Tasks;

namespace Generator

{

    public class Controller

    {

        public string GetBaseText { private set; get; }

        public string GetOrigText { private set; get; }

        public string GetCipherText { private set; get; }

        private string PathOrig;

//выбор файла с текстом ,который требуется зашифровать

        public bool SelectOrigFile(string source)

        {

            var text = System.IO.File.ReadAllText(source);

            PathOrig = source;

            var result = ValidateBaseText(text);

            GetOrigText = text;

            return result;

        }

//выбор зашифрованного файла

        public bool SelectCipherFile(string source)

        {

            var text = System.IO.File.ReadAllText(source);

            GetCipherText = text;

            var result = ValidateCipherText(text);

            return true;

        }

//выбор базового текста для создания таблицы омофонов

        public bool SelectBaseFile(string source)

        {

            var text = System.IO.File.ReadAllText(source);

            var result = ValidateBaseText(text);

...

Скачать:   txt (16.5 Kb)   pdf (1.7 Mb)   docx (1.5 Mb)  
Продолжить читать еще 17 страниц(ы) »
Доступно только на Essays.club