Схема шифрування Голдрайха — Голдвассера — Галеві

Матеріал з testwiki
Версія від 09:32, 12 червня 2023, створена imported>Lxlalexlxl (Безпека схеми)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку

Схе́ма шифрува́ння Го́лдрайха — Голдва́ссера — Галеві́, або скорочено ГГГ (Шаблон:Lang-en) — асиметрична криптосистема на основі ґраток. Існує також схема підпису Голдрайха — Гольдвассера — Галеві.

Криптосистема Голдрайха — Гольдвассера — Галеві використовує той факт, що найближча векторна проблема може бути важкою проблемою. Ця система була опублікована в 1997 році Одедом Голдрайхом, Шафі Голдвассер та Шаєм Галеві, і використовує односторонню функцію з секретом, яка спирається на складність зменшення ґратки. Ідея, закладена в цю функцію, полягає в тому, що, враховуючи будь-яку основу для ґратки, легко сформувати вектор, який знаходиться близько до точки ґратки, наприклад, взяти точку ґратки і додати невеликий вектор помилки. Але для повернення від цього помилкового вектору до вихідної точки ґратки потрібна спеціальна основа.

Схема шифрування ГГГ була криптоаналізована в 1999 році Фонгом Нгуєном.

Операція

ГГГ передбачає приватний та відкритий ключі.

Приватний ключ є основою B ґратки L з хорошими властивостями (наприклад, короткими майже ортогональними векторами) та одномодульною матрицею U.

Відкритий ключ — це ще одна основа ґратки L форми B=UB.

Для деяких обраних M простір повідомлень складається з вектору (m1,...,mn) в діапазоні M<mi<M.

Шифрування

Дано повідомлення m=(m1,...,mn), помилка e та відкритий ключ B обчислити:

v=mibi,

У матричних позначеннях це:

v=mB.

Запам'ятайте m складається з цілих значень, і b — точка ґратки, отже, v — це також точка ґратки. Тоді зашифрований текст:

c=v+e=mB+e.

Розшифровка

Для розшифровки кіфертекту обчислюється:

cB1=(mB+e)B1=mUBB1+eB1=mU+eB1,

Для вилучення терміну буде використана техніка Бабаї округлення eB1 поки він досить малий. Зрештою обчислити:

m=mUU1,

щоб отримати текст повідомлення.

Приклад

Дозволяти L2 бути ґраткою з основою B і його обернено B1:

B=(7003) і B1=(170013)

з

U=(2335) і
U1=(5332),

це дає:

B=UB=(1492115).

Нехай буде повідомлення m=(3,7) і вектор помилки e=(1,1). Тоді зашифрований текст:

c=mB+e=(104,79).

Для розшифровки потрібно обчислити:

cB1=(1047,793).

Це округляється до (15,26) і повідомлення відновлюється за допомогою:

m=(15,26)U1=(3,7).

Безпека схеми

У 1999 році Нгуєн на криптоконференції показав, що схема шифрування ГГГ має недолік у розробці схем. Нгуєн показав, що кожен зашифрований текст розкриває інформацію про відкритий текст і що проблема розшифровки може бути перетворена на спеціальну найближчу векторну задачу (НВЗ), набагато простішу для вирішення, ніж загальну НВЗ.

Див. також

Посилання

Бібліографія