Исследование классических методов алгоритмов шифрования

Развитие криптографии, требования к криптографическим системам. Симметричные алгоритмы шифрования: потоковые, блочные шифры. Алгоритм шифрования DES и AES. Неправильная реализация криптоалгоритмов. Преимущества и недостатки алгоритма шифрования RSA.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 03.07.2015
Размер файла 405,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Содержание

  • Введение
  • 1. Обзор классических методов шифрования
    • 1.1 Развитие криптографии
    • 1.2 Криптографические системы
    • 1.3 Требования к криптографическим системам
    • 1.4 Симметричные алгоритмы шифрования
      • 1.4.1 Потоковые шифры
      • 1.4.2 Блочные шифры
      • 1.4.3 Алгоритм шифрования ГОСТ 28.147-89
      • 1.4.4 Алгоритм шифрования DES
      • 1.4.5 Алгоритм блочного шифрования AES
    • 1.5 Асимметричные алгоритмы шифрования
      • 1.5.1 Алгоритм шифрования RSA
    • 1.6 Сравнение cимметричных и аcимметричных алгоритмов шифрования
    • 1.7 Электронная цифровая подпись
      • 1.7.1 Закон Республики Казахстан «О электронном документе и электронной цифровой подписи»
  • 2. Анализ надежности криптосистем
    • 2.1 Невозможность применения стойких криптоалгоритмов
    • 2.2 Неправильная реализация криптоалгоритмов
    • 2.3 Неправильное применение криптоалгоритмов
    • 2.4 Хранение ключа вместе с данными
    • 2.5 Человеческий фактор
  • 3. Реализация ассиметричного алгоритма шифрования RSA
    • 3.1 Преимущества и недостатки алгоритма шифрования RSA
  • 4. Охрана труда на рабочем месте программиста и оператора
    • 4.1 Описание рабочего места программиста, оператора
    • 4.2 Освещенность рабочего места
    • 4.3 Параметры микроклимата на рабочем месте
    • 4.4 Нормирование шума
    • 4.5 Методы защиты от шума
    • 4.6 Вентиляция
    • 4.7 Расчет информационной нагрузки программиста
  • Заключение
  • Список литературы

Введение

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

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

С широким распространением письменности криптография стала формироваться как самостоятельная наука. Первые криптосистемы встречаются уже в начале нашей эры. Так, Цезарь в своей переписке уже использовал систематический шифр, получивший его имя.

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

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

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

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

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

Современная криптография включает в себя четыре крупных раздела:

1. Симметричные криптосистемы.

2. Криптосистемы с открытым ключом.

3. Системы электронной подписи.

4. Управление ключами.

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

Дипломная работа состоит из четырех разделов:

1. Обзор классических методов шифрования. В разделе сделан обзор существующих методов шифрования, рассмотрены требования предъявляемые к криптоалгоритмам.

2. Анализ надежности криптосистем. В данном разделе рассмотрены причины нестойкости криптоалгоритмов.

3. Реализация алгоритма ассиметричного шифрования RSA. В разделе рассмотрена реализация алгоритма ассиметричного шифрования RSA с помощью интегрированного пакета фирмы Borland Delphi 6.0.

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

1. Обзор классических методов шифрования

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

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

Глобальное использование информационных ресурсов и включение персональных компьютеров и автоматизированных рабочих мест в локальные, корпоративные, региональные и глобальные информационно - вычислительные сети и среды резко обострили проблему информационной безопасности, некоторые аспекты которой состоят в следующем:

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

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

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

4. Разработка новых механизмов защиты информации в вычислительных сетях требует специальных оценок и инструментальных средств исследования и определения степени защищенности этих механизмов на основе проведения верификационных и сертификационных исследований. [1]

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

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

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

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

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

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

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

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

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

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

Криптографические методы могут помочь обеспечить безопасность, но только на эти методы надеяться не следует. Криптографические методы могут применяться для решений следующих проблем безопасности:

1) конфиденциальности передаваемых/хранимых данных;

2) аутентификации;

3) целостности хранимых и передаваемых данных;

4) обеспечения подлинности документов. [3]

1.1 Развитие криптографии

История человеческой цивилизации стала также историей создания систем безопасной передачи информации. Искусство шифрования и тайной передачи информации было присуще практически всем государствам.

Примерно в 1900 году до н. э. древние египтяне начали видоизменять и искажать иероглифы, чтобы закодировать определенные сообщения.

В 600 - 500 годы до н. э. древние евреи создали упорядоченную систему криптографии «Атбаш» - в России известна под названием «тарабарская грамота». Суть метода проста: при письме одна буква алфавита заменяется другой, например, вместо буквы «а» всегда пишется буква «я».

Основные принципы разведки и контрразведки, включая и методы обработки информации, впервые сформулировал китайский ученый Сун Цзы в своей книге «Искусство войны» примерно в 500 году до н. э.

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

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

