SlideShare a Scribd company logo
1 of 26
Оглавление TOC  quot;
1-3quot;
    1. Краткие сведения из истории криптографии PAGEREF _Toc263536168  113. Структурная схема симметричной криптосистемы. PAGEREF _Toc263536169  115. Обзор современных симметричных алгоритмов блочного шифрования. PAGEREF _Toc263536170  116. DES (Data Encryption Standard). Обобщенная схема шифрования. PAGEREF _Toc263536171  117. DES (Data Encryption Standard). Реализация функции шифрования. PAGEREF _Toc263536172  318. DES (Data Encryption Standard). Получение раундовых ключей PAGEREF _Toc263536173  519. Оценка криптостойкости алгоритма DES (Data Encryption Standard). PAGEREF _Toc263536174  620. Режимы работы DES (Data Encryption Standard). ECB Электронная кодовая книга PAGEREF _Toc263536175  721. Режимы работы DES (Data Encryption Standard). CBC  Сцепление блоков шифра PAGEREF _Toc263536176  822. Режимы работы DES (Data Encryption Standard). CFB Обратная связь по шифру. PAGEREF _Toc263536177  823. Режимы работы DES (Data Encryption Standard). OFB Обратная связь по выходу. PAGEREF _Toc263536178  924. Области применения DES (Data Encryption Standard). PAGEREF _Toc263536179  1025. Симметричные криптографические системы. Алгоритм Blowfish. PAGEREF _Toc263536180  1026. Алгоритм Blowfish. Инициализация. PAGEREF _Toc263536181  1127. Алгоритм Blowfish. Функция шифрования. PAGEREF _Toc263536182  1246. Обобщенная схема асимметричной системы шифрования.  Общие понятия и определения PAGEREF _Toc263536183  1447. Алгоритм открытого распределения ключей Диффи–Хеллмана (Diffie - Hellman) PAGEREF _Toc263536184  1548. Алгоритм RSA (Rivest-Shamir-Adleman) PAGEREF _Toc263536185  1549. Алгоритм Эль-Гамаля (El Gamal) PAGEREF _Toc263536186  1650. Электронная цифровая подпись. Общие понятия и определения, требования и структура ЭЦП. PAGEREF _Toc263536187  1651. Процедуры постановки и проверки подлинности ЭЦП. PAGEREF _Toc263536188  1752 .Схема формирования ЭЦП (на примере использования алгоритма RSA) PAGEREF _Toc263536189  1853 .Процедуры постановки и проверки ЭЦП ГОСТ Р34.10-94 (ГОСТ Р34.10-2001) PAGEREF _Toc263536190  1854 . Хэш-функции: определение и общие требования PAGEREF _Toc263536191  2055. Однонаправленные  хэш-функции  на  основе  симметричных блочных алгоритмов PAGEREF _Toc263536192  2056. Отечественный стандарт хэш-функции ГОСТ Р 34.11–94 PAGEREF _Toc263536193  2164. Современные приложения криптографии. PAGEREF _Toc263536194  22<br />1. Краткие сведения из истории криптографии<br />13. Структурная схема симметричной криптосистемы.<br />15. Обзор современных симметричных алгоритмов блочного шифрования.<br />Симметричные криптосистемы (с секретным ключом – secret key systems) –  построены на основе сохранения в тайне ключа шифрования. <br />Процессы зашифрования и расшифрования используют один и тот же ключ. <br />Секретность ключа является постулатом. <br />Основная проблема при применении симметричных криптосистем для связи заключается в сложности передачи обоим сторонам секретного ключа. <br />Раскрытие ключа злоумышленником грозит раскрытием только той информации, что была зашифрована на этом ключе. <br />Американский и Российский стандарты шифрования DES и ГОСТ 28.147-89, <br />а также AES - новый американский стандарт на базе алгоритма  Rijndael <br />16. DES (Data Encryption Standard). Обобщенная схема шифрования.<br />   DES (Data Encryption Standard - Стандарт Шифрования Данных) - название Федерального Стандарта Обработки информации (FIPS), который описывает алгоритм шифрования данных (Data Encryption Algorithm - DEA).<br />   DEA - развитие алгоритма Lucifer, который был разработан в начале 1970-х годов компанией IBM; на заключительных стадиях разработки активное участие принимали NSA и NBS. С момента опубликования DEA (более известный как DES) широко изучался и известен как один из наиболее распространённых симметричных алгоритмов.<br />Процесс шифрования  DES<br />                                                       Исходный текстНачальная перестановкаШифрованиеКонечнаяперестановкаЗашифрованный текстКлюч<br />Начальная перестановка<br />58504234261810L(0)R(0)260524436282012462544638302214664564840322416857494133251791595143352719113615345372921135635547393123157<br />Шифрование<br />L(0)R(0)fK(1)L(1)=R(0)R(1)=L(0)    f(R(0), K(1))fK(2)fK(16)L(2)=R(1)R(2)=L(1)    f(R(1), K(2))L(15)=R(14)R(15)=L(14)    f(R(14), K(15))L(16)=R(15)R(16)=L(15)    f(R(15), K(16))<br />17. DES (Data Encryption Standard). Реализация функции шифрования.<br />Функция шифрования f<br />Расширитель EПерестановка битов PS1S7S6S5S4S3S2S8K(i)  (48 бит)R(i-1)   (32 бита)(48бита)(32 бита)f(R(i-1), K(i))<br />Функция расширения Е<br />32 01 02 03 04 05 04 05 06 07 08 09 08 09 10 11 12 13 12 13 14 15 16 17 16 17 18 19 20 21 20 21 22 23 24 25 24 25 26 27 28 29 28 29 30 31 32 01 <br />   Пусть на вход блока S6 попадает 110011. Первый и последний бит образуют 11, что соответствует 3 строке, а биты со второго по пятый образуют 1001, что соответствует 9 столбцу. Элемент находящийся на их пересечении – 14, следовательно вместо 110011 подставляется 1110.<br />012345678910111213141501211015926801334147511110154271295611314011382914155281237041011311634321295151011141760813<br />Функция перестановки Р<br />16 07 20 21 29 12 28 17 01 15 23 26 05 18 31 10 02 08 24 14 32 27 03 09 19 13 30 06 22 11 04 <br />18. DES (Data Encryption Standard). Получение раундовых ключей.<br />Получение 48-битовых ключей<br />  Матрица G первоначальной подготовки ключа<br />574941332517С(0)D(0)0901585042342618100259514335271911036052443663554739312315076254463830221406615345372921130528201204<br />  Таблица сдвигов<br />Номер итерацииСдвиг (бит)011021032042052062072082091102112122132142152161<br />  Матрица H завершающей обработки ключа<br />141711240105032815062110231912042608160727201302415231314755304051453348444939563453464250362932<br />Схема алгоритма вычисления ключа<br />Исходный ключ KФункция GСдвиг влевоСдвиг влевоD(0)C(0)D(1)С(1)Сдвиг влевоСдвиг влевоD(2)C(2)Сдвиг влевоСдвиг влевоD(16)C(16)Функция HФункция HФункция HK(1)K(16)K(2)<br />19. Оценка криптостойкости алгоритма DES (Data Encryption Standard).<br />С самого начала использования алгоритма DES криптоаналитики всего мира прилагали множество усилий по взлому алгоритма DES1. <br />Фактически DES дал невиданный доселе толчок развитию криптоанализа. Вышли сотни трудов, посвященных различным методам криптоанализа именно в приложении к алгоритму DES.<br />Можно утверждать, что именно благодаря DES появились целые направления криптоанализа, такие как:<br />-линейный криптоанализ – анализ зависимостей между открытым текстом и шифротекстом;<br />-дифференциальный криптоанализ – анализ зависимостей между соотношениями двух или более открытых текстов и соответствующих им шифротекстов;<br />-криптоанализ на связанных ключах – поиск и анализ зависимостей между шифротекстами, полученными на искомом ключе и ключах, связанных предполагаемым соотношением с искомым ключом<br />Основные результаты усилий по взлому DES:<br />1. Японский специалист Мицуру Мацуи (Mitsuru Matsui), изобретатель линейного криптоанализа, в 1993 году доказал возможность вычисления ключа шифрования DES методом линейного криптоанализа при наличии у атакующего 247 пар «открытый текст – зашифрованный текст» <br />2. Криптологи из Израиля – изобретатели дифференциального криптоанализа Эли Бихам (Eli Biham) и Ади Шамир (Adi Shamir) – в 1991 году представили атаку, в которой ключ шифрования вычисляется методом дифференциального криптоанализа при наличии у атакующего возможности генерации 247 специально выбранных пар «открытый текст – зашифрованный текст» .<br />3. В 1994 году Эли Бихам и Алекс Бирюков (Alex Biryukov) усилили известный с 1987 года метод вычисления ключа DES – метод Дэвиса (Davies), основанный на специфических свойствах таблиц замен DES. Усиленный метод позволяет вычислить 6 бит ключа DES (остальные 50 бит – полным перебором возможных вариантов) при наличии 250 пар известных открытых текстов и шифротекстов или вычислить 24 бита ключа при наличии 252 пар.<br />           Практически сразу после появления DES были обнаружены следующие проблемы с ключами шифрования DES:<br />4 ключа из возможных 256 ключей алгоритма являются слабыми (т. е. не обеспечивают требуемой стойкости при зашифровании). <br />6 пар ключей являются эквивалентными. <br />48 ключей являются «возможно слабыми». <br />       Возможно слабые ключи при их расширении дают только 4 различных ключа раунда, каждый из которых используется при шифровании по 4 раза.<br />Существует свойство комплементарности ключей: <br />           если Ek(M) = C, где Ek(M) – зашифрование алгоритмом DES блока открытого текста M, а C – полученный в результате шифротекст, то Ek'(M') = C', где x' – побитовое дополнение к x (т. е. величина, полученная путем замены всех битовых нулей значения x на единицы, и наоборот).<br /> Считается, что свойство комплементарности ключей не является слабостью, однако, оно приводит к тому факту, что для полного перебора ключей DES требуется 255, а не 256 попыток.<br />             Однако и эти недостатки не являются существенными, поскольку в программной или аппаратной реализации DES достаточно просто запретить использование проблемных ключей<br />20. Режимы работы DES (Data Encryption Standard). ECB Электронная кодовая книга<br />Длинный файл разбивают на 64-битовые отрезки (блоки) по 8 байтов. Каждый из этих блоков шифруют независимо с использованием одного и того же ключа шифрования. <br />Основное достоинство – простота реализации. <br />Из-за фиксированного характера шифрования при ограниченной длине блока 64 бита возможно проведение криптоанализа <br />«со словарем». <br />Блок такого размера может повториться в сообщении вследствие  большой избыточности в тексте на естественном языке. Это приводит к тому, что идентичные блоки открытого текста в сообщении будут представлены идентичными блоками шифротекста, что дает криптоаналитику некоторую информацию о содержании сообщения.<br />21. Режимы работы DES (Data Encryption Standard). CBC  Сцепление блоков шифра<br />В этом режиме исходный файл М разбивается на <br />64-битовые блоки: М = М1М2...Мn. <br />Первый блок М1 складывается по модулю 2 с 64-битовым начальным вектором IV, который меняется ежедневно и держится в секрете . Полученная сумма затем шифруется с использованием ключа DES, известного и отправителю, и получателю информации. Полученный 64-битовый шифр С1 складывается по модулю 2 со вторым блоком текста, результат шифруется и получается второй 64-битовый шифр С2, и т.д. <br />Процедура повторяется до тех пор, пока не будут обработаны все блоки текста. <br />22. Режимы работы DES (Data Encryption Standard). CFB Обратная связь по шифру.<br />В этом режиме размер блока длиной k битов может отличаться от 64 бит.<br /> Файл, подлежащий шифрованию (расшифрованию), считывается последовательными блоками длиной <br />k битов, k ≤ 64. <br />Входной блок (64-битовый регистр сдвига) вначале содержит вектор инициализации, выровненный по правому краю.<br />Предположим, что в результате разбиения на блоки мы получили n блоков длиной k битов каждый (остаток дописывается нулями  или  пробелами).  <br />Тогда  для  любого  i из {1,…,n}  блок шифротекста получается по правилу<br />Сi = Mi  Pi–1,<br />где Рi–1 обозначает k старших битов предыдущего зашифрованного блока.<br />Обновление сдвигового регистра осуществляется путем удаления его старших k битов и записи  Сi  в регистр.<br /> Восстановление зашифрованных данных также выполняется относительно просто:  Рi–1  и  Сi  вычисляются аналогичным образом Мi = Сi  Рi–1.<br />23. Режимы работы DES (Data Encryption Standard). OFB Обратная связь по выходу.<br />Этот режим использует переменный размер блока и сдвиговый регистр, инициализируемый так же, как в режиме СFB, а именно – входной блок вначале содержит вектор инициализации IV, выровненный по правому краю. <br />При этом для  каждого сеанса шифрования данных необходимо использовать новое начальное состояние регистра, которое должно пересылаться по каналу открытым текстом. <br />Положим М = М1 М2 ... Mn. Для всех  i из {1,…, n}<br />Сi = Mi  Pi,<br />где Рi – старшие k битов операции DES (Сi–1).<br />Отличие от режима обратной связи по шифротексту состоит в методе обновления сдвигового регистра.<br />Это осуществляется путем отбрасывания старших k битов и дописывания справа Рi.<br />24. Области применения DES (Data Encryption Standard). <br />Режим ЕСВ хорошо подходит для шифрования ключей;<br /> режим CFB, как правило, предназначается для шифрования отдельных символов, а режим OFB нередко применяется для шифрования в спутниковых системах связи.<br />Режимы СВС и CFB пригодны для аутентификации данных. <br />Наличие нескольких режимов позволяет использовать <br />алгоритм DES для:<br />интерактивного шифрования при обмене данными в ИС;<br />шифрования криптографических ключей в процедурах распространения ключевой информации;<br />шифрования файлов, почтовых отправлений, и др.<br />25. Симметричные криптографические системы.Алгоритм Blowfish.<br />Разработан в 1993 г. Брюсом Шнайером <br />Основные характеристики<br />Структура: сеть Фейстеля <br />Размер ключа: 32-448 бит<br />Размер блока: 64 бит<br />Число раундов: 16<br />Критерии проектирования:<br />Скорость шифрования<br />Компактность<br />Простота<br />Настраиваемая безопасность<br />Blowfish оптимизирован для приложений, где нет частой смены ключей.  Например, программы автоматического шифрования файлов.<br />Алгоритм шифрования:<br />26. Алгоритм Blowfish. Инициализация.<br />ЭТАП 1 <br />Подготовительный — формирование ключей шифрования по секретному ключу. <br />Инициализация массивов P (32-битные раундовые ключи шифрования) и S (32-битные таблицы замен) при помощи <br />секретного ключа K <br />Инициализация P1-P18 фиксированной строкой, состоящей из шестнадцатеричных цифр мантиссы  числа “пи”. <br />Десятичное: 3,1415926535897932384626433832795…<br />Шестнадцатеричное: 3,243F6A8885A308D31319… <br />Производится операция XOR над P1 с первыми 32-мя битами ключа K, <br />над P2 со вторыми 32-мя битами и так далее.Если ключ K короче, то он накладывается циклически. <br />32-битные таблицы замен<br />ЭТАП 1 <br />Шифрование ключей и таблиц замен <br />Алгоритм шифрования 64-битного блока, используя инициализированные ключи P1-P18 и таблицу замен S1-S4, шифрует 64 –х битную строку, состоящую из 0 и 1 (важно чтобы она была фиксированной длины). Результат записывается в P1, P2. <br />P1 и P2 шифруются измененными значениями ключей и таблиц замен. Результат записывается в P3 и P4. <br />Шифрование продолжается до изменения всех ключей и таблицы замен. <br />27. Алгоритм Blowfish. Функция шифрования.<br />ЭТАП 2 <br />Шифрование текста полученными ключами и F(x), с предварительным разбиением на блоки по 64 бита. Если невозможно разбить начальный текст точно на блоки по 64 бита, используются различные режимы шифрования для построения сообщения, состоящего из целого числа блоков. <br />Cуммарная требуемая память 4168 байт: P1-P18: 18 переменных по 32 бита; <br />S1-S4: 4x256 переменных по 32 бита. <br />Расшифрование происходит аналогично, только P1-P18  применяются в обратном порядке. <br />446341513468352758440622935 разделение на 32-битные блоки :  L0 , R0вычисления в i-том раунде: после 16-го раунда L16 , R16 меняются местами: и выполняется операция XOR 	с ключами P17,P18 <br />Функция F<br />32-битный блок делится на четыре 8-битных блока (X1, X2, X3, X4), каждый из которых является индексом массива таблицы замен  S1-S4 <br />значения S1[X1] и S2[X2] складываются по модулю 232, далее выполняется операция XOR с S3[X3] и, наконец, сложение с S4[X4] по модулю 232<br />Результат этих операций — значение F(x) <br />Особенности реализации:<br />Не подходит для приложений с частой сменой ключей<br />Не может быть применен в смарт-картах и других встраиваемых системах с малым объемом памяти<br />46. Обобщенная схема асимметричной системы шифрования.  Общие понятия и определения<br />Шифрование - это преобразование данных в вид, недоступный для чтения без соответствующей информации (ключа шифрования). <br />Задача шифрования - обеспечить конфиденциальность, скрыв информацию от лиц, которым она не предназначена, даже если они имеют доступ к зашифрованным данным.<br /> Расшифровывание - процесс, обратный шифрованию, т.е. преобразование зашифрованных данных в открытый вид.<br />Асимметричное шифрование— система шифрования информации, при которой ключ, которым зашифровывается сообщение и само зашифрованное сообщение передаётся по открытому каналу.<br />Алгоритм шифрованияАлгоритм расшифрованияГенерацияключейОтправитель Р1Получатель Р2Криптограмма, С ММКр2 - секретныйКр1 - открытыйНезащищенныйканал Противник<br />47. Алгоритм открытого распределения ключей Диффи–Хеллмана (Diffie - Hellman) <br />Отправитель Р1Получатель Р21.Генерация n,   aоткрытыемодульоснование2. Случайное число Х,    вычисляет  A = ax (mod n)3. Случайное число Y,вычисляет B = ay (mod n)A4.Вычисление ключаKp1 = Bx (mod n)5.Вычисление ключаKp2 =Ay (mod n)BПримерn = 5, a = 7, x = 3, y = 2A = 73 (mod 5) = 343 (mod 5) = 3Kp1 = 43 (mod 5) = 64 (mod 5) = 4B = 72 (mod 5) = 49 (mod 5) = 4Kp2 = 32 (mod 5) = 4<br />48. Алгоритм RSA (Rivest-Shamir-Adleman)<br />49. Алгоритм Эль-Гамаля (El Gamal) <br />50. Электронная цифровая подпись. Общие понятия и определения, требования и структура ЭЦП.<br />Электронная цифровая подпись (ЭЦП) - реквизит электронного документа, предназначенный для защиты данного электронного документа от подделки, полученный в результате криптографического преобразования информации с использованием закрытого ключа электронной цифровой подписи и позволяющий идентифицировать владельца сертификата ключа подписи, а также установить отсутствие искажения информации в электронном документе <br />(Федеральный закон «Об электронной цифровой подписи»)<br />ЭЦП включает:<br />Алгоритм генерации пар ключей пользователей<br />Функцию вычисления подписи<br />Функцию проверки подписи<br />Требования к ЭЦП:<br />НеподдельностьДостоверностьНевозможность повторного использованияНевозможность изменения подписанного документаНевозможность отречения от цифровой подписи<br />Классы ЭЦП:<br />Обычные цифровые подписиЦифровые подписи с восстановлением документа<br />51. Процедуры постановки и проверки подлинности ЭЦП.<br />52 .Схема формирования ЭЦП (на примере использования алгоритма RSA)<br />Отправитель(постановка ЭЦП)Получатель(проверка ЭЦП)СообщениеМБлоксжатияHDГенерацияключейSEБлоксжатияканалH ' = H quot;
