Анимация
JavaScript
|
Главная Библионтека например, обратившись к каталогу, и использовал этот путь для получения открытого ключа В. Пусть 1а - идентификатор стороны А; Da - секретное криптопреобразование стороны А (секретный ключ); Еа - открытое криптопреобразование стороны А (открытый ключ); Та - временной штамп стороны А; Ra - случайное число, выбранное стороной А. Са - сертификат стороны А 1в - идентификатор стороны В; Db - секретное криптопреобразование стороны В (секретный ключ); Ев - открытое криптопреобразование стороны В (открытый ключ); Тв - временной штамп стороны В; Rb - случайное число, выбранное стороной В. Идентификаторы - это уникальные имена А и В. Временной штамп, включаемый в сообш,ение М, содержит также дату истечения срока действия М. Дополнительно он также может включать время создания М. Случайные числа могут быть заменены последовательными числами, которые не должны повторяться в течение срока действия, указанного во временном штампе в том же сеансе связи. Тогда односторонний протокол аутентификации будет выглядеть следуюш,им образом: Пользователь А: 1. Выбирает Ra; 2. Формирует сообш,ение М = (Та, Ra, Ь, <данные>), где <данные> произвольны. Данные могут быть зашифрованы с помош,ью Ев для секретности, например, когда А передает В ключ шифрования данных. 3. Посылает (Са, Da(M)) пользователю В. Пользователь В: 1. Расшифровывает Са и получает Еа. Проверяет дату окончания срока действия сертификата 2. Использует Еа для расшифрования Da(M), проверяя как подлинность подписи А, так и целостность подписанной информации. 3. Проверяет 1в, содержаш,ееся в М, на точность. 4. Проверяет Та в М. 5. Дополнительно проверяет Ra, содержаш,ееся в М. Широкое распространение основанных на интеллектуальных картах систем доступа для различного рода приложений (как гражданского, так и военного назначения) потребовало создать схему обеспечения безопасной аутентификации субъекта При этом секретный ключ владельца карты становится неотъемлемым признаком его личности, и для обеспечения заш,иты от возможной компрометации этого ключа был предложен ряд схем, называемых протоколами доказательства с нулевым разглашением или с нулевым знанием (zero-knowledge proofs), в рамках которого субъект может подтвердить свои полномочия, не раскрывая значения своего секретного ключа Первая схема подобного рода была предложена в 1986 г. Фейге, Фиатом и Шамиром. Суть ее состоит в следуюш,ем. Для группы пользователей, которым придется доказывать свою подлинность, выбирается большое (длиной более 512 бит) случайное целое число п, являюш,ееся произведением двух простых чисел. В процессе аутентификации участвуют две стороны: сторона А, доказываюш,ая свою подлинность, и сторона В -проверяюш,ий. Доверенный арбитр (центр распределения ключей) выбирает некоторое целое число v, являюш,ееся квадратичным вычетом по модулю п, т.е. 3x:x = v (mod п), и взаимно простое с п. Это значение v передается А в качестве открытого ключа. Затем вычисляется наименьшее значение s, такое что s = (v) (mod «). Это значение будет секретным ключом стороны А. После этого протокол аутентификации выглядит следуюш,им образом: 1. Сторона А выбирает случайное число г. О < г < п. Затем она вычисляет х = mod п и отправляет его стороне В. 2. Сторона В посылает А случайный бит Ь. 3. Если й = О, то А отправляет В число г. Если b = \,то А отправляетВу = г s(mod«). 4. Если й = О, то В проверяет, что х = (mod п), чтобы убедиться, что А знает квадратный корень из х. Если Ъ = 1, то сторона В проверяет, что х =y-v (mod п), чтобы убедиться, что А знает квадратный корень из v\ Шаги 1-4 образуют один цикл протокола. Стороны повторяют этот цикл t раз при разных случайных значениях rub. Если сторона А не знает значения s, она может выбрать такое г, которое позволит ей обмануть В в случае Ь = 0 или й = 1, но не в обоих случаях одновременно. Вероятность обмана в одном цикле составляет 0.5. Вероятность обмана в t циклах равна Т. Недостатком данной схемы является большое число циклов протокола, необходимое для доказательства с требуемой вероятностью, если эта вероятность достаточно мала. Способ, тре-буюш,ий только одного раунда обмена, но требуюш,ий большего объема вычислений, был предложен Гиллоу и Кискатером (Guillou, Quisquater). Пусть I - идентификационная информация стороны А (или значение ее хэш-функции), п - открытое произведение двух секретных простых чисел, v - открытое значение (показатель степени). Секретный ключ g стороны А выбирается так, что Ig" = 1 (mod п). Сторона А отправляет В свои идентификационные данные I. Протокол доказательства выглядит следуюш,им образом. 1. А выбирает случайное целое г. такое, что 1 <г<п-\ и вычисляет Т = / (mod п) и отправляет это значение стороне В. 2. В выбирает случайное целое d:\<d<n-\M отправляет это число стороне А. 3. А вычисляет D = r-g (mod п) и отправляет это значение В. 4. В вычисляет Т = D"!(mod п) и проверяет выполнение равенства Т = Т. Если оно выполняется, то проверка считается завершенной успешно. В самом деле, Т = ВУ = {rgyf = гУ = / (IgY = / = Т (mod «). 5.6. Анонимное распределение ключей Если мы полагаем, что пользователи сами не могут выбирать собственные ключи, то они должны пользоваться услугами центра распределения ключей. Проблема заключается в том, что ключи должны распределяться так, чтобы никто не мог определить, кто получил какой ключ. Процедура распределения ключей в этом случае может выглядеть так: 1. А выбирает пару <открытый ключ, секретный ключ> (для этого протокола он держит оба ключа в секрете). 2. ЦРК генерирует непрерывный поток ключей. 3. ЦРК шифрует ключи, один за одним, своим открытым ключом. 4. ЦРК передает зашифрованные ключи, один за одним, в сеть 5. А выбирает ключ случайным образом. 6. А шифрует выбранный ключ своим открытым ключом. 7. А ожидает некоторое время и посылает дважды зашифрованный ключ обратно в ЦРК. 8. ЦРК расшифровывает дважды зашифрованный ключ своим секретным ключом, оставляя ключ зашифрованным один раз открытым ключом А. 9. ЦРК посылает зашифрованный ключ назад пользователю А. 10. А расшифровывает ключ своим секретным ключом. ЛИТЕРАТУРА Баричев С.Г., Гончаров В.В., Серов Р.Е. Основы современной криптографии. М.: "Горячая линия - Телеком", 2001. Варфоломеев А.А., Жуков А.Е., Пудовкина М.А. Поточные криптосистемы. Основные свойства и методы анализа стойкости. М.: ПАИМС, 2000. Введение в криптографию. Под общ. ред. Ященко В.В. М.: МЦНМО-ЧеРо, 1998. Герасименко В.А. Защита информации в автоматизированных системах обработки данных., кн. 1, 2. М.: Энергоатомиздат, 1994. ГОСТ 28147-89. Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования. М.: ГК СССР по стандартам, 1989. ГОСТ Р 34.10-94.Информационная технология. Криптографическая защита информации. Процедуры выработки и проверки электронной цифровой подписи на базе асиметричного криптографического алгоритма. М., 1995. ГОСТ Р 34.11-94. Информационная технология. Криптографическая защита информации. Функция хэширования. М., 1995. ГОСТ Р 34.10-2001 Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи. М., 2001. Конхейм А. Г. Основы криптографии. М.: Радио и связь, 1987. Мафтик С. Механизмы защиты в сетях ЭВМ. М.: Мир, 1993. Мельников В.В. Защита информации в компьютерных системах. М.: Финансы и статистика, 1997. Молдовян А.А., Молдовян Н.А., Советов Б.Я. Криптография. СПб.: "Лань", 2000. Молдовян Н.А. Скоростные блочные шифры. СПб.: Издательство СПбГУ, 1998. Нечаев В.И. Элементы криптографии (Основы теории защиты информации). М.: Высшая школа, 1999. Основы криптозащиты АСУ. Под ред. Б.П. Козлова. М.: МО, 1996. Романец Ю.В., Тимофеев П.А., Шаньгин В.Ф. Защита информации в компьютерных системах и сетях. М.: Радио и связь, 1999. Ухлинов A.M. Управление безопасностью информации в автоматизированных системах. М.: МИФИ, 1996. Жельников В. Криптография от папируса до компьютера. М.: ABF,1996. 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 |