- 5 — 9 классы
- Информатика
- 5 баллов
закодировать своё имя и фамилию взяв в качестве кляча своё отчество (Челнокова Екатерина Романовна) вот моё имя,фамилия,отчество.
- Попроси больше объяснений
- Следить
- Отметить нарушение
Staples2001 27.11.2012
Ответ
Проверено экспертом
В русском алфавите всего 33 буквы,следовательно подставим буквы под цифровые значения,получается,что:
1-А
2-Б
.
33-Я
Челнокова-256131516121631
Екатерина-61212061810151
Романовна-181614115163151
Задачи по информационной безопасности
Задания на контрольную работу 2
Примеры выполнения заданий 3
Приложение А. Алгоритм шифрования ГОСТ 28147-89 10
Приложение Б. Символы кириллицы
(альтернативная кодовая таблица ASCII) 13
Приложение В. Блок подстановки в алгоритме шифрования
ГОСТ 28147-89 14
Приложение Г. Алгоритм шифрования RSA 15
Приложение Д. Таблица простых чисел 17
Приложение Е. Функция хеширования 18
Приложение Ж. Электронная цифровая подпись 19
Вопросы к зачету 21
Задача №1. Шифр Цезаря.
Используя шифр Цезаря, зашифруйте свои данные: Фамилию Имя Отчество.
Задача №2. Алгоритм шифрования ГОСТ 28147-89.
Выполните первый цикл алгоритма шифрования ГОСТ 28147 89 в режиме простой замены. Для получения 64 бит исходного текста используйте 8 первых букв из своих данных: Фамилии Имени Отчества. Для получения ключа (256 бит) используют текст, состоящий из 32 букв. Первый подключ содержит первые 4 буквы.
Задача №3. Алгоритм шифрования RSA.
Сгенерируйте открытый и закрытый ключи в алгоритме шифрования RSA, выбрав простые числа p и q из первой сотни. Зашифруйте сообщение, состоящее из ваших инициалов: ФИО.
Задача №4. Функция хеширования.
Найти хеш–образ своей Фамилии, используя хеш–функцию , где n = pq.
Задача №5. Электронная цифровая подпись.
Используя хеш-образ своей Фамилии, вычислите электронную цифровую подпись по схеме RSA.
Примеры выполнения заданий
Задача №1. Шифр Цезаря. Используя шифр Цезаря, зашифруйте свои данные: Фамилию Имя Отчество.
«КОЗИНА ГАЛИНА ЛЕОНИДОВНА»
Используем алфавит, содержащий 33 буквы и пробел, стоящий после буквы Я:
Ключом в шифре Цезаря является число 3. Каждая буква в исходном тексте сдвигается по алфавиту на 3 позиции. Таким образом, получаем:
Исходный текст | КОЗИНА | ГАЛИНА | ЛЕОНИДОВНА | ||
Зашифрованный текст | НСКЛРГ | В | ЁГОЛРГ | В | ОЗСРЛЖСЕРГ |
Задача №2. Алгоритм шифрования ГОСТ 28147-89.Выполните первый цикл алгоритма шифрования ГОСТ 28147-89 в режиме простой замены. Для получения 64 бит исходного текста используйте 8 первых букв из своих данных: Фамилии Имени Отчества. Для получения ключа (256 бит) используют текст, состоящий из 32 букв. Первый подключ содержит первые 4 буквы.
Исходные данные для зашифрования: КОЗИНА Г
Для ключа возьмем последовательность состоящую из 32 букв:
АЛИНа пошла в лес собирать грибы
Для первого подключа Х используем первые 4 буквы ключа: АЛИН.
Переводим исходный текст и первый подключ в двоичную последовательность (см. Приложение Б):
К |
О |
З |
И |
Н |
А |
пробел |
Г |
первый подключ X0
А |
Л |
И |
Н |
Таким образом, первые 64 бита определяют входную последовательность
L0: 11001010 11001110 11000111 11001000
R0: 11001101 11000000 00100000 11000011
следующие 32 бита определяют первый подключ
Х0: 11000000 11001011 11001000 11001101
I. Найдем значение функции преобразования f(R0,X0) (см. Приложение А)
1). Вычисление суммы R0 и X0 по mod 2 32
R0: 1100 1101 1100 0000 0010 0000 1100 0011
Х0: 1100 0000 1100 1011 1100 1000 1100 1101
1000 1110 1000 1011 1110 1001 1001 0000
2). Преобразование в блоке подстановки
Результат суммирования R0+X0 по mod 2 32
1000 1110 1000 1011 1110 1001 1001 0000
преобразуем в блоке подстановки (см. Приложение В). Для каждого 4-битного блока вычислим его адрес в таблице подстановки. Номер блока соответствует номеру столбца, десятичное значение блока соответствует номеру строки в таблице. Таким образом, 5-тый блок (1011) заменяется заполнением 11-ой строки и пятого столбца в таблице подстановки (1110).
8 7 6 5 4 3 2 1
1000 1110 1000 1011 1110 1001 1001 0000
соответствующие номера строк в таблице подстановки
8 14 8 11 14 9 9 0
9 2 3 14 5 15 3 4
1001 0010 0011 1110 0101 1111 0011 0100
3). Циклический сдвиг результата п.2 на 11 бит влево
1111 0010 1111 1001 1010 0100 1001 0001
Таким образом, нашли значение функции f (R0,X0):
1111 0010 1111 1001 1010 0100 1001 0001
II. Вычисляем R1= f(R0,X0) ÅL0.
Результат преобразования функции f(R0,X0) складываем с L0 по mod2:
L0: 1100 1010 1100 1110 1100 0111 1100 1000
f(R0,X0): 1111 0010 1111 1001 1010 0100 1001 0001
R1: 0011 1000 0011 0111 0110 0011 0101 1001
Задача №3. Алгоритм шифрования RSA.Сгенерируйте откры-тый и закрытый ключи в алгоритме шифрования RSA, выбрав простые числа p и q из первой сотни. Зашифруйте сообщение, состоящее из ваших инициалов: ФИО.
I.Генерация ключей (см. Приложение Г).
Выберем два простых числа р = 13 и q = 19 (см. Приложение Д).
и функция Эйлера
Закрытый ключ d выбираем из условий d 2 mod n = ( 8 + 12) 2 mod 247 = 400 mod 247=153
H2=(H1+M2) 2 mod n = (153 + 16) 2 mod 247 = 28561 mod 247= 156
H3=(H2+M3) 2 mod n = (156 + 9) 2 mod 247 = 27225 mod 247= 55
H4=(H3+M4) 2 mod n = ( 55 + 10) 2 mod 247 = 4225 mod 247= 26
H5=(H4+M5) 2 mod n = ( 26 + 15) 2 mod 247 = 1681 mod 247= 199
H6=(H5+M6) 2 mod n = (199 + 1) 2 mod 247 = 40000 mod 247= 233
В итоге получаем хеш-образ сообщения «КОЗИНА», равный 233.
Задача №5. Электронная цифровая подпись.Используя хеш-образ своей Фамилии, вычислите электронную цифровую подпись по схеме RSA.
Пусть хеш-образ Фамилии равен 233, а закрытый ключ алгоритма RSA равен (25, 247). Тогда электронная цифровая подпись сообщения, состоящего из Фамилии, вычисляется по правилу (см. Приложение Ж)
s = 233 25 mod 247 = 168.
Для проверки ЭЦП, используя открытый ключ (121, 247), найдем
H = 168 121 mod 247 = 233.
Поскольку хеш-образ сообщения совпадает с найденным значением H, то подпись признается подлинной.
Калькулятор шифрует входной текст на русском языке шифром Виженера. Неалфавитные символы (пробелы, знаки препинания, цифры) — не преобразуются.
Так как Шифр Цезаря у нас уже есть, было бы логично дополнить его калькулятором, который шифрует/расшифровывает текст используя шифр Виженера.
Суть алгоритма шифрования проста. Шифр Виженера — это последовательность шифров Цезаря с различными значениями сдвига (ROTX — см. Шифр Цезаря). То есть к первой букве текста применяется преобразование, например, ROT5, ко второй, например, ROT17, и так далее. Последовательность применяемых преобразований определяется ключевой фразой, в которой каждая буква слова обозначает требуемый сдвиг, например, фраза ГДЕ ОН задает такую последовательность шифров Цезаря: ROT3-ROT4-ROT5-ROT15-ROT14, которая повторяется, пока не будет зашифрован весь текст сообщения.
Как повествует Википедия, шифр Виженера является шифром подстановки, то есть шифром, в котором каждая буква исходного текста заменяется буквой шифр-текста. Для вскрытия подобных шифров используется частотный криптоанализ.
Еще там можно прочитать про вариант шифра с бегущим ключом (running key), который был когда-то был невзламываемым. Этот вариант заключается в использовании в качестве ключа блока текста, равного по длине исходному тексту. Впрочем, и этот вариант, как оказалось, успешно поддается взлому. Проблема с бегущим ключом шифра Виженера состоит в том, что криптоаналитик имеет статистическую информацию о ключе (учитывая, что блок текста написан на известном языке) и эта информация будет отражаться в шифрованном тексте. Если ключ действительно случайный, его длина равна длине сообщения и он использовался единожды, то шифр Виженера теоретически будет невзламываемым, но такие системы уже относятся к классу систем одноразового кода, или одноразового шифр-блокнота (one-time pad). Они действительно не поддаются взлому, однако их практическое применение довольно затруднительно.
«>