Скачать 1.43 Mb.
|
Таким образом, главной задачей подсистемы безопасности информационной системы является обеспечения указанных категорий информации. Под информационной безопасностью будем понимать защищенность информации и поддерживающей инфраструктуры (совокупности программных и аппаратных средств, обеспечивающих хранение, обработку и передачу информации) от случайных или преднамеренных воздействий естественного или искусственного характера, которые могут нанести неприемлемый ущерб субъектам информационных отношений, в том числе владельцам и пользователям информации и поддерживающей инфраструктуры. Защита информации – это комплекс мероприятий, направленных на обеспечение информационной безопасности.
Очевидно, что разные системы обеспечивают различную степень информационной безопасности в зависимости от стоящих перед ними задач или квалификации их разработчиков. Для того чтобы сформулировать основные требования к информационным системам, ввести их классификацию с точки зрения безопасности, различными международными и национальными институтами были разработаны стандарты в области компьютерной безопасности. В качестве примеров подобных стандартов можно привести "Критерии оценки безопасности компьютерных систем" национального комитета компьютерной безопасности США («Оранжевая книга»), руководящие документы Гостехкомиссии России, гармонизированные критерии европейских стран, международный стандарт ISO/IEC 15408, техническая спецификация X.800 и множество других. Каждый из этих документов вводит собственные требования к информационным системам, чтобы отнести их к определенному классу безопасности. Так, например, «Оранжевая книга» определяет безопасную систему как систему, которая «управляет доступом к информации так, что только авторизованные лица или процессы, действующие от их имени, получают право читать, писать и удалять информацию». Надежная система определяется там же как "система, использующая достаточные аппаратные и программные средства, чтобы обеспечить одновременную обработку информации разной степени секретности группой пользователей без нарушения прав доступа". При этом политика безопасности оценивается по двум основным критериям – политике безопасности и гарантированности. Политика безопасности - набор законов, правил и норм поведения, определяющих, как организация обрабатывает, защищает и распространяет информацию. Гарантированность - мера доверия, которая может быть оказана архитектуре и реализации системы, она показывает, насколько корректны механизмы, отвечающие за проведение в жизнь политики безопасности.«Оранжевая книга» открыла путь к ранжированию информационных систем по степени доверия безопасности. В ней определяется четыре уровня доверия - D, C, B и A. Уровень D предназначен для систем, признанных неудовлетворительными. По мере перехода от уровня C к A к системам предъявляются все более жесткие требования. Уровни C и B подразделяются на классы (C1, C2, B1, B2, B3) с постепенным возрастанием степени доверия. Всего имеется шесть классов безопасности - C1, C2, B1, B2, B3, A1. Чтобы в результате процедуры сертификации систему можно было отнести к некоторому классу, ее политика безопасности и уровень гарантированности должны удовлетворять заданным требованиям по обеспечению произвольного и принудительного управления доступом, идентификации и аутентификации пользователей, аудиту, возможностям восстановления и администрирования системы и многим другим. Так, например, операционная система Windows NT разработана с тем расчетом, чтобы обеспечивать уровень безопасности C2. Основные требования, которым должна удовлетворять информационная система, чтобы ей мог быть присвоен этот уровень, следующие:
Российские регламентирующие документы также вводят требования и классификации. Так, в классификации автоматизированных систем (АС) по уровню защищенности от несанкционированного доступа (НСД) устанавливается девять классов защищенности АС от НСД к информации. Каждый класс характеризуется определенной минимальной совокупностью требований по защите. Классы подразделяются на три группы, отличающиеся особенностями обработки информации в АС. В пределах каждой группы соблюдается иерархия требований по защите в зависимости от ценности (конфиденциальности) информации и, следовательно, иерархия классов защищенности АС. Третья группа классифицирует АС, в которых работает один пользователь, имеющий доступ ко всей информации АС, размещенной на носителях одного уровня конфиденциальности. Группа содержит два класса - 3Б и 3А. Вторая группа классифицирует АС, в которых пользователи имеют одинаковые права доступа (полномочия) ко всей информации АС, обрабатываемой и (или) хранящейся на носителях различного уровня конфиденциальности. Группа содержит два класса - 2Б и 2А. Первая группа классифицирует многопользовательские АС, в которых одновременно обрабатывается и (или) хранится информация разных уровней конфиденциальности и не все пользователи имеют право доступа ко всей информации АС. Группа содержит пять классов - 1Д, 1Г, 1В, 1Б и 1А. Более подробную информацию можно узнать в [5].
Под угрозой будем понимать потенциально возможные воздействия на систему, которые прямо или косвенно могут нанести урон пользователю. Непосредственную реализацию угрозы называют атакой. Знание возможных угроз, а также уязвимых мест защиты, которые эти угрозы обычно эксплуатируют, необходимо для того, чтобы выбирать наиболее экономичные средства обеспечения безопасности. Имеет смысл различать неумышленные и умышленные угрозы. Неумышленные угрозы связаны с:
Умышленные угрозы, в отличие от случайных, преследуют цель нанесения ущерба пользователям информационных систем и, в свою очередь, подразделяются на активные и пассивные. Пассивная угроза - несанкционированный доступ к информации без изменения состояния системы, активная – связана с попытками перехвата и изменения информации. Не существует общепринятой классификации угроз безопасности. Один из вариантов классификации может быть выполнен по следующим признакам: • по цели реализации; • по принципу воздействия на систему; • по характеру воздействия на систему; • по причине появления используемой ошибки защиты; • по способу воздействия атаки на объект; • по объекту атаки; • по используемым средствам атаки; • по состоянию объекта атаки. К наиболее распространенным угрозам безопасности относят: Несанкционированный доступ (НСД) – наиболее распространенный вид компьютерных нарушений. Он заключается в получении пользователем доступа к ресурсу, на который у него нет разрешения в соответствии с принятой в организации политикой безопасности. Отказ в услуге. Представляет собой преднамеренную блокировку легального доступа к информации и другим ресурсам; Незаконное использование привилегий. Злоумышленники, применяющие данный способ атаки, обычно используют штатное программное обеспечение, функционирующее в нештатном режиме. Незаконный захват привилегий возможен либо при наличии ошибок в самой системе, либо в случае халатности при управлении системой. Строгое соблюдение правил управления системой защиты, соблюдение принципа минимума привилегий позволяет избежать таких нарушений. «Скрытые каналы». Представляют собой пути передачи информации между процессами системы, нарушающие системную политику безопасности. В среде с разделением доступа к информации пользователь может не получить разрешение на обработку интересующих его данных, однако может придумать для этого обходные пути. «Скрытые каналы» могут быть реализованы различными путями, в частности при помощи программных закладок («троянских коней»). «Маскарад». Под «маскарадом» понимается выполнение каких-либо действий одним пользователем от имени другого пользователя. Такие действия другому пользователю могут быть разрешены. Нарушение заключается в присвоении прав и привилегий. «Сборка мусора». После окончания работы обрабатываемая информация не всегда полностью удаляется из памяти ПК. Данные хранятся на носителе до перезаписи или уничтожения; при выполнении этих действий на освободившемся пространстве диска находятся их остатки. При искажении заголовка файла их прочитать трудно, но все же возможно с помощью специальных программ и оборудования. Такой процесс принято называть «сборкой мусора». Он может привести к утечке важной информации. «Люки». Представляют собой скрытую, недокументированную точку входа в программный модуль. «Люки» относятся к категории угроз, возникающих вследствие ошибок реализации какого-либо проекта (системы в целом, комплекса программ и т. д.). Поэтому в большинстве случаев обнаружение «люков» – результат случайного поиска. Вредоносные программы. В последнее время участились случаи воздействия на вычислительную систему специально созданными программами. Для обозначения всех программ такого рода был предложен термин «вредоносные программы». Эти программы прямо или косвенно дезорганизуют процесс обработки информации или способствуют утечке или искажению информации. К самым распространенным видам подобных программ относятся: • «Вирус»– это программа, которая способна заражать другие программы, модифицируя их так, чтобы они включали в себя копию вируса. • «Троянский конь» – программа, которая содержит скрытый или явный программный код, при исполнении которого нарушается функционирование системы безопасности. «Троянские кони» способны раскрыть, изменить или уничтожить данные или файлы. Их встраивают в программы широкого пользования, например, в программы обслуживания сети, электронной почты. • «Червяк» – программа, распространяемая в системах и сетях по линиям связи. Такие программы подобны вирусам: заражают другие программы, а отличаются от вирусов тем, что не способны самовоспроизводиться.
• «Бактерия» – программа, которая делает копии самой себя и становится паразитом, перегружая память ПК и процессор. • «Логическая бомба»– программа, приводящая к повреждению файлов или компьютеров (от искажения данных – до полного уничтожения данных). «Логическую бомбу» вставляют, как правило, во время разработки программы, а срабатывает она при выполнении некоторого условия (время, дата, ввода кодового слова). • «Лазейки» – точка входа в программу, благодаря которой открывается доступ к некоторым системным функциям. Обнаруживается путем анализа работы программы. Также к классу вредоносных программ можно отнести снифферы (программы, перехватывающие сетевые пакеты), программы подбора паролей, атаки на переполнение буфера, в некоторых приложениях - дизассемблеры и отладчики. Перечисленные атаки зачастую используются совместно для реализации комплексных атак. Так, например, троянская программа может использоваться для сбора информации о пользователях на удаленном компьютере и пересылки ее злоумышленнику, после чего последний может осуществить атаку методом «маскарада». 1.4. Основные методы обеспечения безопасности информационных систем Для того, чтобы противостоять перечисленным в предыдущей главе угрозам, современные информационные системы включают в себя подсистемы безопасности, которые реализуют принятую политику безопасности. Политика безопасности в зависимости от целей и условий функционирования системы может определять права доступа субъектов к ресурсам, регламентировать порядок аудита действий пользователей в системе, защиты сетевых коммуникаций, формулировать способы восстановления системы после случайных сбоев и т.д. Для реализации принятой политики безопасности существуют правовые, организационно-административные и инженерно-технические меры защиты информации. Правовое обеспечение безопасности информации – это совокупность законодательных актов, нормативно-правовых документов, положений, инструкций, руководств, требования которых обязательны в системе защиты информации. В нашей стране правовые основы обеспечения безопасности компьютерных систем составляют: Конституция РФ, Законы РФ, Кодексы (в том числе Уголовный Кодекс), указы и другие нормативные акты. Так, например, Уголовный Кодекс содержит главу 28, которая называется «Преступления в сфере компьютерной безопасности» и содержит описание состава компьютерных преступлений, подлежащих уголовному преследованию и полагающиеся наказания. Организационно-административное обеспечение безопасности информации представляет собой регламентацию производственной деятельности и взаимоотношений исполнителей на нормативно-правовой основе таким образом, чтобы разглашение, утечка и несанкционированный доступ к информации становился невозможным или существенно затруднялся за счет проведения организационных мероприятий. К мерам этого класса можно отнести: подбор и обучение персонала, определение должностных инструкций работников, организацию пропускного режима, охрану помещений, организацию защиты информации с проведением контроля работы персонала с информацией, определение порядка хранения, резервирования, уничтожения конфиденциальной информации и т.п. Инженерно-технические меры представляют собой совокупность специальных органов, технических средств и мероприятий, функционирующих совместно для выполнения определенной задачи по защите информации. К инженерным средствам относят экранирование помещений, организация сигнализации, охрана помещений с ПК. Технические средства защиты включают в себя аппаратные, программные, криптографические средства защиты, которые затрудняют возможность атаки, помогают обнаружить факт ее возникновения, избавиться от последствий атаки. Настоящее пособие посвящено рассмотрению именно технических средств защиты информации, более подробную информацию о других видах защиты можно получить, например, в [10]. Технические средства подсистем безопасности современных распределенных информационных систем выполняют следующие основные функции:
Для реализации указанных функций используются следующие механизмы:
В таблице 1.1 представлены взаимосвязь функций безопасности информационных систем и механизмов их реализации [11]. Таблица 1.1 Взаимосвязь функций безопасности и механизмов их реализации
1.5. Вывод Важной задачей современных информационных систем является обеспечение безопасности хранящейся и обрабатываемой в них информации. Защита информации означает обеспечение конфиденциальности, целостности, доступности, аутентичности и аппелируемости информации. Существует большое количество регламентирующих документов, определяющих требования к безопасности информационных систем и ранжирующих их в соответствии с выполнением этих требований. В Российской Федерации такими документами являются руководящие документы гостехкомиссии России. Информационные системы подвержены большому количеству угроз. Основными механизмами защиты от этих угроз являются шифрование, электронная цифровая подпись, механизмы управления доступом, контроль целостности, нотаризации, дополнение трафика. Алгоритмические, программные и аппаратные средства реализации этих механизмов будут рассмотрены ниже. 2. Криптографические методы защиты информации Криптографические методы защиты информации составляют основу подсистем безопасности современных информационных систем, обеспечивая услуги конфиденциальности, целостности и аутентификации. 2.1. Термины и определения Криптография – наука о методах и средствах преобразования информации в вид, затрудняющий или делающий невозможным несанкционированные операции с нею, включающая в себя также методы и средства создания, хранения и распространения ключей – специальных информационных объектов, реализующих эти санкции. Основным понятием криптографии является понятие шифра. Шифр – совокупность инъективных (обратимых) преобразований множества элементов открытого текста на множество элементов шифротекста, проиндексированных элементами из множества ключей: { Fk: X S, kK }, где XX – кодируемое сообщение из множества открытых текстов; SS – шифротекст из множества возможных закодированных текстов; k – ключ шифрования; F – отображение, выполняемое шифром. Свойство инъективности шифра означает, что существует отображение F-1 такое, что { Fk-1: X S, kK } Процесс преобразования открытого текста (передаваемого сообщения) в шифротекст называется шифрованием. Обратное преобразование шифротекста в открытый текст называется дешифрованием. Криптоанализ - наука (и практика ее применения) о методах и способах вскрытия шифров. Под вскрытием понимается задача получения по известному шифротесту соответствующего открытого текста и/или ключа шифрования. Криптография и криптоанализ вместе образуют криптологию. 2.2. Классификация криптографических алгоритмов В качестве основного критерия классификации криптографических алгоритмов будем использовать тип выполняемого над исходным текстом преобразования. Классификация по этому критерию представлена на рис. 2.1. Тайнопись предполагает, что отправитель и получатель производят над сообщением преобразования, известные только им двоим. Сторонним лицам неизвестны выполняемые алгоритмом изменения над открытым текстом, что и является гарантией нераскрываемости данных на этапе анализа. В противовес тайнописи, криптоалгоритмы с ключом построены на том принципе, что алгоритм воздействия на передаваемые данные известен всем сторонним лицам, но он зависит от некоторого параметра, который держится в секрете – "ключа", который известен только двум лицам, участвующим в обмене информацией. Основу такого подхода к шифрованию заложил в конце XIX века голландец Огюст Керкхофф, который предложил, что стойкость шифра должна определяться только секретностью ключа, т.е. криптоаналитику могут быть известны все детали процесса (алгоритма) шифрования и дешифрования, но неизвестно, какой ключ использован для шифрования данного текста. В настоящее время криптография занимается исключительно алгоритмами с ключами. Это обусловлено тем, что защищенность системы не должна зависеть от секретности чего-либо, что невозможно быстро изменить в случае утечки секретной информации, а изменить ключ шифрования на практике гораздо проще, чем весь используемый в системе алгоритм. Криптосистемы с ключом делятся на симметричные и асимметричные системы шифрования. Модель симметричной системы шифрования представлена на рис. 2.2. Отличительной чертой симметричных алгоритмов шифрования является наличие одного ключа шифрования (k на рис.2.2), который должен быть известен только отправителю и получателю сообщения. Отправитель на ключе k шифрует сообщение, получатель дешифрует полученный шифротекст ключом k. Криптоаналитик может перехватить шифротекст Y, передаваемый по открытым каналам связи, но, так как он не знает ключа, задача вскрытия шифротекста является очень трудоемкой. Принципиальным моментом является необходимость наличия секретного канала связи между получателем и отправителем для передачи ключа шифрования без возможности его перехвата криптоаналитиком. Асимметричная система шифрования работает по схеме, представленной на рис. 2.3. Отличительной особенностью асимметричных алгоритмов является наличие пары ключей шифрования: открытого kот, который передается второй стороне по незащищенному каналу связи и поэтому может быть известен криптоаналитику, а также закрытого kзак, который известен лишь одному человеку (получателю сообщения) и держится в секрете. Пара ключей обладает тем свойством, что сообщение, зашифрованное на одном из ключей, может быть расшифровано только на другом ключе. Фактически это означает, что секретным каналом передачи информации на схеме рис. 2.3 является направление “отправитель-получатель”, поскольку сообщение, зашифрованное на открытом ключе отправителем, может дешифровать своим закрытым ключом только получатель. В зависимости от размера блока шифруемой информации криптоалгоритмы делятся на блочные и поточные шифры. Единицей кодирования в потоковых шифрах является один бит. Результат кодирования не зависит от прошедшего ранее входного потока. Схема применяется в системах передачи потоков информации, то есть в тех случаях, когда передача информации начинается и заканчивается в произвольные моменты времени и может случайно прерываться. Для блочных шифров единицей кодирования является блок из нескольких байтов. Результат кодирования зависит от всех исходных байтов этого блока. Схема применяется при пакетной передаче информации и кодировании файлов. Еще одним критерием классификации криптоалгоритмов является тип выполняемых преобразований над блоками открытого текста. По этому критерию криптоалгоритмы разделяют на подстановочные и перестановочные. В перестановочных шифрах блоки информации не изменяются сами по себе, но изменяется их порядок следования, что делает информацию недоступной стороннему наблюдателю. Подстановочные шифры изменяют сами блоки информации по определенным законам. Деление криптоалгоритмов на моноалфавитные и многоалфавитные характерно для подстановочных шифров. Моноалфавитные криптоалгоритмы заменяют блок входного текста (символ входного алфавита) на один и тот же блок шифротекта (символ выходного алфавита). В многоалфавитных шифрах одному и тому же блоку входного текста могут соответствовать разные блоки шифротекста, что существенно затрудняет криптоанализ. По степени секретности криптоалгоритмы делятся на абсолютно стойкие и практически стойкие. Абсолютно стойкие шифры невозможно вскрыть. На практике этого можно добиться, только если размер используемого ключа шифрования превышает размер кодируемого сообщения и при этом ключ используется однократно. Практически стойким называется шифр, для которого не существует более эффективного способа взлома, кроме как полным перебором всех возможных ключей шифрования. Говоря об атаках на шифры, можно выделить следующие виды атак: атака на основе шифротекста, атака на основе известного открытого текста, атака на основе выборочного открытого текста. При атаке на основе шифротекста криптоаналитику известен только закодированный текст и на его основе он должен узнать секретный ключ шифрования. Атака на основе открытого текста предполагает, что криптоаналитику известны одна или несколько пар «открытый текст/шифротекст», зашифрованных на одном ключе, и на основе этой информации он проводит свой анализ. Выполняя атаку на основе выборочного открытого текста, злоумышленник имеет возможность подать на вход шифрующего устройства произвольный открытый текст и получить соответствующий ему шифротект. Для того, чтобы называться практически стойким, криптоалгоритм должен успешно противостоять любому из перечисленных типов атак. 2.3. Симметричное блочное шифрование 2.3.1. Основные принципы блочного симметричного шифрования Как уже было отмечено, блочные шифры обрабатывают кодируемое сообщение блоками из нескольких байт, при этом блок открытого текста X преобразуется в блок шифротекста Y того же размера с использованием некоторого ключа шифрования Key: Y=Encrypt(X,Key) Процедура дешифрации выполняет обратное преобразование, используя тот же самый ключ: X=Decrypt(Y,Key) В общем случае процедуры Encrypt и Decrypt не совпадают, однако если последовательность действий при шифрации и дешифрации в точности совпадает, блочный шифр называется абсолютно симметричным. Для абсолютно симметричного шифра, очевидно, справедливо: X=Encrypt((Encrypt(X,Key),Key) Преобразования Encrypt и Decrypt трактуют блоки открытого и зашифрованного текста как целые числа и выполняет над ними ряд арифметических либо логических действий, основная задача которых – тщательно «перемешать» биты блока открытого текста между собой, а также связать их с битами используемого ключа шифрования для формирования блока закрытого текста. Для того, чтобы все шифрующее преобразование было обратимым, действия, его составляющие должны быть также обратимы (обратимость действия означает, что по его результату и одному из операндов можно получить второй операнд). В таблице 2.1 приведен список обратимых операций, использующихся в современных криптографических преобразованиях [6]. Среди операций, приведенных в таблице, необходимо выделить операции умножения и табличной подстановки, которые относятся к классу нелинейных и существенно затрудняют методы линейного криптоанализа блочных шифров. Таблица 2.1 Основные обратимые операции
Для преобразований параметров криптоалгоритмов, которые не требуют обратимости, используются необратимые операции, такие как логические сложение и умножение, арифметические сдвиги влево и вправо, получение остатка от целочисленного деления, умножение по модулю 2N. В качестве второго операнда V, участвующего в операциях криптографических преобразований, могут использоваться:
Одним из основных принципов структурного построения современных криптоалгоритмов является принцип итерирования. Его идея заключается в многократной, состоящей из нескольких циклов (или раундов), обработки одного блока открытого текста с использованием на каждом цикле специального ключа раунда, вычисляемого на основе ключа шифрования. Количество циклов можно варьировать из соображений криптостойкости и эффективности реализации алгоритма: увеличение количества циклов приводит к повышению стойкости шифра, но увеличивает время шифрации и потребляемые вычислительные ресурсы. Подобные циклические структуры принято называть сетями, и большинство современных блочных шифров построены с использованием сетевой архитектуры. В качестве примера криптографических сетей можно привести SP-сети, содержащие в каждом раунде два слоя – подстановки (substitution), в котором обычно используются обратимые операции преобразования над шифруемым блоком и материалом ключа, и перестановки (permutation), в котором происходит перестановка бит внутри блока. Однако, самой популярной сегодня является сеть Фейштеля, схема которой представлена на рис.2.4. При шифровании блок открытого текста разбивается на две равные части - левую и правую. На каждом цикле одна из частей подвергается преобразованию при помощи образующей функции F и вспомогательного ключа ki, полученного из исходного ключа. Результат преобразования складывается по модулю 2 с другой частью, после чего части меняются местами. Преобразования на каждом цикле идентичны и лишь после последнего раунда не выполняется перестановка частей блока. Д остоинством сети Фейштеля является то, что дешифрация выполняется той же последовательностью преобразований, лишь порядок следования вспомогательных ключей меняется на обратный. Это достигается за счет автообратимости операции суммы по модулю 2, смешивающей части блока между собой. Если размер блока шифрования криптоалгоритма слишком велик, возможны модификации сети Фейштеля с 4 ветвями, один из вариантов которых приведен на рис. 2.5. 2.3.2. Алгоритмы блочного симметричного шифрования Схема Фейштеля используется в криптоалгоритмах DES, ГОСТ 28147-89, FEAL, Blowfish, LOKI, CAST и др. Рассмотрим практическую реализацию блочного шифра, построенного по принципу сети Фейштеля, на примере алгоритма TEA (Tiny Encrypton Algorithm) . А Рис.2.6. Схема работы алгоритма TEA лгоритм TEA (рис.2.6) разработан в Кембриджском университете, представляет собой схему сети Фештеля на 64 раунда, размер шифруемого блока 64 бита, размер ключа шифрования 128 бит. Рис.2.6. Схема работы алгоритма TEA Д остоинством алгоритма TEA является простота реализации, однако, отсутствие в образующей функции нелинейных операций приходится компенсировать большим количеством раундов. КEY0, КEY1, КEY2, КEY3 на рис.2.6 – это ключи раунда, которые получаются простым делением ключа шифрования на 4 части. Необходимо также отметить, что TEA является несимметричным алгоритмом, поскольку ветви смешиваются обычным арифметическим сложением, поэтому операция дешифрации требует незначительных изменений. Алгоритмы шифрования, получившие большее признание среди криптографов, используют в функциях преобразования нелинейные операции. Так, например, алгоритм шифрования DES (Data Encryption Standard), который до недавнего времени являлся мировым стандартом шифрования, использует в своей образующей функции операции табличной подстановки, которые существенно усложняют процедуру линейного криптоанализа этого шифра. Схема раунда алгоритма DES представлена на рис. 2.7. Каждый раунд преобразования включает перестановку правой части блока, причем на вход модуля расширения подается 32-разрядное число, а снимается с него 48-разрядное (некоторые биты входного числа копируются на выход дважды). После сложения с материалом ключа осуществляется табличная подстановка, в результате которой по 8 таблицам подстановки происходит замена 48-битного входа на 32-битный выход (каждая S-таблица подстановки заменяет 6-битный вход на 4-битный выход). Выход S-блока поступает на блок перестановки, где биты переставляются по законам, определяемым специальной P-таблицей. Заканчивается раунд традиционным для сетей Фейштеля смешиванием ветвей между собой. За счет использования нелинейных операций преобразований удалось уменьшить количество раундов до 16 при размере ключа 56 бит. С момента опубликования алгоритма DES в 1977 году он подвергся серьезному криптоанализу. Так, в частности, были обнаружены 4 слабых ключа DES, которые половину из возможных 264 входных блоков кодируют самих в себя. Был предложен также ряд специфических атак на DES, которые еще в 80-е годы позволяли с использованием компьютеров специализированной архитектуры или распределенных вычислений провести успешную атаку на алгоритм в течение нескольких часов. Для современного технологического уровня время взлома шифра DES составляет несколько десятков минут. В связи с этим, для обеспечения более высокого криптостойкости рекомендуется применять тройное DES-шифрование на трех или двух различных ключах. Такие схемы называются EDE (encrypt-decrypt-encrypt) шифрованием. При двух ключах шифрования блок открытого текста сначала шифруется на ключе K1, затем дешифруется на ключе K2, а затем вновь шифруется на ключе K1. Размер ключевого пространства (общее количество возможных ключей шифрования) в этом случае возрастает до 2112 (у обычного DES – 256). При использовании трех ключей шифрования блок открытого текста сначала шифруется на ключе K1, затем дешифруется на ключе K2, а затем шифруется на ключе K3, что обеспечивает размер ключевого пространства 2168. Из-за недостаточной длины ключа шифрования, а также ориентированности шифра DES на аппаратную реализацию (в связи с большим количеством используемых перестановок бит), американским национальным институтом стандартов в 1997 был объявлен конкурс на криптостандарт блочного шифрования AES (Advanced Encryption Standard). В 2000 году победителем конкурса был объявлен алгоритм Rijndael, разработанный бельгийскими криптографами. Его отличительной особенностью является то, что он построен не по принципу сети Фейштеля, а использует нетрадиционную структуру KALST- сети. Алгоритм Rijndael представляет блок данных в виде двухмерного байтового массива размером 4х4, 4х6 или 4х8 (допускается использование нескольких фиксированных размеров шифруемого блока информации). Все операции выполняются с отдельными байтами массива, а также с независимыми столбцами и строками. Алгоритм Rijndael выполняет четыре преобразования: BS (ByteSub) - табличная замена каждого байта массива, SR (ShiftRow) - сдвиг строк массива. При этой операции первая строка остается без изменений, а остальные циклически побайтно сдвигаются влево на фиксированное число байт, зависящее от размера массива. Например, для массива размером 4X4 строки 2, 3 и 4 сдвигаются соответственно на 1, 2 и 3 байта. Далее выполняется MC (MixColumn) - операция над независимыми столбцами массива , когда каждый столбец по определенному правилу умножается на фиксированную матрицу. И, наконец, AK (AddRoundKey) - добавление ключа. Каждый бит массива складывается по модулю 2 с соответствующим битом ключа раунда, который, в свою очередь, определенным образом вычисляется из ключа шифрования. Количество раундов шифрования в алгоритме Rijndael переменное (10, 12 или 14 раундов) и зависит от размеров блока и ключа шифрования (для ключа также предусмотрено несколько фиксированных размеров). Достоинствами шифра Rijndael является то, что он обеспечивает высокую скорость шифрования на всех платформах: как при программной, так и при аппаратной реализации. Его отличают несравнимо лучшие возможности распараллеливания вычислений по сравнению с другими алгоритмами, представленными на конкурс AES. Кроме того, требования к ресурсам для его работы минимальны, что важно при его использовании в устройствах, обладающих ограниченными вычислительными возможностями. Российским стандартом блочного шифрования является алгоритм ГОСТ 28147-89, построенный по структуре сети Фейштеля. Его особенностью следует признать большой размер ключа (256 бит), непубликуемые таблицы подстановки, большое количество раундов (32 раунда). 2.3.3. Режимы шифрования блочных шифров Применение блочного шифра для нужд практического кодирования информации возможно в одном из четырех основных режимов шифрования (рис. 2.8):
В режиме ECB шифрование/дешифрование i-го блока открытого текста/шифротекста выполняется независимо от остальных блоков: ci=Ek(mi), mi=Dk(ci). Недостатком данного режима шифрования является то, что одинаковые блоки входного текста будут кодироваться в одинаковые блоки шифротекста, что дает возможность злоумышленнику, во-первых, делать предположения о характере информации в открытом тексте, а во-вторых, подменить один или несколько блоков шифротекста. Достоинством режима можно назвать простоту реализации, а также возможность распараллеливания процедуры шифрации. Режим CBC предполагает следующие алгоритмы шифрации/дешифрации: ci=Ek(mi ci-1), mi=Dk(ci) ci-1 В режиме CBC каждый блок открытого текста складывается с блоком шифротекста, полученным на предыдущем этапе. Таким образом, происходит сцепление блоков друг с другом и независимая манипуляция с каждым из них невозможна, а одинаковые входные блоки будут давать на выходе разные блоки. Однако, задача распараллеливания процедуры кодирования в этом режиме затруднена. Дополнительным параметром процедур шифрования/дешифрования является параметр c0. В режиме CFB также происходит «маскировка» блока открытого текста уже зашифованными блоками: ci=mi Ek(ci-1), mi=Dk(ci-1) ci По своим возможностям данный режим похож на режим CBC, но если длина сообщения не кратна размеру блока шифра, то в режиме CBC необходимо дополнять последний блок дополнительными битами и сообщать на принимающую сторону истинный размер сообщения, а режим CFB позволяет сформировать шифротекст того же размера, что и исходное сообщение. В режиме OFB исходное сообщение вообще не подвергается криптопреобразованию, оно складывается с шифруемыми на секретном ключе блоками si (s0 является задаваемым несекретным параметром режима): ci=mi si , mi=ci si, si=Ek(si-1) В этом режиме, как и в режиме ECB, ошибки, которые могут возникнуть при передаче шифротекста по каналам связи, локализуются в блоке, не распространяясь на соседние, причем в режиме OFB ошибочными будут только биты, подвергшиеся изменению (в ECB изменится весь блок). Это дает возможность злоумышленнику незаметно для принимающей стороны подменить блок шифротекста. Возможности распараллеливания процедур шифрации/дешифрации затруднены. 2.3.4. Криптоанализ блочных шифров Методы криптоанализа совершенствовались наряду с развитием самих блочных шифров. Самым простым методом криптоанализа является частотный анализ, который применим для простых шифров замены. Рассмотрим принцип частотного криптоанализа на основе шифра Цезаря. В шифре Цезаря каждая буква исходного сообщения замещается на букву, находящуюся k символами правее, по модулю, равному количеству букв в алфавите: |
Учебное пособие является логическим продолжением пособия «Методы... Пласковский А. М., Новопашенный А. Г., Подгурский Ю. Е., Заборовский В. С. Методы и средства защиты компьютерной информации. Межсетевое... |
Миит кафедра “сапр транспортных конструкций и сооружений” ... |
||
Учебное пособие рпк «Политехник» Гринчук Ф. Ф., Хавроничев С. В. Комплектные распределительные устройства напряжением 610 кВ. Часть I: Учеб пособие / Воггту, Волгоград,... |
Учебное пособие рпк «Политехник» Гринчук Ф. Ф., Хавроничев С. В. Комплектные распределительные устройства напряжением 610 кВ. Часть II: Учеб пособие / Воггту, Волгоград,... |
||
Учебное пособие рпк «Политехник» Авторы: Б. А. Карташов (главы 5, 6); Е. В. Матвеева (главы 1, 2); Т. А, Смелова (глава 3); А. Е. Гаврилов (введение, глава 4) |
Учебное пособие Рекомендовано учебно-методическим объединением по... Шевченко Н. Ю. Электронная техника. Руководство к лабораторным работам: Учеб пособие / Волггту, Волгоград, 2006. – 52 с |
||
Учебное пособие Викторова Т. С., Парфенов С. Д. Системы компьютерной графики. Учебное пособие, том 13 Вязьма: филиал фгбоу впо «мгиу» в г. Вязьме,... |
Учебное пособие для подготовки войск го по зомп, М, гу по делам го... Ионизирующие излучения и методика их обнаружения. Приборы радиационной, химической разведки и дозиметрического контроля |
||
Учебное пособие М74 модели и методы управления персоналом: Российско-британское учебное пособие /Под ред. Е. Б. Моргунова (Серия «Библиотека журнала... |
Разъяснения по получению средства криптографической защиты информации «Континент-ап» Выдача средства криптографической защиты информации (далее скзи) «Континент-ап» производится на основании заключенного договора об... |
||
Учебное пособие Пенза 2014 удк 004. 415. 2(076. 5) М31 Рецензен т... М31 Методы и средства проектирования программного обеспечения : учеб пособие / Т. В. Черушева, Т. Ю. Горюнова. – Пенза : Пенз филиал... |
Монография рпк «Политехник» Книга предназначена для инженерно-технических работников проектных и эксплуатационных организаций объектов электроэнергетики и электротехники,... |
||
«защита информации от несанкционированного доступа» Фз о защите информации, который рассматривает проблемы защиты информации и задачи защиты информации, а также решает некоторые уникальные... |
И. Н. Привалов Современные методы и технические средства для испытаний... Учебное пособие предназначено для работников кабельных сетей энергосистем и промышленных предприятий |
||
А. И. Мансурова, Р. Р. Зиннатов методы кха в экологическом мониторинге учебное пособие Методы кха в экологическом мониторинге: Методическое пособие к лабораторным и практическим занятиям для студентов направления подготовки... |
Методические указания к практическим занятиям рпк «Политехник» Методические указания предназначены для проведения практических занятий по дисциплине “Базы данных” в соответствии со стандартом... |
Поиск |