1.Информационная безопасность. Основные понятия и определения.

2 .Основные угрозы безопасности АСОИ.

3. Обеспечение безопасности АСОИ.

4.   Криптография. Основные понятия и определения.

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

6.   Асимметричные системы шифрования.

7.   Виды криптоаналитических атак.

8. Традиционные симметричные криптосистемы. Шифры перестановок (примеры).

9. Традиционные симметричные криптосистемы. Шифры простой замены.

10. Система омофонов.

11. Традиционные симметричные криптосистемы. Шифры сложной замены.

12. Шифрование по таблице Вижинера.

13. Одноразовая система шифрования.

14. Шифрование методом Вернама (сложение по модулю 2).

15. Традиционные симметричные криптосистемы. Гаммирование.

16.Методы генерации псевдослучайных последовательностей чисел.

17.Современные симметричные криптосистемы. Стандарт DES

18.Алгоритм шифрования данных IDEA

19.Отечественный стандарт шифрования данных.

20. Асимметричные криптосистемы.

21. Однонаправленные функции.

22. Криптосистема шифрования данных RSA. Пример в числовой форме.

23. Сравнение симметричных и ассиметричных систем.

24. Идентификация и проверка подлинности. Основные понятия и концепции.

25. Идентификация и механизмы подтверждения подлинности пользователя.

26. Взаимная проверка подлинности пользователей. Механизм запроса-ответа

27. Взаимная проверка подлинности пользователей. Механизм отметки времени.

28. Модель рукопожатия.

29. Проблема аутентификации данных и электронная цифровая подпись

30. Однонаправленные хэш-функции.Схемы безопасного хеширования.

31. Алгоритм цифровой подписи RSA

32. Управление криптографическими ключами. Основные понятия.

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

34. Хранение ключей.

35. Аутентификация мастер-ключа хост-компьютера.

36. Схема защиты сеансового ключа.

37. Распределение ключей. Использование центров распределения ключей.

38. Распределение ключей прямым обменом сеансовыми ключами между пользова­телями сети.

39. Алгоритм Диффи-Хеллмана.

40. Особенности функционирования межсетевых экранов.

41. Основные компоненты межсетевых экранов. Фильтрующие маршрутизаторы.

42. Основные компоненты межсетевых экранов. Шлюзы сетевого уровня.

43. Основные компоненты межсетевых экранов. Шлюзы прикладного уровня.

44. Основные схемы сетевой защиты на базе межсетевых экранов. Межсетевой экран - фильтрующий маршрутизатор.

45. Основные схемы сетевой защиты на базе межсетевых экранов. Межсетевой экран на основе двухпортового шлюза.

46. Основные схемы сетевой защиты на базе межсетевых экранов. Межсетевой экран на основе экранированного шлюза.

47. Основные схемы сетевой защиты на базе межсетевых экранов. Межсетевой экран - экранированная подсеть.

48. Биометрическая защита.

49. Защита от копирования. “Привязка" к компьютеру.

50. Защита от копирования. Введение ограничений на использование программного обеспечения.

51. Защита от копирования. Привязка к диску

52. Правовые аспекты компьютерной безопасности.

53. Вредоносные программы.

55. RAID-массивы.

 

 

 

1.  Информационная безопасность. Основные понятия и определения.

 

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

Природа воздействий на АСОИ может быть самой разнообразной. Это и стихийные бедствия (землетрясение, ураган, по­джар), и выход из строя составных элементов АСОИ, и ошибки пер­сонала, и попытка проникновения злоумышленника.

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

Под доступом к информации понимается ознакомление с информацией, ее обработка, в частности копирование, модифика­ция или уничтожение информации.

Различают санкционированный и несанкционированный доступ к информации.

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

Правила разграничения доступа служат для регламента­ции права доступа субъектов доступа к объектам доступа.

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

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

Субъект - это активный компонент системы, который мо­жет стать причиной потока информации от объекта к субъекту или изменения состояния системы.

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

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

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

Доступность компонента или ресурса системы - это свойство компонента или ресурса быть доступным для авторизо­ванных законных субъектов системы.

Под угрозой безопасности АСОИ понимаются возможные воздействия на АСОИ, которые прямо или косвенно могут нанести ущерб ее безопасности.

Ущерб безопасности подразумевает на­рушение состояния защищенности информации, содержащейся и обрабатывающейся в АСОИ. С понятием угрозы безопасности тесно связано понятие уязвимости АСОИ.

Уязвимость АСОИ - это некоторое неудачное свойство системы, которое делает возможным возникновение и реализацию угрозы.

Атака на компьютерную систему - это действие, предпри­нимаемое злоумышленником, которое заключается в поиске и ис­пользовании той или иной уязвимости системы. Таким образом, атака - это реализация угрозы безопасности.

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

Безопасная или защищенная система - это система со средствами защиты, которые успешно и эффективно противостоят угрозам безопасности.

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

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

2.               Основные угрозы безопасности АСОИ.

По цели воздействия различают три основных типа угроз безопасности АСОИ:

-       угрозы нарушения конфиденциальности информации;

-       угрозы нарушения целостности информации;

-       угрозы нарушения работоспособности системы (отказы в об­служивании).

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

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

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

Компоненты АСОИ можно разбить на следующие группы:

-       аппаратные средства - ЭВМ и их составные части (процессо­ры, мониторы, терминалы, периферийные устройства - диско­воды, принтеры, контроллеры, кабели, линии связи) и т.д.;

-       программное обеспечение - приобретенные программы, ис­ходные, объектные, загрузочные модули; операционные системы и системные программы (компиляторы, компоновщики и др.), утилиты, диагностические программы и т.д.;

-       данные - хранимые временно и постоянно, на магнитных носи­телях, печатные, архивы, системные журналы и т.д.;

-       персонал - обслуживающий персонал и пользователи.

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

-       аварийные ситуации из-за стихийных бедствий и отключений электропитания;

-       отказы и сбои аппаратуры;

-       ошибки в программном обеспечении;

-       ошибки в работе обслуживающего персонала и пользователей;

-       помехи в линиях связи из-за воздействий внешней среды.

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

   В частности, для банковских АСОИ можно выделить следующие преднамеренные угрозы:

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

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

-       несанкционированное копирование программ и данных;

-       кража магнитных носителей, содержащих конфиденциальную информацию;

-       кража распечатанных банковских документов;

-       умышленное уничтожение информации;

-       несанкционированная модификация банковскими служащими финансовых документов, отчетности и баз данных;

-       фальсификация сообщений, передаваемых по каналам связи;

-       отказ от авторства сообщения, переданного по каналам связи;

-       отказ от факта получения информации:

-       навязывание ранее переданного сообщения;

-       разрушение информации, вызванное вирусными воздействия­ми;

-       разрушение архивной банковской информации, хранящейся на магнитных носителях;

-       кража оборудования.

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

Перечислим основные каналы несанкционированного дос­тупа, через которые нарушитель может получить доступ к компо­нентам АСОИ и осуществить хищение, модификацию и/или раз­рушение информации:

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

-       технологические пульты управления;

-       линии-связи между аппаратными средствами АСОИ;

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

 

3. Обеспечение безопасности АСОИ.

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

Существуют два подхода к проблеме обеспечения безо­пасности АСОИ: "фрагментарный" и комплексный.

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

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

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

Комплексный подход к проблеме обеспечения безопасно­сти основан на разработанной для конкретной АСОИ политике безопасности. Политика безопасности представляет собой набор норм, правил и практических рекомендаций, на которых строится управление, защита и распределение информации в АСОИ.

Различают два основных вида политики безопасности: изби­рательную и полномочную.

Избирательная политика безопасности основана на изби­рательном способе управления доступом.

Матрица доступа представляет собой матрицу, в которой столбец соответствует объекту системы, а строка - субъекту. На пересечении столбца и строки матрицы указывается тип разре­шенного доступа субъекта к объекту.

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

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

Процесс построения системы защиты включает следую­щие этапы:

-       анализ возможных угроз АСОИ;

-       планирование системы защиты;

-       реализация системы защиты;

-       сопровождение системы защиты.

 

                     4 Криптография. Основные понятия и определения.

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

-         проблему конфиденциальности (путем лишения противника возможности извлечь информацию из канала связи)

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

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

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

 

 

Законный получатель, приняв шифртекст С, расшифровы­вает его с помощью обратного преобразования D = Ек-1 и полу­чает исходное сообщение в виде открытого текста М:

Dk (С) = Ек-1 (Ек (М)) = М.

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

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

-       симметричные (одноключевые) криптосистемы;

-       асимметричные (двухключевые) криптосистемы (с открытым ключом). 

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

Обобщенная схема асимметричной криптосистемы с двумя разными ключами k1 и К2; показана на рис. 2.2. В этой криптоси­стеме один из ключей является открытым, а другой - секретным.

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

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

-       симметричные (одноключевые) криптосистемы;

-       асимметричные (двухключевые) криптосистемы (с открытым ключом). 

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

Отправитель генерирует открытый текст исходного сообщения- М, которое должно быть передано законному получа­телю по незащищенному каналу. За каналом следит перехватчик с целью перехватить и раскрыть передаваемое сообщение. Для того чтобы перехватчик не смог узнать содержание сообщения М, отправитель шифрует его с помощью обратимого преобразования Ек и получает шифртекст (или криптограмму) С = Ек (М), кото­рый отправляет получателю. Законный получатель, приняв шифртекст С, расшифровы­вает его с помощью обратного преобразования D = Ек-1 и полу­чает исходное сообщение в виде открытого текста М:

Dk (С) = Ек-1 (Ек (М)) = М.

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

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

 

6.                Асимметричные системы шифрования.

Обобщенная схема асимметричной криптосистемы с двумя разными ключами k1 и К2; показана на рисунке В этой криптоси­стеме один из ключей является открытым, а другой - секретным.

 

 

7.                Виды криптоаналитических атак.

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

Перечислим основные криптоаналитические атаки:

 

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

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

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

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

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

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

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

 

8.Традиционные симметричные криптосистемы. Шифры перестановок (примеры).

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

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

 

Шифр перестановки "скитала"

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

 

Шифрующие таблицы

В качестве ключа в шифрующих таблицах используются:

-       размер таблицы;

-       слово или фраза, задающие перестановку;

-       особенности структуры таблицы.

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

ТЕРМИНАТОР ПРИБЫВАЕТ СЕДЬМОГО В ПОЛНОЧЬ

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

Применение магических квадратов

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

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

