Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
50
Добавлен:
19.02.2016
Размер:
601.09 Кб
Скачать

14.5 Протокол порівняння двох величин без їх розголошення власниками

Нехай секретні невід’ємні цілі числа, що належать учасникам і відповідно. Треба з’ясувати, яке число більше, але не розкривати значень .

Параметри:

- - асиметрична криптосистема з множиною ключів відкритих ключів , алгоритмом зашифрування і алгоритмом розшифрування ;

- - відкритий ключ абонента ;

- - натуральне число ;

- - велике секретне натуральне число ;

- - розмір числа (кількість розрядів при запису у двійковій системі счислення);

- просте число , що підбирається у ході протоколу;

- .

Таблиця 14.5 Протокол порівняння двох величин без їх розголошення

1

Відправник вибірає і надсилає , та, у неявній формі, інформацію щодо .

Отримувач підготовує дані виду . Просте число визначається після аналізу проміжних даних під час формування . Якщо аналіз показує, що не підходить, вибірається знову.

Послідовність має наступну властивість: якщо , то , інакше, (разом з тим, значення абоненту невідоме).

2.

4

Відправник надає результат:

, якщо , інакше, .

Отримувач, виходячи з та має підготувати послідовність , в який був би якимось чином відмічений елемент з індексом .

Щоб пояснити ідею, розглянемо спочатку елементарний приклад: послідовність, що у початку має п’ятірок, а решта елементів - сімки.

Можна визначити, чи елемент з номером є порівняний з 0 за модулем і, якщо так, зробити висновок, що , інакше, .

У нашому випадку потрібно ще приховати від учасників протоколу та сторонніх, тому алгоритм є більш складним.

Його суть полягає в тому, що реальна послідовність містить замість секретний випадковий елемент, залежний від , а інші елементи залежать від у складний спосіб через криптографічне перетворення.

Абонент будує єлементи послідовності , через відповідні елементи допоміжної послідовності . Під час побудови необхідно вибрати просте число та перевірити деяку умову.

Відповідність між елементами послідовностей встановлюється абонентом наступним чином:

Конкретно, спочатку обчислює , , а саме:

,

,

.

Очевидно, що , а всі різні, оскільки перетворення взаємно однозначне. Припустимо, передає послідовність . Тоді може обчислювати , та визначати . Якщо було змінено на , то значення не буде співпадати з істинним. Тому може визначити . Це означає, що треба перетворювати. і робить висновок, що , при , або що, якщо .

Для цього можна використати коректне - специфичне просте число, , таке, що виконується умова коректності виду .

Виберемо випадково. Позначимо . Зведення за модулем приховує значення .

Учасник покладає для і для .

Далі він перевіряє, чи коректне, якщо ні, вибираемо нове .

В результаті, послідовність , що передається від до має вид: .

Оскільки , то при і при , тобто знання та дозволяє знайти відповідь, а ці дані відомі абоненту .

Оскільки , , всі різні, то при ймовірність того, що серед є співпадіння не є високою.

Тому можна вважати, що всі різні, а це означає, що можливі співпадіння серед з’являються після додавання одиниць до єлементів з індексами більшими і мають вид .

Це означає, що , тобто абонент може отримати додаткову інформацію про , що заборонено умовами задачи. З цих міркуварь, для блокування подібних випадків достатньо умови коректності .

Соседние файлы в папке Конспекти_лекцій