В XVII столетии криптографией увлекся Томас Джефферсон, один из отцов-основателей США, третий по счету президент страны и ученый. Он создал шифровальную машину цилиндрической формы, позволявшую использовать десятки вариантов кодирования. Подобные устройства использовались во всем мире вплоть до конца Второй мировой войны.

В 1930-е годы германские ученые создали шифровальную машину Enigma - фактически первый специализированный механический компьютер. Через три года после появление Enigma принцип действия этого устройства был разгадан специально созданной группой английских ученых.

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

1.2 Криптографические системы

Проблемой защиты информации путем ее преобразования занимается криптология (kriptos _ тайный, logos _ наука (греч.)). Криптология разделяется на два направления - криптографию и криптоанализ. Цели этих направлений прямо противоположны. Криптография занимается поиском и исследованием методов преобразования информации с целью скрытия ее содержания.

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

Криптография дает возможность преобразовать информацию таким образом, что ее прочтение (восстановление) возможно только при знании ключа. [5]

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

Алфавит _ конечное множество используемых для кодирования информации знаков.

Текст _ упорядоченный набор из элементов алфавита.

В качестве примеров алфавитов, используемых в современных информационных системах можно привести следующие:

- алфавит Z33 - 32 буквы русского алфавита (исключая «ё») и пробел;

- алфавит Z256 - символы, входящие в стандартные коды ASCII и КОИ-8;

- двоичный алфавит _ Z2 = {0,1};

- восьмеричный или шестнадцатеричный алфавит.

Шифрование - процесс преобразования исходного текста, который носит также название открытого текста, в шифрованный текст.

Расшифрование - процесс, обратный шифрованию. На основе ключа шифрованный текст преобразуется в исходный.

Криптографическая система представляет собой семейство T преобразований открытого текста. Члены этого семейства индексируются, или обозначаются символом k; параметр k обычно называется ключом. Преобразование Tk определяется соответствующим алгоритмом и значением ключа k.

Ключ - информация, необходимая для беспрепятственного шифрования и расшифрования текстов.

Пространство ключей K - это набор возможных значений ключа. Обычно ключ представляет собой последовательный ряд букв алфавита. [6]

Криптосистемы подразделяются на симметричные и асимметричные (или с открытым ключом).

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

Кpиптостойкостью называется характеристика шифра, определяющая его стойкость к расшифрованию без знания ключа (т.е. криптоанализу). Имеется несколько показателей криптостойкости, среди которых:

1) количество всех возможных ключей;

2) среднее время, необходимое для успешной криптоаналитической атаки того или иного вида.

Эффективность шифрования с целью защиты информации зависит от сохранения тайны ключа и криптостойкости шифра. [6]

1.3 Требования к криптографическим системам

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

Для современных криптографических систем защиты информации сформулированы следующие общепринятые требования:

1) зашифрованное сообщение должно поддаваться чтению только при наличии ключа;

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

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

4) знание алгоритма шифрования не должно влиять на надежность защиты;

5) незначительное изменение ключа должно приводить к существенному изменению вида зашифрованного сообщения даже при шифровании одного и того же исходного текста;

6) незначительное изменение исходного текста должно приводить к существенному изменению вида зашифрованного сообщения даже при использовании одного и того же ключа;

7) структурные элементы алгоритма шифрования должны быть неизменными;

8) дополнительные биты, вводимые в сообщение в процессе шифрования, должен быть полностью и надежно скрыты в шифрованном тексте;

9) длина шифрованного текста не должна превосходить длину исходного текста;

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

11) любой ключ из множества возможных должен обеспечивать надежную защиту информации;

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

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

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

Обмен информацией осуществляется в 3 этапа:

1) отправитель передает получателю ключ (в случае сети с несколькими абонентами у каждой пары абонентов должен быть свой ключ, отличный от ключей других пар);

2) отправитель, используя ключ, зашифровывает сообщение, которое пересылается получателю;

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

Если для каждого дня и для каждого сеанса связи будет использоваться уникальный ключ, это повысит защищенность системы. [8]

1.4.1 Потоковые шифры

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

Гаммирование - наложение на открытые данные гаммы шифра (случайной или псевдослучайной последовательности единиц и нулей) по определенному правилу. Обычно используется «исключающее ИЛИ», называемое также сложением по модулю 2 и реализуемое в ассемблерных программах командой XOR. Для расшифровывания та же гамма накладывается на зашифрованные данные.

При однократном использовании случайной гаммы одинакового размера с зашифровываемыми данными взлом кода невозможен (так называемые криптосистемы с одноразовым или бесконечным ключом). В данном случае «бесконечный» означает, что гамма не повторяется.

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

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

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

При использовании генератора псевдослучайных чисел возможны несколько вариантов:

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

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

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

4. Побитовое шифрование потока данных с обратной связью по шифртексту и по исходному тексту. [9]

