Создание автономной автоматизированной системы шифрования данных на съёмных носителях

Автор: Пользователь скрыл имя, 01 Декабря 2014 в 14:59, курсовая работа

Краткое описание

Целью курсовой работы является автоматизация процесса шифрования на базе современных информационных технологий.
Для достижения поставленной цели необходимо решить следующие задачи:
изучить современные системы шифрования;
выбрать и обосновать криптостойкий алгоритм, подходящий для
шифрования разнородных данных;

Файлы: 1 файл

Курсовая работа.doc

— 5.65 Мб (Скачать)

 

1.5 Алгоритмы шифрования

 

Алгоритмы шифрования с использованием ключей предполагают, что данные не сможет прочитать никто, кто не обладает ключом для их расшифровки. Они могут быть разделены на два класса, в зависимости от того, какая методология криптосистем напрямую поддерживается ими.

 

1.5.1 Симметричные алгоритмы

 

В симметричных криптосистемах для шифрования и расшифрования используется один и тот же ключ. Отсюда название — симметричные. Алгоритм и ключ выбирается заранее и известен обеим сторонам. Сохранение ключа в секретности является важной задачей для установления и поддержки защищенного канала связи. В связи с этим, возникает проблема начальной передачи ключа (синхронизации ключей). Кроме того существуют методы криптоатак, позволяющие так или иначе дешифровать информацию не имея ключа или же с помощью его перехвата на этапе согласования. В целом эти моменты являются проблемой криптостойкости конкретного алгоритма шифрования и являются аргументом при выборе конкретного алгоритма.

Симметричные, а конкретнее, алфавитные алгоритмы шифрования были одними из первых алгоритмов [4]. Позднее было изобретено асимметричное шифрование, в котором ключи у собеседников разные [5].

Схема реализации.

Задача. Есть два собеседника — А и Б, они хотят обмениваться конфиденциальной информацией.

  1. Генерация ключа.

Собеседник Б (или А) выбирает ключ шифрования d и алгоритм шифрования или расшифрования, затем посылает эту информацию собеседнику А (Б).

  1. Шифрование и передача сообщения.

Собеседник А шифрует информацию с использованием полученного ключа d и передает ему полученный шифротекст. То же самое делает собеседник Б, если хочет отправить собеседнику А сообщение.

  1. Расшифрование сообщения.

Собеседник Б (А), с помощью того же ключа d, расшифровывает шифротекст.

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

 

Рисунок 1.3 – Симметричное шифрование

 

 

 

1.5.2 Асимметричные алгоритмы

 

В системах с открытым ключом используются два ключа — открытый и закрытый, связанные определенным математическим образом друг с другом. Открытый ключ передаётся по открытому (то есть незащищённому, доступному для наблюдения) каналу и используется для шифрования сообщения и для проверки ЭЦП. Для расшифровки сообщения и для генерации ЭЦП используется секретный ключ [1].

Данная схема решает проблему симметричных схем, связанную с начальной передачей ключа другой стороне. Если в симметричных схемах злоумышленник перехватит ключ, то он сможет как «слушать», так и вносить правки в передаваемую информацию. В асимметричных системах другой стороне передается открытый ключ, который позволяет шифровать, но не расшифровывать информацию. Таким образом решается проблема симметричных систем, связанная с синхронизацией ключей [5].

Первыми исследователями, которые изобрели и раскрыли понятие шифрования с открытым кодом, были Уитфилд Диффи и Мартин Хеллман из Стэнфордского университета, и Ральф Меркле из Калифорнийского университета в Беркли. В 1976 году их работа «Новые направления в современной криптографии» открыла новую область в криптографии, теперь известную как криптография с открытым ключом.

Схема реализации

Задача. Есть два собеседника — А и Б. Собеседник А хочет передавать собеседнику Б конфиденциальную информацию.

  1. Генерация ключевой пары.

Собеседник Б выбирает алгоритм шифрования или расшифрования  и пару открытый, закрытый ключи  и посылает открытый ключ собеседнику А по открытому каналу.

  1. Шифрование и передача сообщения.

