Стандарт шифрования данных DES для защиты от несанкционированного доступа к информации в государственных и коммерческих организациях США. Особенности реализации алгоритма шифрования DES на языке Delphi. Разработка интерфейса программы и алгоритма работы.
Аннотация к работе
Учреждение образования «Белорусский Государственный университет информатики и радиоэлектроники»Стандарт DES предназначен для защиты от несанкционированного доступа к важной, но несекретной информации в государственных и коммерческих организациях США. Появляются программное обеспечение и специализированные микро ЭВМ, предназначенные для шифрования и расшифрования информации в сетях передачи данных. Симметричные криптосистемы (также симметричное шифрование, симметричные шифры) - способ шифрования, в котором для (за)шифрования и расшифровывания применяется один и тот же криптографический ключ. Главным принципом в них является условие, что передатчик и приемник заранее знают алгоритм шифрования, а также ключ к сообщению, без которых информация представляет собой всего лишь набор символов, не имеющих смысла. Для этого шифр должен иметь «эффект лавины» - должно происходить сильное изменение шифроблока при 1битном изменении входных данных (в идеале должны меняться значения 1/2 бит шифроблока).В связи с явной сетевой направленностью языка Java потребовалось уделить должное внимание средствам защиты. В первую очередь это касается пересылки важных данных между, например, клиентом и сервером, а также запуска программ или апплетов. Примером необходимости защиты может служить желание пользователя-получателя иметь возможность верификации, что дает определенные гарантии подлинности документа или кода.Существует только одно решение данной задачи с помощью сетей Фейстеля. Раундовая функция берет одну половину (на рис. правую), преобразует ее с использованием ключа Ki и объединяет результат с второй половиной посредством операции исключающее ИЛИ (XOR).При запуске программы пользователь имеет возможность ввести свой текс, который ему нужно зашифровать, а также пароль, чтобы другой человек с помощью шифровки и пароля смог узнать, что было зашифровано.Диаграмма вариантов использования - это диаграмма, на которой изображаются отношения между актерами и вариантами использования. Создание диаграммы вариантов использования имеет следующие цели: - Определить общие границы и контекст моделируемой предметной области на начальных этапах проектирования системы;Для реализации рекурсивного алгоритма «Шифр DES» необходимо решить следующие задачи: - разработать рациональный алгоритм для эффективной работы программы;DES осуществляет шифрование 64-битовых блоков данных с помощью 56-битового ключа. Расшифрование в DES является операцией обратной шифрованию и выполняется путем повторения операций шифрования в обратной последовательности (несмотря на кажущуюся очевидность, так делается далеко не всегда. Позже мы рассмотрим шифры, в которых шифрование и расшифрование осуществляются по разным алгоритмам). На следующем (основном) этапе блок делится на две части (ветви) по 32 бита каждая.Для того, чтобы начать работу, необходимо выбрать для этого подходящую среду, ведь от нее тоже будет зависеть качество продукта, в данном случае - курсового проекта. Среда в компьютере - программные средства, которые представляют собой совокупность программ, которые имеют определенное назначение и предназначены для работы на персональном компьютере. Программным средством для разработки любой программы является операционная система, среда разработки программы, язык программирования, предназначенный для данной среды разработки программы. При выполнении данного проекта были использованы следующие программные средства: операционная система Windows 10; Для написания данной программы выбрана среда разработки Borland Delphi 7 Lite Edition под операционную систему Microsoft Windows-среды.Button используется для реализации в программе команд с помощью обработчика события ONCLICK этого компонента. Для определения того, событие какого именно компонента нужно обрабатывать, используется встроенная переменная Sender типа TOBJECT, обозначающая объект, вызвавший данное событие. Delphi компонент Label предназначен для отображения статического текста, то есть надписей и меток на форме, которые не меняются в течение всего времени работы программы.Рассмотрим раздел «Оптимальное решение», который включает в себя следующие процедуры: Function CONTOBIN выполняет преобразование в бинарный вид. Function MAKEPEREST1, Function MAKEPEREST2 выполняют начальную и конечную перестановку соответственно. Function GETHIGHPART, Function GETLOWPART выполняют получение первых и последних 32 бит соответственно.Данная программа представляет собой реализацию алгоритма «Шифр DES».При запуске программы пользователь может ознакомиться с понятием по данному шифру, выбрав в меню раздел «DES-это ». Чтобы вернуться в главное меню необходимо воспользоваться кнопкой «ОК». Чтобы зашифровать текст для начала нужно ввести пароль в специальную форму, а также и текст, далее нажать кнопку «Шифровать». Если пароль совпадать не будет, расшифровать текст не получится. На рисунке 4.2.1 представлена форма программы с помощью которой реализуется шифр.