
- •Значение средств криптографической защиты.
- •3. Шифрование в каналах связи компьютерной сети.
- •4. Достоинства блочных шифров.
- •Рекомендации Шеннона для шифрования двоичной последовательности некой фиксированной длины n.
- •Методы анализа шифров (универсальные, специальные, частные)
- •Типовые элементы современных шифров: Перестановка размера n, q - ичная подстановка размера n, Усеченная q - ичная подстановка размера n X m , q- ичная n- разрядная память объема m
- •Примеры современных шифров: des ( схема, математические операции);Режимы работы des.
- •Примеры современных шифров: модификации des; проблема последнего блока des – способы решения; криптоанализ des.
- •Примеры современных шифров. Гост 28147-89 (Стандарт ссср и рф, 1989 год), отличия от des , алгоритм. Режимы работы алгоритма гост.
- •Параметры
- •Расширение ключа
- •Шифрование
- •26. Использование маркантов или производных ключей
- •1. Ключ ka для шифрования сообщений входящих к абоненту а должен изготовить сам абонент а. Он же изготавливает ключ ka-1 - для расшифрования данных сообщений.
- •2. Ключ ka рассылается всем желающим, отправлять сообщения абоненту a, ключ ka-1 держится в секрете.
- •3. Ключ ka-1 не восстанавливается по ключу ka.
- •51. Методы анализа криптопротоколов
- •52. Классификация протоколов аутентификации. Типы аутентификации
- •Основные атаки на протоколы аутентификации. Типы атак и пути их обхождения.
- •Простая аутентификация.
- •Использование односторонних функций для проверки паролей
- •Строгая аутентификация.
- •Строгая аутентификация, основанная на симметричных алгоритмах. Протоколы с симметричными алгоритмами шифрования.
- •Общая структура доказательств с нулевым разглашением
- •75.Криптосистемы на эллиптических кривых.
Строгая аутентификация.
Строгая аутентификация - вид аутентификации, при котором секретная информация, позволяющая проверить подлинность пользователя, не передается в открытом виде.
Синоним строгой аутентификации — многофакторная аутентификация, то есть аутентификация, в процессе прохождения которой используется 2 или более факторов.
Что такое факторы (аутентификации)
Это типы элементов, которые используется в процессе аутентификации: физический, логический, биологический и т.д. Рассмотрим подробнее:
Физический элемент — то, чем пользователь владеет, например, смарт-карта или генератор одноразовых паролей .
Логический — то, что пользователь знает, например, PIN-код или пароль
Биометрический — то, чем пользователь является. Например, отпечаток пальца, венозная картина ладони, сетчатка глаза, голос и т.д.
Сочетание этих элементов определяет варианты многофакторной (строгой) аутентификации, а их количестве — факторность аутентификации.
Чем выше факторность аутентификации, тем она надёжнее. Объясняется это просто. Каждый тип элемента (фактора) в силу своей природы обладает своей спецификой, а это влечет за собой необходимость использовать принципиально разные метода для компрометации каждого из них
Примеры
Если мы рассматривает двухфакторную аутентификацию с использованием генератора одноразовых паролей и PIN-кода, то мы говорим о комбинации и совместном использовании физического и логического элемента, а для прохождения такой аутентификации необходимо одновременно иметь генератор и знать PIN. Если PIN-код можно подсмотреть, то это нельзя сделать с генератором, для его компрометации необходимо его украсть, что в свою очередь нельзя сделать PIN-кодом.
Трехфакторная аутентификация, распространенная крайне редко, чаще всего (если не рассматривать опус Брауна «цифровая крепость» где в качестве биометрии использовалась ДНК, но там речь шла о АНБ) представлена в виде комбинации смарт-карта/PIN-код/биометрия(отпечаток пальца).
Строгая аутентификация, основанная на симметричных алгоритмах. Протоколы с симметричными алгоритмами шифрования.
59. Аутентификация с использованием асимметричных алгоритмов шифрования
Протоколы аутентификации, обладающие свойством доказательства с нулевым знанием.
Аутентификация с использованием асимметричных алгоритмов шифрования
В качестве примера протокола, построенного на использовании асимметричного шифрования и аутеитификаторов, молено привести следующий протокол аутентификации:
А<-В: h(r), В, РА(г, В) А—В: г
Участник В выбирает случайным образом г и вычисляет значение х = h(r) (значение демонстрирует знание г без раскрытия самого г), далее вычисляется значение е = РА(г, В). Под РА подразумевается алгоритм асимметричного шифрования (например, RSA), а под h - хэш-функция. Участник А расшифровывает е и получает значения г1 и В1, а также вычисляет х1= h(r1). После этого производится ряд сравнений, доказывающих, что х = х1 и что полученный идентификатор В1 действительно указывает на участника В. В случае успешного проведения сравнения участник А посылает г. Получив его, участник В проверяет, то ли это значение, которое он отправил в первом сообщении.
В качестве следующего примера приведем модифицированный протокол Нидхэма и Шредера, основанный на асимметричном шифровании.( Протокол Нидхема — Шрёдера — общее название для симметричного и асимметричного протоколов аутентификации и обмена ключами. Оба протокола были предложены Майклом Шрёдером и Роджером Нидхемом. Вариант, основанный на симметричном шифровании, использует промежуточную доверенную сторону. Этот протокол стал основой для целого класса подобных протоколов. Например, Kerberos является одним из вариантов симметричного протокола Нидхема — Шрёдера. Вариант, основанный на асимметричном шифровании, предназначен для взаимной аутентификации сторон. В оригинальном варианте оба варианта являются уязвимыми)
Протоколы аутентификации, обладающие свойством доказательства с нулевым знанием
Одна из уязвимостей протоколов простой аутентификации заключается в том, что после того, как доказывающий передаст проверяющему свой пароль, проверяющий может, используя данный пароль, выдать себя за проверяемого, Немногим лучше обстоит дело с протоколами строгой аутентификации. Дело в том, что А, отвечая на запросы В, обязан продемонстрировать знание секретного ключа, пусть даже и одноразово; при этом передаваемая информация не может быть напрямую использована В. Тем не менее некоторая ее часть поможет В получить дополнительную информацию о секрете А. Например, В имеет возможность так сформировать запросы, чтобы передаваемые ответы анализировались на предмет содержания дополнительной информации.
Протоколы доказательства с нулевым знанием были разработаны специально для решения данной проблемы. Этой цели можно добиться при помощи демонстрации знания секрета, однако проверяющий должен быть лишен возможности получать дополнительную информацию о секрете доказывающего. Если сформулировать эту мысль в более строгой форме, то протоколы доказательства с нулевым знанием (далее - ZK-протоколы) позволяют установить истинность утверждения и при этом не передавать какой-либо дополнительной информации о самом утверждении.
ZK-протоколы являются примером систем интерактивного доказательства, в которых проверяющий и доказывающий обмениваются многочисленными запросами и ответами, обычно зависящими от случайных чисел (в идеальном случае зависимость может реализовываться в виде подбрасывания монеты), которые позволяют сохранить секрет в тайне. Цель доказывающего - убедить проверяющего в истинности утверждения. Проверяющий же принимает или отклоняет доказательство. Необходимо отметить, что доказательство носит скорее вероятностный, нежели абсолютный характер.
Интерактивное доказательство, использующееся для идентификации, может быть сформулировано как доказательство знания. А владеет некоторым секретом s и с помощью последовательных ответов на вопросы (при наличии согласованных входных данных и функций) пытается убедить В в знании s. Заметим, что доказательство знания s отличается от доказательства того факта, что s существует. Например, доказательство знания простых множителей п (основания в RSA) отличается от доказательства того, что п является составным. Интерактивное доказательство может быть названо доказательством знания в том случае, если выполнены свойства стойкости и целостности.
Интерактивный протокол обладает свойством целостности, если только доверенные стороны смогут успешно закончить протокол (когда проверяющий принимает доказательство).
Интерактивный протокол является стойким при условии, что не существует алгоритма М, работающего за полиномиальное время и обладающего следующим свойством: если злоумышленник, пытающийся выдать себя за А, может с малой вероятностью успешно закончить протокол с участником В, тогда М в ходе работы протокола может использоваться для получения дополнительных знаний о секрете А, которые с высокой вероятностью позволяют успешно выполнить некоторые шаги протокола (в худшем случае весь протокол).
60. Протоколы с нулевым разглашением.
В криптографии Доказательство с нулевым разглашением (информации) (англ. Zero-knowledge proof) — это интерактивный протокол, позволяющий одной из сторон (проверяющему, verifier) убедиться в достоверности какого-либо утверждения (обычно математического), не получив при этом никакой другой информации от второй стороны (доказывающего, prover).
Доказательство с нулевым разглашением должно обладать тремя свойствами:
Полнота: если утверждение действительно верно, то доказывающий убедит в этом проверяющего.
Корректность: если утверждение неверно, то даже нечестный доказывающий не сможет убедить проверяющего за исключением пренебрежимо малой вероятности.
Нулевое разглашение: если утверждение верно, то любой даже нечестный проверяющий не узнает ничего кроме самого факта, что утверждение верно.
Доказательства с нулевым разглашением нашли применение в криптографических протоколах чтобы убедиться в том, что другая сторона следует протоколу честно. На практике доказательства с нулевым разглашением также используются в протоколах конфиденциального вычисления.