
- •Методы защиты информации в компьютерных технологиях Москва 2011
- •1. Основные направления криптологии.
- •2. Методы криптографических преобразований с открытым ключом.
- •2.1. Алгоритм нахождения числа по модулю.
- •2.2. Вычисление обратных величин в модулярной алгебре.
- •2.3. Алгоритм операции возведения числа в степень по модулю.
- •2.4. Определение односторонней функции.
- •3. Алгоритмы формирования и функционирования криптографических систем с открытым ключом.
- •3.1. Алгоритм криптографической системы rsa (Райвест-Шамир-Адлеман).
- •3.2. Алгоритм криптографической системы на основе вычисления дискретных логарифмов в конечном поле – алгоритм Эль Гамаля.
- •3.3. Алгоритм функционирования криптографической системы на основе дискретного логарифмирования в метрике эллиптических кривых.
- •3.3.1. Основные операции криптографических преобразований в метрике эллиптических кривых.
- •3.4. Преобразование Диффи-Хеллмана в системах криптографии с открытым ключом.
- •XcxпШифратор
- •3.5. Формирование криптограмм открытых сообщений и их дешифрование с использованием методов дискретного логарифмирования в метрике эллиптических кривых.
- •4.1. Вычисление множества точек удвоения заданной эллиптической кривой.
- •4.1.3. Вычисление координат точки [8]g, как результат удвоения точки [4]g:
- •4.1.4. Вычисление координат точки [16]g , как результат удвоения точки [8]g:
- •4.1.5. Вычисление координат точки [32]g , как результат удвоения точки [16]g:
- •4.1.6. Вычисление координат точки [64]g , как результат удвоения точки [32]g:
- •4.1.7. Вычисление координат точки [128]g , как результат удвоения точки [64]g:
- •4.2. Вычисление композиций точек удвоения [4]g; [8]g; [32]g; [64]g; [128]g заданной эллиптической кривой.
- •5. Алгоритм формирования открытого ключа абонента в.
- •5.1. Вычисление множеств точек удвоения заданной эллиптической кривой.
- •5.1.3. Вычисление точки [8]g, как результат удвоения точки [4]g:
- •5.1.4. Вычисление точки [16]g , как результат удвоения точки [8]g:
- •5.1.5. Вычисление точки [32]g , как результат удвоения точки [16]g:
- •5.1.6. Вычисление точки [64]g , как результат удвоения точки [32]g:
- •5.1.7. Вычисление точки [128]g , как результат удвоения точки [64]g:
- •5.2. Вычисление композиций различных точек удвоения заданной эллиптической кривой ( [2]g; [4]g; [16]g; [32]g; [128]g ).
- •6. Вычисление парного сеансового ключа шифрования-дешифрования для абонентов а и в на основе преобразований Диффи-Хеллмана.
- •6.1. Действие абонента в.
- •6.1.1. Вычисление точки [2]коа , как результат удвоения точки коа:
- •6.2. Вычисление композиций различных точек удвоения заданной эллиптической кривой: [2]коа; [4] коа; [16] коа; [32] коа; [128]коа).
- •7. Дешифрование абонентом а криптограммы, полученной от абонента в с использованием парного секретного симметричного ключа, сформированного по методу Диффи-Хеллмана в метрике эллиптических кривых.
- •7.1. Вычисление удвоений множества точек заданной эллиптической кривой на стороне абонента «а» по значению точки ков, характеризующей открытый ключ абонента «в».
- •7.1.1. Вычисление значения удвоения точки ков – [2]ков:
- •7.2. Вычисление композиций различных точек удвоения заданной эллиптической кривой: [4]ков; [8]ков; [32]ков; [64]коа; [128]ков).
- •7. 3. Дешифрование абонентом «а» криптограммы с, полученной от абонента «в».
- •4. Алгоритмы электронной цифровой подписи.
- •4.1. Алгоритм электронной цифровой подписи rsa (Райвест-Шамир-Адлеман).
- •4.2. Алгоритм электронной цифровой подписи Эль Гамаля (egsa). Egsa (el Gamal Signature Algorithm).
- •4. 3. Алгоритм электронной цифровой подписи dsa (Digital Signature Algorithm).
- •4.4. Алгоритм электронной цифровой подписи гост р34.10-94. (Отечественный стандарт электронной цифровой подписи).
- •4.5. Алгоритм электронной цифровой подписи гост р34.10-2001. (Отечественный стандарт электронной цифровой подписи).
- •3.1. Вычисление множества точек удвоения заданной эллиптической кривой.
- •3.1.3. Вычисление координат точки [8]g, как результат удвоения точки [4]g:
- •3.1.4. Вычисление координат точки [16]g , как результат удвоения точки [8]g:
- •3.1.5. Вычисление координат точки [32]g , как результат удвоения точки [16]g:
- •3.1.6. Вычисление точки [64]g , как результат удвоения точки [32]g:
- •3.1.7. Вычисление точки [128]g , как результат удвоения точки [64]g:
- •3.2. Вычисление композиций точек удвоения [4]g; [8]g; [32]g; [64]g; [128]g заданной эллиптической кривой.
- •4. Действие абонента-отправителя (абонента «а») по формированию электронной цифровой подписи электронного сообщения «м».
- •4.3.2. Вычисление композиций точек удвоения [256]g; [64]g; [16]g; [8]g; [2]g; g заданной эллиптической кривой.
- •4.3.2.3. Вычисление композиции точек [336]g и [8]g;
- •4.3.2.4. Вычисление композиции точек [344]g и [2]g;
- •4.3.2.5. Вычисление композиции точек [346]g и g;
- •4.5. Вычисление параметра электронной цифровой подписи Si .
- •5. Действия абонента «в» по приему и аутентификации подписанного электронного сообщения «м».
- •5.5.2. Вычисление композиции точек [32]g и [8]g;
- •5.5.3. Вычисление композиции точек [40]g и [4]g;
- •5.5.5. Вычисление композиций точек удвоения
- •5.5.5.1. Вычисление композиции точек [128]коа и [64]коа;
- •5.5.5.2. Вычисление композиции точек [192]коа и [32]коа;
- •5.5.5.3. Вычисление композиции точек [224]коа и [2]коа;
- •5.5.5.4. Вычисление композиции точек [u1]g и [u2]коа;
- •5.5.5.5. Сравниваются вычисленные значения параметра «r», принятого в составе эцп от абонента-отправителя и значения абсциссы точки «q» → «xq», вычисленное абонентом получателем.
- •6. Элементы симметричных криптографических преобразований.
- •6.2. Табличное шифрование методом перестановки по ключевому слову или фразе, задающими перестановку.
- •6.3. Табличное шифрование методом двойной перестановки.
- •6.5. Шифры сложной замены.
- •7. Корректирующие коды.
- •6. 1. Блочные коды.
- •6.1.1. Систематические коды.
- •6.1.2. Корректирующие коды с обнаружением искажений, применяемые в системах передачи и обработки информации.
- •7. Windows-кодирование.
- •7.1. Преобразование Windows-кодирования - коды Грея.
- •7.2. Преобразование Windows-кодирования в систематические коды.
- •7.3. Преобразование Windows-кодирования в коды Хэмминга.
- •7.5. Преобразование Windows-кодирования в коды Боуза-Чодхури-Хоквингема (бчх).
6.5. Шифры сложной замены.
Для устранения этого недостатка и усложнения задач несанкционированного распознавания зашифрованных текстов используют достаточно сложные преобразования элементов открытого текста – шифры сложной замены. Шифры сложной замены называют многоалфавитными шифрами, в таких шифрах для преобразования каждого отдельно взятого элемента естественного алфавита применяют свой шифр простой замены, устраняя при этом статистические демаскирующие признаки.
К шифрам сложной замены относят системы преобразований предложенные и разработанные основоположником криптологии Леоном Батистом Альберти, в таких шифрах степень криптостойкости теоретически пропорциональна размеру ключа шифрования.
Одним из представителей шифров сложной замены является шифр Гронсфельда, который является модификацией шифра Цезаря в виде числового ключа. При шифровании открытого исходного текста под буквами исходного сообщения подписывается числовой ключ, если длина числового ключа меньше исходного текста, то числовой ключ подписывается многократно до конца исходного открытого текста. После таких преобразований каждая буква открытого текста заменяется на букву того же алфавита, отстоящую от шифруемой на число позиций по алфавиту равное значению подписанной под ней цифры.
Например: необходимо зашифровать фразу: «ПРЕОБРАЗОВАНИЕ ИСХОДНОГО СООБЩЕНИЯ», для чего произвольно выбирают числовой код (19076729).
П Р Е О Б Р А З О В А Н И Е И С Х О Д Н О Г О С О О Б Щ Е Н И Я.
1 9 0 7 6 7 2 9 1 9 0 7 6 7 2 9 1 9 0 7 6 7 2 9 1 9 0 7 6 7 2 9
Шифртекст: «РЩЕХЖЧВРПКАФОЛ КЪЦЧДФФЙР ЪПЧБАКФКЗ».
Русский алфавит (Словарь русского языка С.И. Ожегова):
А, Б, В, Г, Д, Е, Е, Ж, З, И, Й, К, Л, М, Н, О, П, Р, С, Т, У, Ф, Х, Ц, Ч, Ш, Щ, Ъ, Ы, Ь, Э, Ю, Я.
Дешифрование криптгограммы производится в обратном порядке при условии, что буква открытого текста выбирается из исходного открытого алфавита со сдвигом на число позиций подписанной под ней цифры к началу алфавита.
Дальнейшее развитие шифр Гронсфельда получил в разработках французского криптографа Блеза Виженера, в которых ключ шифрования изменяется от буквы к букве открытого текста и которые также относятся к многоалфавитным системам шифрования.
Шифр многоалфавитной замены Вижинера представлен в виде таблицы, которую зачастую называют квадратом Вижинера и которая используется для шифрования и дешифрования открытого исходного текста.
Шифрование происходит по следующему алгоритму:
1. Выбирается ключевое слово или ключевая фраза, которая подписывается под открытым текстом, подлежащим шифрованию. Если ключевое слово или ключевая фраза меньше исходного шифруемого текста, то они подписываются периодически несколько раз.
2. Каждая буква открытого текста позиционно определяется в верхней строке таблицы Вижинера, а подписанная под ней буква ключевого слова или ключевой фразы позиционно определяется в первом столбце.
3. На пересечении выбранной строки по букве ключевого слова и выбранной колонки по букве открытого текста определяется элемент шифртекста.
4. Процесс дешифрования зашифрованного текста осуществляется в обратном порядке, т.е.под шифртекстом подписываются буквы ключевого слова или ключевой фразы. По букве ключевого слова определяется позиция в первой колонке таблицы и в этой строке отыскивается соответствующая буква шифртекста, которая проецируется на верхнюю строку и определяет соответствующую букву открытого текста, позиционно определяемую элементом криптограммы.
Например зашифровать фразу: «ПРЕОБРАЗОВАНИЕ ИСХОДНОГО СООБЩЕНИЯ».
Вводим ключевую фразу: «МНОГОАЛФАВИТЕНОЕ ШИФРОВАНИЕ».
П Р Е О Б Р А З О В А Н И Е И С Х О Д Н О Г О С О О Б Щ Е Н И Я
М Н О Г О А Л Ф А В И Т Н О Е Ш И Ф Р О В А Н И Е М Н О Г О А Л
Шифртекст определится как:
ЭЮУСПРЛЫОДИЬХУ ОЗЯАФЭРГЭ ЩУЩОЕЭИЖ
а |
б |
В |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
б |
в |
Г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
в |
г |
Д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
г |
д |
Е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
д |
е |
Ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
е |
ж |
З |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
ж |
з |
И |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
з |
и |
К |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
и |
к |
Л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
к |
л |
М |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
л |
м |
Н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
щ |
э |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
э |
Ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
ы |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ю |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
я |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
ь |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ъ |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
ц |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
й |
а |
б |
в |
г |
д |
е |
ж |
з |
и |
к |
л |
м |
н |
о |
п |
р |
с |
т |
у |
ф |
х |
й |
ч |
ш |
щ |
э |
ы |
ю |
я |
ь |
ъ |
Шифрование методом гаммирования заключается в наложении в соответствии с выбранным законом преобразования гаммы шифра на открытые тексты. В свою очередь гамма шифра определяется как псевдослучайная последовательность, выработанная по определенному алгоритму для зашифровывания открытых дешифрования зашифрованных данных (Л.1).
В современных криптографических системах процесс гаммирования заключается в генерации гаммы шифра и наложении полученной гаммы на исходный открытый текст с использованием операции сложения по модулю 2 (Л.1). Изначально перед шифрованием открытые данные разбиваются на отдельные блоки равной длины как правило по 64 бита - Т0 . Гамма шифр также представляет собой последовательность блоков – Гш такой же длины. Шифрование каждого блока осуществляется в соответствии с алгоритмом сложения кода блока открытого текста с кодом блока гаммы по модулю 2. Например: код элемента открытого текста Т0→а→11100000; гамма шифр Тг→10011010; шифр элемента кодирования – Тш = Т0 + Тг = 11100000 + 10011010 = 01111010 .
Рассмотренный метод преобразования – метод гаммирования обладает высокой криптостойкостью, т.к. гамма шифра изменяется для каждого шифруемого блока.