1.4.2 Блочные шифры

При блочном шифровании информация разбивается на блоки фиксированной длины и шифруется поблочно. Блочные шифры бывают двух основных видов:

1) шифры перестановки (transposition, permutation, P-блоки);

2) шифры замены (подстановки, substitution, S-блоки).

Шифры перестановок переставляют элементы открытых данных (биты, буквы, символы) в некотором новом порядке. Различают шифры горизонтальной, вертикальной, двойной перестановки, решетки, лабиринты, лозунговые и другие.

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

Шифры замены делятся на две группы:

1) моноалфавитные (код Цезаря);

2) полиалфавитные (шифр Видженера, цилиндр Джефферсона, диск Уэтстоуна, Enigma).

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

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

В современных криптографических системах, как правило, используют оба способа шифрования (замены и перестановки). Такой шифратор называют составным (product cipher). Oн более стойкий, чем шифратор, использующий только замены или перестановки.

Блочное шифрование можно осуществлять двояко:

1. Без обратной связи. Несколько битов (блок) исходного текста шифруются одновременно, и каждый бит исходного текста влияет на каждый бит шифртекста. Однако взаимного влияния блоков нет, то есть два одинаковых блока исходного текста будут представлены одинаковым шифртекстом. Поэтому подобные алгоритмы можно использовать только для шифрования случайной последовательности битов (например, ключей). Примерами являются DES в режиме ECB и ГОСТ 28147-89 в режиме простой замены. криптография шифрование алгоритм

2. С обратной связью. Обычно обратная связь организуется так: предыдущий шифрованный блок складывается по модулю 2 с текущим блоком. В качестве первого блока в цепи ОС используется инициализирующее значение. Ошибка в одном бите влияет на два блока - ошибочный и следующий за ним.

Генератор псевдослучайных чисел может применяться и при блочном шифровании:

1. Поблочное шифрование потока данных. Шифрование последовательных блоков (подстановки и перестановки) зависит от генератора псевдослучайных чисел, управляемого ключом.

2. Поблочное шифрование потока данных с обратной связью. Генератор псевдослучайных чисел управляется шифрованным или исходным текстом или обоими вместе.

Весьма распространен федеральный стандарт США DES (Data Encryption Standard), на котором основан международный стандарт ISO 8372-87. DES был поддержан Американским национальным институтом стандартов (American National Standards Institute, ANSI) и рекомендован для применения Американской ассоциацией банков (American Bankers Association, ABA). DES предусматривает 4 режима работы:

1) (Electronic Codebook) электронный шифрблокнот;

2) (Cipher Block Chaining) цепочка блоков;

3) B (Cipher Feedback) обратная связь по шифртексту;

4) (Output Feedback) обратная связь по выходу. [11]

ГОСТ 28147-89 - российский стандарт на шифрование данных. Стандарт включает три алгоритма зашифровывания (расшифровывания) данных: режим простой замены, режим гаммирования, режим гаммирования с обратной связью - и режим выработки имитовставки.

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

Алгоритмы шифрования ГОСТ 28147-89 обладают достоинствами других алгоритмов для симметричных систем и превосходят их своими возможностями. Так, ГОСТ 28147-89 (256-битовый ключ, 32 цикла шифрования) по сравнению с такими алгоритмами, как DES (56-битовый ключ, 16 циклов шифрования) и FEAL-1 (64-битовый ключ, 4 цикла шифрования) обладает более высокой криптостойкостью за счет более длинного ключа и большего числа циклов шифрования.

Следует отметить, что в отличие от DES, у ГОСТ 28147-89 блок подстановки можно произвольно изменять, то есть он является дополнительным 512-битовым ключом.

Алгоритмы гаммирования ГОСТ 28147-89 (256-битовый ключ, 512-битовый блок подстановок, 64-битовый вектор инициализации) превосходят по криптостойкости и алгоритм B-Crypt (56-битовый ключ, 64-битовый вектор инициализации).

Блочные алгоритмы могут использоваться и для выработки гаммы. В этом случае гамма вырабатывается блоками и поблочно складывается по модулю 2 с исходным текстом. В качестве примера можно назвать B-Crypt, DES в режимах CFB и OFB, ГОСТ 28147-89 в режимах гаммирования и гаммирования c обратной связью. [12]

1.4.3 Алгоритм шифрования ГОСТ 28.147-89

Алгоритм, определяемый ГОСТ 28147-89, имеет длину ключа шифрования 256 бит. Он шифрует информацию блоками по 64 бит (такие алгоритмы называются блочными), которые затем разбиваются на два субблока по 32 бит (N1 и N2) (рисунок 1). Субблок N1 обрабатывается определенным образом, после чего его значение складывается со значением субблока N2 (сложение выполняется по модулю 2, т. е. применяется логическая операция XOR - «исключающее или»), а затем субблоки меняются местами. Данное преобразование выполняется определенное число раз («раундов»): 16 или 32 в зависимости от режима работы алгоритма. В каждом раунде выполняются две операции. [13]

