Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Выполнение цикла шифрования заменой алгоритма DES.






 

9. АСИМЕТРИЧНІ КРІПТОСИСТЕМИ.

Загальні засади функціонування кріптосистем з відкритим ключем.

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

У асиметричних криптосистемах відритий ключ і криптограма можуть бути відправлені по незахищених каналах. Концепція таких систем заснована на застосуванні однонапрямлених функцій.

Як приклад однонапрямленої функції може служити цілочисельне множення. Пряме завдання – обчислення добутку двох великих цілих чисел p і q, n=p*q. Це відносно нескладне завдання для ЕОМ.

Зворотне завдання – факторизація або розкладання на множники великого цілого числа практично нерозв'язна при досить великих значеннях n.

Наприклад, якщо p=q, а їх добуток n=2664, то для розкладання цього числа на множники знадобиться 223 операцій, що практично неможливо виконати за прийнятний час на сучасних ЕОМ.

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

Кріптосистема шифрування даних RSA.

1. Вибираємо два прості числа p і q

2. Визначаємо їх добуток (модуль) n=p*q=33;

3. Обчислюємо значення функції Ейлера ᵩ (n)=(p-1)(q-1)

4. Вибираємо випадковим чином відкритий е ключ з урахуванням виконання умов 1< e< ᵩ (n), e і ᵩ (n) мають мати НСД 1;

5. Обчислюємо значення секретного ключа d, що задовольняє умові e*d≡ 1(mod ᵩ (n));

6. Відправляємо одержувачеві пару чисел (n, e);

Представляємо шифроване повідомлення M як послідовність цілих чисел.

7. Розбиваємо початкове повідомлення на блоки M1=3, M2=1, M3=2;

8. Шифруємо текст повідомлення, представлений у вигляді послідовності блоків

Ci=Mie(mod n)

9. Відправляємо криптограму C1, C2,...

10. Одержувач розшифровує криптограму за допомогою секретного ключа d за формулою:

Mi=Cid(mod n)

 

Кріптосистема Ель Гамаля.

1. Вибір двох взаємно простих великих чисел р і q, q < р.

2. Вибір значення секретного ключа x, x < p.

3. Визначення значення відкритого ключа у з виразу: y=qx(mod p).

 

4. Вибір випадкового числа k, що задовольняє умові: 0≤ k< p-1 і НСД (k, p-1)=1.

5. Визначення значення а із виразу: a=qk(mod p)

6. Визначення значення b з виразу: b=ykM(mod p)

7. Криптограма C, що складається з а і b, відправляється одержувачеві.

8. Одержувач розшифровує криптограму за допомогою виразу: Max=b(mod p).

 

10. ІДЕНТИФІКАЦІЯ ТА АУТЕНТИФІКАЦІЯ.

Основні поняття ідентифікації та аутентифікації.

З кожним об’єктом, який приймає участь у функціонуванні комп’ютерної системи (КС), обов’язково пов’язуються певні дані, які його якимось чином позначають та однозначно характеризують (ідентифікують). Ці дані, які можуть мати вигляд числа, рядка тексту або алгоритму, називаються ідентифікаційним даними об’єкту. Коли деякий об’єкт робить спробу увійти в КС, щоб прийняти участь у її функціонуванні, система захисту КС виконує три захисні операції:

1) ідентифікація об’єкта,

2) аутентифікація об’єкта,

3) авторизація об’єкта.

Ідентифікація об’єкта. Ця операція виконується системою захисту КС в першу чергу. Перш ніж отримати доступ до КС, об’єкт повинен назвати (ідентифікувати) себе. Для цього у загальному випадку КС запитує у об’єкта його ім’я та його ідентифікаційний номер (ідентифікатор). Ім’я об’єкта використовується в КС з метою ведення діалогу з об’єктом (імена різних об’єктів можуть співпадати). Ідентифікатор об’єкта є унікальним і використовується як позначення цього об’єкта.

Аутентифікація об’єкта. Ця операція виконується системою захисту КС з метою встановлення, чи є даний об’єкт дійсно тим, за кого він себе видає. Перевірити істинність об’єкта найпростішим способом КС може шляхом запиту в нього паролю.

 

Взаємна перевірка істинності сторін інформаційного обміну. Взаємна перевірка істинності (аутентифікація) сторін інформаційного обмінуздійснюється, як правило, на початку сеансу зв’язку. Мета цієї процедури – забезпечитидостатній рівень впевненості абонентів по таких чотирьох складових:

· отримувач має бути впевненим в істинності відправника даних;

· отримувач має бути впевненим в істинності переданих йому даних;

· відправник має бути впевненим, що дані отримувачеві доставлені;

· відправник має бути впевненим в істинності доставлених даних.

Для взаємної перевірки істинності найбільш надійною вважається, так звана, процедура “рукостискання”. Основний зміст цієї процедури полягає в тому, що абоненти, у розпорядженні яких має знаходитись один і той же секретний ключ, виконують взаємну перевірку правильності цього ключа.

 

 

Протоколи аутентифікації з нульовою передачею знань.