S = HD mod NH = h (M)E, NN, DMH quot;
= S E (mod N)H ' = h(M)данетЭЦПподлиннаяЭЦПошибочная<br />53 .Процедуры постановки и проверки ЭЦП ГОСТ Р34.10-94 (ГОСТ Р34.10-2001) <br />Отечественный стандарт цифровой подписи <br />ГОСТ  Р34.10-94  (ГОСТ  Р34.10-2001) В сентябре 2001 г. утвержден, а с 1 июля 2002 г. вступил в силу новый стандарт ЭЦП – ГОСТ Р 34.10–2001.<br />Параметры ЭЦП по ГОСТу:<br />р – большое простое число длиной  512 (1024) бит;<br />q – простой сомножитель числа (р-1) длиной 254..256 бит; <br />p,q  могут быть открытыми <br />a – любое число, меньшее (р-1), такое, что <br />       aq mod p = 1;<br />x – секретный ключ, число меньшее q;<br />y –  открытый ключ, y = ax mod p <br />Процедура постановки ЭЦП:<br />Вычислить h(M) - значение хэш-функции h от сообщения М. <br />Выработать целое число k,  0<k < q. <br />Вычислить два значения : r = ak (mod p) и  r' = r (mod q). <br />          Если r' =0, перейти к этапу 2 и выработать другое значение числа k. <br />С использованием секретного ключа х отправителя сообщения вычислить значение <br />           s = (xr'  + kh(M))(mod q). <br />           Если s=0, перейти к этапу 2, в противном случае закончить работу алгоритма.<br /> Подписью сообщения М являются два числа <br />(r' mod 2256), s mod 2256) <br />Процедура проверки ЭЦП:<br />Проверить условие: 0< s < q и 0 < r' < q. Если хотя бы одно из этих условий не выполнено, то подпись считается недействительной. <br />Вычислять h(M1 )- значение хеш-функции h от полученного сообщения М1. <br />Вычислить значение v = (h(M1 ))q-2 (mod q).<br />Вычислить значения: z1 = (s * v)  mod q  и z2 = ((q - r' ) * v)  mod q.<br />Вычислить значение u = (a z1 y z2(mod p)) (mod q).<br />Проверить условие: r'  = u.  <br />      При совпадении значений r  и u  получатель принимает решение о том, что полученное сообщение подписано данным отправителем и в процессе передачи не нарушена целостность сообщения, <br />т.е. М =М1. <br />В противном случае подпись считается недействительной. <br />54 . Хэш-функции: определение и общие требования<br />Хэш-функция предназначена для формирования ЭЦП и обеспечивает сжатие подписываемого документа М до нескольких десятков или сотен бит. <br />Хэш-функция h(.) использует в качестве аргумента сообщение М произвольной длины и возвращает хэш-значение h(M)=H фиксированной длины. <br />Обычно хэшированная информация является сжатым двоичным представлением основного сообщения произвольной длины. Следует отметить, что значение хэш-функции h(M) сложным образом зависит от документа M и<br /> не позволяет восстановить сам документ M.<br />Требования к ХЭШ-функциям:<br />Большинство хэш-функций строится на основе однонаправленной функции f(.) , которая образует выходное значение длиной n при задании двух входных значений длиной n. <br />551815571500Этими входами являются блок исходного текста  Мi  и  хэш-значение Hi-1 предыдущего блока текста.<br />55. Однонаправленные  хэш-функции  на  основе  симметричных блочных алгоритмов<br /> <br />H0  = IH ; <br />Hi  = EA (B)  C, <br />  где IH             – некоторое начальное случайное значение; <br />     A, B, C – могут принимать  значения  Mi , Hi-1,, ( Mi  Hi-1) или быть   константами; <br />    Mi          – блок сообщения принятой длины.<br />Три различные переменные  А, В, С могут принимать одно из четырех возможных значений, поэтому в принципе можно получить 64 варианта общей схемы этого типа, однако 52 варианта являются либо слабыми, либо небезопасными. <br />Остальные 12 схем описываются в таблице, см.: [Романец–99, с. 160].<br />56. Отечественный стандарт хэш-функции ГОСТ Р 34.11–94 <br />Отечественный стандарт ГОСТ Р 34.11–94 определяет алгоритм и процедуру вычисления хэш-функции двух любых последовательностей двоичных символов, применяемых в криптографических методах обработки и защиты информации. <br />Этот стандарт базируется на блочном алгоритме шифрования ГОСТ 28147–89.<br /> Данная хэш-функция формирует 256-битовое хэш-значение. <br />Функция сжатия Ri = f( Mi, Ri–1) <br />(оба операнда Mi и Ri–1 являются 256-битовыми величинами) определяется следующим образом.<br />1.    Генерируются 4 ключа шифрования Kj, j {1,2,3,4}, путем линейного смешивания Mi, Ri–1 и некоторых констант Cj.<br />2.    Каждый ключ Kj, используют для шифрования  64-битовых подслов ri слова Ri–1 в режиме простой замены: <br />       Sj=  (rj). Результирующая последовательность S4, S3, S2, S1      длиной 256 бит запоминается во временной переменной S.<br />3.    Значение Ri является сложной, хотя и линейной функцией   смешивания S, Mi и Ri–1.<br />При вычислении окончательного хэш-значения сообщения M учитываются значения трех связанных между собой переменных:<br />      Rn – хэш-значение последнего блока сообщения;<br />      Z – значение контрольной суммы, получаемой при  сложении по модулю 2 всех блоков сообщения;<br />      L – длина сообщения.<br />Эти три переменные и дополненный последний блок M´ сообщения объединяются в окончательное хэш-значение следующим образом:<br />R = f (Z  M´, f (L, f (M´, Rn))) <br />57. Методы управления криптографическими ключами<br />Под ключевой информацией понимают совокупность всех действующих ключей в автоматизированных системах обработки информации (АСОИ). <br />Если не обеспечено достаточно надежное управление ключевой информацией, то, завладев ею, злоумышленник получает неограниченный доступ ко всей информации.<br />Управление ключами – информационный процесс, включающий реализацию следующих этапов:<br />                 генерация ключей;<br />                 хранение ключей;<br />                 распределение ключей.<br />58. Генерация криптографических ключей. Схема генерации случайного ключа  в соответствии  со стандартом ANSI X9.17<br />Безопасность любого криптографического алгоритма определяется используемым криптографическим ключом. <br />Добротные криптографические ключи должны иметь достаточную длину и случайные значения битов. Для получения ключей используются аппаратные и программные средства генерации случайных значений ключей. <br />Как правило, применяют датчики псевдослучайных чисел (ПСЧ). Однако степень случайности генерации чисел должна быть достаточно высокой.<br />Один из методов генерации сеансового ключа для симметричных криптосистем описан в стандарте ANSI X9.17. <br />Он предполагает использование криптографического алгоритма DES <br />(хотя можно применить и другие симметричные алгоритмы шифрования). <br />Схема генерации случайного ключа Ri в соответствии  со стандартом ANSI X9.17<br />Случайный ключ Riгенерируют, вычисляя значениеRi = ЕК (ЕК (Тi) Vi)Следующее значение Vi+1вычисляют так:Vi+1 = ЕК (ЕК (Тi) Ri)	Если необходим 128-битовый случайный ключ, генерируют пару ключей Ri, Ri+1и объединяют их вместе.ЕК(Тi)– результат шифрования                   алгоритмом DES значения Тi;К –         ключ, зарезервированный для                 генерации секретных ключей;V0–        секретное 64-битовое                  начальное число;Т –           временная отметка.<br />64. Современные приложения криптографии.<br />Защита от несанкционированного чтения, или обеспечение конфиденциальности информации Обеспечивается путем шифрования информации с использованием современных симметричных <br />DES, Rijndael, Blowfish, IDEA, ГОСТ 28147-89 <br />или асимметричных <br />RSA, ElGamal  криптографических  систем <br />Защита от навязывания ложных сообщений, как умышленных, так и непреднамеренных  может быть обеспечена с помощью так называемой имитозащиты. <br />Имитозащита –  защита от навязывания ложных сообщений путем формирования, в зависимости от секретного ключа, специальной дополнительной информации, называемой имитовставкой, которая передается вместе с криптограммой, причем могут использоваться два варианта: либо вычисление имитовставки по открытому тексту, либо по шифротексту. <br />Чем больше длина имитовставки, тем меньше вероятность того, что искажение шифротекста не будет обнаружено получателем<br />Идентификация и аутентификация <br />Идентификация законных пользователей  заключается в распознавании пользователей, после чего им предоставляются определенные права доступа к ресурсам. <br />Аутентификация   –  установление санкционированным получателем того факта, что полученное сообщение послано санкционированным отправителем. <br />Принятый протокол должен обеспечить противодействие использованию потенциальным нарушителем ранее переданных сообщений. <br />Это направление современной криптологии очень интенсивно развивается с момента открытия криптографии с открытым ключом (асимметричной или двухключевой криптографии) в середине 70-х годов.<br />Контроль целостности  - Это обнаружение любых несанкционированных изменений информации, например данных или программ, хранящихся в компьютере. <br />Имитозащита, в сущности, является частным случаем контроля целостности информации, передаваемой в виде шифротекста. <br />В практических приложениях часто требуется удостовериться, что некоторые данные или программы не были изменены каким-либо несанкционированным способом, хотя сами данные не являются секретными и хранятся в открытом виде.<br />ЭЦП. Основывается на асимметричных криптографических алгоритмах, в которых предусматривается использование открытого и секретного ключей. <br />Асимметричные криптоалгоритмы позволяют обеспечить строгую доказательность факта составления того или иного сообщения конкретными пользователями  криптосистемы. Это основано на том, что только отправитель сообщения, который держит в секрете некоторую дополнительную информацию (секретный ключ), может составить сообщение со специфической внутренней структурой. <br />То, что сообщение имеет структуру, сформированную с помощью секретного ключа, проверяется с помощью открытого ключа. <br />Вероятность того, что некоторое сообщение, составленное нарушителем, может быть принято за сообщение, подписанное каким-либо санкционированным пользователем для современных алгоритмов ЭЦП оценивается порядка 10-30 .<br />Криптографическая защита документов и ценных бумаг от подделки Путем считывания информации об уникальных особенностях  носителя информации, формируется цифровой паспорт, включающий содержание документа и информацию о микроструктуре документа. Затем законный изготовитель документа, используя свой секретный ключ, вычисляет цифровую подпись паспорта и записывает на носителе паспорт и соответствующую ему цифровую подпись.<br />Проверка подлинности документа выполняется путем сканирования микроструктуры материального объекта, на котором сформирован документ, считывания записанной на нем информации и проверки цифровой подписи изготовителя документа по открытому ключу, который является общедоступным. <br />Изготовление фальшивого документа на другом материальном объекте или модифицирование содержания документа и его цифрового паспорта практически не осуществимы без знания секретного ключа, с помощью которого формируется подпись. <br />В современном мире значение криптографии выходит далеко за рамки обеспечения секретности данных. <br />По мере все большей автоматизации передачи и обработки информации и интенсификации информационных потоков ее методы приобретают уникальное значение.<br />
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз
C:\fakepath\кмсзи   экз

More Related Content

What's hot

Асимметричные криптоалгоритмя и хэширование
Асимметричные криптоалгоритмя и хэшированиеАсимметричные криптоалгоритмя и хэширование
Асимметричные криптоалгоритмя и хэшированиеAndrey Lebedev
 
[Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux
[Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux[Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux
[Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/LinuxDefconRussia
 
Buffer overflow and other software vulnerabilities: theory and practice of pr...
Buffer overflow and other software vulnerabilities: theory and practice of pr...Buffer overflow and other software vulnerabilities: theory and practice of pr...
Buffer overflow and other software vulnerabilities: theory and practice of pr...Roman Oliynykov
 
Долгожданный релиз pg_pathman 1.0 / Александр Коротков, Дмитрий Иванов (Post...
Долгожданный релиз pg_pathman 1.0 / Александр Коротков,  Дмитрий Иванов (Post...Долгожданный релиз pg_pathman 1.0 / Александр Коротков,  Дмитрий Иванов (Post...
Долгожданный релиз pg_pathman 1.0 / Александр Коротков, Дмитрий Иванов (Post...Ontico
 
Современные подходы к SAST
Современные подходы к SASTСовременные подходы к SAST
Современные подходы к SASTVladimir Kochetkov
 
Haskell
HaskellHaskell
HaskellDevDay
 
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL ModelsTMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL ModelsIosif Itkin
 
Прикладная теория Application Security
Прикладная теория Application SecurityПрикладная теория Application Security
Прикладная теория Application SecurityVladimir Kochetkov
 
Язык программирования PascalABC.NET 2015. Новые возможности
Язык программирования PascalABC.NET 2015. Новые возможностиЯзык программирования PascalABC.NET 2015. Новые возможности
Язык программирования PascalABC.NET 2015. Новые возможностиМихалкович Станислав
 
Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...
Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...
Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...Alexey Paznikov
 
Miasm defcon russia 23
Miasm defcon russia 23Miasm defcon russia 23
Miasm defcon russia 23DefconRussia
 
"Секционирование без границ" Ильдар Мусин (Postgres Professional)
"Секционирование без границ" Ильдар Мусин (Postgres Professional)"Секционирование без границ" Ильдар Мусин (Postgres Professional)
"Секционирование без границ" Ильдар Мусин (Postgres Professional)AvitoTech
 
цсноп 2 11_3_проект памяти
цсноп 2 11_3_проект памятицсноп 2 11_3_проект памяти
цсноп 2 11_3_проект памятиIrina Hahanova
 
ПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программирования
ПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программированияПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программирования
ПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программированияAlexey Paznikov
 
ПВТ - весна 2015 - Лекция 8. Многопоточное программирование без использования...
ПВТ - весна 2015 - Лекция 8. Многопоточное программирование без использования...ПВТ - весна 2015 - Лекция 8. Многопоточное программирование без использования...
ПВТ - весна 2015 - Лекция 8. Многопоточное программирование без использования...Alexey Paznikov
 
Подводные камни System.Security.Cryptography
Подводные камни System.Security.CryptographyПодводные камни System.Security.Cryptography
Подводные камни System.Security.CryptographyVladimir Kochetkov
 
ПВТ - весна 2015 - Лекция 2. POSIX Threads. Основные понятия многопоточного п...
ПВТ - весна 2015 - Лекция 2. POSIX Threads. Основные понятия многопоточного п...ПВТ - весна 2015 - Лекция 2. POSIX Threads. Основные понятия многопоточного п...
ПВТ - весна 2015 - Лекция 2. POSIX Threads. Основные понятия многопоточного п...Alexey Paznikov
 

What's hot (19)

Асимметричные криптоалгоритмя и хэширование
Асимметричные криптоалгоритмя и хэшированиеАсимметричные криптоалгоритмя и хэширование
Асимметричные криптоалгоритмя и хэширование
 
[Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux
[Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux[Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux
[Defcon Russia #29] Михаил Клементьев - Обнаружение руткитов в GNU/Linux
 
Buffer overflow and other software vulnerabilities: theory and practice of pr...
Buffer overflow and other software vulnerabilities: theory and practice of pr...Buffer overflow and other software vulnerabilities: theory and practice of pr...
Buffer overflow and other software vulnerabilities: theory and practice of pr...
 
Долгожданный релиз pg_pathman 1.0 / Александр Коротков, Дмитрий Иванов (Post...
Долгожданный релиз pg_pathman 1.0 / Александр Коротков,  Дмитрий Иванов (Post...Долгожданный релиз pg_pathman 1.0 / Александр Коротков,  Дмитрий Иванов (Post...
Долгожданный релиз pg_pathman 1.0 / Александр Коротков, Дмитрий Иванов (Post...
 
Современные подходы к SAST
Современные подходы к SASTСовременные подходы к SAST
Современные подходы к SAST
 
PascalABC.NET 2015-2016
PascalABC.NET 2015-2016PascalABC.NET 2015-2016
PascalABC.NET 2015-2016
 
Haskell
HaskellHaskell
Haskell
 
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL ModelsTMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
 
Rgsu04
Rgsu04Rgsu04
Rgsu04
 
Прикладная теория Application Security
Прикладная теория Application SecurityПрикладная теория Application Security
Прикладная теория Application Security
 
Язык программирования PascalABC.NET 2015. Новые возможности
Язык программирования PascalABC.NET 2015. Новые возможностиЯзык программирования PascalABC.NET 2015. Новые возможности
Язык программирования PascalABC.NET 2015. Новые возможности
 
Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...
Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...
Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...
 
Miasm defcon russia 23
Miasm defcon russia 23Miasm defcon russia 23
Miasm defcon russia 23
 
"Секционирование без границ" Ильдар Мусин (Postgres Professional)
"Секционирование без границ" Ильдар Мусин (Postgres Professional)"Секционирование без границ" Ильдар Мусин (Postgres Professional)
"Секционирование без границ" Ильдар Мусин (Postgres Professional)
 
цсноп 2 11_3_проект памяти
цсноп 2 11_3_проект памятицсноп 2 11_3_проект памяти
цсноп 2 11_3_проект памяти
 
ПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программирования
ПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программированияПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программирования
ПВТ - весна 2015 - Лекция 4. Шаблоны многопоточного программирования
 
ПВТ - весна 2015 - Лекция 8. Многопоточное программирование без использования...
ПВТ - весна 2015 - Лекция 8. Многопоточное программирование без использования...ПВТ - весна 2015 - Лекция 8. Многопоточное программирование без использования...
ПВТ - весна 2015 - Лекция 8. Многопоточное программирование без использования...
 
Подводные камни System.Security.Cryptography
Подводные камни System.Security.CryptographyПодводные камни System.Security.Cryptography
Подводные камни System.Security.Cryptography
 
ПВТ - весна 2015 - Лекция 2. POSIX Threads. Основные понятия многопоточного п...
ПВТ - весна 2015 - Лекция 2. POSIX Threads. Основные понятия многопоточного п...ПВТ - весна 2015 - Лекция 2. POSIX Threads. Основные понятия многопоточного п...
ПВТ - весна 2015 - Лекция 2. POSIX Threads. Основные понятия многопоточного п...
 

Viewers also liked

лекция 3 кмсзи симметричные криптографические системы
лекция 3 кмсзи симметричные криптографические системылекция 3 кмсзи симметричные криптографические системы
лекция 3 кмсзи симметричные криптографические системыdarina andr
 
Create Your First Website
Create Your First WebsiteCreate Your First Website
Create Your First WebsiteRidwan
 
Sparkoncept - New Media Projects
Sparkoncept - New Media ProjectsSparkoncept - New Media Projects
Sparkoncept - New Media ProjectsSparkoncept
 
Presentazlorenaliotta
PresentazlorenaliottaPresentazlorenaliotta
PresentazlorenaliottaLorena Liotta
 
Presentazlorenaliotta
PresentazlorenaliottaPresentazlorenaliotta
PresentazlorenaliottaLorena Liotta
 
Verdiepingstraining Wmj Handout
Verdiepingstraining Wmj HandoutVerdiepingstraining Wmj Handout
Verdiepingstraining Wmj HandoutWillem Flach
 
Elearning - Rich Media Search
Elearning - Rich Media SearchElearning - Rich Media Search
Elearning - Rich Media SearchSparkoncept
 

Viewers also liked (8)

лекция 3 кмсзи симметричные криптографические системы
лекция 3 кмсзи симметричные криптографические системылекция 3 кмсзи симметричные криптографические системы
лекция 3 кмсзи симметричные криптографические системы
 
Create Your First Website
Create Your First WebsiteCreate Your First Website
Create Your First Website
 
Sparkoncept - New Media Projects
Sparkoncept - New Media ProjectsSparkoncept - New Media Projects
Sparkoncept - New Media Projects
 
Presentazlorenaliotta
PresentazlorenaliottaPresentazlorenaliotta
Presentazlorenaliotta
 
Presentazlorenaliotta
PresentazlorenaliottaPresentazlorenaliotta
Presentazlorenaliotta
 
Verdiepingstraining Wmj Handout
Verdiepingstraining Wmj HandoutVerdiepingstraining Wmj Handout
Verdiepingstraining Wmj Handout
 
Elearning - Rich Media Search
Elearning - Rich Media SearchElearning - Rich Media Search
Elearning - Rich Media Search
 
Miniamigurumis
MiniamigurumisMiniamigurumis
Miniamigurumis
 

Similar to C:\fakepath\кмсзи экз

Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.Pavel Tsukanov
 
Владимир Иванов - Криптография и шифрование
Владимир Иванов - Криптография и шифрованиеВладимир Иванов - Криптография и шифрование
Владимир Иванов - Криптография и шифрованиеYandex
 
Компилируемые в реальном времени DSL для С++
Компилируемые в реальном времени DSL для С++Компилируемые в реальном времени DSL для С++
Компилируемые в реальном времени DSL для С++corehard_by
 
Как приручить дракона: введение в LLVM
Как приручить дракона: введение в LLVMКак приручить дракона: введение в LLVM
Как приручить дракона: введение в LLVMTech Talks @NSU
 
Технологии анализа бинарного кода приложений: требования, проблемы, инструменты
Технологии анализа бинарного кода приложений: требования, проблемы, инструментыТехнологии анализа бинарного кода приложений: требования, проблемы, инструменты
Технологии анализа бинарного кода приложений: требования, проблемы, инструментыPositive Development User Group
 
SAST и Application Security: как бороться с уязвимостями в коде
SAST и Application Security: как бороться с уязвимостями в кодеSAST и Application Security: как бороться с уязвимостями в коде
SAST и Application Security: как бороться с уязвимостями в кодеAndrey Karpov
 
Семинар 5. Многопоточное программирование на OpenMP (часть 5)
Семинар 5. Многопоточное программирование на OpenMP (часть 5)Семинар 5. Многопоточное программирование на OpenMP (часть 5)
Семинар 5. Многопоточное программирование на OpenMP (часть 5)Mikhail Kurnosov
 
Formal verification of operating system kernels
Formal verification of operating system kernelsFormal verification of operating system kernels
Formal verification of operating system kernelsDenis Efremov
 
Доклад на Highload-2012
Доклад на Highload-2012Доклад на Highload-2012
Доклад на Highload-2012Alex Tutubalin
 
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)Ontico
 
Ловим шеллкоды под ARM
Ловим шеллкоды под ARMЛовим шеллкоды под ARM
Ловим шеллкоды под ARMPositive Hack Days
 
Развитие технологий генерации эксплойтов на основе анализа бинарного кода
Развитие технологий генерации эксплойтов на основе анализа бинарного кодаРазвитие технологий генерации эксплойтов на основе анализа бинарного кода
Развитие технологий генерации эксплойтов на основе анализа бинарного кодаPositive Hack Days
 
Лекция #5. Введение в язык программирования Python 3
Лекция #5. Введение в язык программирования Python 3Лекция #5. Введение в язык программирования Python 3
Лекция #5. Введение в язык программирования Python 3Яковенко Кирилл
 

Similar to C:\fakepath\кмсзи экз (20)

Криптография
КриптографияКриптография
Криптография
 
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
 
Владимир Иванов - Криптография и шифрование
Владимир Иванов - Криптография и шифрованиеВладимир Иванов - Криптография и шифрование
Владимир Иванов - Криптография и шифрование
 
Dsl for c++
Dsl for c++Dsl for c++
Dsl for c++
 
Компилируемые в реальном времени DSL для С++
Компилируемые в реальном времени DSL для С++Компилируемые в реальном времени DSL для С++
Компилируемые в реальном времени DSL для С++
 
Как приручить дракона: введение в LLVM
Как приручить дракона: введение в LLVMКак приручить дракона: введение в LLVM
Как приручить дракона: введение в LLVM
 
лекция 11
лекция 11лекция 11
лекция 11
 
лекция 11
лекция 11лекция 11
лекция 11
 
Технологии анализа бинарного кода приложений: требования, проблемы, инструменты
Технологии анализа бинарного кода приложений: требования, проблемы, инструментыТехнологии анализа бинарного кода приложений: требования, проблемы, инструменты
Технологии анализа бинарного кода приложений: требования, проблемы, инструменты
 
SAST и Application Security: как бороться с уязвимостями в коде
SAST и Application Security: как бороться с уязвимостями в кодеSAST и Application Security: как бороться с уязвимостями в коде
SAST и Application Security: как бороться с уязвимостями в коде
 
лекция 17
лекция 17лекция 17
лекция 17
 
лекция 17
лекция 17лекция 17
лекция 17
 
Семинар 5. Многопоточное программирование на OpenMP (часть 5)
Семинар 5. Многопоточное программирование на OpenMP (часть 5)Семинар 5. Многопоточное программирование на OpenMP (часть 5)
Семинар 5. Многопоточное программирование на OpenMP (часть 5)
 
Formal verification of operating system kernels
Formal verification of operating system kernelsFormal verification of operating system kernels
Formal verification of operating system kernels
 
Доклад на Highload-2012
Доклад на Highload-2012Доклад на Highload-2012
Доклад на Highload-2012
 
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
 
Ловим шеллкоды под ARM
Ловим шеллкоды под ARMЛовим шеллкоды под ARM
Ловим шеллкоды под ARM
 
Развитие технологий генерации эксплойтов на основе анализа бинарного кода
Развитие технологий генерации эксплойтов на основе анализа бинарного кодаРазвитие технологий генерации эксплойтов на основе анализа бинарного кода
Развитие технологий генерации эксплойтов на основе анализа бинарного кода
 
Лекция #5. Введение в язык программирования Python 3
Лекция #5. Введение в язык программирования Python 3Лекция #5. Введение в язык программирования Python 3
Лекция #5. Введение в язык программирования Python 3
 
SAP hands on lab_ru
SAP hands on lab_ruSAP hands on lab_ru
SAP hands on lab_ru
 

C:\fakepath\кмсзи экз

  • 1. Оглавление TOC quot; 1-3quot; 1. Краткие сведения из истории криптографии PAGEREF _Toc263536168 113. Структурная схема симметричной криптосистемы. PAGEREF _Toc263536169 115. Обзор современных симметричных алгоритмов блочного шифрования. PAGEREF _Toc263536170 116. DES (Data Encryption Standard). Обобщенная схема шифрования. PAGEREF _Toc263536171 117. DES (Data Encryption Standard). Реализация функции шифрования. PAGEREF _Toc263536172 318. DES (Data Encryption Standard). Получение раундовых ключей PAGEREF _Toc263536173 519. Оценка криптостойкости алгоритма DES (Data Encryption Standard). PAGEREF _Toc263536174 620. Режимы работы DES (Data Encryption Standard). ECB Электронная кодовая книга PAGEREF _Toc263536175 721. Режимы работы DES (Data Encryption Standard). CBC Сцепление блоков шифра PAGEREF _Toc263536176 822. Режимы работы DES (Data Encryption Standard). CFB Обратная связь по шифру. PAGEREF _Toc263536177 823. Режимы работы DES (Data Encryption Standard). OFB Обратная связь по выходу. PAGEREF _Toc263536178 924. Области применения DES (Data Encryption Standard). PAGEREF _Toc263536179 1025. Симметричные криптографические системы. Алгоритм Blowfish. PAGEREF _Toc263536180 1026. Алгоритм Blowfish. Инициализация. PAGEREF _Toc263536181 1127. Алгоритм Blowfish. Функция шифрования. PAGEREF _Toc263536182 1246. Обобщенная схема асимметричной системы шифрования. Общие понятия и определения PAGEREF _Toc263536183 1447. Алгоритм открытого распределения ключей Диффи–Хеллмана (Diffie - Hellman) PAGEREF _Toc263536184 1548. Алгоритм RSA (Rivest-Shamir-Adleman) PAGEREF _Toc263536185 1549. Алгоритм Эль-Гамаля (El Gamal) PAGEREF _Toc263536186 1650. Электронная цифровая подпись. Общие понятия и определения, требования и структура ЭЦП. PAGEREF _Toc263536187 1651. Процедуры постановки и проверки подлинности ЭЦП. PAGEREF _Toc263536188 1752 .Схема формирования ЭЦП (на примере использования алгоритма RSA) PAGEREF _Toc263536189 1853 .Процедуры постановки и проверки ЭЦП ГОСТ Р34.10-94 (ГОСТ Р34.10-2001) PAGEREF _Toc263536190 1854 . Хэш-функции: определение и общие требования PAGEREF _Toc263536191 2055. Однонаправленные хэш-функции на основе симметричных блочных алгоритмов PAGEREF _Toc263536192 2056. Отечественный стандарт хэш-функции ГОСТ Р 34.11–94 PAGEREF _Toc263536193 2164. Современные приложения криптографии. PAGEREF _Toc263536194 22<br />1. Краткие сведения из истории криптографии<br />13. Структурная схема симметричной криптосистемы.<br />15. Обзор современных симметричных алгоритмов блочного шифрования.<br />Симметричные криптосистемы (с секретным ключом – secret key systems) – построены на основе сохранения в тайне ключа шифрования. <br />Процессы зашифрования и расшифрования используют один и тот же ключ. <br />Секретность ключа является постулатом. <br />Основная проблема при применении симметричных криптосистем для связи заключается в сложности передачи обоим сторонам секретного ключа. <br />Раскрытие ключа злоумышленником грозит раскрытием только той информации, что была зашифрована на этом ключе. <br />Американский и Российский стандарты шифрования DES и ГОСТ 28.147-89, <br />а также AES - новый американский стандарт на базе алгоритма Rijndael <br />16. DES (Data Encryption Standard). Обобщенная схема шифрования.<br /> DES (Data Encryption Standard - Стандарт Шифрования Данных) - название Федерального Стандарта Обработки информации (FIPS), который описывает алгоритм шифрования данных (Data Encryption Algorithm - DEA).<br /> DEA - развитие алгоритма Lucifer, который был разработан в начале 1970-х годов компанией IBM; на заключительных стадиях разработки активное участие принимали NSA и NBS. С момента опубликования DEA (более известный как DES) широко изучался и известен как один из наиболее распространённых симметричных алгоритмов.<br />Процесс шифрования DES<br /> Исходный текстНачальная перестановкаШифрованиеКонечнаяперестановкаЗашифрованный текстКлюч<br />Начальная перестановка<br />58504234261810L(0)R(0)260524436282012462544638302214664564840322416857494133251791595143352719113615345372921135635547393123157<br />Шифрование<br />L(0)R(0)fK(1)L(1)=R(0)R(1)=L(0) f(R(0), K(1))fK(2)fK(16)L(2)=R(1)R(2)=L(1) f(R(1), K(2))L(15)=R(14)R(15)=L(14) f(R(14), K(15))L(16)=R(15)R(16)=L(15) f(R(15), K(16))<br />17. DES (Data Encryption Standard). Реализация функции шифрования.<br />Функция шифрования f<br />Расширитель EПерестановка битов PS1S7S6S5S4S3S2S8K(i) (48 бит)R(i-1) (32 бита)(48бита)(32 бита)f(R(i-1), K(i))<br />Функция расширения Е<br />32 01 02 03 04 05 04 05 06 07 08 09 08 09 10 11 12 13 12 13 14 15 16 17 16 17 18 19 20 21 20 21 22 23 24 25 24 25 26 27 28 29 28 29 30 31 32 01 <br /> Пусть на вход блока S6 попадает 110011. Первый и последний бит образуют 11, что соответствует 3 строке, а биты со второго по пятый образуют 1001, что соответствует 9 столбцу. Элемент находящийся на их пересечении – 14, следовательно вместо 110011 подставляется 1110.<br />012345678910111213141501211015926801334147511110154271295611314011382914155281237041011311634321295151011141760813<br />Функция перестановки Р<br />16 07 20 21 29 12 28 17 01 15 23 26 05 18 31 10 02 08 24 14 32 27 03 09 19 13 30 06 22 11 04 <br />18. DES (Data Encryption Standard). Получение раундовых ключей.<br />Получение 48-битовых ключей<br /> Матрица G первоначальной подготовки ключа<br />574941332517С(0)D(0)0901585042342618100259514335271911036052443663554739312315076254463830221406615345372921130528201204<br /> Таблица сдвигов<br />Номер итерацииСдвиг (бит)011021032042052062072082091102112122132142152161<br /> Матрица H завершающей обработки ключа<br />141711240105032815062110231912042608160727201302415231314755304051453348444939563453464250362932<br />Схема алгоритма вычисления ключа<br />Исходный ключ KФункция GСдвиг влевоСдвиг влевоD(0)C(0)D(1)С(1)Сдвиг влевоСдвиг влевоD(2)C(2)Сдвиг влевоСдвиг влевоD(16)C(16)Функция HФункция HФункция HK(1)K(16)K(2)<br />19. Оценка криптостойкости алгоритма DES (Data Encryption Standard).<br />С самого начала использования алгоритма DES криптоаналитики всего мира прилагали множество усилий по взлому алгоритма DES1. <br />Фактически DES дал невиданный доселе толчок развитию криптоанализа. Вышли сотни трудов, посвященных различным методам криптоанализа именно в приложении к алгоритму DES.<br />Можно утверждать, что именно благодаря DES появились целые направления криптоанализа, такие как:<br />-линейный криптоанализ – анализ зависимостей между открытым текстом и шифротекстом;<br />-дифференциальный криптоанализ – анализ зависимостей между соотношениями двух или более открытых текстов и соответствующих им шифротекстов;<br />-криптоанализ на связанных ключах – поиск и анализ зависимостей между шифротекстами, полученными на искомом ключе и ключах, связанных предполагаемым соотношением с искомым ключом<br />Основные результаты усилий по взлому DES:<br />1. Японский специалист Мицуру Мацуи (Mitsuru Matsui), изобретатель линейного криптоанализа, в 1993 году доказал возможность вычисления ключа шифрования DES методом линейного криптоанализа при наличии у атакующего 247 пар «открытый текст – зашифрованный текст» <br />2. Криптологи из Израиля – изобретатели дифференциального криптоанализа Эли Бихам (Eli Biham) и Ади Шамир (Adi Shamir) – в 1991 году представили атаку, в которой ключ шифрования вычисляется методом дифференциального криптоанализа при наличии у атакующего возможности генерации 247 специально выбранных пар «открытый текст – зашифрованный текст» .<br />3. В 1994 году Эли Бихам и Алекс Бирюков (Alex Biryukov) усилили известный с 1987 года метод вычисления ключа DES – метод Дэвиса (Davies), основанный на специфических свойствах таблиц замен DES. Усиленный метод позволяет вычислить 6 бит ключа DES (остальные 50 бит – полным перебором возможных вариантов) при наличии 250 пар известных открытых текстов и шифротекстов или вычислить 24 бита ключа при наличии 252 пар.<br /> Практически сразу после появления DES были обнаружены следующие проблемы с ключами шифрования DES:<br />4 ключа из возможных 256 ключей алгоритма являются слабыми (т. е. не обеспечивают требуемой стойкости при зашифровании). <br />6 пар ключей являются эквивалентными. <br />48 ключей являются «возможно слабыми». <br /> Возможно слабые ключи при их расширении дают только 4 различных ключа раунда, каждый из которых используется при шифровании по 4 раза.<br />Существует свойство комплементарности ключей: <br /> если Ek(M) = C, где Ek(M) – зашифрование алгоритмом DES блока открытого текста M, а C – полученный в результате шифротекст, то Ek'(M') = C', где x' – побитовое дополнение к x (т. е. величина, полученная путем замены всех битовых нулей значения x на единицы, и наоборот).<br /> Считается, что свойство комплементарности ключей не является слабостью, однако, оно приводит к тому факту, что для полного перебора ключей DES требуется 255, а не 256 попыток.<br /> Однако и эти недостатки не являются существенными, поскольку в программной или аппаратной реализации DES достаточно просто запретить использование проблемных ключей<br />20. Режимы работы DES (Data Encryption Standard). ECB Электронная кодовая книга<br />Длинный файл разбивают на 64-битовые отрезки (блоки) по 8 байтов. Каждый из этих блоков шифруют независимо с использованием одного и того же ключа шифрования. <br />Основное достоинство – простота реализации. <br />Из-за фиксированного характера шифрования при ограниченной длине блока 64 бита возможно проведение криптоанализа <br />«со словарем». <br />Блок такого размера может повториться в сообщении вследствие большой избыточности в тексте на естественном языке. Это приводит к тому, что идентичные блоки открытого текста в сообщении будут представлены идентичными блоками шифротекста, что дает криптоаналитику некоторую информацию о содержании сообщения.<br />21. Режимы работы DES (Data Encryption Standard). CBC Сцепление блоков шифра<br />В этом режиме исходный файл М разбивается на <br />64-битовые блоки: М = М1М2...Мn. <br />Первый блок М1 складывается по модулю 2 с 64-битовым начальным вектором IV, который меняется ежедневно и держится в секрете . Полученная сумма затем шифруется с использованием ключа DES, известного и отправителю, и получателю информации. Полученный 64-битовый шифр С1 складывается по модулю 2 со вторым блоком текста, результат шифруется и получается второй 64-битовый шифр С2, и т.д. <br />Процедура повторяется до тех пор, пока не будут обработаны все блоки текста. <br />22. Режимы работы DES (Data Encryption Standard). CFB Обратная связь по шифру.<br />В этом режиме размер блока длиной k битов может отличаться от 64 бит.<br /> Файл, подлежащий шифрованию (расшифрованию), считывается последовательными блоками длиной <br />k битов, k ≤ 64. <br />Входной блок (64-битовый регистр сдвига) вначале содержит вектор инициализации, выровненный по правому краю.<br />Предположим, что в результате разбиения на блоки мы получили n блоков длиной k битов каждый (остаток дописывается нулями или пробелами). <br />Тогда для любого i из {1,…,n} блок шифротекста получается по правилу<br />Сi = Mi Pi–1,<br />где Рi–1 обозначает k старших битов предыдущего зашифрованного блока.<br />Обновление сдвигового регистра осуществляется путем удаления его старших k битов и записи Сi в регистр.<br /> Восстановление зашифрованных данных также выполняется относительно просто: Рi–1 и Сi вычисляются аналогичным образом Мi = Сi Рi–1.<br />23. Режимы работы DES (Data Encryption Standard). OFB Обратная связь по выходу.<br />Этот режим использует переменный размер блока и сдвиговый регистр, инициализируемый так же, как в режиме СFB, а именно – входной блок вначале содержит вектор инициализации IV, выровненный по правому краю. <br />При этом для каждого сеанса шифрования данных необходимо использовать новое начальное состояние регистра, которое должно пересылаться по каналу открытым текстом. <br />Положим М = М1 М2 ... Mn. Для всех i из {1,…, n}<br />Сi = Mi Pi,<br />где Рi – старшие k битов операции DES (Сi–1).<br />Отличие от режима обратной связи по шифротексту состоит в методе обновления сдвигового регистра.<br />Это осуществляется путем отбрасывания старших k битов и дописывания справа Рi.<br />24. Области применения DES (Data Encryption Standard). <br />Режим ЕСВ хорошо подходит для шифрования ключей;<br /> режим CFB, как правило, предназначается для шифрования отдельных символов, а режим OFB нередко применяется для шифрования в спутниковых системах связи.<br />Режимы СВС и CFB пригодны для аутентификации данных. <br />Наличие нескольких режимов позволяет использовать <br />алгоритм DES для:<br />интерактивного шифрования при обмене данными в ИС;<br />шифрования криптографических ключей в процедурах распространения ключевой информации;<br />шифрования файлов, почтовых отправлений, и др.<br />25. Симметричные криптографические системы.Алгоритм Blowfish.<br />Разработан в 1993 г. Брюсом Шнайером <br />Основные характеристики<br />Структура: сеть Фейстеля <br />Размер ключа: 32-448 бит<br />Размер блока: 64 бит<br />Число раундов: 16<br />Критерии проектирования:<br />Скорость шифрования<br />Компактность<br />Простота<br />Настраиваемая безопасность<br />Blowfish оптимизирован для приложений, где нет частой смены ключей. Например, программы автоматического шифрования файлов.<br />Алгоритм шифрования:<br />26. Алгоритм Blowfish. Инициализация.<br />ЭТАП 1 <br />Подготовительный — формирование ключей шифрования по секретному ключу. <br />Инициализация массивов P (32-битные раундовые ключи шифрования) и S (32-битные таблицы замен) при помощи <br />секретного ключа K <br />Инициализация P1-P18 фиксированной строкой, состоящей из шестнадцатеричных цифр мантиссы числа “пи”. <br />Десятичное: 3,1415926535897932384626433832795…<br />Шестнадцатеричное: 3,243F6A8885A308D31319… <br />Производится операция XOR над P1 с первыми 32-мя битами ключа K, <br />над P2 со вторыми 32-мя битами и так далее.Если ключ K короче, то он накладывается циклически. <br />32-битные таблицы замен<br />ЭТАП 1 <br />Шифрование ключей и таблиц замен <br />Алгоритм шифрования 64-битного блока, используя инициализированные ключи P1-P18 и таблицу замен S1-S4, шифрует 64 –х битную строку, состоящую из 0 и 1 (важно чтобы она была фиксированной длины). Результат записывается в P1, P2. <br />P1 и P2 шифруются измененными значениями ключей и таблиц замен. Результат записывается в P3 и P4. <br />Шифрование продолжается до изменения всех ключей и таблицы замен. <br />27. Алгоритм Blowfish. Функция шифрования.<br />ЭТАП 2 <br />Шифрование текста полученными ключами и F(x), с предварительным разбиением на блоки по 64 бита. Если невозможно разбить начальный текст точно на блоки по 64 бита, используются различные режимы шифрования для построения сообщения, состоящего из целого числа блоков. <br />Cуммарная требуемая память 4168 байт: P1-P18: 18 переменных по 32 бита; <br />S1-S4: 4x256 переменных по 32 бита. <br />Расшифрование происходит аналогично, только P1-P18 применяются в обратном порядке. <br />446341513468352758440622935 разделение на 32-битные блоки : L0 , R0вычисления в i-том раунде: после 16-го раунда L16 , R16 меняются местами: и выполняется операция XOR с ключами P17,P18 <br />Функция F<br />32-битный блок делится на четыре 8-битных блока (X1, X2, X3, X4), каждый из которых является индексом массива таблицы замен S1-S4 <br />значения S1[X1] и S2[X2] складываются по модулю 232, далее выполняется операция XOR с S3[X3] и, наконец, сложение с S4[X4] по модулю 232<br />Результат этих операций — значение F(x) <br />Особенности реализации:<br />Не подходит для приложений с частой сменой ключей<br />Не может быть применен в смарт-картах и других встраиваемых системах с малым объемом памяти<br />46. Обобщенная схема асимметричной системы шифрования. Общие понятия и определения<br />Шифрование - это преобразование данных в вид, недоступный для чтения без соответствующей информации (ключа шифрования). <br />Задача шифрования - обеспечить конфиденциальность, скрыв информацию от лиц, которым она не предназначена, даже если они имеют доступ к зашифрованным данным.<br /> Расшифровывание - процесс, обратный шифрованию, т.е. преобразование зашифрованных данных в открытый вид.<br />Асимметричное шифрование— система шифрования информации, при которой ключ, которым зашифровывается сообщение и само зашифрованное сообщение передаётся по открытому каналу.<br />Алгоритм шифрованияАлгоритм расшифрованияГенерацияключейОтправитель Р1Получатель Р2Криптограмма, С ММКр2 - секретныйКр1 - открытыйНезащищенныйканал Противник<br />47. Алгоритм открытого распределения ключей Диффи–Хеллмана (Diffie - Hellman) <br />Отправитель Р1Получатель Р21.Генерация n, aоткрытыемодульоснование2. Случайное число Х, вычисляет A = ax (mod n)3. Случайное число Y,вычисляет B = ay (mod n)A4.Вычисление ключаKp1 = Bx (mod n)5.Вычисление ключаKp2 =Ay (mod n)BПримерn = 5, a = 7, x = 3, y = 2A = 73 (mod 5) = 343 (mod 5) = 3Kp1 = 43 (mod 5) = 64 (mod 5) = 4B = 72 (mod 5) = 49 (mod 5) = 4Kp2 = 32 (mod 5) = 4<br />48. Алгоритм RSA (Rivest-Shamir-Adleman)<br />49. Алгоритм Эль-Гамаля (El Gamal) <br />50. Электронная цифровая подпись. Общие понятия и определения, требования и структура ЭЦП.<br />Электронная цифровая подпись (ЭЦП) - реквизит электронного документа, предназначенный для защиты данного электронного документа от подделки, полученный в результате криптографического преобразования информации с использованием закрытого ключа электронной цифровой подписи и позволяющий идентифицировать владельца сертификата ключа подписи, а также установить отсутствие искажения информации в электронном документе <br />(Федеральный закон «Об электронной цифровой подписи»)<br />ЭЦП включает:<br />Алгоритм генерации пар ключей пользователей<br />Функцию вычисления подписи<br />Функцию проверки подписи<br />Требования к ЭЦП:<br />НеподдельностьДостоверностьНевозможность повторного использованияНевозможность изменения подписанного документаНевозможность отречения от цифровой подписи<br />Классы ЭЦП:<br />Обычные цифровые подписиЦифровые подписи с восстановлением документа<br />51. Процедуры постановки и проверки подлинности ЭЦП.<br />52 .Схема формирования ЭЦП (на примере использования алгоритма RSA)<br />Отправитель(постановка ЭЦП)Получатель(проверка ЭЦП)СообщениеМБлоксжатияHDГенерацияключейSEБлоксжатияканалH ' = H quot; S = HD mod NH = h (M)E, NN, DMH quot; = S E (mod N)H ' = h(M)данетЭЦПподлиннаяЭЦПошибочная<br />53 .Процедуры постановки и проверки ЭЦП ГОСТ Р34.10-94 (ГОСТ Р34.10-2001) <br />Отечественный стандарт цифровой подписи <br />ГОСТ Р34.10-94 (ГОСТ Р34.10-2001) В сентябре 2001 г. утвержден, а с 1 июля 2002 г. вступил в силу новый стандарт ЭЦП – ГОСТ Р 34.10–2001.<br />Параметры ЭЦП по ГОСТу:<br />р – большое простое число длиной 512 (1024) бит;<br />q – простой сомножитель числа (р-1) длиной 254..256 бит; <br />p,q могут быть открытыми <br />a – любое число, меньшее (р-1), такое, что <br /> aq mod p = 1;<br />x – секретный ключ, число меньшее q;<br />y – открытый ключ, y = ax mod p <br />Процедура постановки ЭЦП:<br />Вычислить h(M) - значение хэш-функции h от сообщения М. <br />Выработать целое число k, 0<k < q. <br />Вычислить два значения : r = ak (mod p) и r' = r (mod q). <br /> Если r' =0, перейти к этапу 2 и выработать другое значение числа k. <br />С использованием секретного ключа х отправителя сообщения вычислить значение <br /> s = (xr' + kh(M))(mod q). <br /> Если s=0, перейти к этапу 2, в противном случае закончить работу алгоритма.<br /> Подписью сообщения М являются два числа <br />(r' mod 2256), s mod 2256) <br />Процедура проверки ЭЦП:<br />Проверить условие: 0< s < q и 0 < r' < q. Если хотя бы одно из этих условий не выполнено, то подпись считается недействительной. <br />Вычислять h(M1 )- значение хеш-функции h от полученного сообщения М1. <br />Вычислить значение v = (h(M1 ))q-2 (mod q).<br />Вычислить значения: z1 = (s * v) mod q и z2 = ((q - r' ) * v) mod q.<br />Вычислить значение u = (a z1 y z2(mod p)) (mod q).<br />Проверить условие: r' = u. <br /> При совпадении значений r и u получатель принимает решение о том, что полученное сообщение подписано данным отправителем и в процессе передачи не нарушена целостность сообщения, <br />т.е. М =М1. <br />В противном случае подпись считается недействительной. <br />54 . Хэш-функции: определение и общие требования<br />Хэш-функция предназначена для формирования ЭЦП и обеспечивает сжатие подписываемого документа М до нескольких десятков или сотен бит. <br />Хэш-функция h(.) использует в качестве аргумента сообщение М произвольной длины и возвращает хэш-значение h(M)=H фиксированной длины. <br />Обычно хэшированная информация является сжатым двоичным представлением основного сообщения произвольной длины. Следует отметить, что значение хэш-функции h(M) сложным образом зависит от документа M и<br /> не позволяет восстановить сам документ M.<br />Требования к ХЭШ-функциям:<br />Большинство хэш-функций строится на основе однонаправленной функции f(.) , которая образует выходное значение длиной n при задании двух входных значений длиной n. <br />551815571500Этими входами являются блок исходного текста Мi и хэш-значение Hi-1 предыдущего блока текста.<br />55. Однонаправленные хэш-функции на основе симметричных блочных алгоритмов<br /> <br />H0 = IH ; <br />Hi = EA (B) C, <br />  где IH – некоторое начальное случайное значение; <br /> A, B, C – могут принимать значения Mi , Hi-1,, ( Mi Hi-1) или быть константами; <br /> Mi – блок сообщения принятой длины.<br />Три различные переменные А, В, С могут принимать одно из четырех возможных значений, поэтому в принципе можно получить 64 варианта общей схемы этого типа, однако 52 варианта являются либо слабыми, либо небезопасными. <br />Остальные 12 схем описываются в таблице, см.: [Романец–99, с. 160].<br />56. Отечественный стандарт хэш-функции ГОСТ Р 34.11–94 <br />Отечественный стандарт ГОСТ Р 34.11–94 определяет алгоритм и процедуру вычисления хэш-функции двух любых последовательностей двоичных символов, применяемых в криптографических методах обработки и защиты информации. <br />Этот стандарт базируется на блочном алгоритме шифрования ГОСТ 28147–89.<br /> Данная хэш-функция формирует 256-битовое хэш-значение. <br />Функция сжатия Ri = f( Mi, Ri–1) <br />(оба операнда Mi и Ri–1 являются 256-битовыми величинами) определяется следующим образом.<br />1. Генерируются 4 ключа шифрования Kj, j {1,2,3,4}, путем линейного смешивания Mi, Ri–1 и некоторых констант Cj.<br />2. Каждый ключ Kj, используют для шифрования 64-битовых подслов ri слова Ri–1 в режиме простой замены: <br /> Sj= (rj). Результирующая последовательность S4, S3, S2, S1 длиной 256 бит запоминается во временной переменной S.<br />3. Значение Ri является сложной, хотя и линейной функцией смешивания S, Mi и Ri–1.<br />При вычислении окончательного хэш-значения сообщения M учитываются значения трех связанных между собой переменных:<br /> Rn – хэш-значение последнего блока сообщения;<br /> Z – значение контрольной суммы, получаемой при сложении по модулю 2 всех блоков сообщения;<br /> L – длина сообщения.<br />Эти три переменные и дополненный последний блок M´ сообщения объединяются в окончательное хэш-значение следующим образом:<br />R = f (Z M´, f (L, f (M´, Rn))) <br />57. Методы управления криптографическими ключами<br />Под ключевой информацией понимают совокупность всех действующих ключей в автоматизированных системах обработки информации (АСОИ). <br />Если не обеспечено достаточно надежное управление ключевой информацией, то, завладев ею, злоумышленник получает неограниченный доступ ко всей информации.<br />Управление ключами – информационный процесс, включающий реализацию следующих этапов:<br /> генерация ключей;<br /> хранение ключей;<br /> распределение ключей.<br />58. Генерация криптографических ключей. Схема генерации случайного ключа в соответствии со стандартом ANSI X9.17<br />Безопасность любого криптографического алгоритма определяется используемым криптографическим ключом. <br />Добротные криптографические ключи должны иметь достаточную длину и случайные значения битов. Для получения ключей используются аппаратные и программные средства генерации случайных значений ключей. <br />Как правило, применяют датчики псевдослучайных чисел (ПСЧ). Однако степень случайности генерации чисел должна быть достаточно высокой.<br />Один из методов генерации сеансового ключа для симметричных криптосистем описан в стандарте ANSI X9.17. <br />Он предполагает использование криптографического алгоритма DES <br />(хотя можно применить и другие симметричные алгоритмы шифрования). <br />Схема генерации случайного ключа Ri в соответствии со стандартом ANSI X9.17<br />Случайный ключ Riгенерируют, вычисляя значениеRi = ЕК (ЕК (Тi) Vi)Следующее значение Vi+1вычисляют так:Vi+1 = ЕК (ЕК (Тi) Ri) Если необходим 128-битовый случайный ключ, генерируют пару ключей Ri, Ri+1и объединяют их вместе.ЕК(Тi)– результат шифрования алгоритмом DES значения Тi;К – ключ, зарезервированный для генерации секретных ключей;V0– секретное 64-битовое начальное число;Т – временная отметка.<br />64. Современные приложения криптографии.<br />Защита от несанкционированного чтения, или обеспечение конфиденциальности информации Обеспечивается путем шифрования информации с использованием современных симметричных <br />DES, Rijndael, Blowfish, IDEA, ГОСТ 28147-89 <br />или асимметричных <br />RSA, ElGamal криптографических систем <br />Защита от навязывания ложных сообщений, как умышленных, так и непреднамеренных может быть обеспечена с помощью так называемой имитозащиты. <br />Имитозащита – защита от навязывания ложных сообщений путем формирования, в зависимости от секретного ключа, специальной дополнительной информации, называемой имитовставкой, которая передается вместе с криптограммой, причем могут использоваться два варианта: либо вычисление имитовставки по открытому тексту, либо по шифротексту. <br />Чем больше длина имитовставки, тем меньше вероятность того, что искажение шифротекста не будет обнаружено получателем<br />Идентификация и аутентификация <br />Идентификация законных пользователей заключается в распознавании пользователей, после чего им предоставляются определенные права доступа к ресурсам. <br />Аутентификация – установление санкционированным получателем того факта, что полученное сообщение послано санкционированным отправителем. <br />Принятый протокол должен обеспечить противодействие использованию потенциальным нарушителем ранее переданных сообщений. <br />Это направление современной криптологии очень интенсивно развивается с момента открытия криптографии с открытым ключом (асимметричной или двухключевой криптографии) в середине 70-х годов.<br />Контроль целостности - Это обнаружение любых несанкционированных изменений информации, например данных или программ, хранящихся в компьютере. <br />Имитозащита, в сущности, является частным случаем контроля целостности информации, передаваемой в виде шифротекста. <br />В практических приложениях часто требуется удостовериться, что некоторые данные или программы не были изменены каким-либо несанкционированным способом, хотя сами данные не являются секретными и хранятся в открытом виде.<br />ЭЦП. Основывается на асимметричных криптографических алгоритмах, в которых предусматривается использование открытого и секретного ключей. <br />Асимметричные криптоалгоритмы позволяют обеспечить строгую доказательность факта составления того или иного сообщения конкретными пользователями криптосистемы. Это основано на том, что только отправитель сообщения, который держит в секрете некоторую дополнительную информацию (секретный ключ), может составить сообщение со специфической внутренней структурой. <br />То, что сообщение имеет структуру, сформированную с помощью секретного ключа, проверяется с помощью открытого ключа. <br />Вероятность того, что некоторое сообщение, составленное нарушителем, может быть принято за сообщение, подписанное каким-либо санкционированным пользователем для современных алгоритмов ЭЦП оценивается порядка 10-30 .<br />Криптографическая защита документов и ценных бумаг от подделки Путем считывания информации об уникальных особенностях носителя информации, формируется цифровой паспорт, включающий содержание документа и информацию о микроструктуре документа. Затем законный изготовитель документа, используя свой секретный ключ, вычисляет цифровую подпись паспорта и записывает на носителе паспорт и соответствующую ему цифровую подпись.<br />Проверка подлинности документа выполняется путем сканирования микроструктуры материального объекта, на котором сформирован документ, считывания записанной на нем информации и проверки цифровой подписи изготовителя документа по открытому ключу, который является общедоступным. <br />Изготовление фальшивого документа на другом материальном объекте или модифицирование содержания документа и его цифрового паспорта практически не осуществимы без знания секретного ключа, с помощью которого формируется подпись. <br />В современном мире значение криптографии выходит далеко за рамки обеспечения секретности данных. <br />По мере все большей автоматизации передачи и обработки информации и интенсификации информационных потоков ее методы приобретают уникальное значение.<br />