Рисунок 1. Схема алгоритма ГОСТ 28147-89.

Первая - наложение ключа. Содержимое субблока N1 складывается по модулю 2 с 32-бит частью ключа Kx. Полный ключ шифрования представляется в виде конкатенации 32-бит подключей: K0, K1, K2, K3, K4, K5, K6, K7. В процессе шифрования используется один из этих подключей - в зависимости от номера раунда и режима работы алгоритма.

Вторая операция - табличная замена. После наложения ключа субблок N1 разбивается на 8 частей по 4 бит, значение каждой из которых заменяется в соответствии с таблицей замены для данной части субблока. Затем выполняется побитовый циклический сдвиг субблока влево на 11 бит.

Табличные замены (Substitution box - S-box) часто используются в современных алгоритмах шифрования, поэтому стоит пояснить, как организуется подобная операция. В таблицу записываются выходные значения блоков. Блок данных определенной размерности (в нашем случае - 4-бит) имеет свое числовое представление, которое определяет номер выходного значения. Например, если S-box имеет вид 4, 11, 2, 14, 15, 0, 8, 13, 3, 12, 9, 7, 5, 10, 6, 1 и на вход пришел 4-бит блок «0100» (значение 4), то, согласно таблице, выходное значение будет равно 15, т. е. «1111» (0 а 4, 1 а 11, 2 а 2 ...).

Алгоритм, определяемый ГОСТ 28147-89, предусматривает четыре режима работы: простой замены, гаммирования, гаммирования с обратной связью и генерации имитоприставок. В них используется одно и то же описанное выше шифрующее преобразование, но, поскольку назначение режимов различно, осуществляется это преобразование в каждом из них по-разному.

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

K0, K1, K2, K3, K4, K5, K6, K7, K0, K1 и т. д. - в раундах с 1-го по 24-й;

K7, K6, K5, K4, K3, K2, K1, K0 - в раундах с 25-го по 32-й.

Расшифрование в данном режиме проводится точно так же, но с несколько другой последовательностью применения подключей:

K0, K1, K2, K3, K4, K5, K6, K7 - в раундах с 1-го по 8-й;

K7, K6, K5, K4, K3, K2, K1, K0, K7, K6 и т. д. - в раундах с 9-го по 32-й.

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

В режиме гаммирования каждый блок открытого текста побитно складывается по модулю 2 с блоком гаммы шифра размером 64 бит. Гамма шифра - это специальная последовательность, которая получается в результате определенных операций с регистрами N1 и N2.

1. В регистры N1 и N2 записывается их начальное заполнение - 64-бит величина, называемая синхропосылкой.

2. Выполняется зашифрование содержимого регистров N1 и N2 (в данном случае - синхропосылки) в режиме простой замены.

3. Содержимое регистра N1 складывается по модулю (232 - 1) с константой C1 = 224 + 216 + 28 + 24, а результат сложения записывается в регистр N1.

4. Содержимое регистра N2 складывается по модулю 232 с константой C2 = 224 + 216 + 28 + 1, а результат сложения записывается в регистр N2.

5. Содержимое регистров N1 и N2 подается на выход в качестве 64-бит блока гаммы шифра (в данном случае N1 и N2 образуют первый блок гаммы).

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

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

Таблица 1. Зашифрование и расшифрование в режиме гаммирования

Операция

Результат

Исходный текст

100100

Гамма

XOR

111000

Шифртекст

=

011100

Гамма

XOR

111000

Исходный текст

=

100100

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

В большинстве реализаций алгоритма ГОСТ 28147-89 синхропосылка не секретна, однако есть системы, где синхропосылка - такой же секретный элемент, как и ключ шифрования. Для таких систем эффективная длина ключа алгоритма (256 бит) увеличивается еще на 64 бит секретной синхропосылки, которую также можно рассматривать как ключевой элемент.

В режиме гаммирования с обратной связью для заполнения регистров N1 и N2, начиная со 2-го блока, используется не предыдущий блок гаммы, а результат зашифрования предыдущего блока открытого текста (рисунок 2). Первый же блок в данном режиме генерируется полностью аналогично предыдущему. [14]

Рисунок 2. Выработка гаммы шифра в режиме гаммирования с обратной связью.

Рассматривая режим генерации имитоприставок, следует определить понятие предмета генерации. Имитоприставка - это криптографическая контрольная сумма, вычисляемая с использованием ключа шифрования и предназначенная для проверки целостности сообщений. При генерации имитоприставки выполняются следующие операции: первый 64-бит блок массива информации, для которого вычисляется имитоприставка, записывается в регистры N1 и N2 и зашифровывается в сокращенном режиме простой замены (выполняются первые 16 раундов из 32). Полученный результат суммируется по модулю 2 со следующим блоком информации с сохранением результата в N1 и N2.