Такі протоколи називають також протоколами доведення без розголошення, коли одинабонент (абонент A) доводить другому (абоненту B), що він знає певні секретні дані, нерозголошуючи самі дані.Основна ідея таких протоколів полягає в тому, що наявність секретних даних у абонентаA перевіряється абонентом B без отримання самих цих даних або їх частини. Найчастіше втаких протоколах абонент B ставить перед абонентом A ряд запитань, відповіді на які маютьбути бінарного характеру (так – ні). Із збільшенням кількості правильних відповідей t уабонента B зростає впевненість в істинності абонента A за формулою ймовірності p = 1 - 0.5t.

Квадратичні залишки. Розглянемо деяке натуральне число m > 2. Натуральне число a < m називаєтьсяквадратичним залишком за модулем m, якщо воно взаємно просте з модулем, тобто

НСД (a, m) = 1, і крім того, існує таке ціле число x, що x2 º a (mod m). Тут число x є квадратним

коренем з a за модулем m. Якщо ж такого цілого числа x не існує, то a називають квадратичним

незалишком за модулем m. Основні властивості квадратичних залишків:

1). Для даного модуля m всі квадратичні залишки можна знайти шляхом обчислення a = x2 mod m для всіх x в межах від 1 до m div 2.

2). Якщо число a – квадратичний залишок за простим модулем m, то воно має рівно два квадратних кореня, а саме: x і (- x) mod m.

3). Якщо модуль m – просте число, то існує точно (m - 1) div 2 квадратичних залишків по модулю m і (m - 1) div 2 квадратичних незалишків по модулю m.

4). Обчислення квадрата деякого x за модулем m є односторонньою функцією. Обернені задачі – задача розпізнування, чи справді a є квадратичним залишком за модулем m, а також рівноцінна задача добування квадратного кореня із a за модулем m вважаються практично нерозв’язуваними.

Спрощений протокол аутентифікації з нульовою передачею знань. Попередню підготовку до видачі інтелектуальних карток, які будуть використовуватись упевній прикладній галузі, здійснює Центр видачі інтелектуальних карток. В першу чергу Центрвибирає значення модуля N, який являє собою добуток двох секретних великих простих чисел.Сам модуль N є відкритим і стосується всіх карток, які будуть використовуватись у ційприкладній галузі.Інтелектуальна картка готується за заявкою користувача, який бажає таку карткуотримати. Для цього користувач надає Центру певні ідентифікаційні дані: ім’я та адресувласника картки, термін дії картки, номер банківського рахунку тощо.З урахуванням ідентифікаційних даних Центр вибирає деяке число S, яке, крім того, маєзадовольняти умовам 1 < S < N і НСД (S, N) = 1. Значення числа S є секретним ключем картки.Далі Центр обчислює число V за формулою V = S 2 mod N. Отже, число V єквадратичним залишком за модулем N, а число S є квадратним корнем із числа V за модулем N. Знайдене число V є відкритим ключем картки.

Протокол аутентифікації Гіллоу-Куіскуотера. На відміну відпопереднього, цей протокол не містить циклів, але має дещо більший обсяг обчислень.Попередню підготовку до видачі інтелектуальних карток, які будуть використовуватись упевній прикладній галузі, здійснює Центр видачі інтелектуальних карток. В першу чергу Центрвибирає значення модуля N, який має бути великим простим числом. Крім того, Центр вибираєдеякий показник степеня V, який має задовольняти умові 1 < V < N - 1. І модуль N, і показникстепеня V є відкритими і стосуються всіх карток, які будуть використовуватись у цій прикладнійгалузі.Інтелектуальна картка готується за заявкою користувача, який бажає таку карткуотримати. Для цього користувач надає Центру певні ідентифікаційні дані: ім’я та адресувласника картки, термін дії картки, номер банківського рахунку тощо.Отримані Центром ідентифікаційні дані стискуються, і таким шляхом утворюється

значення G, яке використовується надалі як секретний ключ картки. Число G має задовольняти

умові 1 < G < N. Ідентифікатором користувача є число I, яке вибирається Центром так, щоб виконувалось співвідношення I × GV º 1 (mod N). Як завжди, у протоколі аутентифікації безпосередньо беруть участь дві сторони:

· сторона A, яка являє собою картку, видану користувачеві Центром видачі

інтелектуальних карток, і яка має доводити стороні B свою істинність;

· сторона B (банкомат), яка перевіряє докази, надані стороною A, і приймає остаточне

рішення стосовно її обслуговування. В процесі аутентифікації сторона A відправляє стороні B свій ідентифікатор I. Далі сторона A має довести стороні B, що цей ідентифікатор належить саме їй. З цією метою сторона A переконує сторону B, що їй відомий секретний ключ G, але при цьому саме значення G стороні B не передається.

 

11. ЕЛЕКТРОННИЙ ЦИФРОВИЙ ПІДПИС.

Забезпечення аутентифікації даних.

Метою аутентифікації електронних документів є їх захист від можливих видів зловмисних дій, до яких належать:

· активне перехоплення – зловмисник, під’єднавшись до каналу зв’язку, перехоплює файли документів і змінює їх;

