Функция хеширования.
Найти хеш-образ своей Фамилии, используя хеш-функцию Hi = (Hi˗1 + Mi)2 mod n, где n = p · q (p, q взять из задания №2).
Фамилия: Журавлева
Ответ
хеш-образ сообщения “ЖУРАВЛЕВА” равен 560.
Решение
Найдём хеш–образ сообщения “ЖУРАВЛЕВА”, используя хеш–функцию Hi = (Hi˗1 + Mi)2 mod n, где n = p · q = 31 · 43 = 1333, H0 – произвольное начальное значение, Mi – i-тый блок сообщения M = M1, M2, …, Mk.
Случайным образом выбираем вектор инициализации H0 = 149.
Пусть символам русского алфавита соответствуют следующие числа:
А Б В Г Д Е Ё Ж З И Й К Л М Н О П
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
Таким образом, сообщение “ЖУРАВЛЕВА” можно представить последовательностью чисел (8, 21, 18, 1, 3, 13, 6, 3, 1).
Используем формулу Hi = (Hi˗1 + Mi)2 mod n.
Процесс получения хеш-образа представлен в таблице:
i Si Mi Формула Hi
0
149
1 Ж 8 H1 = (149 + 8)2 mod 1333 = 24649 mod 1333 655
2 У 21 H2 = (655 + 21)2 mod 1333 = 456976 mod 1333 1090
3 Р 18 H3 = (1090 + 18)2 mod 1333 = 1227664 mod 1333 1304
4 А 1 H4 = (1304 + 1)2 mod 1333 = 1703025 mod 1333 784
5 В 3 H5 = (784 + 3)2 mod 1333 = 619369 mod 1333 857
6 Л 13 H6 = (857 + 13)2 mod 1333 = 756900 mod 1333 1089
7 Е 6 H7 = (1089 + 6)2 mod 1333 = 1199025 mod 1333 658
8 В 3 H8 = (658 + 3)2 mod 1333 = 436921 mod 1333 1030
9 А 1 H9 = (1030 + 1)2 mod 1333 = 1062961 mod 1333 560
Ответ: хеш-образ сообщения “ЖУРАВЛЕВА” равен 560.