Цикл повторяется до последнего блока информации. Получившееся в результате этих преобразований 64-бит содержимое регистров N1 и N2 или его часть и называется имитоприставкой. Размер имитоприставки выбирается, исходя из требуемой достоверности сообщений: при длине имитоприставки r бит вероятность, что изменение сообщения останется незамеченным, равна 2-r.Чаще всего используется 32-бит имитоприставка, т. е. половина содержимого регистров. Этого достаточно, поскольку, как любая контрольная сумма, имитоприставка предназначена прежде всего для защиты от случайных искажений информации. Для защиты же от преднамеренной модификации данных применяются другие криптографические методы - в первую очередь электронная цифровая подпись.

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

Алгоритм ГОСТ 28147-89 считается очень сильным алгоритмом - в настоящее время для его раскрытия не предложено более эффективных методов, чем упомянутый выше метод «грубой силы». Его высокая стойкость достигается в первую очередь за счет большой длины ключа - 256 бит. При использовании секретной синхропосылки эффективная длина ключа увеличивается до 320 бит, а засекречивание таблицы замен прибавляет дополнительные биты. Кроме того, криптостойкость зависит от количества раундов преобразований, которых по ГОСТ 28147-89 должно быть 32 (полный эффект рассеивания входных данных достигается уже после 8 раундов).

Достоинствами ГОСТ 28147-89 являются наличие защиты от навязывания ложных данных (выработка имитовставки) и одинаковый цикл шифрования во всех четырех алгоритмах ГОСТ. [15]

1.4.4 Алгоритм шифрования DES

DES (Data Encryption Standart) - симметричный алгоритм шифрования, в котором один ключ используется, как и для шифрования, так и для расшифрования данных. DES разработан фирмой IBM и утвержден правительством США в 1977 году как официальный стандарт (FTPS 46-3). DES имеет блоки по 64 бит и 16 цикловую структуру сети Фейстеля для шифрования использует ключ с длиной 56 бит. Алгоритм использует комбинацию нелинейных (S -блок) и линейных (перестановки E, IP, IP-1) преобразований (рисунок 3). Для DES рекомендовано несколько режимов:

1) режим электронной кодовой книги (EВС- Electronic Code Book);

2) режим сцепления блоков (СВС- Cipher Block Chaining);

3) режим обратной связи по шифротексту (CFB- Cipher Feed Back);

4) режим обратной связи по выходу (OFB- Output Feed Back). [16]

DES представляет собой блочный шифр, он шифрует данные 64-битовыми блоками. С одного конца алгоритма вводится 64-битовый блок открытого текста, а с другого конца выходит 64-битовый блок шифротекста. DES является симметричным алгоритмом: для шифрования и дешифрирования используются одинаковые алгоритм и ключ (за исключением небольших различий в использовании ключа). длина ключа равна 56 битам (ключ обычно представляется 64-битовым числом, но каждый восьмой бит используется для проверки четности и игнорируется. биты четности являются наименьшими значащими битами байтов ключа). Ключ, который может быть любым 56-битовым числом, можно изменить в любой момент времени. Ряд чисел считаются слабыми ключами, но их можно легко избежать. Безопасность полностью определяется ключом. На простейшем уровне алгоритм не представляет ничего большего, чем комбинация двух основных методов шифрования: смещения и диффузии. Фундаментальным строительным блоком DES является применение к тексту единичной комбинации этих методов (подстановка, а за ней - перестановка), зависящей от ключа. Такой блок называется этапом. DES состоит из 16 этапов, одинаковая комбинация методов применяется к открытому тексту 16 раз:

Рисунок 3. Схема алгоритма DES.

Алгоритм использует только стандартную арифметику 64-битовых чисел и логические операции, поэтому он легко реализовывался в аппаратуре второй половины 70-х. Изобилие повторений в алгоритме делает его идеальным для реализации в специализированной микросхеме. Первоначальные программные реализации были довольно неуклюжи, но сегодняшние программы намного лучше. DES работает с 64-битовым блоком открытого текста. После первоначальной перестановки блок разбивается на правую и левую половины длиной по 32 бита. Затем выполняется 16 этапов одинаковых действий, называемых функцией f, в которых данные объединяются с ключом. После шестнадцатого этапа правая и левая половины объединяются и алгоритм завершается заключительной перестановкой (обратной по отношению к первоначальной). На каждом этапе биты ключа сдвигаются, и затем из 56 битов ключа выбираются 48 битов. Правая половина данных увеличивается до 48 битов с помощью перестановки с расширением, объединяется посредством ХОR. с 48 битами смещенного и переставленного ключа, проходит через 8 8-блоков, образуя 32 новых бита, и переставляется снова. Эти четыре операции и выполняются функцией f. Затем результат функции f объединяется с левой половиной с помощью другого ХОR. В итоге этих действий появляется новая правая половина, а старая правая половина становится новой левой. Эти действия повторяются 16 раз, образуя 16 этапов DES (рисунок 4).