Собеседник А шифрует информацию с использованием открытого ключа собеседника Б и передает ему полученный шифротекст.

  1. Расшифрование сообщения.

Собеседник Б, с помощью закрытого ключа, расшифровывает шифротекст.

Если необходимо наладить канал связи в обе стороны, то первые две операции необходимо проделать на обеих сторонах, таким образом, каждый будет знать свои закрытый, открытый ключи и открытый ключ собеседника. Закрытый ключ каждой стороны не передается по незащищенному каналу, тем самым оставаясь в секретности.

Рисунок 1.4 – Ассиметричное шифрование

 

1.6 Сравнение cимметричных и аcимметричных алгоритмов шифрования

 

В асимметричных системах необходимо применять длинные ключи (512 битов и больше). Длинный ключ резко увеличивает время шифрования. Кроме того, генерация ключей весьма длительна. Зато распределять ключи можно по незащищенным каналам.

В симметричных алгоритмах используют более короткие ключи, т. е. шифрование происходит быстрее. Но в таких системах сложно распределение ключей.

Поэтому при проектировании защищенной системы часто применяют и cимметричные, и аcимметричные алгоритмы. Так как система с открытыми ключами позволяет распределять ключи и в симметричных системах, можно объединить в системе передачи защищенной информации асимметричный и симметричный алгоритмы шифрования. С помощью первого рассылать ключи, вторым же - собственно шифровать передаваемую информацию [6, c. 53].

Обмен информацией можно осуществлять следующим образом:

  1. получатель вычисляет открытый и секретный ключи, секретный

ключ хранит в тайне, открытый же делает доступным;

  1. отправитель, используя открытый ключ получателя,

зашифровывает сеансовый ключ, который пересылается получателю по незащищенному каналу;

  1. получатель получает сеансовый ключ и расшифровывает его,

используя свой секретный ключ;

  1. отправитель зашифровывает сообщение сеансовым ключом и

пересылает получателю;

  1. получатель получает сообщение и расшифровывает его.

 

1.7 Электронные подписи

 

Электронная подпись (ЭП) — реквизит электронного документа, полученный в результате криптографического преобразования информации с использованием закрытого ключа подписи и позволяющий установить отсутствие искажения информации в электронном документе с момента формирования подписи и проверить принадлежность подписи владельцу сертификата ключа подписи.

Электронная подпись предназначена для идентификации лица, подписавшего электронный документ, и является полноценной заменой (аналогом) собственноручной подписи в случаях, предусмотренных законом [7].

Существует несколько схем построения цифровой подписи:

  1. на основе алгоритмов симметричного шифрования. Данная схема

предусматривает наличие в системе третьего лица — арбитра, пользующегося доверием обеих сторон. Авторизацией документа является сам факт зашифрования его секретным ключом и передача его арбитру [8].

  1. На основе алгоритмов асимметричного шифрования. На данный

момент такие схемы ЭП наиболее распространены и находят широкое применение.

Симметричные схемы имеют следующие преимущества:

  1. стойкость симметричных схем ЭП вытекает из стойкости

используемых блочных шифров, надежность которых также хорошо изучена;

  1. если стойкость шифра окажется недостаточной, его легко можно

будет заменить на более стойкий с минимальными изменениями в реализации.

Однако у симметричных ЭП есть и ряд недостатков:

  1. нужно подписывать отдельно каждый бит передаваемой

информации, что приводит к значительному увеличению подписи. Подпись может превосходить сообщение по размеру на два порядка;

  1. сгенерированные для подписи ключи могут быть использованы

только один раз, так как после подписывания раскрывается половина секретного ключа.

Асимметричные схемы ЭП относятся к криптосистемам с открытым ключом. В отличие от асимметричных алгоритмов шифрования, в которых шифрование производится с помощью открытого ключа, а расшифровка — с помощью закрытого, в схемах цифровой подписи подписание производится с применением закрытого ключа, а проверка подписи — с применением открытого.

1.8 Стойкость шифра

 