Пример магического квадрата и его заполнения сооб­щением ПРИЛЕТАЮ ВОСЬМОГО показан на рисунке

 

О

И

Р

М

Е

О

С

Ю

В

Т

А

Ь

Л

Г

О

П

16

3

2

13

5

10

11

8

9

6

7

12

4

15

14

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9. Традиционные симметричные криптосистемы. Шифры простой замены.

 

При шифровании заменой (подстановкой) символы шиф­руемого текста заменяются символами того же или другого алфа­вита с заранее установленным правилом замены. В шифре про­стой замены каждый символ исходного текста заменяется симво­лами того же алфавита одинаково на всем протяжении текста. Часто шифры простой замены называют шифрами одноалфавит­ной подстановки.

 

Полибианский квадрат

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

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

Концепция полибианского квадрата оказалась плодотвор­ной и нашла применение в криптосистемах последующего времени.

Система шифрования Цезаря

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

Достоинством системы шифрования Цезаря является про­стота шифрования и расшифрования. К недостаткам системы Це­заря следует отнести следующие:

-       подстановки, выполняемые всоответствии с системой Цезаря, не маскируют частот появления различных букв исходного от­крытого текста;

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

-       число возможных ключей К мало;

-       шифр Цезаря легко вскрывается на основе анализа частот по­явления букв в шифртексте.

Аффинная система подстановок Цезаря

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

Определим преобразование в такой системе:

 

Ea,b: Zm→ Zm (над Z черта)

Ea,b:t→ Ea,b

Ea,b(t)=at+b(mod m)

 

где a, b - целые числа, 0<=a,b<m, НОД(а,m)=1.

В данном преобразовании буква, соответствующая числу t, заменяется на букву, соответствующую числовому значению (at+b) по модулю m.

Следует заметить, что преобразование Ea,b(t) является взаимно однозначным отображением на множестве Zn, только в том случае, если наибольший общий делитель чисел а и m, обо­значаемый как НОД (а, m), равен единице, т.е. а и m должны быть взаимно простыми числами.

Например, пусть m = 26, а = 3, b = 5. Тогда, очевидно, НОД (3,26) = 1, и мы получаем следующее соответствие между числовыми кодами букв (рис. 2.9):

 

 

t

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

3t+5

5

8

11

14

17

20

23

0

3

6

9

12

15

18

21

24

1

4

7

10

13

16

19

22

25

2

 

Рисунок 2.9. Соответствие между числовыми кодами букв

 

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

 

А

В

С

O

Е

F

G

Н

I

J

К

L

М

N

O

Р

Q

R

S

T

U

V

W

Х

Y

Z

F

I

L

O

R

U

Х

А

D

G

J

М

Р

S

V

Y

В

Е

Н

K

N

Q

Т

W

Z

C

 

Рисунок 2.10. Соответствие для букв открытого текста и шифртекста

 

Исходное сообщение HOPE преобразуется в шифртвкст AVYR.

Достоинством аффинной системы является удобное управление ключами - ключи шифрования и расшифрования представляются в компактной форме в виде пары чисел (а, b). Недостатки аффинной системы аналогичны недостаткам системы шифрования Цезаря.

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

 

Система Цезаря с ключевым словом

Система шифрования Цезаря с ключевым словом являет­ся одноалфавитной системой подстановки. Особенностью этой системы является использование ключевого слова для смещения и изменения порядка символов в алфавите подстановки.

Выберем некоторое число к, 0 <= k < 25 , и слово или корот­кую фразу в качестве ключевого слова. Желательно, чтобы все буквы ключевого слова были различными. Пусть выбраны слово DIPLOMAT в качестве ключевого слова и число k = 5.

Ключевое слово записывается под буквами алфавита, на­чиная с буквы, числовой код которой совпадает с выбранным числом К:

 

              5

ABCDEFGHIJKLMNOPQRSTUVWXУZ

             DIPLOMAT

 

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

 

ABCDEFGHIJKLMNOPQRSTUVWX

VWXYZDIPLOMATBCEFGHJKNQRSU

 

Теперь мы имеем подстановку для каждой буквы произ­вольного сообщения.

Исходное сообщение SEND MORE MONEY шифруется как HZBY TCGZ TCBZS

Следует отметить, что требование о различии всех букв ключевого слова не обязательно. Можно просто записать ключе­вое слово (или фразу) без повторения одинаковых букв. Напри­мер, ключевая фраза

КАК ДЫМ ОТЕЧЕСТВА НАМ СЛАДОК И ПРИЯТЕН и число k=3 порождают следующую таблицу подстановок:

А Б В ГДЕ Ж 3 ИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ

ЪЭЮКАДЫМОТЕЧ СВНЛИПРЯ БГЖЗИ УФ Х ЦШЩ Ь

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

 

Шифрующие таблицы Трисемуса

Для русско­го алфавита шифрующая таблица может иметь размер 4х8. Вы­берем в качестве ключа слово БАНДЕРОЛЬ. Шифрующая таблица с таким ключом показана на рис.2.11.

 

Б

А

Н

Д

Е

Р

О

Л

Ь

В

Г

Ж

3

И

И

К

М

П

С

Т

У

Ф

Х

Ц

Ч

Ш

Щ

Ы

Ъ

Э

Ю

Я

 

Рисунок 2.11.  Шифрующая таблица с ключевым словом БАНДЕРОЛЬ

 

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

Например, при шифровании с помощью этой таблицы со­общения

ВЫЛЕТАЕМ ПЯТОГО получаем шифртекст  ПДКЗЫВЗЧШЛЫЙСЙ.

 

10. Система омофонов.

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

Шифруя букву исходного сообщения, выбирают случайным образом одну из ее замен. Замены (часто называемые омофонами) могут быть представлены трехраэрядными числами от 000 до 999. Например, в английском алфавите букве Е присваиваются 123 случайных номера, буквам В и О - по 16 номеров, а буквам J и Z - по 1 номеру. Если омофоны (замены) присваиваются случайным образом различным появлениям одной и той же буквы, тогда каждый омофон появляется в шифртёксте равновероятно.

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

 

Таблица 2.1 Распределение вероятностей букв в русских текстах

буква

вероятность

буква

вероятность

буква

вероятность

буква

вероят­ность

ПРОБЕЛ

0,175

Р

0,040

Я

0,018

X

0,009

0

0,090

В

0,038

Ы

0,016

Ж

0.007

Е

0,072

Л

0,035

3

0,016

Ю

0.006

А

0,062

К

0,028

Ъ

0,014

Ш

0.006

И

0,062

М

0,026

Б

0,014

Ч

0,004

Н

0.053

Д

0,025

Г

0,013

Щ

0,003

Т

0,053

П

0,023

Ч

0,012

Э

0.003

С

0,045

У

0,021

И

0.010

Ф

0.002

 

Таблица 2.2 Распределение вероятностей букв в английских текстах

буква

вероятность

буква

вероятность

буква

вероятность

Е

0,123

L

0,040

В

0.016

Т

0,096

D

0,036

G

0,016

А

0,081

С

0,032

V

0,009

0

0,079

U

0,031

К

0,005

N

0,072

Р

0,023

Q

0,002

L

0,071

F

0,023

X

0,002

S

0,066

М

0,022

J

0.001

R

0,060

W

0,020

Z

0,001

Н

0,051

Y

0,019

 

 

 

 

 

11. Традиционные симметричные криптосистемы. Шифры сложной замены.

 

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

При r-алфавитной подстановке символ Хо исходного со­общения заменяется символом Уо из алфавита Во, символ X1 -символом Y1 из алфавита B1, и так далее, Cимвол Хr заменяется симво­лом Уr, снова из алфавита Во, и т.д.

Общая схема многоалфавитной подстановки для случая r =4 показана на рисунке

Входной

символ:

Хо

X1

X2

X3

X4

X5

X6

X7

X8

X9

Алфавит

подстановки:

B0

B1

B2

B3

B0

B1

B2

B3

B0

B1

 

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

Шифр Гронсфельда

Этот шифр сложной замены, называемый шифром Гронс­фельда. представляет собой модификацию шифра Цезаря число­вым ключом. Для этого под буквами исходного сообщения записы­вают цифры числового ключа. Если ключ короче сообщения, то его запись циклически повторяют. Шифртекст получают примерно, как в шифре Цезаря, но отсчитывают по алфавиту не третью букву (как это делается в шифре Цезаря), а выбирают ту букву, которая смещена по алфавиту на соответствующую цифру ключа. Напри­мер, применяя в качестве ключа группу из четырех начальных цифр числа е (основания натуральных логарифмов), а именно 2718, получаем для исходного сообщения ВОСТОЧНЫЙ ЭКС­ПРЕСС следующий шифртекст

 

Сообщение

В

О

С

Т

О

Ч

Н

Ы

Й

Э

К

С

П

Р

Е

С

С

Ключ

2

7

1

8

2

7

1

8

2

7

1

8

2

7

1

8

2

Шифртекст

Д

Х

Т

Ь

Р

Ю

О

Г

Л

Д

Л

Щ

С

Ч

Ж

Щ

У

 

Чтобы зашифровать первую букву сообщения В, исполь­зуя первую цифру ключа 2 , нужно отсчитать вторую по порядку букву от В в алфавите В-Г-Д; получается первая буква шифртекста Д.

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

 

12.Шифрование по таблице Вижинера.

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

Таблица Вижинера используется для зашифрования и расшифрования. Таблица имеет два входа:

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

-       крайний левый столбец ключа.

Последовательность ключей обычно получают из число­вых значений букв ключевого слова.

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

 

Рассмотрим пример получения шифртекста с помощью таблицы Вижинера. Пусть выбрано ключевое слово АМБРОЗИЯ. Необходимо зашифровать сообщение ПРИЛЕТАЮ СЕДЬМОГО.

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

 

сообщение

п

р

и

л

е

т

а

ю

с

е

д

ь

м

о

г

о

ключ

а

м

б

р

о

з

и

я

а

м

б

р

о

з

и

я

шифртекст

п

ъ

й

ы

у

щ

и

э

с

с

е

к

ь

х

л

н

 

 

13. Одноразовая система шифрования.

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

Одноразовая система шифрует исходный открытый текст

                              

в шифртекст

посредством подстановки Цезаря

Yi=(Xi+Ki) mod m, 0<=i<=n,

где ki - i-й элемент случайной ключевой последовательности.

Ключевое пространство  одноразовой системы пред­ставляет собой набор дискретных случайных величин из  и со­держит  значений.

Процедура расшифрования описывается соотношением

Xi = (Yi - Кi) mod m,       