· маскарад – абонент C надсилає документ абоненту B від імені абонента A;

· ренегатство – абонент A стверджує, що не надсилав документ абоненту B, хоч насправді надсилав;

· підміна – абонент B змінює отриманий або формує новий документ, після чого стверджує, що отримав його від абонента A;

· повтор – абонент C повторює від свого імені раніше переданий документ, який абонент A надсилав абоненту B.

Один із найпростіших способів аутентифікації (підписування) електронних документів – використання шифрування. При цьому відправник А шифрує документ своїм секретним ключем і відправляє отримувачу Б. Отримувач Б дешифрує документ за допомогою відкритого ключа відправника А. Якщо це йому вдається, то документ вважається істинним. Якщо отримувач Б не зможе дешифрувати документ, то документ істинним не вважається. Такий спосіб має надзвичайно серйозний недолік, пов’язаний з тим, що він є неефективним для підписування документів значного обсягу. Саме тому для аутентифікації електронних документів, що передаються телекомунікаційними каналами зв’язку, використовується спеціально створюваний електронний цифровий підпис (ЕЦП).

Односторонні хеш-функції.

Хеш-функція h, яка використовується у протоколі ЕЦП, призначена для того, щоб стиснути підписуваний документ M довільної довжини до двійкового хеш-значення H = h(M) фіксованої довжини (декілька десятків біт). Завдяки цьому підписується не сам довгий документ, а його коротке хеш-значення, а довжина підпису стає фіксованою.

Основні властивості хеш-функції:

1) хеш-значення H залежить від усього документу M надзвичайно складним способом, завдяки чому за значенням H неможливо відновити документ M;

2) хеш-значення H є чутливим до будь-яких, навіть незначних, змін у документі M (вставки, вилучення, перестановки тощо);

3) х тим же самим хеш-значенням H є задачею практично нерозв’язуваною;

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

Переважна більшість використовуваних хеш-функцій мають вигляд Hi = h(Mi, Hi-1) і працюють за наступним принципом: вони утворюють одне хеш-значення довжиною n біт із двох вхідних значень, кожне з яких теж має довжину n біт. Для застосування такої хеш-функції документ M має бути попередньо представлений у двійковій формі і розбитий на окремі блоки Mi довжиною n біт кожний.

Алгоритм електронного цифрового підпису Ель Гамаля (EGSA).

1. Вибір двох взаємно простих великих чисел р і q, q< р.

2. Вибір значення секретного ключа x, x < р.

3. Визначення значення відкритого ключа у з виразу:

 

 

12. УПРАВЛІННЯ КРІПТОГРАФІЧНИМИ КЛЮЧАМИ.

Загальні задачі управління ключами.

Для великих автоматизованих систем обміну інформацією (АСОІ) на базі комп’ютерної мережі, які обслуговують значну кількість відправників та отримувачів повідомлень, надзвичайно актуальною стає проблема управління ключами. Це стосується тих випадків, коли відповідальність за секретність інформаційного обміну бере на себе сама АСОІ. Управління ключами – інформаційний процес, основні функції якого наступні:

· зберігання ключів,

· генерація ключів,

· розподіл ключів.

Основна вимога, яка стосується зберігання секретних ключів, полягає в тому, що вони ніколи не повинні записуватись на носій у явному вигляді. Будь-яка інформація про них повинна зберігатись у зашифрованому вигляді. З цього випливає концепція ієрахії ключів, яка

зафіксована у стандарті ISO 8532. Згідно указаної концепції ієрахія ключів передбачає використання наступних ключів:

· майстер-ключі,

· ключі шифрування ключів,

· сеансові ключі.

Розподіл ключів між користувачами АСОІ може здійснюватись двома способами:

· з використанням деякого центру розподілу ключів (ЦРК);

· шляхом прямого обміну сеансовими ключами між двома користувачами АСОІ.

Розподіл ключів при участі центру розподілу ключів. Розглянемо протокол розподілу ключів при участі центру розподілу ключів для симетричних кріптосистем. Вхідні дані до такого протоколу наступні.

1). Відправник повідомлення позначається як сторона A, отримувач повідомлення – як сторона B. Обидва учасники сеансу зв’язку мають унікальні ідентифікатори IDA і IDB.

2). Кожний із учасників сеансу зв’язку A і B має у своєму розпорядженні власний майстер-ключ KA і KB відповідно, відомий тільки йому і ЦРК. Ці майстер-ключі генеруються в ЦРК і розподіляються між користувачами шляхом особистих контактів.

3). Для проведення сеансу зв’язку між учасниками A і B ЦРК має згенерувати сеансів ключ KS.

4). З метою попередження фальсифікованих повторних викликів під час розподілу ключів в протоколі застосовують відмітки часу T.

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

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

· шляхом використання протоколу відкритого обміну секретним ключем Діффі- Хеллмана.

Діффі та Хеллманом запропонували свій протокол для відкритого обміну спільним секретним ключем між деякими абонентами A і B у 1976 році. Кріптографічна стійкість цього протоколу забезпечується практичною нерозв’язуваністю задачі дискретного логарифмування.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.