Разработка программы для подсчета хэш-суммы файла и текста с графическим интерфейсом
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
?ое вскрытие ден Боера и Босселаерса, использующее функцию сжатия, привело к обнаружению столкновений в MD5 Само по себе это вскрытие невозможно для вскрытия MD5 в практических приложениях, оно не влияет и на использование MD5 в алгоритмах шифрования, подобных Luby-Rackoff.
Успех этого вскрытия означает только, что одна из основных целей проектирования MD5- создать устойчивую к столкновениям функцию сжатия не была достигнута.
Хотя справедливо, что "кажется, что у функции сжатия есть слабое место, но это практически не влияет на безопасность хэш-функции "
Глава 2. Описание программы, реализующей алгоритм MD5 на Delphi
2.1 Анализ технического задания и постановка задачи проектирования
Согласно заданию необходимо разработать программу вычисляющую хэш-код сообщения. Для решения поставленной задачи был выбран язык программирования Delphi, так как он является языком высокого уровня и позволяет быстро и эффективно создавать приложения. Delphi - это продукт Borland International, высокопроизводительный инструмент визуального построения приложений включает в себя настоящий компилятор кода и предоставляет средства визуального программирования, несколько похожие на те, что можно обнаружить в Microsoft Visual Basic или в других инструментах визуального проектирования. В основе Delphi лежит язык Object Pascal, который является расширением объектно-ориентированного языка Pascal.
Преимущества Delphi по сравнению с аналогичными программными продуктами.
быстрота разработки приложения;
высокая производительность разработанного приложения;
низкие требования разработанного приложения к ресурсам компьютера;
наращиваемость за счет встраивания новых компонент и инструментов в среду Delphi;
возможность разработки новых компонент и инструментов собственными средствами Delphi (существующие компоненты и инструменты доступны в исходных кодах);
удачная проработка иерархии объектов.
Система программирования Delphi рассчитана на программирование различных приложений и предоставляет большое количество компонентов для этого.
Поскольку данная программа является приложением Windows, то для ее реализации будем использовать стандартный подход при написании программ под Windows с использованием графического интерфейса. Так отдельно создается форма с визуальными компонентами, для различных визуальных компонент сопоставляются процедуры - обработчики. Далее, как только происходит событие на каком-то из визуальных компонент (щелчок мыши, нажатие на кнопку или пункт меню), операционная система посылает приложению соответствующее сообщение, и запускается соответствующий обработчик именно для этого события. Тогда решение задачи можно разбить на 2 этапа:
.Разработка визуального интерфейса пользователя, на основе экранных форм среды Delphi и визуальных компонент.
.Разработка обработчиков событий от элементов экранных форм, разработка алгоритмов и программных кодов действий.
2.2 Разработка экранных форм программы
В Windows основной элемент пользовательского интерфейса - форма. В Delphi каждый проект имеет, по крайней мере, одно окно - главное окно приложения. Все окна в Delphi основаны на объекте TForm. Формы имеют свои свойства, события и методы, при помощи которых мы можем управлять видом и поведением формы. Форма, это обычный компонент Delphi, но в отличие от других, её нет на панели компонентов. В данном проекте используются 2 формы
- f_main (основная форма)
- f_info (форма О программе, содержит информацию о программе, версию продукта, ФИО разработчика)
Список и назначение основных компонентов, расположенных на главной форме f_main:
-Label. Этот компонент используется для отображения различных надписей на формах. Основное свойство для этого компонента -Caption. Именно оно и отвечает за надпись на компоненте.
-Edit. Представляет собой однострочное текстовое поле, служащее для ввода данных пользователем. Основным свойством компонента, передающим введённую информацию, является свойство Edit1.Text типа String. На главной форме программы расположено два таких компонента e_file (предназначен для ввода полного пути к файлу, для которого необходимо вычислить хэш) и e_text (необходим для ввода текста, для которого так же нужно вычислить хэш).
-RzToolbar. Это панель, которая управляет компоновкой инструментальных быстрых кнопок и других компонентов.