где Кi - i-й элемент той же самой случайной ключевой последова­тельности.

Одноразовая система изобретена в 1917 г. американцами Дж.Моборном и Г.Вернамом. Для реализации этой системы подстановки иногда используют одноразовый блокнот. Этот блок­нот составлен из отрывных страниц, на каждой из которых напеча­тана таблица со случайными числами (ключами) Кi. Блокнот вы­полняется в двух экземплярах: один используется отправителем, а другой - получателем. Для каждого символа Xi сообщения ис­пользуется свой ключ Кi из таблицы только один раз. После того как таблица использована, она должна быть удалена из блокнота и уничтожена. Шифрование нового сообщения начинается с новой страницы.

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

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

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

 

 

14.Шифрование методом Вернама (сложение по модулю 2).

Система шифрования Вернама является в сущности част­ным случаем системы шифрования Вижинера при значении мо­дуля m = 2.

Каждый символ исходного открытого текста из английского алфавита {А, В, С, D,.... Z}, расширенного шестью вспомогатель­ными символами (пробел, возврат каретки и т.п.), сначала кодиро­вался в 5-битовый блок (b0,b1,...,b4) телеграфного кода Бодо.

Случайная последовательность двоичных ключей ko, k1, k2, ... заранее записывалась на бумажной ленте.

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

y=x+k (знак + заключен в круг)

 

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

y+k=x+k+k=x (знак + заключен в круг)

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

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

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

 

 

15. Традиционные симметричные криптосистемы. Гаммирование.

 

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

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

Следует отметить, что перед зашифрованием открытые данные разбивают на блоки То(i) одинаковой длины, обычно по 64 бита. Гамма шифра вырабатывается в виде последовательности блоков Гш(i) аналогичной длины.

Уравнение зашифрования можно записать в виде

Tiшiш+Ti0, i=1.M (знак + заключен в круг)

 

 

где      Тш(i)- 1-й блок шифртекста;

Гш(i) - i-й блок гаммы шифра;

То(i) -i-й блок открытого текста;

М - количество блоков открытого текста.

Процесс расшифрования сводится к повторной генерации гаммы шифра и наложению этой гаммы на зашифрованные дан­ные. Уравнение расшифрования имеет вид

 Ti0= Tiшiш (знак + заключен в круг)

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

 

16.Методы генерации псевдослучайных последовательностей чисел.

 

Генерируемые псевдослучайные ряды чисел часто назы­вают гаммой шифра или просто гаммой

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

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

-       период гаммы должен быть достаточно большим для шифро­вания сообщений различной длины;

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

-       генерирование гаммы не должно вызывать больших техниче­ских сложностей.

Длина периода гаммы является самой важной характери­стикой генератора псевдослучайных чисел. По окончании периода числа начнут повторяться, и их можно будет предсказать. Требуе­мая длина периода гаммы определяется степенью закрытости данных. Чем длиннее ключ, тем труднее его подобрать. Длина пе­риода гаммы зависит от выбранного алгоритма получения псевдо­случайных чисел.

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

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

Из известных процедур генерации последовательности псевдослучайных целых чисел наиболее часто применяется так называемый линейный конгруэнтный генератор. Этот генератор вырабатывает последовательность псевдослучайных чисел Y1, Y2, ....Yi-1, Yi, ..., используя соотношение

 Yi=(a*Yi-1+b)mod m

где      Yi - i-e (текущее) число последовательности;

Yi-1 - предыду­щее число последовательности;

а, b, m - константы; m - модуль;

а - множитель (коэффициент); b - приращение; Yo - порождающее число(исходное значение).

Текущее псевдослучайное число Yi получают из предыду­щего числа Yi-1 умножением его на коэффициент а, сложением с приращением b и вычислением остатка от деления на модуль m. Данное уравнение генерирует псевдослучайные числа с периодом повторения, который зависит от выбираемых значений параметров а, b и m и может достигать значения m. Значение модуля m бе­рется равным 2n либо равным простому числу, например m=231-1. Приращение b должно быть взаимно простым с m, коэффициент а должен быть нечетным числом.

 

17.Современные симметричные криптосистемы. Стандарт DES.

Рассеивание представляет собой распространение влия­ния одного знака открытого текста на много знаков шифртекста, что позволяет скрыть статистические свойства открытого текста.

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

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

 

К настоящему времени DES является наиболее распро­страненным алгоритмом, используемым в системах защиты ком­мерческой информации. Более того, реализация алгоритма DES в таких системах становится признаком хорошего тона.

Основные достоинства алгоритма DES:

-       используется только один ключ длиной 56 бит;

-       зашифровав сообщение с помощью одного пакета программ, для расшифровки можно использовать любой другой пакет про­грамм, соответствующий стандарту DES;

-       относительная простота алгоритма обеспечивает высокую ско­рость обработки;

-       достаточно высокая стойкость алгоритма.

Алгоритм DES также использует комбинацию подстановок и перестановок. DES осуществляет шифрование 64-битовых бло­ков данных с помощью 64-битового ключа, в котором значащими являются 56 бит (остальные 8 бит - проверочные биты для кон­троля на четность). Дешифрование в DES является операцией, обратной шифрованию, и выполняется путем повторения опера­ций шифрования в обратной последовательности. Обобщенная схема процесса шифрования в алгоритме DES показана на рис.3.1. Процесс шифрования заключается в начальной переста­новке битов 64-битового блока, шестнадцати циклах шифрования и, наконец, в конечной перестановке битов.

 

18.Алгоритм шифрования данных IDEA.

Алгоритм IDEA (International Data Encryption Algorithm) является блочным шифром. Он оперирует 64-битовыми блоками открытого текста. Несомненным достоинством алгоритма IDEA является то, что его ключ имеет длину 128 бит. Один и тот же алгоритм используется и для шифрования, и для дешифрования.

В IDEA используются следующие математические операции:

-     поразрядное сложение по модулю 2 (операция "исключающее ИЛИ"); операция обозначается как (+);

-     сложение беззнаковых целых по модулю 216; операция обозначается как [+];

-     умножение беззнаковых целых по модулю (216+1), причем блок из 16 нулей рассматривается как 216; операция обозначается как (·).

Все операции выполняются над 16-битовыми субблоками.

Эти три операции несовместимы в том смысле, что:

-     никакая пара из этих трех операций не удовлетворяет ассоциативному закону,
например a[+](b(+)c)#(a[+]b)(+)c;

-     никакая пара из этих трех операций не удовлетворяет дистрибутивному закону,
например a[+](b(·)c)#(a[+]b)(·)(a[+]с).

Комбинирование этих трех операций обеспечивает комплексное преобразование входных данных, существенно затрудняя крипто-анализ IDEA по сравнению с DES, который базируется исключительно на операции "исключающее ИЛИ".

 64-битовый блок данных делится на четыре 16-битовых субблока. Эти четыре субблока становятся входом в первый цикл алгоритма. Всего выполняется восемь циклов. Между циклами второй и третий субблоки меняются местами. В каждом цикле выполняется следующая последовательность операций:

1.                      (·) - умножение субблока X1 и первого подключа.

2.                      [+] - сложение субблока X2 и второго подключа.

3.                      [+] - сложение субблока X3 и третьего подключа.

4.                      (·) - умножение субблока X4 и четвертого подключа.

5.                      (+) - сложение результатов шагов 1 и 3.

6.                      (+) - сложение результатов шагов 2 и 4.

7.                      (·) - умножение результата шага 5 и пятого подключа.

8.                      [+] - сложение результатов шагов 6 и 7.

9.                      (·) - умножение результата шага 8 и шестого подключа.

10.                  [+] - сложение результатов шагов 7 и 9.

11.                  (+) - сложение результатов шагов 1 и 9.

12.                  (+) - сложение результатов шагов 3 и 9.

13.                  (+) - сложение результатов шагов 2 и 10.

14.                  (+) - сложение результатов шагов 4 и 10.

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

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

1.                      (·) - умножение субблока X1 и первого подключа.

2.                      [+] - сложение субблока X2 и второго подключа.

3.                      [+] - сложение субблока X3 и третьего подключа.

4.                      (·) - умножение субблока X4 и четвертого подключа.

Полученные четыре субблока Y1...Y4 объединяют в блок шифртекста.

Создание подключей Z1...Z6 также относительно несложно. Алгоритм использует всего 52 подключа (по шесть для каждого из восьми циклов и еще четыре для преобразования выхода). Сначала 128-битовый ключ делится на восемь 16-битовых подключей. Это - первые восемь подключей для алгоритма (шесть подключей - для первого цикла и первые два подключа - для второго). Затем 128-битовый ключ циклически сдвигается влево на 25 бит и снова делится на восемь подключей (четыре подключа - для второго цикла и четыре подключа - для третьего). Ключ снова циклически сдвигается влево на 25 бит для получения следующих восьми подключей и т.д., пока выполнение алгоритма не завершится.

Дешифрование осуществляется аналогичным образом, за исключением того, что порядок использования подключей становится обратным, причем ряд подключей дешифрования являются или аддитивными (-x), или мультипликативными (1/x) обратными величинами подключей шифрования

 

Алгоритм IDEA обладает рядом преимуществ перед алгоритмом DES. Он зачительно безопаснее алгоритма DES, поскольку 128-битовый ключ алгоритма IDEA вдвое больше ключа DES. Внутренняя структура алгоритма IDEA обеспечивает лучшую устойчтвость к криптоанализу. Существующие программные реализации примерно вдвое быстрее реализаций алгоритма DES. Алгоритм IDEA запатентован в Европе и США.

 

19.Отечественный стандарт шифрования данных.

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

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

При описании алгоритма используются следующие обозначения:

L и R - последовательности битов;

LR - конкатенация последовательностей L и R, в которой биты последовательности R следуют за битами последовательности L;

(+) - поразрядное сложение по модулю 2 (операция "исключающее ИЛИ");

[+] - сложение 32-разрядных чисел по модулю 232;

{+} - сложение 32-разрядных чисел по модулю 232-1.

Числа суммируются по следующему правилу:

A [+] B = A + B, если A + B < 232,

A [+] B = A + B - 232, если A + B >= 232.

A {+} B = A + B , если A + B < 232 - 1,

A {+} B = A + B - (232 - 1), если A + B >= 232 - 1.

Алгоритм предусматривает четыре режима работы:

-     простая замена;

-     гаммирование;

-     гаммирование с обратной связью;

-     выработка имитовставки.

В любом случае для шифрования данных используется 256-битовый ключ K, который представляется в виде восьми 32-битовых подключей Ki:

K = K7K6K5K4K3K2K1K0.

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

 

20. Асимметричные криптосистемы.

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

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

Обобщенная схема асимметричной криптосистемы с от­крытым ключом показана на рис. В этой криптосистеме применяют два различных ключа: Кв - открытый ключ отправителя A; kв -секретный ключ получателя В. Генератор ключей целесообразно располагать на стороне получателя В (чтобы не пересылать секретный ключ kв, пo незащищенному каналу). Значения ключей зависят от начального состояния генератора ключей. Раскрытие секретного ключа kв, по известному открытому ключу К, должно быть вычислительно неразрешимой задачей.

Характерные особенности асимметричных криптосистем:

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

2. Алгоритмы шифрования и расшифрования являются открытыми: Ев: М -> С,

 

Рисунок 4.1. Обобщенная схема асимметричной криптосистемы с открытым ключом

 

 

21.Однонаправленные функции.

Концепция асимметричных криптографических систем с открытым ключом основана на применении однонаправленных функций. Неформально однонаправленную функцию можно определить следующим образом. Пусть Х и Y - некоторые произвольные множества. Функция f: X -> Y

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

y=f(x), где yY.

И в то же время для большинства yY достаточно сложно получить значение хХ, такое, что f (x)=y (при этом полагают, что существует, по крайней мере, одно такое значение х).

Основным критерием отнесения функции f к классу однонаправленных функций является отсутствие эффективных алгоритмов обратного преобразования Y -> X.

В качестве первого примера однонаправленной функции рассмотрим целочисленное умножение. Прямая задача - вычисление произведения двух очень больших целых чисел Р и Q, т.е. нахождение значения N = P*Q, является относительно несложной задачей для ЭВМ.

Обратная задача - разложение на множители большого целого числа, т.е. нахождение делителей Р и Q большого целого числа N = P*Q, является практически неразрешимой задачей при достаточно больших значениях N. По современным оценкам теории чисел при целом N≈2664 и PQ для разложения числа N потребуется около 1023 операций, т.е. задача практически неразрешима на современных ЭВМ.

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

Вторым важным классом функций, используемых при построении криптосистем с открытым ключом, являются так называемые однонаправленные функции с "потайным ходом" (с лазейкой). Дадим неформальное определение такой функции. Функция f: X->Y

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

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


22. Криптосистема шифрования данных RSA. Пример в числовой форме.

Алгоритм RSA предложили в 1978 г. три автора: Р.Райвест (Rivest), А.Шамир (Shamir) и А.Адлеман (Adleman). Алгоритм получил свое название по первым буквам фамилий его авторов. Алгоритм RSA стал первым полноценным алгоритмом с открытым ключом, который может работать как в режиме шифрования данных, так и в режиме электронной цифровой подписи.

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

Процедуры шифрования и расшифрования в криптосистеме RSA

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

Чтобы использовать алгоритм RSA надо сначала сгенерировать открытый и секретный ключи, выполнив следующие шаги:

1.       Выберем два очень больших простых числа p и q.

2.       Определим n как результат умножения p на q (n=p*q).

3.       Выберем большое случайное число, которое назовем d. Это число должно быть взаимно простым с результатом умножения (p-1)*(q-1).

4.       Определим такое число е, для которого является истинным следующее соотношение: (e*d) mod ((p-1)*(q-1)) = 1.

5.       Назовем открытым ключом числа е и n, а секретным ключом числа d и n.

Теперь, чтобы зашифровать данные по известному ключу {e,n}, необходимо сделать следующее:

-     разбить шифруемый текст на блоки, каждый из которых может быть представлен в виде числа
      M(i)=0, 1,..., n-1;

-     зашифровать текст, рассматриваемый как последовательность чисел M(i), по формуле:
      С(i)=(M(i)e) mod n.

Чтобы расшифровать эти данные используя секретный ключ {d,n}, необходимо выполнить следующие вычисления: M(i)=(C(i)d) mod n. В результате будет получено множество чисел M(i), которые представляют собой исходный текст.

Приведем простой пример использования метода RSA для шифрования сообщения "CAB". Для простоты будем использовать очень маленькие числа (на практике используются намного большие числа).

1.       Выберем р=3 и q=11.

2.       Определим n=3*11=33.

3.       Найдем (р-1)*(q-1)=20. Следовательно, в качестве d выберем любое число, которое является взаимно простым с 20, например d=3.

4.       Выберем число e. В качестве такого числа может быть взято любое число, для которого удовлетворяется соотношение (e*3) mod 20 = 1, например 7.

5.       Представим шифруемое сообщение как последовательность целых чисел в диапазоне 0...32. Пусть буква A изображается числом 1, буква B - числом 2, а буква C - числом 3. Тогда сообщение можно представить в виде последовательности чисел 3 1 2.

Зашифруем сообщение, используя ключ {7,33}:

      C1=(37) mod 33 = 2187 mod 33 = 9,

      C2=(17) mod 33 = 1 mod 33 = 1,

      C3=(27) mod 33 = 128 mod 33 = 29.

1.                      Попытаемся расшифровать сообщение {9,1,29}, полученное в результате зашифрования по известному ключу на основе секретного ключа {3,33}:

M1=(93) mod 33 = 729 mod 33 = 3,

M2=(13) mod 33 = 1 mod 33 = 1,

M3=(293) mod 33 = 24389 mod 33 = 2.

Таким образом, в результате расшифрования сообщения получено исходное сообщение "CAB".

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


23. Сравнение симметричных и ассиметричных систем.

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

Таблица 4.1. Эквивалентные длины ключей

 

Длина симметричного ключа
(в битах)

Длина открытого ключа
(в битах)

56

384

64

512

80

768

112

1792

128

2304

 

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

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

 

24. Идентификация и проверка подлинности. Основные понятия и концепции.

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

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

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

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

Перечисленные три процедуры инициализации являются процедурами защиты и относятся к одному объекту КС.

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

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

(а) получатель должен быть уверен в подлинности источника данных;

(б) получатель должен быть уверен в подлинности передаваемых данных;

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

(г) отправитель должен быть уверен в подлинности доставленных данных.

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

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

 

25. Идентификация и механизмы подтверждения подлинности пользователя.

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

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

Перечислим возможные способы подтверждения подлинности.

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

-     Элементы аппаратного обеспечения, находящиеся в распоряжении пользователя: ключи, магнитные карточки, микросхемы и т.п.

-     Характерные личные особенности пользователя: отпечатки пальцев, рисунок сетчатки глаза, тембр голоса и т.п.

-     Характерные приемы и черты поведения пользователя в режиме реального времени: особенности динамики и стиль рабты на клавиатуре, приемы работы с манипулятором и т.п.

-     Навыки и знания пользователя, обусловленные образованием, культурой, обучением, воспитанием, привычками и т.п.

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

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

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

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

Например, функция а(*) может быть определена следующим образом:

a(P)=Ep(ID),

где      Р - пароль отправителя;

ID - идентификатор отправителя;

Ер - процедура шифрования, выполняемая с использованием пароля Р в качестве ключа.

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

На практике пароли состоят только из нескольких букв, чтобы дать возможность пользователям запомнить их. Короткие пароли уязвимы к атаке полного перебора всех вариантов. Для того чтобы предотвратить такую атаку, функцию а(Р) определяют иначе, а именно:

t(P)=Ep xor k(ID),

где К и ID-соответственно ключ и идентификатор отправителя.

Очевидно,значение а(Р) вычисляется заранее и хранится в виде a'(Р) в идентификационной таблице у получателя. Подтверждение подлинности состоит из сравнения двух отображений пароля aА) и a'(PА) и признания пароля рА, если эти отображения равны. Конечно, любой, кто получит доступ к идентификационной таблице, может незаконно изменить ее со­держимое, не опасаясь, что эти действия будут обнаружены.

 

26. Взаимная проверка подлинности пользователей. Механизм запроса-ответа.

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

Для проверки подлинности применяют:        

-     механизм запроса-ответа;

-     механизм отметки времени.

Механизм запроса-ответа состоит в следующем. Если пользователь А хочет быть уверенным, что сообщения, получаемые им от пользователя  B не являются ложными, он включает в посылаемое для B сообщение непредсказуемый элемент – запрос X (например, некоторое случайное число).

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

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

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

 

27. Взаимная проверка подлинности пользователей. Механизм отметки времени.

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

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

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

 

28. Модель рукопожатия.

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

Пример. Рукопожатие двух пользователей A и  B. Используется симметричная криптосистема. Пользователи А и B  разделяют один и тот же секретный ключ.

-     Пусть пользователь А инициирует процедуру рукопожатия, отправляя пользователю B свой идентификатор IDА в открытой форме.

-     Пользователь B, получив идентификатор IDА находит в базе данных секретный ключ KАB и вводит его в криптосистему.

-     Тем временем пользователь А генерирует случайную последовательность S с помощью псевдослучайного генератора PG и отправляет ее пользователю В в виде криптограммы

-     Пользователь В расшифровывает эту криптограмму и раскрывает исходный вид последовательности S.

-     Затем оба пользователя А и В преобразуют последовательность S, используя открытую одностороннюю функцию  a(*).

-     Пользователь В шифрует сообщение a(S) и отправляет эту криптограмму пользователю А.

-     Наконец, пользователь А расшифровывает эту криптограмму и сравнивает полученное сообщение a'(S) с исходным a(S). Если эти сообщения равны, пользователь А признает подлинность пользователя В.

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

Достоинством модели рукопожатия является то, что ни один из участников сеанса связи не получает никакой секретной информации во время процедуры подтверждения подлинности.

 

 

Рисунок 5.1. Схема процедуры рукопожатия (пользователь А проверяет подлинность пользователя B)

 

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

ek(ida,m),

где IDA - идентификатор отправителя А; М - сообщение.

Получатель В, принявший эту криптограмму, расшифровывает ее и раскрывает пару (IDA, М). Если принятый идентификатор IDA совпадает с хранимым значением IDA, получатель В признает эту криптограмму.

 

 

Рисунок 5.2. Схема непрерывной проверки подлинности отправителя

 

Другой вариант непрерывной проверки подлинности использует вместо идентификатора отправителя его секретный пароль. Заранее подготовленные пароли известны обеим сторонам. Пусть ра и Рв - пароли пользователей А и В соответственно. Тогда пользователь А создает криптограмму

С = Ек а, М).

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

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

 

29. Проблема аутентификации данных и электронная цифровая подпись

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

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