Рисунок 4. Один этап DES.

Если Вi - это результат i-ой итерации. Li, и Ri, - левая и правая половины Вi, Ki - 48-битовый ключ для этапа i, а f- это функция, выполняющие все подстановки, перестановки и ХОR. с ключом, то этап можно представить как:

Начальная перестановка выполняется еще до этапа 1, при этом входной блок переставляется. Начальная перестановка представлена в таблице 2. [16]

Таблица 2. Начальная перестановка шифра DES.

58

50

42

34

26

18

10

2

60

52

44

36

28

20

12

4

62

54

46

38

30

22

14

6

64

56

48

40

32

24

16

8

57

49

41

33

25

17

9

1

59

51

43

35

27

19

11

3

61

53

45

37

29

21

13

5

63

55

47

39

31

23

15

7

Начальная перестановка и соответствующая заключительная перестановка не влияют на безопасность DES (Как можно легко заметить, эта перестановка в первую очередь служит для облегчения побайтной загрузки данных открытого текста и шифротекста в микросхему DES. Не забывайте, что DES появился раньше 16- и 32- битовых микропроцессорных шин.) Так как программная реализация этой многобитовой перестановки нелегка (в отличие от тривиальной аппаратной), во многих программных реализациях DES начальная и заключительные перестановки не используются. Хотя такой новый алгоритм не менее безопасен, чем DES, он не соответствует стандарту DES и, поэтому, не может называться DES.

Преобразования ключа: 64-битовый ключ DES уменьшается до 56-битового ключа отбрасыванием каждого восьмого бита. Эти биты используются только для контроля четности, позволяя проверять правильность ключа. После извлечения 56-битового ключа для каждого из 16 этапов DES генерируется новый 48-битовый подключ и эти подключи, Ki, определяются следующим образом (таблица 3):

Таблица 3. Преобразования ключа DES.

57

49

41

33

25

17

9

1

58

50

42

34

26

18

10

2

59

51

43

35

27

19

11

3

60

52

44

36

63

55

47

39

31

23

15

7

62

54

46

38

30

22

14

6

61

53

45

37

29

21

13

5

28

20

12

4

Во первых, 56-битовый ключ делится на две 28-битовых половинки. Затем, половинки циклически сдвигаются налево на один или два бита в зависимости от этапа (таблица 4).

Таблица 4. Число битов сдвига в зависимости от этапа DES.

Этап

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

Число

1

1

2

2

2

2

2

2

1

2

2

2

2

2

2

1

После сдвига выбирается 48 из 56 битов. Так как при этом не только выбирается подмножество битов, но и изменяется их порядок, эта операция называется перестановка со сжатием. Ее результатом является набор из 48 битов. Например, бит сдвинутого ключа в позиции 33 перемещается в позицию 35 результата, а 18-й бит сдвинутого ключа отбрасывается. [16]

Из-за сдвига для каждого подключа используется отличное подмножество битов ключа. Каждый бит используется приблизительно в 14 из 16 подключей, хотя не все биты используются в точности одинаковое число раз

Перестановка с расширением: эта операция расширяет правую половину данных, Ri, от 32 до 48 битов. Так как при этом не просто повторяются определенные биты, но и изменяется их порядок, эта операция называется перестановкой с расширением, У нее две задачи: привести размер правой половины в соответствие с ключом для операции XOR. и получить более длинный результат, который можно будет сжать в ходе операции подстановки. Однако главный криптографический смысл совсем в другом. За счет влияния одного бита на две подстановки быстрее возрастает зависимость битов результата от битов исходных данных. Это называется лавинным эффектом. DES спроектирован так, чтобы как можно быстрее добиться зависимости каждого бита шифротекста от каждого бита открытого текста и каждого бита ключа.

Перестановка с расширением (рисунок 5) показана на 9-й. Иногда она называется Е-блоком (от expansion). для каждого 4-битового входного блока первый и четвертый бит представляют собой два бита выходного блока, а второй и третий биты - один бит выходного блока. В 7-й показано, какие позиции результата соответствуют каким позициям исходных данных. Например, бит входного блока в позиции З переместится в позицию 4 выходного блока, а бит входного блока в позиции 21 - в позиции 30 и 32 выходного блока. [16]

Рисунок 5. Перестановка с расширением

Хотя выходной блок больше входного, каждый входной блок генерирует уникальный выходной блок (таблица 5).

Таблица 5. Перестановка с расширением DES.

32

1

2

3

4

5

4

5

6

7

8

9

8

9

10

11

12

13

12

13

14

15

16

17

16

17

18

19

20

21

20

21

22

23

24

25

24

25

26

27

28

29

28

