У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент



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

Цифрові надписі також можна використовувати для приналежності (сертифікації --- to certify) того, що документ належить певній особі. Це робиться так: відкритий ключ і інформація про те, кому він належить підписуємо з стороною якій довіряєм. При цьому довіряти ми можем на основі того, що її ключ був підписаний третьою стороною. Таким чином виникає ієрархія довіря. Очевидно, що певний ключ повинен бути коренем ієрархії. В централізованій інфраструктурі ключів мається на увазі невелика кількість ключів мережі (наприклад, певні агенства; їх також називають сертификацийними агенствами --- certification authorities). В роздільній інфраструктурі немає необхідності мати універсальні для всіх кореневі ключі, і кожна із сторін може довіряти своєму набору кореневих ключів .Ця концепція носить назву мережі довіря (web of trust) і реалізована, наприклад, в PGP.

Цифрова надпись документу створюється так: із документу генерується так названий дайджест (message digest) і до нього додається інформація про те, хто підписує документ, штамп часу і інше. Цей зашифрований набір бітів і представляє собою надпись. До надписі обычно ставиться ключ. Одержувач спочатку вирішує для себя доверяє він тому, відкритий ключ належить і чи належить тому кому повинен (з допомогою мережі довіря або апріорного знання), і потім дешифрує надпись з допомогою відкритого ключа. Коли надпись нормально дешифрувалась, і її приналежне підходить до документа (дайджест і др.), то повідомлення рахується підтверженим.

.

Криптографічні хэш-функції

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

Криптографічні хэш-функції налічують значень довжиною в 128 і більше біт. Це число значно більше, чим кількість повідомлень, котрі колись будуть існувати в світі.

Багато хороших криптографічних хэш-функцій доступні бесплатно. Широко відомі включають MD5 і SHA.

Криптографічні генератори випадкових чисел

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

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

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

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

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

Захищена шифром ступінь захисту

Гарні криптографічні системи створють таким чином, щоб зробити їх відкритими. Можна побудувати системи, котрі на практиці неможливо відкрити. При цьому не потрібно великих зусиль для реалізації. Єдине, що потрібно --- це базові знання.

Теоретично, будьякий шифрувальний алгоритм з використанням ключа може бути вскритим методом перебору всіх значень ключа. Коли ключ підбирається методом грубої сили (brute force), потужність комп’ютера росте Ключ довжиною в 32 біта треба 2^32 (біля10^9) кроків. Така задача під силу всім дилетантам і робиться на домашньому компютері..

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

Криптоаналіз і атаки на криптосистеми

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

· Атака зі знанням лише шифрованого тексту (ciphertext-only attack): це ситуація, коли атакующий не знає нічого про склад повідомлення, і йому працювати потрібно лише з самим шифрованим текстом. На практиці, часто можна зробити структуру тексту, оскільки багато повідомлення мають стандартні заголовки. навіть звичайні листи документи починаються з прогнозованої інформації. Також часто можна предположити, що певний блок інформації має задане слово.

· Атака зі знанням складника шифровки (known-plaintext attack): Атакующий знає або може вгадати весь або частину тексту Задача полягає в розшифровці наступного повідомлення. Це можна зробити шляхом вичислення ключа шифровки.

· Атака з заданим текстом (chosen-plaintext attack): Атакующий має можливість отримати шифрований документ для потрібного йому текста, але не знає ключа.

· Атака зпідставкою (Man-in-the-middle attack): Атака направлена на обмін шифрованими повідомленнями на протокол обміну ключами. Ідея заключаеться в тому, що коли дві сторони обменюються ключами


Сторінки: 1 2 3