-     активный перехват - нарушитель, подключившийся к сети, пе­рехватывает документы (файлы) и изменяет их;

-     маскарад - абонент С посылает документ абоненту В от имени абонента А;

-     ренегатство - абонент А заявляет, что не посылал сообщения абоненту В, хотя на самом деле послал;

-     подмена - абонент В изменяет или формирует новый документ и заявляет, что получил его от абонента А;

-     повтор - абонент С повторяет ранее переданный документ, который абонент А посылал абоненту В.

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

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

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

-     удостоверяет, что подписанный текст исходит от лица, поставившего подпись;

-     не дает самому этому лицу возможности отказаться от обязательств. связанных с подписанным текстом;

-     гарантирует целостность подписанного текста.

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

Система ЭЦП включает две процедуры: 1) процедуру постановки подписи; 2) процедуру проверки подписи. В процедуре постановки подписи используется секретный ключ отправителя сообщения, в процедуре проверки подписи - открытый ключ отправителя.

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

При проверке ЭЦП получатель сообщения снова вычисляет хэш-функцию m = h(M) принятого по каналу текста М, после чего при помощи открытого ключа отправителя проверяет, соответствует ли полученная подпись вычисленному значению m хэш-функции.

Принципиальным моментом в системе ЭЦП является невозможность подделки ЭЦП пользователя без знания его секретного ключа подписывания.

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

-     дату подписи:

-     срок окончания действия ключа данной подписи;

-     информацию о лице, подписавшем файл (Ф.И.0., должность,           краткое наименование фирмы);

-     идентификатор подписавшего (имя открытого ключа);

-     собственно цифровую подпись.

 

30. Однонаправленные хэш-функции. Схемы безопасного хеширования.

Хэш-функция предназначена для сжатия подписываемого документа М до нескольких десятков или сотен бит. Хэш-функция h(*) принимает в качестве аргумента сообщение (документ) М произвольной длины и возвращает хэш-значение h(M)=H фикси­рованной длины. Обычно хэшированная информация является сжатым двоичным представлением, основного сообщения произ­вольной длины. Следует отметить, что значение хэш-функции h(М) сложным образом зависит от документа М и не позволяет восстановить сам документ М.

Хэш-функция должна удовлетворять целому ряду условий:

-     хэш-функция должна быть чувствительна к всевозможным из­менениям в тексте М, таким как вставки, выбросы, перестанов­ки и т.п.;

-     хэш-функция должна обладать свойством необратимости, то есть задача подбора документа М', который обладал бы тре­буемым значением хэш-функции, должна быть вычислительно неразрешима;

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

Большинство хэш-функций строится на основе однона­правленной функции f(*), которая образует выходное значение длиной n при задании двух входных значений длиной n. Этими входами являются блок исходного текста Мi и хэш-значение Нi-1 предыдущего блока текста (рис.6.1):

Нi = f(Mi ,Hi-1).

Хэш-значение, вычисляемое при вводе последнего блока текста, становится хэш-значением всего сообщения М.

 

 

 

 

 

 

 


Рисунок 6.1. Построение однонаправленной хэш-функции

 

В результате однонаправленная хэш-функция всегда фор­мирует выход фиксированной длины n (независимо от длины входного текста).

Алгоритм безопасного хэширования SHA (Secure Hash Algorithm) разработан НИСТ и АНБ США в рамках стандарта безопасного хэширования SHS (Secure Hash Standard) в 1992 г. Алгоритм хэширования SHA предназначен для использования со­вместно с алгоритмом цифровой подписи DSA.

При вводе сообщения М произвольной длины менее 264 бит алгоритм SHA вырабатывает 160-битовое выходное сообще­ние, называемое дайджестом сообщения МD (Message Digest). Затем этот дайджест сообщения используется в качестве входа алгоритма DSA, который вычисляет цифровую подпись сообщения М. Формирование цифровой подписи для дайджеста сообщения, а не для самого сообщения повышает эффективность процесса подписания, поскольку дайджест сообщения обычно намного ко­роче самого сообщения.

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

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

Рассмотрим подробнее работу алгоритма хэширования SHA. Прежде всего исходное сообщение М дополняют так, чтобы оно стало кратным 512 битам. Дополнительная набивка сообщения выполняется следующим образом: сначала добавля­ется единица, затем следуют столько нулей, сколько необходимо для получения сообщения, которое на 64 бита короче, чем крат­ное 512, и наконец добавляют 64-битовое представление длины исходного сообщения.

Инициализируется пять 32-битовых переменных в виде:

А=0х67452301

B=0xEFCDAB89

C=0x98BADCFE

D= 0х10325476

E=0xC3D2E1F0

Затем начинается главный цикл алгоритма. В нем обраба­тывается по 512 бит сообщения поочередно для всех 512-битовых блоков, имеющихся в сообщении. Первые пять перемен­ных А, В, С, D, Е копируются в другие переменные а, Ь, с, d, е;

а=А, Ь=В, с=С, d=D, е=Е,

Главный цикл содержит четыре цикла по 20 операций каждый. Каждая операция реализует нелинейную функцию от трех из пяти переменных а, b, с, d, е, а затем производит сдвиг и сложение.

Алгоритм SHA имеет следующий набор нелинейных функций:

ft (X,Y, Z) = (X /\У) \/ ((⌐X) /\ Z)                               для t=0...19

ft (X,Y, Z) = X xor Y xor Z                                        для t=20...39

ft (X,Y, Z) = (X /\Y) \/ (X /\ Z) \/ (Y /\ Z)                  для t=40...59

ft (X,Y, Z) = X xor Y xor Z                                        для t=60...79

где t - номер операции.

В алгоритме используются также четыре константы:

Kt=0x5A827999                      для t=0...19

Кt =0xD9ЕВА1       для t=20...39

Kt=0x8F1BBCDC       для t=40...59

Kt=0xCA62C1D6        для t=60...79

 

Блок сообщения преобразуется из   шестнадцати 32-битовых слов (Mo...Mi5) в восемьдесят 32-битовых слов (Wo ...W79) с помощью следующего алгоритма:

Wt=Mt для t=0...15

Wt=( Wt-3+ Wt-8+ Wt-14+ Wt-16)<<<1 (знак +заключить в окружность) для t=16...79

где      t - номер операции (для 1=1...80),

Wt - t-й субблок расширенного сообщения,

<<< S - циклический сдвиг влево на S бит.

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

FOR t = 0 до 79

TEMP = (а<<< 5) + ft (b,c,d) + е + Wt + Кt

e=d

d=c

с = (b <<< 30)

b=a

a = TEMP

Схема выполнения одной операции показана на рис.6.2.

После окончания главного цикла значения а, b, с, d и е складываются с А, В, С, D и Е соответственно, и алгоритм приступает к обработке следующего 512-битового блока данных. Окон­чательный выход формируется в виде конкатенации значений A, B, C, D и Е.

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

 

31. Алгоритм цифровой подписи RSA.

Первой и наиболее известной во всем мире конкретной системой ЭЦП стала система RSA, математическая схема которой была разработана в 1977 г. в Массачуссетском технологическом институте США.

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

N=P*Q

и значение функции

φ(N)=(P-1)(Q-1).

Далее отправитель вычисляет число Е из условий:

E≤£(N), НОД (E, £(N))

и число D из условий:

D<N,. E*D=1(mod £(N))

Пара чисел (E,N) является открытым ключом. Эту пару чисел автор передает партнерам по переписке для проверки его цифровых подписей. Число D сохраняется автором как секретный ключ для подписывания.

Обобщенная схема формирования и проверки цифровой подписи RSA показана на рис.6.5.

Допустим, что отправитель хочет подписать сообщение М перед его отправкой. Сначала сообщение М (блок информации, файл, таблица) сжимают с помощью хэш-функции h(*) в целое число m:

m=h(M).

Затем вычисляют цифровую подпись S под электронным докумен­том М, используя хэш-значение m и секретный ключ D:

S = mD (mod N).

Пара (M,S) передается партнеру-получателю как электрон­ный документ М, подписанный цифровой подписью S, причем подпись S сформирована обладателем секретного ключа D.

После приема пары (M,S) получатель вычисляет хэш-значение сообщения М двумя разными способами. Прежде всего он восстанавливает хэш-значение m', применяя криптографическое преобразование        подписи S с использованием открытого ключа Е:

 m\=SE(mod N)

 

 

Рисунок 6.5. Обобщенная схема цифровой подписи RSA

 

Кроме того, он находит результат хэширования принятого сообще­ния М с помощью такой же хэш-функции h(*):

m = h(M).

Если соблюдается равенство вычисленных значений, т.е.

 SE(mod N)=h(M)

то получатель признает пару (M,S) подлинной.

Доказано, что только обладатель секретного ключа D может сформировать цифровую подпись S по документу М, а определить секретное число D по открытому числу Е не легче, чем разложить модуль N на множители.

Кроме того, можно строго математически доказать, что результат проверки цифровой подписи S будет положительным только в том случае, если при вычислении S был использован секретный ключ D, соответствующий открытому ключу Е. Поэтому открытый ключ Е иногда называют "идентификатором" подпи­савшего.

Недостатки алгоритма цифровой подписи RSA.

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

2. Для обеспечения криптостойкости цифровой подписи RSA по отношению к попыткам фальсификации на уровне, напри­мер, национального стандарта США на шифрование информации (алгоритм DES), т.е. 1018, необходимо использовать при вычисле­ниях N, D и Е целые числа не менее 2512 (или около 10154) каж­дое, что требует больших вычислительных затрат, превышающих на 20...30% вычислительные затраты других алгоритмов циф­ровой подписи при сохранении того же уровня криптостойкости.

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

Пример. Допустим, что злоумышленник может сконструировать три сообще­ния M1, М2 и М3 у которых хэш-эначения:

m1 = h(M1), m2 = h(М2), m3 = h(М3),

причем            m3=m1*m2 (mod N).

Допустим также, что для двух сообщений M1 и М2 получены законные подписи 

S1 = m1D (mod N) и S2 = m2D (mod N).

Тогда злоумышленник может легко вычислить подпись S3 для документа М3 даже не зная секретного ключа D:

S3 = S1 * S2 (mod N).

Действительно,

S1 * S2 (mod N) = m1D * m2D (mod N) =

 (m1m2)D (mod N) = m2D (mod N) = S3.

Более надежный и удобный для реализации на персональ­ных компьютерах алгоритм цифровой подписи был разработан в 1984 г. американцем арабского происхождения Тахером Эль Гамалем. В 1991 г. НИСТ США обосновал перед комиссией Конгрес­са США выбор алгоритма цифровой подписи Эль Гамаля в каче­стве основы для национального стандарта.

 

