Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / Лекция 5 и 6 - Гомоморфное шифрование.pptx
Скачиваний:
0
Добавлен:
04.06.2026
Размер:
2.33 Mб
Скачать

Формирование запроса серверу

Формирование ответа сервера

На основе , и сервер вычисляет , где для :

 

 

то есть:

 

 

 

d11

d21

d31

 

 

 

 

 

d12

d22

d32

 

 

 

 

 

d13

d23

d33

 

 

 

 

 

 

dij=3510=1000112

где – координаты

точек интереса пользователя относительноPOI(x,y)=(x=100,y=центра 011) в

ячейки .

 

ячейке (I,j).

 

 

Таким образом,

ответ состоит из

криптограмм, содержащих

информацию о всех POI для каждой возможной координаты пользователя.

Прием ответа R и его обработка

Из вектора пользователь выбирает только j , где – вторая координата ячейки, в которой находится пользователь. Все остальные

данные, полученные от сервера, пользователь может игнорировать,

).

 

 

 

 

 

 

(

так как

 

 

 

 

 

 

только

j содержит информацию о k ближайших POIs для ячейки ,

 

 

(

 

 

 

 

Пользователь

вычисляет:

 

 

=

 

 

 

j ,

 

).

 

где алгоритм дешифрования является алгоритмом дешифрования

 

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

Пример протокола

[ ]

 

 

 

 

 

1

Здесь i- абcциса,

 

 

 

 

 

 

 

 

 

 

j- ордината POI.

 

 

 

 

 

 

j

 

 

 

 

2

Не путать с обозначением

 

 

 

 

индексов элементов

 

 

 

 

 

 

 

 

 

 

 

3

матрицы!

 

 

 

 

 

 

 

 

 

 

 

 

1

i

2

3

 

 

 

 

 

 

 

 

Генерация ключей

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

:

Случайным образом выбираем два простых числа и

Исходя из базы

 

 

 

 

 

 

 

 

 

 

 

Пусть

 

= 7,

 

 

= 11.

 

 

 

 

 

 

 

 

 

 

Вычисляем модуль

 

 

:

 

 

=

 

= 77.

 

 

Выбираем

 

 

 

 

 

 

 

 

 

 

 

 

= 7 поэтому такие

 

 

 

 

 

 

 

данных местоположений

значения

 

и подходят.

 

 

 

 

 

 

 

 

 

 

 

из множества

 

 

 

 

 

 

 

Секретный ключ

 

={ ,

} = {7, 11}.

 

 

 

Пусть

 

=

5774.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

 

 

 

 

 

 

 

Открытый ключ

 

=

 

,

 

 

} = {5774, 77},

 

 

 

Формирование запроса (пример)

число

 

 

.

 

 

 

 

Для каждого

 

{1, 2, … , } выбираем случайное

Далее

 

 

 

 

 

= 3.

Так как наша область имеет 3 × 3 ячеек, то

Пуcть

1 = 12,

 

 

 

 

2 = 15, 3 = 17.

 

 

для каждого

 

вычисляем:

 

 

Генерация ответа сервером (пример)

 

 

 

3

1

2

[d

ij

]

1

3

4

 

 

 

 

 

 

 

 

7

6

 

 

 

 

5

6=01 10 I j

Обработка ответа (пример)

Полученный результат соответствует информации о точке интереса лежащей в подячейке (1,3) относительно ячейки (2,3).