29

30

31

32

1

Подстановка с помощью S-блоков: После объединения сжатого блока с расширенным блоком с помощью ХОR. над 48-битовым результатом выполняется операция подстановки. Подстановки производятся в восьми блоках подстановки, или S-блоках (от Substitution). У каждого 8-блока 6-битовый вход и 4-битовый выход, всего используется восемь различных S-блоков. (для восьми S-блоков DES потребуется 256 байтов памяти.) 48 битов делятся на восемь 6-битовых подблока. Каждый отдельный подблок обрабатывается отдельным S-блоком: первый подблок - S-блоком 1, второй - S-блоком 2 и так далее (рисунок 6).

Рисунок 6. Подстановка S блоки

Каждый S-блок представляет собой таблицу из 2 строк и 16 столбцов. Каждый элемент в блоке является 4- битовым числом. По 6 входным битам S-блока определяется, под какими номерами столбцов и строк искать выходное значение.

Перестановка с помощью Р-блоков: 32-битовый выход подстановки с помощью S-блоков, перетасовываются в соответствии с Р-блоком. Эта перестановка перемещает каждый входной бит в другую позицию, ни один бит не используется дважды, и ни один бит не игнорируется. Этот процесс называется прямой перестановкой или просто перестановкой. Например, бит 21 перемещается в позицию 4, а бит 4 - в позицию 31.

Наконец, результат перестановки с помощью Р-блока объединяется посредством XOR. с левой половиной первоначального 64-битового блока. Затем левая и правая половины меняются местами, и начинается следующий этап.

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

1.4.5 Алгоритм блочного шифрования AES

Стандарт AES (Advanced Encryption Standard) является стандартом шифрования США, принятым в 2000-ом году. Он специфицирует алгоритм Rijndael. Этот алгоритм представляет собой симметричный блочный шифр, который работает с блоками данных длиной 128 бит и использует ключи длиной 128, 192 и 256 бит (версии AES-28; AES-192 и AES-256). Сам алгоритм может работать и с другими длинами блоков данных и ключей, но эта возможность в стандарт не вошла.

В отличие от алгоритма ГОСТ 28147-89, который долгое время оставался секретным, американский стандарт шифрования AES, призванный заменить DES, выбирался на открытом конкурсе, где все заинтересованные организации и частные лица могли изучать и комментировать алгоритмы-претенденты.

Алгоритм Rijndael не похож на большинство известных алгоритмов симметричного шифрования, структура которых носит название «сеть Фейстеля» и аналогична российскому ГОСТ 28147-89. Особенность сети Фейстеля состоит в том, что входное значение разбивается на два и более субблоков, часть из которых в каждом раунде обрабатывается по определенному закону, после чего накладывается на необрабатываемые субблоки.

В отличие от отечественного стандарта шифрования, алгоритм Rijndael представляет блок данных в виде двухмерного байтового массива размером 4X4, 4X6 или 4X8 (допускается использование нескольких фиксированных размеров шифруемого блока информации). Все операции выполняются с отдельными байтами массива, а также с независимыми столбцами и строками. [17]

Алгоритм Rijndael выполняет четыре преобразования: BS (ByteSub) - табличная замена каждого байта массива (рисунок 7); SR (ShiftRow) - сдвиг строк массива (рисунок 8). При этой операции первая строка остается без изменений, а остальные циклически побайтно сдвигаются влево на фиксированное число байт, зависящее от размера массива. Например, для массива размером 4X4 строки 2, 3 и 4 сдвигаются соответственно на 1, 2 и 3 байта. Далее идет MC (MixColumn) - операция над независимыми столбцами массива (рисунок 9), когда каждый столбец по определенному правилу умножается на фиксированную матрицу c(x). И, наконец, AK (AddRoundKey) - добавление ключа. Каждый бит массива складывается по модулю 2 с соответствующим битом ключа раунда, который, в свою очередь, определенным образом вычисляется из ключа шифрования (рисунок 10).

Рисунок 7. Операция BS.

Рисунок 8. Операция SR.

Рисунок 9. Операция MC.

Рис. 10. Операция AK.

В каждом раунде (с некоторыми исключениями) над шифруемыми данными поочередно выполняются перечисленные преобразования (рисунок 11). Исключения касаются первого и последнего раундов: перед первым раундом дополнительно выполняется операция AK, а в последнем раунде отсутствует MC. В результате последовательность операций при зашифровании выглядит так:

...