32. Управление криптографическими ключами. Основные понятия.

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

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

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

Управление ключами - информационный процесс, вклю­чающий реализацию следующих основных функций:

-     генерация ключей;

-     хранение ключей;

-     распределение ключей.

 

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

Для получения ключей используются аппаратные и про­граммные средства генерации случайных значений ключей. Как правило, применяют датчики псевдослучайных чисел (ПСЧ). Од­нако степень случайности генерации чисел должна быть достаточ­но высокой. Идеальными генераторами являются устройства на основе "натуральных" случайных процессов, например на основе белого радиошума.

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

Один из методов генерации сеансового ключа для симмет­ричных криптосистем описан в стандарте ANSI X9.17. Он предпо­лагает использование криптографического алгоритма DES (хотя можно применить и другие симметричные алгоритмы шиф­рования).

Обозначения:

Ек (X) - результат шифрования алгоритмом DES значения X;

К- ключ, зарезервированный для генерации секретных ключей;

Vo - секретное 64-битовое начальное число;

Т - временная отметка.

Схема генерации случайного сеансового ключа Ri в соот­ветствии со стандартом ANSI X9.17 показана на рис. 7.1. Случай­ный ключ Ri генерируют, вычисляя значение

 Ri= Ek(Ek+( Ti)+ Vi) (знак + заключен в окружность)

 

 

 

Рисунок  7.1. Схема генерации случайного ключа Ri в соответствии

со стандартом ANSI X9.17

 

 

 

Следующее значение Vni вычисляют так:

 Vi+1= Ek(Ek( Ti)+ Vi (знак + заключен в окружность)

Если необходим 128-битовый случайный ключ, генерируют пару ключей Ri, Ri+1 и объединяют их вместе.

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

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

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

 

34. Хранение ключей.

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

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

Необходимость в хранении и передаче ключей, зашифро­ванных с помощью других ключей, приводит к концепции иерархии ключей. В стандарте ISO 8532 (Banking-Key Management) подроб­но изложен метод главных/сеансовых ключей (master/session keys). Суть метода состоит в том, что вводится иерархия ключей:

-                    главный ключ (ГК);

-                    ключ шифрования ключей (КК);

-                    ключ шифро­вания данных (КД).

Иерархия ключей может быть:

-                    двухуровневой (КК/КД);

-                    трехуровневой (ГК/КК/КД).

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

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

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

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

 

35. Аутентификация мастер-ключа хост-компьютера.

Мастер-ключ распространяется между участниками обмена неэлектронным способом - при личном контакте, чтобы исключить его перехват и/или компрометацию. Раскрытие противником зна­чения мастер-ключа полностью уничтожает защиту компьютера.

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

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

Рисунок 7.2. Схема аутентификации мастер-ключа хост-компьютера

 

Администратор, получив новое значение мастер-ключа Кн хост-компьютера, шифрует некоторое сообщение М ключом Кн. Пара (криптограмма ЕKн(М), сообщение М) помещается в память компьютера. Всякий раз, когда требуется аутентификация мастер-ключа хост-компьютера, берется сообщение М из памяти и пода­ется в криптографическую систему. Получаемая криптограмма сравнивается с криптограммой, хранящейся в памяти. Если они совпадают, считается, что данный ключ является правильным.

 

36. Схема защиты сеансового ключа.

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

Схема защиты рабочего (сеансового) ключа показана на рис. 7.3. Чтобы зашифровать сообщение М ключом Ks, на соот­ветствующие входы криптографической системы подается крипто­грамма  EKн(Ks) и сообщение М. Криптографическая система сначала восстанавливает ключ Ks, а затем шифрует сообщение М, используя открытую форму сеансового ключа Ks.

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

 

Рис. 7.3. Схема защиты сеансового ключа

 

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

 

37. Распределение ключей. Использование центров распределения ключей.

Распределение ключей - самый ответственный процесс в управлении ключами. К нему предъявляются следующие тре­бования:

-     оперативность и точность распределения;

-     скрытность распределяемых ключей.

Распределение ключей между пользователями компью­терной сети реализуется двумя способами:

1) использованием одного или нескольких центров распре­деления ключей;

2) прямым обменом сеансовыми ключами между пользова­телями сети.

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

В обоих случаях должна быть обеспечена подлинность сеанса связи. Это можно осуществить, используя механизм запро­са-ответа или механизм отметки времени.

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

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

Задача распределения ключей сводится к построению про­токола распределения ключей, обеспечивающего:

-   взаимное подтверждение подлинности участников сеанса;

-   подтверждение достоверности сеанса механизмом запроса-ответа или отметки времени;

-   использование минимального числа сообщений при обмене ключами;

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

Распределение ключей с участием центра распределения ключей

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

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

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

Рассмотрим протоколы для симметричных криптосистем с секретными ключами и для асимметричных криптосистем с откры­тыми ключами. Вызывающий (исходный объект) обозначается че­рез А, а вызываемый (объект назначения) - через В. Участники сеанса А и В имеют уникальные идентификаторы Ida и Idb, со­ответственно.

Протокол для симметричных криптосистем с исполь­зованием отметок времени. Каждый из участников сеанса А и В имеет мастер-ключ Kt, для объекта i (i=A; В), известный только ему и ЦРК. Эти мастер-ключи генерируются в ЦРК и распределя­ются каждому объекту при личном контакте. Мастер-ключ исполь­зуется для шифрования сеансового ключа, когда последний пере­дается по сети. Сеансовый ключ Ks генерируется в ЦРК и исполь­зуется участниками сеанса А и В для защиты сообщений при передаче по линиям связи. Для предотвращения фальсифициро­ванных повторных вызовов на стадии распределения ключей в этом протоколе применяются отметки времени Т.

Участник А инициирует фазу распределения ключей, по­сылая в ЦРК по сети идентификаторы Idа и Idb:

(1) A->ЦРК: Idа, ( Idb, Прошу связь с B’).

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

Если сообщение правильное, менеджер ЦРК разыскивает мастер-ключ Ktb, а также вычисляет сеансовый ключ Ks. Затем участнику А посылается ответное сообщение

(2) ЦРК -> А :   (Т, Ks, Idb,   (Т, Ks, Ida)).

Это сообщение может расшифровать только А, поскольку оно зашифровано ключом Kta. Участник А проверяет отметку вре­мени Т, чтобы убедиться, что это сообщение не является повто­ром предыдущей процедуры распределения ключей. Идентифика­тор Idb убеждает А, что действительно требуемый адресат был указан в сообщении (1). Участник А сохраняет у себя сеансовый ключ Ks и посылает участнику В часть сообщения, зашифрован­ную мастер-ключом объекта В. а также случайное число r1, за­шифрованное сеансовым ключом Ks:

(3) A->B : (t, Ks, Ida), .

В этом случае только участник В может расшифровать сообщение (3). Участник В получает отметку времени Т, сеансо­вый ключ Ks и идентификатор Ida. Если отметка времени Т вер­на, то В уверен, что никто, кроме А, не может быть вызывающим объектом. Фактически верная отметка времени, и уникальный идентификатор участника А, зашифрованные ключом Ktb, обеспе­чивают подтверждение подлинности А по отношению к В. Далее В извлекает из сообщения случайное число r1, выполняя расшифрование сеансовым ключом Ks. Для взаимного подтверждения подлинности участник В посылает А сообщение, зашифрованное ключом Ks и содержащее некоторую функцию от случайного чис­ла f(r1):

(4) В->А : .

Например, функция f может осуществлять отображение

f : r1->r1-1.

Если после расшифрования сообщения (4) участник А по­лучает правильный результат, он знает, что объект на другом кон­це линии связи действительно В.

Если все шаги успешно выполнены, то этих взаимных под­тверждений достаточно, чтобы установить связь, которая будет проходить под сеансовым ключом Ks. Следует отметить, что в этом протоколе необходим обмен с ЦРК для получения сеансово­го ключа каждый раз, когда А желает установить связь с В. Дан­ный протокол обеспечивает надежное соединение объектов А и В при условии, что ни один из ключей не скомпрометирован и ЦРК защищен.

Протокол для асимметричных криптосистем с исполь­зованием сертификатов открытых ключей. В этом протоколе используется идея сертификатов открытых ключей [48].

Сертификатом открытого ключа С называется сообще­ние ЦРК, удостоверяющее целостность некоторого открытого ключа объекта. Например, сертификат открытого ключа для пользова­теля А, обозначаемый СА, содержит отметку времени Т, иденти­фикатор IdА и открытый ключ КА, зашифрованные секретным ключом ЦРК Кцрк, т.е.

СА=Ek(црк) (Т, IdA, КA).

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

Секретный ключ kцрк известен только менеджеру ЦРК. Открытый ключ Kцрк известен участникам А и В. ЦРК поддержи­вает таблицу открытых ключей всех объектов сети, которые он обслуживает.

Вызывающий объект А инициирует стадию установления ключа, запрашивая у ЦРК сертификат своего открытого ключа и открытого ключа участника В:

(1) А -> ЦРК : IdA, IdB, 'Вышлите сертификаты ключей А и В. Здесь IdA и IdB - уникальные идентификаторы соответственно участников А и В.

Менеджер ЦРК отвечает сообщением

(2) ЦРК -> А :  Ek(црк) (Т, IdA, КA), Ek(црк), (Т, IdBB).

Участник А, используя открытый ключ ЦРК Кцрк, расшифро­вывает ответ ЦРК, проверяет оба сертификата. Идентификатор IdB убеждает А, что личность вызываемого участника правильно зафиксирована в ЦРК и Кв - действительно открытый ключ участни­ка В, поскольку оба зашифрованы ключом Кцрк.

Хотя открытые ключи предполагаются известными всем, посредничество ЦРК позволяет подтвердить их целостность. Без такого посредничества злоумышленник может снабдить А своим открытым ключом, который А будет считать ключом участника В. Затем злоумышленник может подменить собой В и установить связь с А, и его никто не сможет выявить.

Следующий шаг протокола включает установление свя­зи А с В:

(3) А-> В : CA,  Ek(a)(T),.

Здесь CA - сертификат открытого ключа пользователя А;

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

r1 - случайное число, генерируемое А и используемое для обмена с В в ходе процедуры подлинности. Если сертификат СA и подпись А верны, то участник В уверен, что сообщение пришло от А. Часть сообщения  Ek(b)(ri) мо­жет расшифровать только В, поскольку никто другой не знает сек­ретного ключа kв, соответствующего открытому ключу Кв. Участник В расшифровывает значение числа r1 и, чтобы подтвердить свою подлинность, посылает участнику А сообщение

(4) В->А : Ek(a)(ri).

Участник А восстанавливает значение r1, расшифровывая это сообщение с использованием своего секретного ключа kA. Ес­ли это ожидаемое значение r1, то А получает подтверждение, что вызываемый участник действительно В.

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

 

 

38. Распределение ключей прямым обменом сеансовыми ключами между пользова­телями сети.

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

Для решения этой проблемы можно применить два способа:

1) использование криптосистемы с открытым ключом для шифрования и передачи секретного ключа симметричной крипто­системы;

2) использование системы открытого распределения клю­чей Диффи-Хеллмана.

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

 

39. Алгоритм Диффи-Хеллмана.

Алгоритм открытого распределения ключей Диффи-Хеллмана. Алгоритм Диффи-Хеллмана был первым алгоритмом с открытыми ключами (предложен в 1976 г.). Его безопасность обу­словлена трудностью вычисления дискретных логарифмов в ко­нечном поле, в отличие от легкости дискретного возведения в сте­пень в том же конечном поле.

Предположим, что два пользователя А и B хотят организо­вать защищенный коммуникационный канал.

1.     Обе стороны заранее уславливаются о модуле N (N должен быть простым числом) и примитивном элементе  , , gZn, 1≤gN  который образует все ненулевые элементы множе­ства ZN, т.е.

{g,g2,…,gN-1=1}=ZN-{0}

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

2. Затем пользователи А и В независимо друг от друга выбирают собственные секретные ключи kA и kB  (kA и kB  - слу­чайные большие целые числа, которые хранятся пользователями А и В в секрете).

3. Далее пользователь А вычисляет открытый ключ

 ya=gk(a)

а пользователь В - открытый ключ

.yb=gk(b)(mod N)

4. Затем стороны А и В обмениваются вычисленными значениями открытых ключей уA и уB по незащищенному каналу.

(Мы считаем, что все данные, передаваемые по незащищенному каналу связи, могут быть перехвачены злоумышленником.)

5. Далее пользователи А и В вычисляют общий секрет­ный ключ, используя следующие сравнения:

пользователь А:       K=(yb)K(a)=(gk(b))k(a)(mod N)

пользователь В:   K/=(ya)k(b)=(gk(a))k(b)

При этом K = К', так как (gk(b))k(a)= (gk(a))k(b)(mod N)

Схема реализации алгоритма Диффи-Хеллмана показана на рис. 7.4.

Ключ К может использоваться в качестве общего секрет­ного ключа (ключа шифрования ключей) в симметричной крипто­системе.

Кроме того, обе стороны А и В могут шифровать сооб­щения, используя  следующее преобразование шифрования (типа RSA): С = Ек (М) = МK (mod N).

 

 

Рисунок 7.4. Схема реализации алгоритма Диффи-Хеллмана

 

Для выполнения расшифрования получатель сначала на­ходит ключ расшифрования К*  с помощью сравнения

 K*K=1(mod N-1)

а затем восстанавливает сообщение

M= Dk(C)=Ck*

Пример. Допустим, модуль N = 47, а примитивный элемент g = 23. Пред­положим, что пользователи А и В выбрали свои секретные ключи: КА =12(mod 47) и kB = 33 (mod 47).

Для того чтобы иметь общий секретный ключ К. они вычисляют сначала значения частных открытых ключей:

уА =  = 2312= 27 (mod 47),

УВ =  = 2333 = 33 (mod 47).

После того, как пользователи А и В обменяются своими значениями уА и Ув, они вычисляют общий секретный ключ

K=(yb)k(a)= (ya)k(b)=3312=2733=2312*33=25(mod N-1)

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

K*K*=1(mod N-1)

откуда

 = 35 (mod 46).

 

Теперь, если сообщение М =16, то криптограмма

 C=Mk=1625=21(mod 47)

Получатель восстанавливает сообщение так:

..M=Ck=2135=16(mod 47)

 

Злоумышленник, перехватив значения N, g, yA и yB, тоже хотел бы определить значение ключа К. Очевидный путь для ре­шения этой задачи состоит в вычислении такого значения kA по N, g, yA, что  gk(a)mod N=ya (поскольку в этом случае, вычислив КA, можно найти). K=(yb)k(a)mod N Однако нахождение kA по N, g и уA - задача нахождения дискретного логарифма в конечном по­ле, которая считается неразрешимой.

Выбор значений N и g может иметь существенное влия­ние на безопасность этой системы. Модуль N должен быть большим и простым числом. Число (N -1)/2 также должно быть простым числом. Число g желательно выбирать таким, чтобы оно было примитивным элементом множества ZN. (В принципе достаточно, чтобы число g генерировало большую подгруппу мультип­ликативной группы по mod N.)

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

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

Преимущество метода Диффи-Хеллмана по сравнению с методом RSA заключается в том, что формирование общего сек­ретного ключа происходит в сотни раз быстрее. В системе RSA генерация новых секретных и открытых ключей основана на гене­рации новых простых чисел, что занимает много времени.

 

40. Особенности функционирования межсетевых экранов.

В сети Интернет обычно используются следующие методы защиты:

- межсетевые экраны

- криптопротоколы

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

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

 

 

 

Рисунок 8.1. Схема установления межсетевого экрана

Политика сетевой безопасности каждой организации должна включать две составляющие:

-         политику доступа к сетевым сервисам;

-         политику реализации межсетевых экранов.

В соответствии с политикой доступа к сетевым сервисам определяется список сервисов Internet, к которым пользователи должны иметь ограниченный доступ.

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

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

 

 

 

41. Основные компоненты межсетевых экранов. Фильтрующие маршрутизаторы.

Большинство компонентов межсетевых экранов можно от­нести к одной из трех категорий:

-         фильтрующие маршрутизаторы;

-         шлюзы сетевого уровня;

-         шлюзы прикладного уровня.

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

Фильтрующий маршрутизатор, обычно может фильтровать IP-пакеты на основе группы следующих полей заголовка па­кета:

-         IP-адрес отправителя (адрес системы, которая послала пакет);

-         IP-адрес получателя (адрес системы, которая принимает пакет);

-         порт отправителя (порт соединения в системе-отправителе);

-         порт получателя (порт соединения в системе-получателе).

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

Настройка правил выглядит как заполнение следующей таблицы:

Тип

Адрес отправителя

Адрес получателя

Порт отправителя

Порт

получателя

Действие

TCP

*

123.4.5.6

>1023

23

Разрешить

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

-         сравнительно невысокую стоимость;

-         гибкость в определении правил фильтрации;

-         небольшую задержку при прохождении пакетов.

-         Недостатками фильтрующих маршрутизаторов являются:

-         внутренняя сеть видна (маршрутизируется) из сети Internet;

-         правила фильтрации пакетов трудны в описании и требуют очень хороших знаний технологий TCP и UDP;

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

 

 

42. Основные компоненты межсетевых экранов. Шлюзы сетевого уровня.

Большинство компонентов межсетевых экранов можно от­нести к одной из трех категорий:

-         фильтрующие маршрутизаторы;

-         шлюзы сетевого уровня;

-         шлюзы прикладного уровня.

Шлюз сетевого уровня иногда называют системой трансля­ции сетевых адресов или шлюзом сеансового уровня модели OS). Такой шлюз исключает прямое взаимодействие между авторизированным клиентом и внешним хост-компьютером.

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

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

 

 

 

 

43. Основные компоненты межсетевых экранов. Шлюзы прикладного уровня.

Большинство компонентов межсетевых экранов можно от­нести к одной из трех категорий:

-         фильтрующие маршрутизаторы;

-         шлюзы сетевого уровня;

-         шлюзы прикладного уровня.

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

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

Для достижения более высокого уровня безопасности и гибкости шлюзы прикладного уровня и фильтрующие маршрутиза­торы могут быть объединены в одном межсетевом экране.

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

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

-         Невидимость структуры защищаемой сети из глобальной сети Internet.

-         Надежная аутентификация и регистрация.

-         Оптимальное соотношение между ценой и эффективностью.

-    Простые правила фильтрации.

 

44. Основные схемы сетевой защиты на базе межсетевых экранов. Межсетевой экран - фильтрующий маршрутизатор.

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

-   защита корпоративной или локальной сети от несанкциони­рованного удаленного доступа со стороны глобальной сети;

-   скрытие информации о структуре сети и ее компонентов от пользователей глобальной сети;

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

Межсетевой экран, основанный на фильтрации пакета, является самым распространенным и наиболее простым в реали­зации. Он состоит из фильтрующего маршрутизатора, расположен­ного между защищаемой сетью и сетью Internet (рис. 8.6). Фильт­рующий маршрутизатор сконфигурирован для блокирования или фильтрации входящих и исходящих пакетов на основе анализа их адресов и портов.

 

 

Рисунок 8.6. Межсетевой экран на основе фильтрующего маршрутизатора

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

-   сложность правил фильтрации; в некоторых случаях совокуп­ность этих правил может стать неуправляемой;

-   невозможность полного тестирования правил фильтрации; это приводит к незащищенности сети от непротестированных атак;

 

 

45., Основные схемы сетевой защиты на базе межсетевых экранов. Межсетевой экран на основе двухпортового шлюза.

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

 

 

 

 

Рисунок 8.7. Межсетевой экран с прикладным шлюзом фильтрующим маршрутизатором

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

Рассматриваемая схема организации межсетевого экрана является довольно простой и достаточно эффективной.

 

 

46. Основные схемы сетевой защиты на базе межсетевых экранов. Межсетевой экран на основе экранированного шлюза.

Межсетевой экран на основе экранированного шлюза объ­единяет фильтрующий маршрутизатор и прикладной шлюз, раз­мещаемый со стороны внутренней сети. Прикладной шлюз реали­зуется на хост-компьютере и имеет только один сетевой интер­фейс (рис. 8.8).

 

 

Рисунок 8.8. Межсетевой экран с экранированным шлюзом

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

 

 

47. Основные схемы сетевой защиты на базе межсетевых экранов. Межсетевой экран - экранированная подсеть.

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

 

 

Рисунок 8.9. Межсетевой экран - экранированная подсеть

Межсетевой экран с экранированной подсетью хорошо подходит для защиты сетей с большими объемами трафика или с высокими скоростями обмена.

Межсетевой экран с экранированной подсетью имеет и не­достатки:

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

-   существует принципиальная возможность доступа в обход при­кладного шлюза.

 

 

48. Биометрическая защита.

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

Отпечатки пальцев

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

Черты лица

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

Геометрия кисти руки

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

Этот метод пригоден для удостоверения личности.

Рисунок радужной оболочки глаза

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

Рисунок сосудов за сетчаткой глаза

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

Расположение вен на руке

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

Динамические характеристики почерка

Динамическими характеристиками почерка являются координаты движения конца пера в зависимости от времени, скорость пера, а также оказываемое им давление.

1.1.8  Особенности речи

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

Динамика ударов по клавишам

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

Другие характеристики

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

-   структура кожи и эпителия на пальцах (ультразвуковой метод идентификации по отпечаткам пальцев);

-   термограмма лица (инфракрасный метод идентификации);

-   отпечатки ладоней;

-   признаки походки;

-   особенности запаха;

-   форма уха;

-   характеристики ДНК.

 

49. Защита от копирования. “Привязка" к компьютеру.

Системы защиты от копирования можно разделить на следующие группы:

-   привязка к дискете;

-   привязка к компьютеру;

-   привязка к ключу;

-   опрос справочников

-   ограничение использования ПО.

В мировой практике существуют следующие способы распространения программ:

-   FreeWare (свободно с сохранением прав за автором);     

-   ShareWare (2-4 недели опробовать, потом или не использовать или оплатить);     

-   CriptWare (две версии: демо+зашифрованная рабочая).

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

Гораздо удобнее иметь необходимый программный продукт записанным на винчестере. Поэтому необходимо, чтобы контролирующая часть защищаемой программы (КЧЗП) "запомнила" свой компьютер и потом при запуске сравнивала имеющиеся характеристики с характеристиками "родного" компьютера. В случае их расхождения можно считать, что программа незаконно скопирована, и прервать ее выполнение. Для этого надо найти какие-то параметры, которые бы индивидуально характеризовали каждую вычислительную систему.

Рассмотрим, что все же можно предложить для КЧЗП в качестве характеристик, которые могли бы проверяться при работе защищаемой программы.

Физические дефекты винчестера

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

Дата создания BIOS

Можно попытаться сузить класс компьютеров, на которых возможно функционирование незаконно скопированной программы. Это достигается, например, путем введения проверки даты создания BIOS, которая записана в ПЗУ каждого компьютера.

Версия используемой OS

Так как версия операционной системы, с которой работает пользователь на данном компьютере, не меняется на протяжении достаточно длительного времени, то ее также можно использовать в качестве параметра для организации проверки в КЧЗП.

Серийный номер диска

При форматировании диска на него создается так называемый серийный номер, его несложно изменить с помощью программ типа DiskEdit.

 

 

50. Защита от копирования. Введение ограничений на использование программного обеспечения.

В одном из способов защиты программного обеспечения от незаконного использования применяются ограничения по:

-   времени его эксплуатации;

-   количеству запусков;

-   его перемещению для использования на других машинах.

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

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

-   CMOS памяти;

-   теле программы или в специальных числовых файлах;

-   загрузочном секторе диска(вместо информации о версии DOS);

-   FATе (в первом элементе таблицы, обычно заполненном кодом FFF);

-   резервных секторах;

-   сбойных секторах;

-   системном реестре;

-   за концом одного из файлов на локальном диске.

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

 

51. Защита от копирования. Привязка к диску.

Для начала несколько слов об устройстве дискеты. Двухстороняя дискета 3.5" в дисководе 3.5". Скорость передачи данных дисководом 250 Кбит (DD) 500 Кбит (HD).

1.1.13        Перестановка в нумерации секторов

Один из методов зашиты от копирования основывается на перестановке номеров секторов на дорожке, то есть вместо обычной последовательности 1,2,3,4,5,6,7,8,9 вводится, например, 1,5,3,7,9,8,6,2,4.

1.1.14        Введение одинаковых номеров секторов на дорожке

Другой схемой защиты, основанной на идее нестандартного форматирования, является способ, при котором часть секторов на определенной дорожке нумеруется одинаково. Например, 1,2,3,3,3,6,7,8,9. В эти сектора записываются некоторые различные данные.

1.1.15        Введение межсекторных связей

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

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

1.1.16        Изменение длины секторов

Еще одна схема защиты, основанная на методе нестандартного форматирования, использует изменение длины сектора. Напомним, что стандартная длина сектора, с которой работает MS DOS по умолчанию, - 512 байт, при этом на дорожке размещается 9 секторов. В процессе специального форматирования дискеты на заданной дорожке длина секторов устанавливается либо 128, либо 256 байт.

1.1.17        Изменение межсекторных промежутков

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

1.1.18        Использование дополнительной дорожки

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

1.1.19        Введение логических дефектов в заданный сектор

На дистрибутивной дискете при выполнении операции записи в определенный сектор производится кратковременное отключение мотора НГМД, что приводит к искажению записываемых данных.

1.1.20        Изменение параметров дисковода

Одной из схем создания защиты от копирования используется другая скорость вращения диска. Стандартная скорость вращения - 300 об/мин. Если ее понизить, скажем, до 280 об/мин, в то время как данные для записи передаются с прежней скоростью, то это понижение увеличивает плотность хранения данных на дискете, и на каждой дорожке образуется место для дополнительного десятого сектора.

1.1.21        Технология "ослабленных" битов

Способом записи информации на дискету является ее представление в виде 0 или 1. Данный метод защиты использует запись некоторого участка дистрибутивной дискеты с неопределенным уровнем сигнала. Таким образом, получается участок "ослабленных" битов.

1.1.22        Физическая маркировка дискеты

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

 

 

52. Правовые аспекты компьютерной безопасности.

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

1.1.23        Редактирование программы

На этот счет отечественное законодательство содержит ряд положений, как допускающих подобную деятельность, так и карающих ее.

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

1.1.24        Создание "вспомогательной" программы, взаимодействующей с имеющейся

а) с изменением исходного кода,

б) без такового изменения.

Представляется, что данная деятельность может попадать под действие ст. 273 УК РФ, т.к. она устанавливает ответственность за "Создание программ для ЭВМ заведомо приводящих к несанкционированному уничтожению, блокированию, модификации либо копированию информации, нарушению работы ЭВМ, системы ЭВМ или их сети".

1.1.25        Декомпилирование программы

Декомпилирование программы не носит противоправный характер, если осуществляется для достижения способности к взаимодействию программам, для изучения кодирования и структуры программы или обосновывается этими целями (п. 2 ст. 25 Закона РФ "Об авторском праве и смежных правах").

1.1.26        Копирование программного обеспечения

Законно копирование программного обеспечения вполне возможно, при наличии обоснования указанного в законе, при этом, конечно, желательно быль "правомерным владельцем программы" (п. 1 ст. 25 Закона РФ "Об авторском праве и смежных правах").

1.1.27        Использование или распространение противозаконных программ
и их носителей

В зависимости от характера вреда возможно наступление гражданско-правовой ответственности.

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

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

1.1.28        Деятельность в компьютерной сети

Уголовное законодательство предусматривает два случая наступления ответственности за деяния связанные с компьютерной сетью:

а) Статья 272 УК РФ (Неправомерный доступ к компьютерной информации).

б) Статья 274 УК РФ (Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети) предусматривает ответственность за "нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети лицом, имеющим доступ к ЭВМ, системе ЭВМ или их сети, повлекшее уничтожение, блокирование или модификацию охраняемой законом информации ЭВМ, если это деяние причинило существенный вред".

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

 

53. Вредоносные программы.

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

-  скрыть признаки своего присутствия в программной среде ПЭВМ;

-  самодублироваться, ассоциировать себя с другими программами и/или переносить свои фрагменты в какие-либо области оперативной или внешней памяти, не принадлежащие программе;

-  изменять код программ в оперативной или внешней памяти;

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

1. Вирус.

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

По деструктивным возможностям вирусы можно разделить на:

-   безвредные, никак не влияющие на работу компьютера (кроме уменьшения свободной памяти на диске в результате своего распространения);

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

-   опасные вирусы, которые могут привести к серьезным сбоям в работе компьютера;

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

          2. Люк.

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

1)      забыл удалить его;

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

3)      умышленно оставил его в программе в интересах облегчения окончательной сборки конечного программного продукта;

4)      умышленно оставил его в программе с тем, чтобы иметь скрытое средство доступа к программе уже после того, как она вошла в состав конечного продукта.

3. Троянский конь.

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

             4. Логическая бомба.

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

            5. Программная закладка.

Закладки выполняют:

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

-   изменение алгоритмов функционирования прикладных программ

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

-    

55. RAID-массивы.

RAID- Redundant Arrays of Inexpensive Discs («Избыточ­ный массив недорогих дисков»).

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

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

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

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

1.2   RAID 0

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

1.3   RAID I (Mirrored disk)

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

1.4   RAID 2

RAID уровня 2 - это схема резервирования данных с использованием кода Хэмминга для коррекции ошибок. Код Хэмминга, формирующий контрольное слово, основан на использовании поразряд­ной операции «исключающего ИЛИ» (ХОR) (употребляется также название «неравнознач­ность»). Само контрольное слово, полученное по ал­горитму Хэмминга, - это инверсия результа­та поразрядной операции исключающего ИЛИ номеров тех информационных разрядов слова, значения которых равны 1.

1.5   RAID 3

RAID уровня 3 — это отказоустойчивый мас­сив с параллельным вводом-выводом и одним дополнительным диском, на который записы­вается контрольная информация. При записи поток данных разбивается на блоки на уровне байт и записывается одновременно на все диски массива, кроме выделенного для хранения контрольное информации. Для вычисления контрольной информации  используется операция «исключающего ИЛИ» (XOR), применяемая к записываемым блокам данных.

1.6   RAID 4

RAID уровня 4 - это отказоустойчивый массив независимых дисков с одним диском для хра­нения контрольных сумм. RAID 4 во многом схож с RAID 3, но отличается от после­днего прежде всего значительно большим раз­мером блока записываемых данных (большим, чем размер записываемых данных). В этом и есть главное различие между RAID 3 и RAID 4.

1.7   RAID 5

RAID уровня 5 - это отказоустойчивый мас­сив независимых дисков с распределенным хранением контрольных сумм. Блоки данных и контрольные суммы, которые рас­считываются точно так же, как и в RAID 3, цик­лически записываются на все диски массива, то есть отсутствует выделенный диск для хра­нения информации о контрольных суммах.

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

Hosted by uCoz