
- •1.Понятие об архитектуре аппаратных средств и её взаимосвязи с программным обеспечением.
- •2.Основные классы задач операционной системы.
- •3.Концептуальные основы операционных систем.
- •4.Средства и алгоритмы управления задачами ос.
- •5.Задачи управления ресурсами.
- •6.Управление памятью в операционных системах.
- •7.Система ввода – вывода
- •8.Защита информации и безопасность в ос.
- •Методы идентификации и аутентификации
- •9.Криптография, шифры, перестановки.
- •10.Шифр гаммирования.
- •11.Стандартные шифры des(Data encryption standart) и гост.
- •12.Шифры с открытым ключом.
- •13.Методы идентификации и аутентификации.
- •14.Специальные методы аутентификации и идентификации и управление доступом. Методы отражения атак.
12.Шифры с открытым ключом.
Основной проблемой препятствующей его использования является необходимость поддержания закрытого канала связи системы. Закрытый канал связи – это изолированный, защищенный от общего использования канал связи, включающий в себя отдельные линии связи, аппаратуру и т.д.
До сих пор наиболее закрытым и защищенным считается старый канал связи как использование Фельд егерь для доставки закрытых корреспондентов. Наряду с требованиями смены ключей для шифрования каждого текста затраты на содержание закрытого канала связи становятся не просто большими, а баснословными и их не может позволить себе ни один субъект экономической деятельности кроме государства. Именно поиск решения этой проблемы привел к появлению в конце 70 начале 80 годов прошлого века так называемых алгоритмов шифрования с открытым ключом, основанных на подходе сформулированным ещё в конце 40х годов Шенноном. Он предложил строить шифр таким образом, чтобы его раскрытие было эквивалентно решению математической задачи, требующей выполнения объема вычислений превосходящих возможности современных ЭВМ.
//Этот принцип известен в теории алгоритмов как вычислительная неразрешимость, когда мы знаем алгоритм, но у нас нету вычислителя, который решит эту задачу за разумное время. Слово современных ЭВМ здесь является ключевым. Современные машины стали намного мощнее, но принцип сохраняется.
На основе этого принципа и появился первый алгоритм распределения ключей Диффи – Хеллмана.
Предположим у нас есть большие целые числа
N,G 1<G<N-1 и 2 пользователя А и В, которые хотят обменяться шифросообщениями.
Пользователь А выбирает большое целое число Х и вычисляет:
Пользователь В выбирает большое целое число Y и вычисляет:
и затем эти числа хранятся в секрете, а вычисленными значениями пользователи обмениваются с друг другом. Получив соответствующую информацию каждый из пользователей вычисляет
Таким
образом, оба пользователя получают одно
значения k,
которое используют как ключ для обмена
шифросообщениями. Нужно решить задачу
дискретного алгоритма, которая заключается
в том, что известны 2 числа A
и В и требуется найти число X
из выражения
.
Она как раз и относится к задаче
неразрешимой при определенных параметрах.
Это была первая система, но это не шифр.
На основе этой системы были разработаны непосредственно шифры с открытыми ключом, которые использовали этот принцип. Появилось первоначально достаточно много вариантов, но по сути дела проверку выдержали только 2 задачи, и алгоритмы построены на их решении.
1) Задача дискретной факторизации – Известно большое целое число N и что оно является произведением простых чисел p и q. Требуется разложить это число на простые сомножители, проще говоря, найти p и q. N=p*q - RSA
2)
Задача дискретного логарифмирования
(найти число X
из выражения
– задача Эль-Гамаля.
Рассмотрим первый из них, т.е. шифр RSA.
1) Выбираются 2 больших простых целых числа p и q и определяется их произведение p*q=N.
2) Выбирается большое целое число d, которое должно быть взаимопростым с числом M=(p-1)*(q-1). Взаимопростыми называются числа, неимеющие общих делителей кроме 1.
3) Вычисляется число e из условия e*d mod M=1. Сразу коротко отметим, что такое число не является единственными, это значит что чисел, отвечающих этому условию бесконечно много.
4) N – всегда общеизвестна – часть открытого ключа. 2ое можно выбрать e или d. Оставшееся число автоматически становится закрытым ключом в момент своего опубликования. Часто в алгоритмах указывается что мы берем текст определенной длины и шифруем. На самом деле алгоритм дается для взаимодействия с числами (число и текст – взаимооднозначное соответствие).
5) Но для того, чтобы алгоритм работал, это число должно отвечать условию 1<S<N. Текст предварительно разбивается на блоки, каждый блок имеет числовую форму, эта числовая форма должна отвечать условию 1<S<N. Замечание – само значение N должно быть максимально приближено к максимальному целому числу, представленному в 32 битах. Если мы выполнили все условия, после этого наступает сам шаг шифрования.
6) S’=S^e modN(e-открытый, может быть d).
7)Расшифрование – S=(S’)^d mod N(d – ключ).
На самом деле в основе этого алгоритма лежит малая теорема Ферма. Авторы доказали частный случай теоремы и из нее получили этот алгоритм.
Рассмотрим, какая система связи возникнет при использовании этого алгоритма. Алгоритмы с открытым ключом всегда используют 2 ключа – один для шифрования, один для расшифрования, при этом у пользователя А есть РШа – ключ для расшифрования, и есть Ша – открытый ключ.
Т.е зашифровать может любой, а расшифровать только пользователь А. Для дуплексного обмена нужно, чтобы пользователь B точно также распространил свой ключ для шифрования открытый ключ (передал пользователю А). Если много пользователей возникает система связи с открытым ключом, которая работает после обмена открытыми ключами. И когда получилась эта система, появилась бурная внедрение, как в экономику, так и в защиту. Криптография стала общедоступной. Это вызвало недовольство со стороны криптоаналитиков. Идея квантового компьютера появилась из необходимости расшифровывать эти шифры. Если этих шифров не будет, жизнь откатится в 50-60е года, т.к. все структуры, их защита, основаны на этих алгоритмах.
Несмотря на то, что удалось расшифровать 150 десятичных знаков, сдвинули планку и это уже стало невозможных. Для сегодняшнего развития ВЧ рекомендуется использовать числа с не менее 300 десятичными разрядами.
Алгоритм Эль-Гомера может использовать общую формулировку:
1) задается целое большое простое число P.
2)сообщение должно удовлетворять условию 1<S<P. P-открытый общедоступный ключ.
3)А генерирует случайное число Х, 1<X<P, B генерирует случайное число Y, 1<Y<P.
4)А шифрует сообщение S S1=S^X mod P и отправляет его В.
5) В шифрует сообщение своим ключом S2=S1^Y mod P и возвращает его А.
6)А снимает свой ключ и S3=S2^(-x) mod P и возвращает результат Р.
7)В расшифровывает сообщение, снимая с него свой ключ S=S3^(-y) mod P. Особенность – никогда не находится в канале сообщения незащищенной информации. Такая технология позволяет присоединяя свои собственные сообщения организовывать связь на принципе игры в шахматы или в карты. А и В не могут знать чужие ключи, знают только свои. Для более простых шифров часть шагов объединяется в виде дополнительно общего ключа.
Здесь есть особенность – для определенных чисел очень легко определить числа x и y. К счастью таких чисел немного и их необходимо избегать. Если при раскрытии ключа пострадает 1 один абонент системы в 1ом алгоритме, то во втором пострадают оба.
Предположим, что мы для шифрования сообщения используем САВ – 3 1 2 (порядковый номер в алфавите). Пусть:
1) p=3, q=11, N=33.
2) (p-1)(q-1)=20; d=3.
3) Выберем e (e*3)mod20=1. e=7, существуют другие числа.
4) Зашифруем сообщение используя ключ e и N [7,33].c1=3^7 mod 33 = 9, c2=1^7 mod 33=1, c3=2^7 mod33=29; Получим такой код {9,1,29}.
5) Расшифрование m1=9^3 mod 33 = 729 mod 33 = 3; m2=1 mod 33 =1; m3=29^3 mod 33 = 24389 mod 33 = 2.
Если мы начнем уменьшать длину блока (в примере 1 символ), то мы будем шифровать каждый символ и каждый символ получит свой шифрокод и алгоритм выродится в кодирующую систему – фактор размер блока. Так как в примере шифровать нельзя. Для этих алгоритмов существенным является размер блока. При этом эти системы уже часто используются совместно с системами симметричного шифрования в целях экономии времени для того чтобы обмениваться с помощью открытой криптосистемы только ключом, а само сообщение расшифровывается используя симметричные криптосистемы, при этом длины ключей этих систем должны быть согласованы. Если длина ключа 128 бит (симметр) – длина ключа 2300бит(откр).
ОСНОВНЫЕ ПРОБЛЕМЫ КРИПТОЗАЩИТЫ.
Подводя итоги криптографическим методам, как мы отметили, механическое использование криптографических методов в прикладной криптографии недопустимо. Сейчас существует не проблема разработки новых алгоритмов, а проблема грамотного эффективного их использования. 1) Работа с ключами. В Криптографии всегда полагается не секретность метода защиты информации.
Основными правилами механизма распределения ключей является :
1)Должны выбираться случайно, формироваться случайно, иметь максимальную длину, и в гибридных системах должны быть согласованы по стойкости (по длине).
2) Выбранные ключи должны распределятся таким образом между пользователями без какой либо закономерности.
3) Должно быть обеспечено закрытие ключей на всех этапах функционирования системы, ключи только по закрытым каналам связи.
4) Для этого часто используется иерархия ключей шифрования, для чего ключи нижнего уровня шифруются с помощью ключей верхнего уровня. Ключ в вершине нешифруется. Чем ниже уровень ключа, тем чаще он меняется и рассылается по линиями связи.
Организация шифрования сообщения. Недопускается повторное шифрование на одном ключе того же текста (циркуляционная рассылка). Так как за счет накопления ошибок при передачи при наличии двух и более образцов зашифрованных на одном ключе текстов раскрытие не представляет собой особой проблемы.
1)Важнейшее требование – частая смена ключей. По сути дела она выражается требованием – для каждого сообщения необходимо использовать новый ключ.
2)Недопустимо шифровать стандартную информацию.
3)Недопустимо шифровать произвольную информацию, т.е. то что мы называли – невыключенная аппаратура шифрования.
Выбор метода шифрования всегда связан с его трудоемкостью, степенью секретности закрываемых данных, стойкостью метода и объемом шифруемой информации. Важно отметить, что большой эффект может дать предварительное сжатие текста с помощью программ архиваторов. В худшем случае мы не повысим стойкость. Очень часто предварительная архивация может на порядок увеличить стойкость. Это очень полезная и рекомендуемая процедура для электронных систем.
Все шифры удаляют смысл. Ценность ключа пропорционально возрастает с увеличением стойкости.