Алгоритм цифровой подписи RSA. Пример постановки и верификации подписи
В случае использования RSA для цифровой подписи, порядок применения d и e меняется на противоположный. На d шифруют - ставя подпись. На e – подпись расшифровывают, чтобы сравнить с оригиналом.
Пример: p=7, q=13, m=10 n=7*13=91; e=17;
Расширенный алгоритм Эвлида:
- подпись ставится на секретном ключе - подпись проставлена - проверка подписи производится на открытом ключе - подпись успешно проверена
Алгоритм цифровой подписи ElGamal. Пример постановки и верификации подписи. Управление секретами. Ключи и пароли, их энтропии. Принцип Kerckhoffs и длина ключа (пароля). Статические и сеансовые ключи, способы их получения. Слабые ключи (пароли) и атака по словарю. Сравнение длин ключей симметричных и асимметричных криптосистем. Генерация криптографически стойких паролей и случайных чисел.
Управление секретами: 1) Обычно ключи для трех задач генерируются однонаправленной функцией из мастер-ключа (таким образом, даже если один из трех ключей окажется скомпрометирован, мастер-ключ по-прежнему будет недоступен злоумышленникам). 2) Для предотвращения атак полным перебором используются динамические(сеансовые) ключи, действующие только определенное время.
Сеансовые (сессионные) ключи — ключи, вырабатываемые между двумя пользователями, обычно для защиты канала связи. Обычно сеансовым ключом является общий секрет — информация, которая вырабатывается на основе секретного ключа одной стороны и открытого ключа другой стороны. Существует несколько протоколов выработки сеансовых ключей и общих секретов, среди них, в частности, алгоритм Диффи — Хеллмана. Преимущество их в том, что даже, если у Евы и будет возможность раскрыть ключ впоследствии, по окончанию сеанса он потеряет значимость и более никогда применяться не будет. Использование сеансовых ключей, позволяет использовать настоящие (статические) ключи только изредка, в основном для обмена сеансовыми, таким образом, значительно снижается число зашифрованных сообщений попадающих в руки злоумышленника, а ведь многие методы криптоанализа требуют наличия определенного числа сообщений зашифрованных на одном ключе, для его взлома.
В компьютерной индустрии обычно оценивают сложность пароля в терминах информационной энтропии (понятие из теории информации), измеряемой в битах. Вместо количества попыток, необходимых, чтобы точно угадать пароль, берется логарифм по основанию 2 от этого числа и называется количеством "битов энтропии" в пароле. Пароль со, скажем, 42-битной сложностью, посчитанной таким путем, будет соответствовать случайно сгенерированному паролю длиной в 42 бита. Другими словами, чтобы взломать пароль с 42-битной сложностью, необходимо произвести 242 попыток, исчерпав все возможные варианты методом полного перебора. Таким образом, добавление одного бита энтропии к паролю удваивает количество необходимых догадок, что делает задачу атакующего в два раза сложнее
Главное отличие ключа от пароля – в том, что пароли обычно выбираются сознательно и потому в любом случае имеют более низкую энтропию. Слабые пароли – это пароли с особенно низкой энтропией, как-то: осмысленные слова, популярные комбинации символ или пароли, основанные на каких-то персональных данных. Перебор по словарю — атака на систему защиты, использующая метод полного перебора предполагаемых паролей, используемых для аутентификации, осуществляемого путем последовательного пересмотра всех слов (паролей в чистом виде или их зашифрованных образов) определенного вида и длины из словаря.
Для симметричных систем сильной длиной ключа считается длина более 128 бит. Это связано с тем, что в первую очередь длина определяет защиту от полного перебора и даже добавление одного бита уже удваивает эту задачу. Для ассиметричных систем требуемая длина ключа намного больше и должна быть не менее 1024 бит. Это связано с тем, что при их взломе требуется решить NP-задачу, которая хоть и обладает экспоненциальной сложностью решения, но при малом размере входного аргумента решается гораздо быстрее, чем полный перебор.
Ключевым условием генерации криптографически стойкого пароля является максимальность его энтропии – другими словами он должен быть случайным набором символов с равновероятным распределением. Ни один псевдослучайный генератор чисел не дает идеального равновероятного распределения, но большинство современных реализаций достаточно близки к нему, чтобы использоваться для генерации паролей.
58. Схемы централизованного распределения секрета. Протокол Needham–Schroeder и его реализация в протоколе Kerberos в ОС Windows. BOOK 59. Схемы децентрализованного распределения секрета. Протокол Diffie–Hellman и задача нахождения дискретного логарифма. Пример выработки общего ключа. Атака типа «человек посередине» на алгоритм Diffie–Hellman. Схемы децентрализованного распределения секрета – подразумевают отсутствие единого центра распространения секретных ключей. Каждые два(и более) участника могут обменяться ключом(-ами) без участия централизованного посредника и/или надежно защищенных каналов передачи данных.
Алгори́тм Ди́ффи — Хе́ллмана позволяет двум или более пользователям обменяться без посредников ключом, который может быть использован затем для симметричного шифрования. Данный алгоритм не применяется для шифрования сообщений или формирования электронной подписи. Его назначение – в распределении ключей. При работе алгоритма, каждая сторона:
A = ga mod p
K = Ba mod p
Ba mod p = (gb mod p)a mod p = gab mod p = (gb mod p)b mod p = Ab mod p
Секретность протокола базируется на не вычислимости решения задачи дискретного логарифма. А именно определения из A = ga mod p значения a, при заданных A,g,p. Или аналогично для B = gb mod p определение b.
В тех случаях, когда в канале возможна модификация данных, появляется возможность атаки «человек посередине». Атакующий заменяет сообщения переговоров о ключе на свои собственные и таким образом получает два ключа — свой для каждого из законных участников протокола. Далее он может перешифровывать переписку между участниками, своим ключом для каждого, и таким образом ознакомиться с их сообщениями, оставаясь незамеченным. Данный алгоритм не предоставляет никакой защиты от подобной атаки.
|