Аппаратурная избыточность осуществляется за счет введения дополнительных технических устройств, обеспечивающих защиту информации.
Программно-аппаратная избыточность предполагает использование дополнительных программных, аппаратных и комбинированных средств защиты в системе обработки информации.
Информационная избыточность осуществляется за счет создания дополнительных информационных массивов, банков данных.
Временная избыточность предполагает выделение дополнительного времени для проведения обработки информации и др.
Класс 2.2. Резервирование элементов системы.
Резервирование в отличие от задачи введения избыточности предполагает не введение дополнительных элементов, обеспечивающих защиту информации, а их исключение и перевод в резерв на случай возникновения необходимости обработки дополнительного массива информации, повышения статуса защищенности информации, возникновения непредвиденных ситуаций. Такое резервирование может быть горячим и холодным.
При горячем резервировании элементы находятся в рабочем состоянии после дополнительных операций включения и подготовки к работе, а при холодном элементы переводятся в рабочее состояние после дополнительных операций.
Класс 2.3. Регулирование доступа к элементам системы и защищаемой информации.
Регулирование доступа к средствам, комплексам и системам обработки информации (на территорию, в помещение, к техническим средствам, к программам, к базам данных и т. п.) предполагает реализацию идентификации, проверки подлинности и контроля доступа, регистрацию субъекта, учет носителей информации в системе ее обработки.
Кроме того, к данному классу относятся задачи по установлению и регулированию контролируемых зон вокруг технических средств обработки информации, за пределами которых становятся невозможными выделение и регистрация с помощью технических средств разведки сигналов, содержащих конфиденциальную информацию. Такие сигналы могут возникать, например, за счет появления вокруг функционирующих средств обработки информации побочных электромагнитных излучений или наводок в проводах, выходящих за пределы контролируемой зоны.
Класс 2.4. Регулирование использования элементов системы и защищаемой информации.
Регулирование использования заключается в осуществлении запрашиваемых процедур (операций) при условии предъявления некоторых заранее обусловленных полномочий.
Для решения данного класса задач относительно конфиденциальной информации могут осуществляться такие операции, как ее дробление и ранжирование.
Дробление (расчленение) информации на части с таким условием, что знание какой-то одной части информации (например, знание одной операции технологии производства какого-то продукта) не позволяет восстановить всю картину, всю технологию в целом.
Ранжирование включает, во-первых, деление засекречиваемой информации по степени секретности и, во-вторых, регламентацию допуска и разграничение доступа к защищаемой информации: предоставление индивидуальных прав отдельным пользователям на доступ к необходимой им конкретной информации и на выполнение отдельных операций. Разграничение доступа к информации может осуществляться по тематическому признаку или по признаку секретности информации и определяется матрицей доступа.
Примером данного класса задач является доступ сотрудников к обслуживанию специальной техники только при наличии соответствующего разрешения.
Класс 2.5. Маскировка информации.
Маскировка информации заключается в преобразовании данных, исключающем доступ посторонних лиц к содержанию информации и обеспечивающем доступ разрешенным пользователям при предъявлении ими специального ключа преобразования. Решение этой задачи осуществляется на основе криптографических, некриптографических и смежных с ними (кодовое зашумление, ортогональные преобразования) преобразований.
Класс 2.6. Регистрация сведений.
Регистрация предполагает фиксацию всех сведений о фактах, событиях, возникающих в процессе функционирования средств и систем обработки информации, относящихся к защите информации, на основании которых осуществляется решение задач оценки состояния безопасности информации с целью повышения эффективности и управления механизмами защиты.
Класс 2.7. Уничтожение информации.
Решение задачи уничтожения информации представляется как процедура своевременного полного или частичного вывода из системы обработки элементов информации, компонентов системы, не представляющих практической, исторической, научной ценности, а также если их дальнейшее нахождение в системе обработки снижает безопасность информации.
Необходимо отметить, что для различных классов информационно-телекоммуникационных систем уничтожение информации будет иметь определенную специфику. Так, для систем автоматизированной обработки информации типичной процедурой является уничтожение остаточной информации в элементах ОЗУ, отдельных магнитных носителях, программных модулях, контрольных распечатках, выданных документах после решения соответствующей задачи обработки информации.
Для криптографических систем такой задачей может быть своевременное уничтожение носителей ключевой информации для шифрования данных в целях повышения криптостойкости (способности аппаратуры шифрования противостоять вскрытию секрета шифра).
Одной из разновидностей уничтожения информации является так называемое аварийное уничтожение, осуществляемое при явной угрозе злоумышленного доступа к информации повышенной важности.
Класс 2.8. Обеспечение сигнализации.
Решение задачи обеспечения сигнализации состоит в реализации процедуры сбора, генерирования, передачи, отображения и хранения сигналов о состоянии механизмов защиты с целью обеспечения регулярного управления ими, а также объектами и процессами обработки информации. Этот класс задач обеспечивает обратную связь в системе управления, чем достигается обеспечение активности системы защиты. В основном такие задачи решаются с помощью технических средств сигнализации.
Класс 2.9. Обеспечение реагирования.
Получив по каналам обратной связи информацию о состоянии системы защиты, в соответствии с законами управления орган управления должен при необходимости выработать управленческое решение, т. е. отреагировать на полученный сигнал. Реагирование на проявление дестабилизирующих факторов является признаком активности системы защиты информации, реализация которого направлена на предотвращение или снижение степени воздействия факторов на информацию.
Класс 2.10. Управление системой защиты информации.
Этот класс объединяет широкий круг задач, связанных с контролем правильности функционирования механизмов обработки и защиты информации, оценкой внутренних и внешних угроз, планированием защиты и т. д. При этом понятие «контроль» рассматривается в узком смысле и сводится к проверкам эффективности реализации технических и, в частности, аппаратных мер защиты: соответствия элементов системы заданному их составу, текущего состояния элементов системы, работоспособности элементов системы, правильности функционирования элементов системы, отсутствия несанкционированных устройств и систем съема информации.
Класс 2.11. Обеспечение требуемого уровня готовности обслуживающего персонала к решению задач информационной безопасности.
Приведенный ранее анализ угроз информации показал, что одной из наиболее значимых причин нарушения ее целостности является ошибки и сбои в работе персонала. В связи с этим к рассматриваемому классу относятся задачи достижения необходимого уровня теоретической подготовки и практических навыков в работе (подготовка персонала), а также задачи формирования высокой психофизиологической устойчивости к воздействию дестабилизирующих факторов и моральной устойчивости к разглашению конфиденциальных сведений (подбор, оценка персонала, стимулирование его деятельности и др.).
К третьему виду относятся задачи защиты информации от инфор-мационного воздействии. К ним можно отнести следующие классы задач.
Класс 3.1. Защита от информационного воздействия на технические средства обработки.
Информационное воздействие на технические средства обработки, хранения и передачи информации может быть направлено:
• на уничтожение информации (например, электронное подавление средств связи);
• искажение или модификацию информации и логических связей (внедрение компьютерных вирусов);
• внедрение ложной информации в систему.
Таким образом, данный класс включает задачи реализации технических средств и организационно-технических мероприятий по защите от рассмотренных направлений воздействия. Класс 3.2. Защита от информационного воздействия на общество.
Задачи предполагают разработку и реализацию методов защиты от негативного воздействия через СМИ на общественное сознание людей. Целями такого воздействия могут быть, например, навязывание общественного мнения (пропаганда), решение экономических вопросов (реклама), разрушение национальных традиций и культуры (навязывание со стороны других государств чуждых культурных ценностей) и др.
Класс 3.3. Защита от информационного воздействия на психику человека.
Включает широкий круг задач, направленных как непосредственно на защиту от технических средств воздействия на психику (психотронного оружия), так и на определение и формирование у человека высокой стрессоустойчивости, высоких моральных качеств и т. д., позволяющих противостоять такому воздействия.
Рассмотрев содержание вышеперечисленных классов, можно сделать вывод, что под задачей защиты информации понимаются организованные возможности средств, методов и мероприятий, используемых на объекте обработки информации с целью осуществления функций защиты.
13.4 Функции защиты
Под функцией защиты понимается множество действий, реализаций, проведение функционально однородных мероприятий, осуществляемых на объектах обработки конфиденциальной информации различными средствами, способами и методами с целью обеспечения заданных уровней защищенности информации. Множество функций обеспечения защиты в различных их комбинациях должно создавать условия для обеспечения надежной защиты независимо от условий внешних воздействий, внутренних неопределенностей систем обработки и защиты информации.
13.5 Состояния и функции системы защиты информации
В зависимости от событий потенциальных воздействий угроз и мер, снижающих их влияние, система защиты переходит в определенные состояния, соответствующие событиям.
Состояние 1 - защита информации обеспечена, если при наличии условий, способствующих появлению угроз, их воздействие на защищаемую информацию предотвращено или, ликвидированы последствия такого воздействия.
Состояние 2 - защита информации нарушена, если невозможно предотвратить воздействие на нее угроз, однако оно обнаружено и локализовано.
Состояние 3 - защиты информации разрушена, если результаты воздействий на нее угроз не только не предотвращены, но и не локализованы.
Множество функций защиты информации определяется следующей последовательностью действий, обеспечивающей выполнение конечной цели - достижение требуемого уровня информационной безопасности. Прежде всего, необходимо попытаться предупредить возникновение условий, благоприятствующих появлению угроз информации. Выполнение этой функции в связи с большим количеством таких угроз и случайным характером их проявлений имеет вероятность, близкую к нулю. Поэтому следующим шагом должно быть своевременное обнаружение проявившихся угроз и предупреждение их воздействия на информацию. Если все-таки такое воздействие произошло, необходимо вовремя его обнаружить и локализовать с целью недопущения распространения этого воздействия на всю конфиденциальную информацию, обрабатываемую на объекте. И последней функцией защиты должна быть ликвидация последствий указанного воздействия для восстановления требуемого состояния безопасности информации. Рассмотрим эти функции несколько подробнее.
Функция 1 - предупреждение проявления угроз. Реализация этой функции носит упреждающую цель и должна способствовать такому архитектурно-функциональному построению современных систем обработки и защиты информации, которое обеспечивало бы минимальные возможности появления дестабилизирующих факторов в различных условиях функционирования систем. Например, для предупреждения возможности установки в помещении закладных устройств необходимо с помощью технических средств и организационных мероприятий обеспечить невозможность несанкционированного доступа в него.
Функция 2 - обнаружение проявившихся угроз и предупреждение их воздействия на информацию. Осуществляется комплекс мероприятий, в результате которых проявившиеся угрозы должны быть обнаружены до их воздействия на защищаемую информацию, а также обеспечено недопущение воздействий этих угроз на защищаемую информацию в условиях их проявления и обнаружения. Так, для нейтрализации закладных устройств необходимо регулярно проводить специальные проверки помещений, устанавливать системы их автоматического поиска, а для предупреждения их воздействия на конфиденциальную информацию использовать устройства защиты типа генераторов объемного зашумления, позволяющих создавать вокруг устройств обработки информации шумовое поле.
Функция 3 - обнаружение воздействия угроз на защищаемую информацию и локализация этого воздействия. Содержание функции направлено на непрерывный контроль средств, комплексов, систем обработки, защиты информации и различных компонентов защищаемой информации с целью своевременного обнаружения фактов воздействия на них угроз. Своевременное обнаружение предполагает обеспечение реальной возможности локализации воздействия на информацию, т. е. минимизацию возможного нарушения ее целостности и защищенности и недопущение распространения этого воздействия за пределы допустимых размеров. В компьютерных системах, например, эту функцию реализуют аппаратно-программные средства контроля и регистрации попыток несанкционированного доступа в систему или к информации (цифровая подпись).
Функция 4 - ликвидация последствий воздействия угроз. Функция предусматривает проведение мероприятий защиты в отношении обнаруженного и локализованного воздействия угроз на информацию, т. е. осуществляется восстановление системы обработки, защиты информации и состояния защищаемой информации применением соответствующего множества средств, способов и мероприятий защиты.
14 Стратегии защиты информации
Стратегия - это общая, рассчитанная на перспективу руководящая установка при организации и обеспечении соответствующего вида деятельности, направленная на то, чтобы наиболее важные цели этой деятельности достигались при наиболее рациональном расходовании имеющихся ресурсов.
Организация защиты информации в самом общем виде может быть определена как поиск оптимального компромисса между потребностями в защите и необходимыми для этих целей ресурсами.
Потребности в защите обусловливаются прежде всего важностью и объемами защищаемой информации, а также условиями ее хранения, обработки и использования. Эти условия определяются уровнем (качеством) структурно-организационного построения объекта обработки информации, уровнем организации технологических схем обработки, местом и условиями расположения объекта и его компонентов и другими параметрами.
Размер ресурсов на защиту информации может быть ограничен определенным пределом либо определяется условием обязательного достижения требуемого уровня защиты. В первом случае защита должна быть организована так, чтобы при выделенных ресурсах обеспечивался максимально возможный уровень защиты, а во втором - чтобы требуемый уровень защиты обеспечивался при минимальном расходовании ресурсов.
Сформулированные задачи есть не что иное, как прямая и обратная постановка оптимизационных задач. Существует две проблемы, затрудняющие формальное решение.
Первая - процессы защиты информации находятся в значительной зависимости от большого числа случайных и труднопредсказуемых факторов, таких, как поведение злоумышленника, воздействие природных явлений, сбои и ошибки в процессе функционирования элементов системы обработки информации и др.
Вторая - среди средств защиты весьма заметное место занимают организационные меры, связанные с действием человека.
Обоснование числа и содержания необходимых стратегий будем осуществлять по двум критериям: требуемому уровню защиты и степени свободы действий при организации защиты. Значения первого критерия лучше всего выразить множеством тех угроз, относительно которых должна быть обеспечена защита:
1) от наиболее опасных из известных (ранее появившихся) угроз;
2) ото всех известных угроз;
3) ото всех потенциально возможных угроз.
Второй критерий выбора стратегий защиты сводится к тому, что организаторы и исполнители процессов защиты имеют относительно полную свободу распоряжения методами и средствами защиты и некоторую степень свободы вмешательства в архитектурное построение системы обработки информации, а также в организацию и обеспечение технологии ее функционирования. По этому аспекту удобно выделить три различные степени свободы.
1. Никакое вмешательство в систему обработки информации не допускается. Такое требование может быть предъявлено к уже функционирующим системам обработки информации, и нарушение процесса их функционирования для установки механизмов защиты не разрешается.
2. К архитектурному построению системы обработки информации и технологии ее функционирования допускается предъявлять требования неконцептуального характера. Другими словами, допускается приостановка процесса функционирования системы обработки информации для установки некоторых механизмов защиты.
3. Требования любого уровня, обусловленные потребностями защиты информации, принимаются в качестве обязательных условий при построении системы обработки информации, организации и обеспечении их функционирования.
15 Способы и средства защиты информации
Множество и разнообразие возможных средств защиты информации определяется прежде всего возможными способами воздействия на дестабилизирующие факторы или порождающие их причины, причем воздействия в направлении, способствующем повышению значений показателей защищенности или (по крайней мере) сохранению прежних (ранее достигнутых) их значений.
Рассмотрим содержание представленных способов и средств обеспечения безопасности.
Препятствие заключается в создании на пути возникновения или распространения дестабилизирующего фактора некоторого барьера, не позволяющего соответствующему фактору принять опасные размеры. Типичными примерами препятствий являются блокировки, не позволяющие техническому устройству или программе выйти за опасные границы; создание физических препятствий на пути злоумышленников, экранирование помещений и технических средств и т. п.
Управление есть определение на каждом шаге функционирования систем обработки информации таких управляющих воздействий на элементы системы, следствием которых будет решение (или способствование решению) одной или нескольких задач защиты информации. Например, управление доступом на объект включает следующие функции защиты:
• идентификацию лиц, претендующих на доступ, персонала и ресурсов системы (присвоение каждому объекту персонального идентификатора);
• опознавание (установление подлинности) объекта или субъекта по предъявленному идентификатору;
• проверку полномочий (проверка соответствия дня недели, времени суток, запрашиваемых ресурсов и процедур установленному регламенту);
• регистрацию (протоколирование) обращений к защищаемым ресурсам;
• реагирование (сигнализация, отключение, задержка работ, отказ в процессе) при попытках несанкционированных действий.
Маскировка предполагает такие преобразования информации, вследствие которых она становится недоступной для злоумышленников или такой доступ существенно затрудняется, а также комплекс мероприятий по уменьшению степени распознавания самого объекта. К маскировке относятся криптографические методы преобразования информации, скрытие объекта, дезинформация и легендирование, а также меры по созданию шумовых полей, маскирующих информационные сигналы.
Регламентация как способ защиты информации заключается в разработке и реализации в процессе функционирования объекта комплекса мероприятий, создающих такие условия, при которых существенно затрудняются проявление и воздействие угроз. К регламентации относится разработка таких правил обращения с конфиденциальной информацией и средствами ее обработки, которые позволили бы максимально затруднить получение этой информации злоумышленником.
Принуждение - такой метод защиты, при котором пользователи и персонал системы вынуждены соблюдать правила обработки, передачи и использования защищаемой информации под угрозой материальной, административной или уголовной ответственности.
Побуждение есть способ защиты информации, при котором пользователи и персонал объекта внутренне (т. е. материальными, моральными, этическими, психологическими и другими мотивами) побуждаются к соблюдению всех правил обработки информации.
Как отдельный, применяемый при ведении активных действий противоборствующими сторонами можно выделить такой способ, как нападение. При этом подразумевается как применение информационного оружия при ведении информационной войны, так и непосредственное физическое уничтожение противника (при ведении боевых действий) или его средств разведки.
Рассмотренные способы обеспечения защиты информации реализуются с применением различных методов и средств. При этом различают формальные и неформальные средства. К формальным относятся такие средства, которые выполняют свои функции по защите информации формально, т. е. преимущественно без участия человека. К неформальным относятся средства, основу которых составляет целенаправленная деятельность людей. Формальные средства делятся на физические, аппаратные и программные.
Физические средства - механические, электрические, электромеханические и т. п. устройства и системы, которые функционируют автономно, создавая различного рода препятствия на пути дестабилизирующих факторов.
Аппаратные средства - различные электронные и электронно-механические и т. п. устройства, схемно встраиваемые в аппаратуру системы обработки данных или сопрягаемые с ней специально для решения задач защиты информации. Например, для защиты от утечки по техническим каналам используются генераторы шума.
Физические и аппаратные средства объединяются в класс технических средств защиты информации.
Программные средства - специальные пакеты программ или отдельные программы, включаемые в состав программного обеспечения автоматизированных систем с целью решении задач защиты информации. Это могут быть различные программы по криптографическому преобразованию данных, контролю доступа, защиты от вирусов и др.
Неформальные средства делятся на организационные, законодательные и морально-этические.
Организационные средства - специально предусматриваемые
в технологии функционирования объекта организационно-технические мероприятия для решения задач защиты информации, осуществляемые в виде целенаправленной деятельности людей.
Законодательные средства - существующие в стране или специально издаваемые нормативно-правовые акты, с помощью которых регламентируются права и обязанности, связанные с обеспечением защиты информации, всех лиц и подразделений, имеющих отношение к функционированию системы, а также устанавливается ответственность за нарушение правил обработки информации, следствием чего может быть нарушение защищенности информации.
Морально-этические нормы - сложившиеся в обществе или данном коллективе моральные нормы или этические правила, соблюдение которых способствует защите информации, а нарушение их приравнивается к несоблюдению правил поведения в обществе или коллективе. Именно человек, сотрудник предприятия или учреждения, допущенный к секретам и накапливающий в своей памяти колоссальные объемы информации, в том числе секретной, нередко становится источником утечки этой информации или по его вине соперник получает возможность несанкционированного доступа к носителям защищаемой информации.
Морально-нравственные методы защиты информации предполагают прежде всего воспитание сотрудника, допущенного к секретам, т. е. проведение специальной работы, направленной на формирование у него системы определенных качеств, взглядов и убеждений (патриотизма, понимания важности и полезности защиты информации и для него лично) и обучение сотрудника, осведомленного в сведениях, составляющих охраняемую тайну, правилам и методам защиты информации, привитие ему навыков работы с носителями секретной и конфиденциальной информации.
Интересный подход к формированию множества способов защиты предлагает член-корреспондент Академии криптографии . В основу названной им «абсолютной системы защиты», обладающей всеми возможными способами защиты, положены основные принципы защиты, реализуемые в живой природе. Развивая этот подход, можно выделить следующие основные способы защиты животного мира в сравнении с рассмотренными способами защиты информации.
1. Пассивная защита. Перекрывает все возможные каналы воздействия угроз и предполагает «надевание брони» на себя и создание территориальных препятствий. Налицо полное соответствие такому способу защиты информации, как препятствие.
2. Изменение местоположения. Желание спрятаться можно соотнести с таким способом, как сокрытие.
3. Изменение собственной внешности, мимикрия - слияние с ландшафтом и т. п. Цель - представиться объектом неинтересным или незаметным для нападающей стороны. Аналогичную функцию защиты информации реализуют ее маскировкой.
4. Нападение с целью уничтожения нападающего. Выше был рассмотрен соответствующий способ защиты информации.
5. Воспитание навыков безопасности у потомства, доведение этих навыков до уровня инстинкта. Для систем защиты информации аналогичные навыки у обслуживающего персонала формируются принуждением и побуждением.
6. Выработка определенных правил жизнедеятельности, способствующих выживанию и сохранению рода. К таким правилам, выработанным природой, можно отнести мирное существование особей одного вида, жизнь в стаях (стадах) и т. д. Другими словами, природа регламентирует необходимые для безопасности правила жизни.
Таким образом, анализ присущих животному миру защитных свойств, положенный в основу так называемой «абсолютной системы защиты», показывает, что все они соответствует рассмотренным способам защиты информации, что подтверждает полноту их формирования.
16 Криптографические методы защиты информации
Проблема защиты информации путем ее преобразования, исключающего ее прочтение посторонним лицом, волновала человеческий ум с давних времен. История криптографии - ровесница истории человеческого языка. Более того, первоначально письменность сама по себе была криптографической системой, так как в древних обществах ею владели только избранные. Священные книги Древнего Египта, Древней Индии тому примеры.
Разные люди понимают под шифрованием разные вещи. Дети играют в игрушечные шифры и секретные языки. Это, однако, не имеет ничего общего с настоящей криптографией. Настоящая криптография (strong cryptography) должна обеспечивать такой уровень секретности, чтобы можно было надежно защитить критическую информацию от расшифровки крупными организациями - такими, как мафия, транснациональные корпорации (тнк) и крупные государства. Настоящая криптография в прошлом использовалась лишь в военных целях. Однако сейчас, со становлением информационного общества, она становится центральным инструментом для обеспечения конфиденциальности.
По мере образования информационного общества крупным государствам становятся доступны технологические средства тотального надзора за миллионами людей. Поэтому криптография становится одним из основных инструментов, обеспечивающих конфиденциальность, доверие, авторизацию, электронные платежи, корпоративную безопасность и бесчисленное множество других важных вещей.
Криптография не является более придумкой военных, с которой не стоит связываться. Настала пора снять с криптографии покровы таинственности и использовать все ее возможности на пользу современному обществу. Широкое распространение криптографии является одним из немногих способов защитить человека от ситуации, когда он вдруг обнаруживает, что живет в тоталитарном государстве, которое может контролировать каждый его шаг.
Бурное развитие криптографические системы получили в годы первой и второй мировых войн. Начиная с послевоенного времени и по нынешний день появление вычислительных средств ускорило разработку и совершенствование криптографических методов.
Почему проблема использования криптографических методов в ИС стала в настоящий момент особо актуальна?
С одной стороны, расширилось использование компьютерных сетей, в частности глобальной сети Интернет, по которым передаются большие объемы информации государственного, военного, коммерческого и частного характера, не допускающего возможность доступа к ней посторонних лиц.
С другой стороны, появление новых мощных компьютеров, технологий сетевых и нейронных вычислений сделало возможным дискредитацию криптографических систем, еще недавно считавшихся практически нераскрываемыми.
Проблемой защиты информации путем ее преобразования занимается криптология (kryptos - тайный, logos - наука). Криптология разделяется на два направления - криптографию и криптоанализ. Цели этих направлений прямо противоположны.
Криптография занимается поиском и исследованием математических методов преобразования информации.
Сфера интересов криптоанализа - исследование возможности расшифровывания информации без знания ключей.
Современная криптография включает в себя 4 крупных раздела.
1. Симметричные криптосистемы.
2. Криптосистемы с открытым ключом.
3. Системы электронной подписи.
4. Управление ключами.
Основные направления использования криптографических методов - передача конфиденциальной информации по каналам связи (например, электронная почта), установление подлинности передаваемых сообщений, хранение информации (документов, баз данных) на носителях в зашифрованном виде.
Терминология. Итак, криптография дает возможность преобразовать информацию таким образом, что ее прочтение (восстановление) возможно только при знании ключа.
В качестве информации, подлежащей шифрованию и дешифрованию, будут рассматриваться тексты, построенные на некотором алфавите. Под этими терминами понимается следующее.
Алфавит - конечное множество используемых для кодирования информации знаков.
Текст - упорядоченный набор из элементов алфавита.
В качестве примеров алфавитов, используемых в современных ИС, можно привести следующие:
• алфавит Z3буквы русского алфавита и пробел;
• алфавит Z256 - символы, входящие в стандартные коды ASCII и КОИ-8;
• бинарный алфавит - Z2 = {0,1};
• восьмеричный алфавит или шестнадцатеричный алфавит.
Шифрование - преобразовательный процесс: исходный текст, который носит также название открытого текста, заменяется шифрованным текстом.
Дешифрование - обратный шифрованию процесс. На основе ключа шифрованный текст преобразуется в исходный.
Ключ - информация, необходимая для беспрепятственного шифрования и дешифрования текстов.
Криптографическая система представляет собой семейство Т [Т1, Т2, ..., Тк] преобразований открытого текста. Члены этого семейства индексируются, или обозначаются символом к; параметр к является ключом. Пространство ключей К - это набор возможных значений ключа. Обычно ключ представляет собой последовательный ряд букв алфавита.
Криптосистемы разделяются на симметричные и с открытым ключом.
В симметричных криптосистемах и для шифрования, и для дешифрования используется один и тот же ключ.
В системах с открытым ключом используются два ключа - открытый и закрытый, которые математически связаны друг с другом. Информация шифруется с помощью открытого ключа, который доступен всем желающим, а расшифровывается с помощью закрытого ключа, известного только получателю сообщения [29].
Термины распределение ключей и управление ключами относятся к процессам системы обработки информации, содержанием которых является составление и распределение ключей между пользователями.
Электронной (цифровой) подписью называется присоединяемое к тексту его криптографическое преобразование, которое позволяет при получении текста другим пользователем проверить авторство и подлинность сообщения.
Криптостойкостью называется характеристика шифра, определяющая его стойкость к дешифрованию без знания ключа (т. е. криптоанализу). Имеется несколько показателей криптостойкости, среди которых:
• количество всех возможных ключей;
• среднее время, необходимое для криптоанализа.
Преобразование Тk определяется соответствующим алгоритмом и значением параметра k. ЭФФЕКТИВНОСТЬ шифрования с целью защиты информации зависит от сохранения тайны ключа и криптостойкости шифра.
16.1 Требования к криптосистемам
Процесс криптографического закрытия данных может осуществляться как программно, так и аппаратно. Аппаратная реализация отличается существенно большей стоимостью, однако ей присущи и преимущества: высокая производительность, простота, защищенность и т. д. Программная реализация более практична, допускает известную гибкость в использовании.
Для современных криптографических систем защиты информации сформулированы следующие общепринятые требования:
• зашифрованное сообщение должно поддаваться чтению только при наличии ключа;
• число операций, необходимых для определения использованного ключа шифрования по фрагменту шифрованного сообщения и соответствующего ему открытого текста, должно быть не меньше общего числа возможных ключей;
• число операций, необходимых для расшифровывания информации путем перебора всевозможных ключей, должно иметь строгую нижнюю оценку и выходить за пределы возможностей современных компьютеров (с учетом возможности использования сетевых вычислений);
• знание алгоритма шифрования не должно влиять на надежность защиты;
• незначительное изменение ключа должно приводить к существенному изменению вида зашифрованного сообщения даже при использовании одного и того же ключа;
• структурные элементы алгоритма шифрования должны быть неизменными;
• дополнительные биты, вводимые в сообщение в процессе шифрования, должен быть полностью и надежно скрыты в шифрованном тексте;
• длина шифрованного текста должна быть равной длине исходного текста;
• не должно быть простых и легко устанавливаемых зависимостей между ключами, последовательно используемыми в процессе шифрования;
• любой ключ из множества возможных должен обеспечивать надежную защиту информации;
• алгоритм должен допускать как программную, так и аппаратную реализацию, при этом изменение длины ключа не должно вести к качественному ухудшению алгоритма шифрования.
16.2 Основные алгоритмы шифрования
Метод шифровки-дешифровки называют шифром (cipher). Некоторые алгоритмы шифрования основаны на том, что сам метод шифрования (алгоритм) является секретным. Ныне такие методы представляют лишь исторический интерес и не имеют практического значения. Все современные алгоритмы используют ключ для управления шифровкой и дешифровкой; сообщение может быть успешно дешифровано, только если известен ключ. Ключ, используемый для дешифровки, может не совпадать с ключом, используемым для шифрования, однако в большинстве алгоритмов ключи совпадают.
Алгоритмы с использованием ключа делятся на два класса: симметричные (или алгоритмы с секретным ключом) и асимметричные (или алгоритмы с открытым ключом). Разница в том, что симметричные алгоритмы используют один и тот же ключ для шифрования и для дешифрования (или же ключ для дешифровки просто вычисляется по ключу шифровки). В то время как асимметричные алгоритмы используют разные ключи и ключ для дешифровки не может быть вычислен по ключу шифровки.
Симметричные алгоритмы подразделяют на потоковые шифры и блочные шифры. Потоковые позволяют шифровать информацию поби-тово, в то время как блочные работают с некоторым набором битов данных (обычно размер блока составляет 64 бита) и шифруют этот набор как единое целое.
Асимметричные шифры (также именуемые алгоритмами с открытым ключом или - в более общем плане - криптографией с открытым ключом) допускают, чтобы открытый ключ был доступен всем (скажем, опубликован в газете). Это позволяет любому зашифровать сообщение. Однако расшифровать это сообщение сможет только нужный человек (тот, кто владеет ключом дешифровки). Ключ для шифрования называют открытым ключом, а ключ для дешифрования - закрытым ключом или секретным ключом.
Современные алгоритмы шифровки-дешифровки достаточно сложны и их невозможно проводить вручную. Настоящие криптографические алгоритмы разработаны для использования компьютерами или специальными аппаратными устройствами. В большинстве приложений криптография производится программным обеспечением и имеется множество доступных криптографических пакетов.
Вообще говоря, симметричные алгоритмы работают быстрее, чем асимметричные. На практике оба типа алгоритмов часто используются
вместе: алгоритм с открытым ключом используется для того, чтобы передать случайным образом сгенерированный секретный ключ, который затем используется для дешифровки сообщения.
Многие качественные криптографические алгоритмы доступны широко - в книжном магазине, библиотеке, патентном бюро или в Интернете. К широко известным симметричным алгоритмам относятся DES и IDEA, Наверное самым лучшим асимметричным алгоритмом является RSA. В России за стандарт шифрования принят ГОСТ .
16.3 Цифровые подписи
Некоторые из асимметричных алгоритмов могут использоваться для генерирования цифровой подписи. Цифровой подписью называют блок данных, сгенерированный с использованием некоторого секретного ключа. При этом с помощью открытого ключа можно проверить, что данные были действительно сгенерированы с помощью этого секретного ключа. Алгоритм генерации цифровой подписи должен обеспечивать, невозможность без секретного ключа создать подпись, которая при проверке окажется правильной.
Цифровые подписи используются для того, чтобы подтвердить, что сообщение пришло действительно от данного отправителя (в предположении, что лишь отправитель обладает секретным ключом, соответствующим его открытому ключу). Также подписи используются для про-ставления штампа времени (timestamp) на документах: сторона, которой мы доверяем, подписывает документ со штампом времени с помощью своего секретного ключа и, таким образом, подтверждает, что документ уже существовал в момент, объявленный в штампе времени.
Цифровые подписи также можно использовать для удостоверения (сертификации - to certify) того, что документ принадлежит определенному лицу. Это делается так: открытый ключ и информация о том, кому он принадлежит, подписываются стороной, которой доверяем. При этом доверять подписывающей стороне мы можем на основании того, что ее ключ был подписан третьей стороной. Таким образом возникает иерархия доверия. Очевидно, что некоторый ключ должен быть корнем иерархии (т. е. ему мы доверяем не потому, что он кем-то подписан, а потому, что мы верим априори, что ему можно доверять). В централизованной инфраструктуре ключей имеется очень небольшое количество корневых ключей сети (например, облеченные полномочиями государственные агентства; их также называют сертификационными агентствами -certification authorities). В распределенной инфраструктуре нет необходимости иметь универсальные для всех корневые ключи, и каждая из сторон может доверять своему набору корневых ключей (скажем, своему собственному ключу и ключам, им подписанным). Эта концепция носит название сети доверия (web of trust) и реализована, например, в PGP.
Цифровая подпись документа обычно создается так: из документа генерируется так называемый дайджест (message digest) и к нему добавляется информация о том, кто подписывает документ, штамп времени и пр. Получившаяся строка далее зашифровывается секретным ключом подписывающего с использованием того или иного алгоритма. Получившийся зашифрованный набор битов и представляет собой подпись. К подписи обычно прикладывается открытый ключ подписывающего. Получатель сначала решает для себя, доверяет ли он тому, что открытый ключ принадлежит именно тому, кому должен принадлежать (с помощью сети доверия или априорного знания), и затем дешифрует подпись с помощью открытого ключа. Если подпись нормально дешифровалась и ее содержимое соответствует документу (дайджест и др.), то сообщение считается подтвержденным.
Свободно доступны несколько методов создания и проверки цифровых подписей. Наиболее известным является алгоритм RSA, ГОСТ 34.10-94.
16.4 Криптографические хеш-функции
Криптографические хеш-функции используются обычно для генерации дайджеста сообщения при создании цифровой подписи. Хеш-функции преобразовывают сообщение в имеющее фиксированный размер хеш-значение (hash value) таким образом, что все множество возможных сообщений распределяется равномерно по множеству хеш-значений. При этом криптографическая хеш-функция делает это так, что практически невозможно подогнать документ к заданному хеш-значению.
Криптографические хеш-функции обычно производят значения длиной в 128 и более бит. Это число значительно больше, чем количество сообщений, которые когда-либо будут существовать в мире.
Много хороших криптографических хеш-функций доступно бесплатно. Широко известные включают MD5 и SHA.
16.5 Криптографические генераторы случайных чисел
Криптографические генераторы случайных чисел производят случайные числа, которые используются в криптографических приложениях, например для генерации ключей. Обычные генераторы случайных чисел, имеющиеся во многих языках программирования и программных средах, не подходят для нужд криптографии (они создавались с целью получить статистически случайное распределение, криптоаналитики могут предсказать поведение таких случайных генераторов).
В идеале случайные числа должны основываться на настоящем физическом источнике случайной информации, которую невозможно предсказать. Примеры таких источников включают шумящие полупроводниковые приборы, младшие биты оцифрованного звука, интервалы между прерываниями устройств или нажатиями клавиш. Полученный от физического источника шум затем «дистиллируется» криптографической хеш-функцией так, чтобы каждый бит зависел от каждого бита. Достаточно часто для хранения случайной информации используется довольно большой пул (несколько тысяч бит) и каждый бит пула делается зависимым от каждого бита шумовой информации и каждого другого бита пула криптографически надежным (strong) способом.
Когда нет настоящего физического источника шума, приходится пользоваться псевдослучайными числами. Такая ситуация нежелательна, но часто возникает на компьютерах общего назначения. Всегда нужно получить некий шум окружения, скажем от величины задержек в устройствах, цифры статистики использования ресурсов, сетевой статистики, прерываний от клавиатуры или чего-то иного. Задачей является получить данные, непредсказуемые для внешнего наблюдателя. Для достижения этого случайный пул должен содержать как минимум 128 бит настоящей энтропии.
Криптографические генераторы псевдослучайных чисел обычно используют большой пул (seed-значение), содержащий случайную информацию. Биты генерируется путем выборки из пула с возможным прогоном через криптографическую хеш-функцию, чтобы спрятать содержимое пула от внешнего наблюдателя. Когда требуется новая порция битов, пул перемешивается путем шифровки со случайным ключом (его можно взять из неиспользованной пока части пула) так, чтобы каждый бит пула зависел от каждого другого бита. Новый шум окружения должен добавляться к пулу перед перемешиваниям, дабы сделать предсказание новых значений пула еще более сложным.
Несмотря на то что при аккуратном проектировании криптографически надежный генератор случайных чисел реализовать не так уж и трудно, этот вопрос часто упускают из виду. Таким образом, следует подчеркнуть важность криптографического генератора случайных чисел - если он сделан плохо, он может легко стать самым уязвимым элементом системы.
16.6 Обеспечиваемая шифром степень защиты
Хорошие криптографические системы создаются таким образом, чтобы сделать их вскрытие как можно более трудным делом. Можно построить системы, которые на практике невозможно вскрыть (хотя доказать сей факт обычно нельзя). При этом не требуется очень больших усилий для реализации. Единственное, что требуется, - это аккуратность и базовые знания. Нет прощения разработчику, если он оставил возможность для вскрытия системы. Все механизмы, которые могут использоваться для взлома системы, надо задокументировать и довести до сведения конечных пользователей.
Теоретически любой шифровальный алгоритм с использованием ключа может быть вскрыт методом перебора всех значений ключа. Если ключ подбирается методом грубой силы (brute force), требуемая мощность компьютера растет экспоненциально с увеличением длины ключа.
Ключ длиной 32 бита требует 232 (около 109) шагов. Такая задача под силу любому дилетанту и решается на домашнем компьютере. Системы с 40-битовым ключом (например, экспортный американский вариант алгоритма RC4) требуют 240 шагов - такие компьютерные мощности имеются в большинстве университетов и даже в небольших компаниях. Системы с 56-битовыми ключами (DES) требуют для вскрытия заметных усилий, однако могут быть легко вскрыты с помощью специальной аппаратуры. Стоимость такой аппаратуры значительна, но доступна для мафии, крупных компаний и правительств. Ключи длиной 64 бита в настоящий момент, возможно, могут быть вскрыты крупными государствами и уже в ближайшие несколько лет будут доступны для вскрытия преступными организациями, крупными компаниями и небольшими государствами. Ключи длиной 80 бит могут в будущем стать уязвимыми. Ключи длиной 128 бит, вероятно, останутся недоступными для вскрытия, методом грубой силы в обозримом будущем. Можно использовать и более длинные ключи. В пределе нетрудно добиться того, чтобы энергия, требуемая для вскрытия (считая, что на один шаг затрачивается минимальный квантовомеханический квант энергии), превзойдет массу Солнца или Вселенной.
Однако длина ключа это еще не все. Многие шифры можно вскрыть и не перебирая всех возможных комбинаций. Вообще говоря, очень трудно придумать шифр, который нельзя было бы вскрыть другим более эффективным способом. Разработка собственных шифров может стать приятным занятием, но для реальных приложений использовать самодельные шифры не рекомендуется, если вы не являетесь экспертом и не уверены на 100 % в том, что делаете.
Вообще говоря, следует держаться в стороне от неопубликованных или секретных алгоритмов. Часто разработчик такого алгоритма не уверен в его надежности или же надежность зависит от секретности самого алгоритма. Вообще говоря, ни один алгоритм, секретность которого зави-сит от секретности самого алгоритма, не является надежным. В частно-сти, имея шифрующую программу, можно нанять программиста, который дизассемблирует ее и восстановит алгоритм методом обратной инженерии. Опыт показывает, что большинство секретных алгоритмов, ставших впоследствии достоянием общественности, оказались до смешного ненадежными.
Длины ключей, используемых в криптографии с открытым ключом, обычно значительно больше, чем в симметричных алгоритма. Здесь проблема заключается не в подборе ключа, а в воссоздании секретного ключа по открытому. В случае RSA проблема эквивалентна разложению на множители большого целого числа, которое является произведением пары неизвестных простых чисел. В случае некоторых других криптосистем проблема эквивалентна вычислению дискретного логарифма по модулю большого целого числа (такая задача считается примерно аналогичной по трудности задаче разложения на множители). Имеются криптосистемы, которые используют другие проблемы.
Чтобы дать представление о степени сложности вскрытия RSA, скажем, что модули длиной 256 бит легко факторизуются обычными программистами. Ключи в 384 бита могут быть вскрыты исследовательской группой университета или компании; 512-битовые ключи находятся в пределах досягаемости крупных государств. Ключи длиной 768 бит, вероятно, не будут надежны продолжительное время. Ключи длиной 1024 бита могут считаться безопасными до тех пор, пока не будет существенного прогресса в алгоритме факторизации; ключи длиной 2048 бит большинство считает надежными на десятилетия. Более подробную информацию о длинах ключей RSA можно почерпнуть из статьи.
Важно подчеркнуть, что степень надежности криптографической системы определяется ее слабейшим звеном. Нельзя упускать из виду ни одного аспекта разработки системы - от выбора алгоритма до политики использования и распространения ключей.
16.7 Криптоанализ и атаки на криптосистемы
Криптоанализ - это наука о дешифровке закодированных сообщений не зная ключей. Имеется много криптоаналитических подходов. Некоторые из наиболее важных для разработчиков приведены ниже.
Атака со знанием лишь шифрованного текста (ciphertext-only attack). Это ситуация, когда атакующий не знает ничего о содержании сообщения и ему приходится работать лишь с самим шифрованным текстом. На практике часто можно сделать правдоподобные предположения о структуре текста, поскольку многие сообщения имеют стандартные заголовки. Даже обычные письма и документы начинаются с легко предсказуемой информации. Также часто можно предположить, что некоторый блок информации содержит заданное слово.
Атака со знанием содержимого шифровки (known-plaintext attack). Атакующий знает или может угадать содержимое всего или части зашифрованного текста. Задача заключается в расшифровке остального сообщения. Это можно сделать либо путем вычисления ключа шифровки, либо минуя это.
Атака с заданным текстом (chosen-plaintext attack). Атакующий имеет возможнот получить шифрованный документ для любого нужного ему текста, но не знает ключа. Задачей является нахождение ключа. Некоторые методы шифрования, и в частности RSA, весьма уязвимы для атак этого типа. При использовании таких алгоритмов надо тщательно следить, чтобы атакующий не мог зашифровать заданный им текст.
Атака с подставкой (Man-in-the-middle attack). Атака направлена на обмен шифрованными сообщениями и в особенности на протокол обмена ключами. Идея заключается в том, что, когда две стороны обмениваются ключами для секретной коммуникации (например, используя шифр Диффи-Хелмана, Diffie-Hellman), противник внедряется между ними на линии обмена сообщениями. Далее противник выдает каждой стороне свои ключи. В результате, каждая из сторон будет иметь разные ключи, каждый из которых известен противнику. Теперь противник будет расшифровывать каждое сообщение своим ключом и затем зашифровывать его с помощью другого ключа перед отправкой адресату. Стороны будут иметь иллюзию секретной переписки, в то время как на самом деле противник читает все сообщения.
Одним из способов предотвратить такой тип атак заключается в том, что стороны при обмене ключами вычисляют криптографическую хеш-функцию значения протокола обмена (или по меньшей мере значения ключей), подписывают ее алгоритмом цифровой подписи и посылают подпись другой стороне. Получатель проверит подпись и то, что значение хеш-функции совпадает с вычисленным значением. Такой метод используется, в частности, в системе Фотурис (Photuris).
Атака с помощью таймера (timing attack). Этот новый тип атак основан на последовательном измерении времен, затрачиваемых на выполнение операции возведения в стенень по модулю целого числа. Ей подвержены по крайней мере следующие шифры: RSA, Диффи-Хеллман и метод эллиптических кривых.
Имеется множество других криптографических атак и криптоанали-тических подходов. Однако приведенные выше являются, по-видимому, наиболее важными для практической разработки систем. Если кто-либо собирается создавать свой алгоритм шифрования, ему необходимо понимать данные вопросы значительно глубже.
Выбор для конкретных ИС должен быть основан на глубоком анализе слабых и сильных сторон тех или иных методов защиты. Обоснованный выбор той или иной системы защиты, в общем-то, должен опираться на какие-то критерии эффективности. К сожалению, до сих пор не разработаны подходящие методики оценки эффективности криптографических систем.
Наиболее простой критерий такой эффективности - вероятность раскрытия ключа или мощность множества ключей (М). По сути, это то же самое, что и криптостойкость. Для ее численной оценки можно использовать также и сложность раскрытия шифра путем перебора всех ключей.
Однако этот критерий не учитывает других важных требований к криптосистемам:
• невозможность раскрытия или осмысленной модификации информации на основе анализа ее структуры;
• совершенство используемых протоколов защиты;
• минимальный объем применяемой ключевой информации;
• минимальная сложность реализации (в количестве машинных операций), ее стоимость;
• высокая оперативность.
Желательно, конечно, использование некоторых интегральных показателей, учитывающих указанные факторы.
Для учета стоимости, трудоемкости и объема ключевой информации можно использовать удельные показатели - отношение указанных параметров к мощности множества ключей шифра.
Часто более эффективным при выборе и оценке криптографической системы является применение экспертных оценок и имитационное моделирование.
В любом случае выбранный комплекс криптографических методов должен сочетать как удобство, гибкость и оперативность использования, так и надежную защиту от злоумышленников циркулирующей в ИС информации.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 |