Способность шифра противостоять всевозможным атакам на него называют стойкостью шифра. Под атакой на шифр понимают попытку вскрытия этого шифра. Понятие стойкости шифра является центральным для криптографии. Хотя качественно понять его довольно легко, но получение строгих доказуемых оценок стойкости для каждого конкретного шифра - проблема нерешенная. Это объясняется тем, что до сих пор нет необходимых для решения такой проблемы математических результатов. Поэтому стойкость конкретного шифра оценивается только путем всевозможных попыток его вскрытия и зависит от квалификации криптоаналитиков, атакующих шифр. Такую процедуру иногда называют проверкой стойкости. Важным подготовительным этапом для проверки стойкости шифра является продумывание различных предполагаемых возможностей, с помощью которых противник может атаковать шифр. Появление таких возможностей у противника обычно не зависит от криптографии, это является некоторой внешней подсказкой и существенно влияет на стойкость шифра. Поэтому оценки стойкости шифра всегда содержат те предположения о целях и возможностях противника, в условиях которых эти оценки получены. Прежде всего, как это уже отмечалось выше, обычно считается, что противник знает сам шифр и имеет возможности для его предварительного изучения. Противник также знает некоторые характеристики открытых текстов, например, общую тематику сообщений, их стиль, некоторые стандарты, форматы и т.д.

Из более специфических приведем еще три примера возможностей противника:

  1. противник может перехватывать все шифрованные

сообщения, но не имеет соответствующих им открытых текстов;

  1. противник может перехватывать все шифрованный

сообщения и добывать соответствующие им открытые тексты;

  1. противник имеет доступ к шифру (но не к ключам!) и поэтому

может зашифровывать и дешифровывать любую информацию.

При анализе передаваемых сообщений криптоустойчивость шифра оценивается из возможности получения дополнительной информации об исходном сообщении из перехваченного. Возможность получения этой информации является крайне важной характеристикой шифра, ведь эта информация, в конечном итоге, может позволить злоумышленнику дешифровать сообщение. В соответствии с этим шифры делятся на абсолютно стойкие и достаточно стойкие [9, с. 45-48]

Абсолютно стойкие системы.

Доказательство существования абсолютно стойких алгоритмов шифрования было выполнено Клодом Шенноном и опубликовано в работе «Теория связи в секретных системах» [10].

Злоумышленник не сможет извлечь никакой полезной информации об открытом тексте из перехваченного шифротекста. Шифр, обладающий таким свойством, называется абсолютно стойким [11]. Стойкость этих систем не зависит от того, какими вычислительными возможностями обладает криптоаналитик. Практическое применение систем, удовлетворяющих требованиям абсолютной стойкости, ограничено соображениями стоимости и удобства пользования.

 Достаточно стойкие системы.

В связи сложностью применения абсолютно стойких систем повсеместно более распространенными являются так называемые достаточно стойкие системы. Эти системы не обеспечивают равенство энтропий и, как следствие, вместе с зашифрованным сообщением передают некоторую информацию об открытом тексте. Практическая стойкость таких систем основана на их вычислительной сложности и оценивается исключительно на определенный момент времени с двух позиций:

  1. вычислительная сложность полного перебора для данной

системы

  1. известные на данный момент слабости (уязвимости) системы и их

влияние на вычислительную сложность [11].

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ГЛАВА 2. РАЗРАБОТКА СОБСТВЕННОЙ ПРОГРАММЫ ШИФРОВАНИЯ НА DELPHI7

 

 

 

    1.  Программы шифрования данных

 

Существует множество программ шифрования файлов и все они могут отличаться алгоритмами шифрования, принципами хранения информации и ценой. Есть как платные, так и бесплатные программы для шифрования данных, однако бесплатные практически ничем не уступаю платным вариантам (разве что в удобстве использования). Большинство инструментов для шифрования файлов создают отдельные защищенные виртуальные диски - так называемые, хранилища данных.

Информация о работе Создание автономной автоматизированной системы шифрования данных на съёмных носителях