Теоретическая часть криптографической защиты файлов. 1 Задачи криптографии



бет14/22
Дата13.09.2022
өлшемі24,25 Mb.
#38984
түріКнига
1   ...   10   11   12   13   14   15   16   17   ...   22






3. Програмная реализация криптографической защиты файлов


В данной главе описаны модули, реализующие алгоритмы CRC64, RC6, IDEA, а так же другие вспомогательные модули и структуры данных.



.1 Выбор обоснования языка программирования




Для реализации поставленных задач, был выбран язык программирования Object Pascal и среда разработки Borland Delphi 7.
Object Pascal - язык программирования применяемый для разработки приложений под ОС Windows любой сложности. Язык заслужил большое уважение и популярность среди разработчиков самых разных программных продуктов. Являясь одним из самых популярных языков программирования, Object Pascal широко используется для разработки программного обеспечения. На языке Object Pascal написаны такие известные программы, как: Total Commander, Light Alloy, The KMPlayer, AIMP, QIP, R&Q, The Bat!, ALZip, PowerArchiver, PeaZip, Dev-C++, Skype (графический интерфейс). Область применения языка широка и включает в себя написание как прикладных программ и драйверов устройств, так и развлекательных приложений (например, видеоигр). Написанные программы быстры и легки.
Процесс написания программ, благодаря особенностям языка, не занимает много времени. Написанные программы имеют прозрачную структуру, а исходные коды легко читабельны.



.2 Организация данных




Если аутентификация пользователем успешно пройдена, производится загрузка ключей шифрования пользователя.
После чего программа ожидает команды пользователя - шифрование/расшифрование файлов/контейнеров.

3.3 Основные структуры данных




В программе применяются структуры данных.
Данная структура описывает файл \ qwallke.qwkey.
Поля структуры:_key = record_RC: Array [1..8] of cardinal; //256bit ключ шифрования RC6_IDEA: Array [1..4] of cardinal;//128bit ключ шифрования IDEA_CONST: Array [1..4] of cardinal;//128bit вектор инициализации
CRC64_2: int64; //64bit конт сумма открытых полей выше_counter: cardinal; //32bit счетчик - меняется каждый сеанс работы с ключом
data_key: cardinal;//32bit дата создания ключа ДДММГГ_hash: string[128]; //512bit: string[60];: string[30];_1: int64;//64 end;


Достарыңызбен бөлісу:
1   ...   10   11   12   13   14   15   16   17   ...   22




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет