Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Симметричные криптосистемы шифрования



Современная криптография

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

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

  • симметричные DES, AES, ГОСТ 28147-89, Camellia, Twofish, Blowfish, IDEA, RC4 и др.;
  • асимметричные RSA и Elgamal (Эль-Гамаль);
  • хеш-функций MD4, MD5, MD6, SHA-1, SHA-2, ГОСТ Р 34.11-2012 («Стрибог»).

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

В 2001 году в США принят стандарт симметричного шифрования AES на основе алгоритма Rijndael с длиной ключа 128, 192 и 256 бит. Алгоритм AES пришёл на смену прежнему алгоритму DES, который теперь рекомендовано использовать только в режиме Triple DES. В Российской Федерации действует стандарт ГОСТ 34.12-2015 с режимами шифрования блока сообщения длиной 64 («Магма») и 128 («Кузнечик») битов, и длиной ключа 256 бит. Также, для создания цифровой подписи используется алгоритм ГОСТ Р 34.10-2012.

 

Современный криптоанализ.

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

Теоретически, любой шифровальный алгоритм с использованием ключа может быть вскрыт методом перебора всех значений ключа. Если ключ подбирается методом " грубой силы" (brute force), требуемая мощность компьютера растет экспоненциально с увеличением длины ключа. Ключ длиной в 32 бита требует 232 (около 109) шагов. Такая задача под силу любому дилетанту и решается на домашнем компьютере. Системы с 40-битным ключом (например, экспортный американский вариант алгоритма RC4) требуют 240 шагов - такие компьютерные мощности имеются в большинстве университетов и даже в небольших компаниях.

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

Имеется много криптоаналитических подходов. Некоторые из наиболее важных для разработчиков приведены ниже.

· Атака со знанием лишь шифрованного текста (ciphertext-only attack): Это ситуация, когда атакующий не знает ничего о содержании сообщения, и ему приходится работать лишь с самим шифрованным текстом. На практике, часто можно сделать правдоподобные предположения о структуре текста, поскольку многие сообщения имеют стандартные заголовки. Даже обычные письма и документы начинаются с легко предсказуемой информации. Также часто можно предположить, что некоторый блок информации содержит заданное слово.

 

· Атака со знанием содержимого шифровки (known-plaintext attack): Атакующий знает или может угадать содержимое всего или части зашифрованного текста. Задача заключается в расшифровке остального сообщения. Это можно сделать либо путем вычисления ключа шифровки, либо минуя это.

· Атака с заданным текстом (chosen-plaintext attack): Атакующий имеет возможность получить шифрованный документ для любого нужного ему текста, но не знает ключа. Задачей является нахождение ключа. Некоторые методы шифрования и, в частности, RSA, весьма уязвимы для атак этого типа. При использовании таких алгоритмов надо тщательно следить, чтобы атакующий не мог зашифровать заданный им текст.

· Атака с помощью таймера (timing attack): Этот новый тип атак основан на последовательном измерении времен, затрачиваемых на выполнение операции возведения в степень по модулю целого числа. Ей подвержены по крайней мере следующие шифры: RSA, Диффи-Хеллман и метод эллиптических кривых.

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

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

В основе построения криптостойких систем лежит многократное использование относительно простых преобразований, так называемых криптографических примитивов. Клод Шеннон известный американский математик и электротехник предложил использовать подстановки (англ. substitution) и перестановки (англ. permutation).

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

  • Симметричное шифрование. Заключается в том, что обе стороны-участники обмена данными имеют абсолютно одинаковые ключи для шифрования и расшифровки данных. Данный способ осуществляет преобразование, позволяющее предотвратить просмотр информации третьей стороной.
  • Асимметричное шифрование. Предполагает использовать в паре два разных ключа — открытый и секретный. В асимметричном шифровании ключи работают в паре — если данные шифруются открытым ключом, то расшифровать их можно только соответствующим секретным ключом и наоборот — если данные шифруются секретным ключом, то расшифровать их можно только соответствующим открытым ключом. Использовать открытый ключ из одной пары и секретный с другой — невозможно. Каждая пара асимметричных ключей связана математическими зависимостями. Данный способ также нацелен на преобразование информации от просмотра третьей стороной.
  • Цифровые подписи. Цифровые подписи используются для установления подлинности документа, его происхождения и авторства, исключает искажения информации в электронном документе.
  • Хеширование. Преобразование входного массива данных произвольной длины в выходную битовую строку фиксированной длины. Такие преобразования также называются хеш-функциями или функциями свёртки, а их результаты называют хеш-кодом, контрольной суммой или дайджестом сообщения (англ. message digest). Результаты хеширования статистически уникальны. Последовательность, отличающаяся хотя бы одним байтом, не будет преобразована в то же самое значение.

 

Криптографический протокол

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

Необходимо отметить, что любой протокол обладает рядом определенных, характерных для него, свойств:

  • Конкретный порядок действий, необходимых для его выполнения;
  • Каждое действие должно быть выполнено только по окончании предыдущего;
  • Непротиворечивость протокола;
  • Полнота протокола (для всех возможных ситуаций предусматривает соответствующее действие).

 

Таким образом, свойства протокола практически аналогичны свойствам алгоритмов. Это обусловлено тем, что протокол в некоторой степени является алгоритмом действий сторон в конкретной ситуации.

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

Иные виды протоколов

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

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

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

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

Современная криптография

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

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

  • симметричные DES, AES, ГОСТ 28147-89, Camellia, Twofish, Blowfish, IDEA, RC4 и др.;
  • асимметричные RSA и Elgamal (Эль-Гамаль);
  • хеш-функций MD4, MD5, MD6, SHA-1, SHA-2, ГОСТ Р 34.11-2012 («Стрибог»).

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

В 2001 году в США принят стандарт симметричного шифрования AES на основе алгоритма Rijndael с длиной ключа 128, 192 и 256 бит. Алгоритм AES пришёл на смену прежнему алгоритму DES, который теперь рекомендовано использовать только в режиме Triple DES. В Российской Федерации действует стандарт ГОСТ 34.12-2015 с режимами шифрования блока сообщения длиной 64 («Магма») и 128 («Кузнечик») битов, и длиной ключа 256 бит. Также, для создания цифровой подписи используется алгоритм ГОСТ Р 34.10-2012.

 

Симметричные криптосистемы шифрования

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

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

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

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

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

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

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

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

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

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

 

 

Проблема распределения секретных ключей при большом числе пользователей является весьма трудоемкой и сложной задачей. В сети на N пользователей необходимо распределить N(N- 1)/2 секретных ключей, т. е. число распределяемых секретных ключей растет по квадратичному закону с увеличением числа абонентов сети.


Поделиться:



Последнее изменение этой страницы: 2019-05-04; Просмотров: 110; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.028 с.)
Главная | Случайная страница | Обратная связь