Скачиваний:
23
Добавлен:
10.04.2023
Размер:
12.06 Mб
Скачать
  1. Расшифрование пользователем ответа, полученного от сервера на посланный запрос

Получив ответ от сервера, пользователь выбирает только то значение, порядковый номер которого соответствует второй координате j его местоположения и выполняет расшифровку данных, состоящую из четырех шагов.

  1. Расшифровывается криптограмма координаты j (j = 4) полученная от сервера секретным ключом используя алгоритм дешифрования криптосистемы Пэйе.

Получили криптограмму криптосистемы Рабина c’j = 17727420593

  1. Расшифровывается криптограмма местоположения пользователя с учетом координаты j секретным ключом используя алгоритм дешифрования криптосистемы Рабина.

Получили криптограмму, которая содержит информацию только относительно местоположения пользователя c’’j = 128648482

  1. Расшифровывается криптограмма, содержащая информацию относительно местоположения пользователя секретным ключом используя алгоритм дешифрования криптосистемы Пэйе.

Получили криптограмму криптосистемы Рабина, содержащую информацию о POI c’’’j = 16140

  1. Расшифровывается криптограмма, содержащая информацию о ближайшей точке интереса секретным ключом используя алгоритм дешифрования криптосистемы Рабина.

Получили запрашиваемую информацию с базы данных сервера о ближайшей точке интереса типа t = 1 (банкомат) относительно центра ячейки (i, j), представленную в десятичном виде d = 140.

Найдем координаты ближайшей точки интереса для выбранного типа точки интереса:

14010 = 100011002

первые три бита: 100 – координата i ячейки (четвертый индекс i = 5);

вторые три бита: 011 – координата j ячейки (третий индекс j = 4);

последние два бита: 00 – тип выбранной точки интереса (банкомат).

Ближайший банкомат находится в ячейке (5, 4). Проверим это.

Действительно, ближайший к центру ячейки (4, 4) банкомат находится в ячейке (5, 4).

Попробуем расшифровать криптограмму полученную от сервера, порядковый номер которой не равен второй координате j. Например j = 3.

Как видим, выполнить расшифровку для криптограммы, порядковый номер которой не равен второй координате j невозможно.

Проделаем те же действия и для других типов точек интереса.

Для типа точки интереса 2 (велосипедная парковка):

Генерируем программой g1 = 129840553, g2 = 81811445149063012122

Проверка:

Числа g1 и g2 подходят.

Новые открытые ключи:

Pk1 = {129840553, 16637}

Pk2 = {81811445149063012122, 28288329197}

  1. Шифрование типа t POI на первом открытом ключе.

Получили cl = {69204444 ; 227025028 ; 56892615 ; 68150668}

  1. Шифрование координаты i своей ячейки на втором открытом ключе.

Получили c’l = {180908694342232230971 ; 469700087821576810246 ; 490529885340191249437 ; 459631183416297334753 ; 12949737633297655701}

  1. Шифрование координаты j своей ячейки на втором открытом ключе.

Получили c = 263766472905197764953.

Отправленный запрос:

Q = { 5 ; 4 ; 69204444 ; 227025028 ; 56892615 ; 68150668 ; 180908694342232230971 ; 469700087821576810246 ; 490529885340191249437 ; 459631183416297334753 ; 12949737633297655701 ; 263766472905197764953 ; 129840553 ; 16637 ; 81811445149063012122 ; 28288329197}

Полученные криптограммы, которые сервер отправляет пользователю в качестве ответа:

R = { 533309233433046079633 ; 573121369631017523614 ; 730521561268463835208 ; 172005611316697789745 ; 338659102072312752704}

Расшифрование пользователем ответа, полученного от сервера:

Получили d = 133 = 100001012 => 100 001 01

Ближайшая точка интереса 2 типа (велосипедная парковка) находится в ячейке (5, 2). Проверим.

Действительно, ближайшая велосипедная парковка находится в ячейке (5, 2).

Для типа точки интереса 3 (аптека):

Генерируем программой g1 = 45003464, g2 = 193700899398881784893

Проверка:

Числа g1 и g2 подходят.

Новые открытые ключи:

Pk1 = {45003464, 16637}

Pk2 = {193700899398881784893, 28288329197}

  1. Шифрование типа t POI на первом открытом ключе.

Получили cl = {214439400 ; 1081802 ; 113448115 ; 119552493}

  1. Шифрование координаты i своей ячейки на втором открытом ключе.

Получили c’l = {610053487215667175373 ; 50660640607482248191 ; 71037404192129596314 ; 87470258805890296636 ; 505531483784043175135}

  1. Шифрование координаты j своей ячейки на втором открытом ключе.

Получили c = 784026280532383984457.

Отправленный запрос:

Q = {5 ; 4 ; 214439400 ; 1081802 ; 113448115 ; 119552493 ; 610053487215667175373 ; 50660640607482248191 ; 71037404192129596314 ; 87470258805890296636 ; 505531483784043175135 ; 784026280532383984457 ; 45003464 ; 16637 ; 193700899398881784893 ; 28288329197}

Полученные криптограммы, которые сервер отправляет пользователю в качестве ответа:

R = {790086188565150688040 ; 163518387652242140030 ; 140049004037436279915 ; 31728872213764222234 ; 140824113642861007938}

Расшифрование пользователем ответа, полученного от сервера:

Получили d = 138 = 100010102 => 100 010 10

Ближайшая точка интереса 3 типа (аптека) находится в ячейке (5, 3). Проверим.

Действительно, ближайшая аптека находится в ячейке (5, 3).

Для типа точки интереса 4 (почта):

Генерируем программой g1 = 127169610, g2 = 531352120019695681675

Проверка:

Числа g1 и g2 подходят.

Новые открытые ключи:

Pk1 = {127169610, 16637}

Pk2 = {531352120019695681675, 28288329197}

  1. Шифрование типа t POI на первом открытом ключе.

Получили cl = {157900747 ; 115840650 ; 64993551 ; 66304822}

  1. Шифрование координаты i своей ячейки на втором открытом ключе.

Получили c’l = {193965973344280192389 ; 79178691170064561246 ; 621874765833150730524 ; 333136022732553814602 ; 352967251886423471978}

  1. Шифрование координаты j своей ячейки на втором открытом ключе.

Получили c = 710329464075199848121.

Отправленный запрос:

Q = {5 ; 4 ; 157900747 ; 115840650 ; 64993551 ; 66304822 ; 193965973344280192389 ; 79178691170064561246 ; 621874765833150730524 ; 333136022732553814602 ; 352967251886423471978 ; 710329464075199848121 ; 127169610 ; 16637 ; 531352120019695681675 ; 28288329197}

Полученные криптограммы, которые сервер отправляет пользователю в качестве ответа:

R = {192372095464980671617 ; 418070161988261326075 ; 155919088782927137529 ; 742320247433355316131 ; 453027577584171112890}

Расшифрование пользователем ответа, полученного от сервера:

Получили d = 147 = 100100112 => 100 100 11

Ближайшая точка интереса 4 типа (почта) находится в ячейке (5, 5).

Действительно, ближайшая почта находится в ячейке (5, 5).

Вывод

В ходе выполнения лабораторной работы были закреплены теоретические знания по разделу «Гомоморфное шифрование», а также осуществлено ознакомление с протоколом скрытого определения точек интереса мобильного пользователя на основе алгоритмов криптосистем Пэйе и Рабина.

Санкт-Петербург

2022

Соседние файлы в предмете Криптографические протоколы