Подобные документы

  • Симметричные криптосистемы как способ шифрования, в котором для шифрования и расшифровывания применяется один и тот же криптографический ключ. Разбор и реализация шифрования алгоритма: простая и двойная перестановка, перестановка "магический квадрат".

    курсовая работа [3,3 M], добавлен 11.03.2013

  • История появления симметричных алгоритмов шифрования. Роль симметричного ключа в обеспечении степени секретности сообщения. Диффузия и конфузия как способы преобразования бит данных. Алгоритмы шифрования DES и IDEA, их основные достоинства и недостатки.

    лабораторная работа [335,9 K], добавлен 18.03.2013

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

    курсовая работа [564,3 K], добавлен 09.05.2012

  • Шифрование как метод защиты информации. История развития криптологии. Классификация алгоритмов шифрования, симметричные и асимметричные алгоритмы. Использование инструментов криптографии в Delphi-приложениях. Краткая характеристика среды Delphi 7.

    курсовая работа [48,5 K], добавлен 19.12.2009

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

    курсовая работа [129,6 K], добавлен 17.02.2011

  • Симметричные и асиметричные методы шифрования. Шифрование с помощью датчика псевдослучайных чисел. Алгоритм шифрования DES. Российский стандарт цифровой подписи. Описание шифрования исходного сообщения асимметричным методом с открытым ключом RSA.

    курсовая работа [101,1 K], добавлен 09.03.2009

  • История криптографии. Сравнение алгоритмов шифрования, применение в операционной системе. Анализ продуктов в области пользовательского шифрования. Включение и отключение шифрования на эллиптических кривых. Использование хеш-функции. Электронная подпись.

    курсовая работа [492,6 K], добавлен 18.09.2016

  • Сравнение производительности программных реализаций алгоритмов шифрования с оптимизациями под языки С и Java. История разработки, сущность, принципы шифрования и успехи в криптоанализе таких алгоритмов шифрования как AES, RC4, RC5, RC6, Twofish и Mars.

    реферат [1,3 M], добавлен 13.11.2009

  • Принцип программной реализации классических криптографических методов. Метод шифрования с использованием таблицы Виженера. Создание текстового редактора "Блокнот", содержащего методы шифрования. Вербальный алгоритм и программа для методов шифрования.

    курсовая работа [2,0 M], добавлен 20.01.2010

  • Реализация алгоритма DES и режимов шифрования для любой длины сообщения и любой длины ключа. Шифрование сообщений различной длины и ключа с замериванием времени и скорости шифрования. Реализация алгоритма RSA. Сохранение зашифрованного файла на диск.

    курсовая работа [398,4 K], добавлен 26.01.2010

  • Автоматизация процесса шифрования на базе современных информационных технологий. Криптографические средства защиты. Управление криптографическими ключами. Сравнение симметричных и асимметричных алгоритмов шифрования. Программы шифрования информации.

    курсовая работа [795,7 K], добавлен 02.12.2014

  • Криптография и шифрование. Симметричные и асимметричные криптосистемы. Основные современные методы шифрования. Алгоритмы шифрования: замены (подстановки), перестановки, гаммирования. Комбинированные методы шифрования. Программные шифраторы.

    реферат [57,7 K], добавлен 24.05.2005

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

    реферат [452,2 K], добавлен 31.05.2013

  • История алгоритмов симметричного шифрования (шифрования с закрытым ключом). Стандарты на криптографические алгоритмы. Датчики случайных чисел, создание ключей. Сфера интересов криптоанализа. Системы электронной подписи. Обратное преобразование информации.

    краткое изложение [26,3 K], добавлен 12.06.2013

  • Основные способы криптографии, история ее развития. Принцип шифрования заменой символов, полиалфавитной подстановкой и методом перестановки. Симметричный алгоритм шифрования (DES). Открытое распределение ключей. Шифры Ривеста-Шамира-Алдемана и Эль Гамаля.

    реферат [39,3 K], добавлен 22.11.2013

  • Исследование симметричных алгоритмов блочного шифрования. Минусы и плюсы алгоритма IDEA. Разработка программы аутентификации пользователя и сообщений на основе алгоритма IDEA. Выбор языка программирования. Тестирование и реализация программного средства.

    курсовая работа [314,2 K], добавлен 27.01.2015

  • Схема работы и требования к программам шифрования и дешифрования. Алгоритмы и тексты программы шифрования и программы дешифрования, выполненные на языке программирования C/C++. Содержание файла с исходным текстом, с шифротекстом, с дешифрованным текстом.

    курсовая работа [24,7 K], добавлен 20.10.2014

  • Комбинированное использование симметричного и асимметричного шифрования. Зависимость между открытым и закрытым ключами. Основные недостатки симметричного шифрования. Схема двухстороннего конфиденциального обмена. Концепция шифрования по алгоритму DES.

    презентация [1,4 M], добавлен 20.12.2012

  • Основные методы криптографической защиты информации. Система шифрования Цезаря числовым ключом. Алгоритмы двойных перестановок и магические квадраты. Схема шифрования Эль Гамаля. Метод одиночной перестановки по ключу. Криптосистема шифрования данных RSA.

    лабораторная работа [24,3 K], добавлен 20.02.2014

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

    курсовая работа [301,9 K], добавлен 29.10.2017

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.