Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
пкр_лекции / 34 ПК ПЗ№4 (3.3)2012.docx
Скачиваний:
68
Добавлен:
14.04.2015
Размер:
97.56 Кб
Скачать

Практичне заняття №4 (3.3)

з дисципліни «ПРИКЛАДНА КРИПТОЛОГІЯ»

Тема заняття

Джерела ключів асиметричних криптосистем та їх властивості

Навчальні питання ПЗ

4.1 Основні теоретичні положення відносно ключів асиметричних криптосистем

4.1.1 Загальні відомості про ключеві дані

В таблиці 9.1 наводиться опис ключів для асиметричних криптосистем. У таблиці 9.2 наведено результати порівняння ключів( по стійкості) для визнаних крипто перетворень, що знайшли застосування в національних, регіональних та міжнародних стандартах [12,173]. У стовпці 1 наведено число бітів ключа для блочного симетричного шифру. У стовпці 2 подано алгоритми симетричних криптографічних перетворень. У стовпці 3 поданий мінімальний розмір параметрів для крипто перетворень(стандартів0, що ґрунтуються на перетвореннях у кінцевих полях. Прикладами таких алгоритмів можуть бути FІPS 186-3 та ГОСТ 34.310-95 – для цифрових підписів, а також алгоритм Діффі - Геллмана (DH) і алгоритм узгодження ключів MQV, як визначено в [46, 119–120], де Lв – розмір відкритого ключа, а Lо – розмір особистого ключа. У стовпці 4 подано значення k (розмір модуля перетворення) для криптографічних перетворень, що ґрунтуються на складності вирішення задач факторизації, наприклад RSA алгоритм ANSX9.31 і PKCS#1. Посилання на ці специфікації подані у FІPS 186-3 для цифрових підписів. Значення k зазвичай використовують для того, щоб указати розмір ключа. У стовпці 5 наведено порядок базової точки для криптографічних перетворень у групі точок еліптичних кривих для встановлення ключів у [119–120]. Значенням f позначено розмір ключа (порядок базової точки n = 2).

В таблиці 9.9. наведені аналогічні дані відносно направленого шифрування в кільці зрізаних поліномів та для функцій гешування. Там же, тобто в в таблиці 9.3, наведені дані відносно [ ] строків їх застосування, що рекомендуються.

Таблиця 9.1 - Асиметричні криптографічні перетворення для реалізації направленого шифрування

Параметри НШ/

Математичний апарат

Особистий ключ НРШ

Відкритий ключ НЗШ (сертифікат)

Асиметрична пара (ключ)

Загальні параметри

крипто перетворення

Сертифікати

Складність крипто аналізу

НШ в кільці (RSA)

Di

Ei

(Di , Ei)

N = P Q

Еi

Субекспоненційна

НШ в полі Галуа F(P)

Хi

Yi=gXi(mod P)

(Xi, Yi)

P, q, g

Yi

Субекспоненційна

НШ в групі точок еліптичних кривих Е(F(q))

di

Qi=di G(modq)

(di, Qi)

a, b, G, n, f(x)(P), h

Qi

Експоненційна

НШ в гіпереліптичних кривих

Сi

D2= ci D1

(ci, D2)

f(x), g(x), q, D1, g, J

D2

Експоненційна

НШ зі спарюванням точок еліптичних кривих

diD =s QiD

QiD=H1 (ID)

(diD, QiD)

G1, G2, e, H1, P, H2, H3,

F2m, Pp

QiD

Експоненційна – субекспоненційна

НШ в кільці зрізаних поліномів (NTRU)

f = 1+pF (modq)

h= f 1*g*p(modq)

(f, h)

N, q, p, f, g ,df, dg, c

Експоненційна – субекспоненційна

Таблиця 9.2

Порівняння стійкості стандартизованих асиметричних крипто перетворень

Рівень стійкості, в бітах

Симетричні

Оцінка часу крипто аналізу, MIPS-years

Геш функції

Параметри асиметричних перетворень

DSA

RSA

EC-DSA

IBE

(BF, BB1)

NTRU

До 2010 р. (мін. 80 біт стійкості)

2TDEA

3TDEA

AES-128

AES-192

AES-256

109

SHA-1,

SHA-224,

SHA-256,

SHA-384,

SHA-512

Min.:

L = 1024;

N =160

Min.:

k=1024

Min.:

f=160

Min.:

p = 512

q = 160

N =263

q =2048

df = 113

До 2030 р.

(мін. 112 біт стійкості)

3TDEA

AES-128

AES-192

AES-256

1017

SHA-224,

SHA-256,

SHA-384,

SHA-512

Min.:

L = 2048

N = 224

Min.:

k=2048

Min.:

f=224

Min.:

p = 1024

q = 224

N =401

q =2048

df = 113

Після 2030

(мін. 128 біт стійкості)

AES-128

AES-192

AES-256

1023

SHA-256,

SHA-384,

SHA-512

Min.:

L = 3072

N = 256

Min.:

k=3072

Min.:

f=256

Min.:

p = 1536

q = 256

N =449

q =2048

df = 134

Рівень стійкості 192 біта

AES-192

AES-256

1041

SHA-384,

SHA-512

Min.:

L = 7680

N = 384

Min.:

k=7680

Min.:

f=384

Min.:

p = 3840

q = 384

N =677

q =2048

df = 153

Рівень стійкості 256 біта

AES-256

1063

SHA-512

Min.:

L = 15360

N = 512

Min.:

k=15360

Min.:

f=512

Min.:

p = 7680

q = 512

N =1087

q =2048

df = 120

Таблиця 9.3

Алгоритми і параметрb NTRU , що рекомендуються

Обмеження дії

Рівень безпеки

Блоковий шифр

Функція гешування

Множина параметрів NTRU Х9.98 [ ]

2030

112-біт

Triple-DES (тільки 3 ключі), AES-128, AES-192, AES-256

SHA-224, SHA-256, SHA-384, SHA-512

ees401ep1, ees541ep1, ees659ep1

2031 і пізніше

128-біт

AES-128, AES-192, AES-256

SHA-256, SHA-384, SHA-512

ees449ep1, ees613ep1, ees761ep1

192-біт

AES-192, AES-256

SHA-384, SHA-512

ees677ep1, ees887ep1, ees1087ep1

256-біт

AES-256

SHA-512

ees1087ep2, ees1171ep1, ees1499ep1

4.1.2 Генерування ключів в системі rsa

Генерування асиметричної ключової пари. Система RSA відноситься до криптосистем з відкритими ключами. В цій системі ключі ЕkDk, причому один з них має бути особистим, а другий – відкритим. Наприклад, Еk – особистий, а Dk – відкритий, якщо вони використовуються для ЕЦП і навпаки, якщо використовуються для направленого шифрування.

Усі параметри (N,P,Q) також поділяються на 2 класи: N – відкритий, P,Q – конфіденційні (секретні).

Сутність забезпечення моделі взаємної недовіри – кожен користувач генерує ключі сам собі. Особистий ключ залишає в себе і забезпечує його строгу конфіденційність. Відкритий ключ розсилає всім користувачам, з якими він зв'язаний. Користувач також забезпечує цілісність і дійсність відкритих ключів.

Еk, Dk – мають вибиратися з повної множини випадково, порівняно ймовір- но і незалежно, мають забезпечувати однозначну оборотність прямого та зворотного перетворення. Відповідним чином засвідчений відкритий ключ є сертифікатом (див. п. 1.1.1).

Значення Еk, Dk для практичних використань мають задовольняти умову

,

де

.

Порівняння (1.54) можна звести до Діафантового рівняння:

ax+by=1. (9.9 1.56)

Це діафантове рівняння – нормоване, тому що справа коефіцієнт дорівнює 1; a, b – цілочисельні коефіцієнти, х, у – невідомі. Порівняння (9.7 1.54) можна подати у вигляді:

, (9.10 1.57)

k – деяке невідоме число.

Діафантове рівняння (9.9 1.56) має цілочисельне розв’язання, якщо a і b цілочисленні, і , a і b взаємно прості. Подавши (9.10 1.57) у вигляді

, (9.11 1.58)

отримаємо а=(N), x=(k), b=Ek, y=Dk .

Якщо Ek сформувати випадково, то а та b – відомі числа, а х та y – невідомі, що підлягають визначенню.

Найбільш швидке розв’язання (9.11 1.58) дає застосування ланцюгових дробів, які дозволяють визначити х та у як

, (9.12 1.59)

де – порядок ланцюгового дробу, a і b – параметри ланцюгового дробу.

Знаходимо параметри:

a/b подається у вигляді ланцюгового дробу

, (9.13 1.60)

μ - порядок ланцюгового дробу, перший коефіцієнт, у якого залишок дорівнює 0.

Значення (а0,b0) та (а1,b1) визначаються як

,

.

Значення (а2,b2), (а3,b3) і т.д. визначаються рекурентно відповідно до правил

. (9.14 1.61)

Середнє число ітерацій в (1.60), тобто , можна визначити як [16]

.

4.1.3 Генерування ключів в системі DSA

Нехай є просте поле Галуа F(p). Третя довірена сторона генерує загальні параметри , де - просте, як правило «сильне» просте число, а - первісний елемент. Далі всі користувачі генерують випадково по принципу « сам – собі» - особисті ключі і зберігають їх як таємні, де

i. (3.18)

Потім кожен формує відкриті ключі, викори­стовуючи загальносистемні параметри , тобто кожен із користувачів обчислює свій відкритий ключ

(3.19 2)

Кожний первісний елемент породжує поле ізоморфізмів поля Галуа

.

Приклад генерування ключів для двох користувачів наведений в таблиці 3.6

Таблиця 3.6

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