Від автора p>
Ця книга - короткий вступ до криптографію. З одного боку, тутвикладений матеріал, який відповідає на багато питань, які виникають утих хто робить на ниві цій науці перший крок, з іншого боку тут єтой мінімум інформації, який достатній для того, щоб самостійнооцінювати будь-які реальні криптосистеми або навіть створювати свої власні. p>
Мова книги робився по можливості доступним, але не звільняє Читачавід необхідності володіння елементарними основами математики, зокремаалгебри та теорії груп і полів. p>
Багато питань на жаль залишилися за обкладинками цієї книги. УЗокрема після довгих сумнівів Автор вирішив відмовитися від розгляду DES,з огляду на його крайній непрактичності і нетовариська на російському грунті [1]. p>
Масу корисної інформації можна знайти на сервері ftp.rsa.com. Уfaq5.doc Ви якщо і не знайдете відповідь на будь-яке питання з криптографії, тоспостерігається велика кількість посилань на інші джерела. p>
Автор буде вдячний за будь-які зауваження та питання, які простішевсього направити за адресою: [email protected] p>
Баричев Сергій p>
Введення p>
Проблема захисту інформації шляхом її перетворення, що виключає їїпрочитання сторонньою особою хвилювала людський розум з давніх часів.
Історія криптографії - ровесниця історії людської мови. Більш того,спочатку писемність сама по собі була криптографічного системою,тому що в древніх суспільствах нею володіли лише обрані. Священні книги
Стародавнього Єгипту, Стародавньої Індії тому приклади. P>
З широким поширенням писемності криптографія сталаформуватися як самостійна наука. Перші криптосистеми зустрічаютьсявже на початку нашої ери. Так, Цезар у своєму листуванні використовував вже більшеменш систематичний шифр, який отримав його ім'я. p>
Бурхливий розвиток криптографічні системи одержали в роки першої ідругої світових воєн. Починаючи з післявоєнного часу і по нинішній деньпоява обчислювальних засобів прискорило розробку та вдосконаленнякриптографічних методів. p>
Чому проблема використання криптографічних методів уінформаційних системах (ІС) стала зараз особливо актуальна? p>
З одного боку, розширилося використання комп'ютерних мереж, вЗокрема глобальної мережі Інтернет, по яких передаються великі обсягиінформації державного, військового, комерційного і приватного характеру,не допускає можливість доступу до неї сторонніх осіб. p>
З іншого боку, поява нових потужних комп'ютерів, технологіймережних і нейронних обчислень зробило можливим дискредитаціюкриптографічних систем ще недавно вважалися практично нерозкривається. p>
Проблемою захисту інформації шляхом її перетворення займаєтьсякріптологія (kryptos - таємний, logos - наука). Криптология розділяється надва напрямки - криптографію і криптоаналіз. Мета цих напрямків прямопротилежні. p>
Криптографія займається пошуком і дослідженням математичних методівперетворення інформації. p>
Сфера інтересів криптоаналізу - дослідження можливостірозшифровки інформації без знання ключів. p>
У цій книзі основна увага буде приділена криптографічних методів. p>
Сучасна криптографія містить у собі чотири великі розділу: p>
1. Симетричні криптосистеми. P>
2. Криптосистеми з відкритим ключем. P>
3. Системи електронного підпису. P>
4. Управління ключами. P>
Основні напрямки використання криптографічних методів --передача конфіденційної інформації з каналів зв'язку (наприклад,електронна пошта), встановлення автентичності переданих повідомлень,зберігання інформації (документів, баз даних) на носіях у зашифрованомувигляді. p>
Термінологія p>
Отже, криптографія дає можливість перетворити інформацію такимчином, що її прочитання (відновлення) можливе тільки при знанніключа. p>
У якості інформації, що підлягає шифрування і дешифруванню, будутьрозглядатися тексти, побудовані на деякому алфавіті. Під цимитермінами розуміється наступне. p>
Алфавіт - кінцеве безліч використовуваних для кодування інформаціїзнаків. p>
Текст - впорядкований набір з елементів алфавіту. p>
Як приклади алфавітів, що використовуються в сучасних ІС можнанавести наступні: алфавіт Z33 - 32 літери російського алфавіту і пробіл; алфавіт Z256 - символи, що входять в стандартні коди ASCII і КОИ-8; бінарний абетка - Z2 = (0,1); вісімковій алфавіт або шістнадцятковий алфавіт; p> < p> Шифрування - перетворюючі процес: вихідний текст, який носитьтакож назва відкритого тексту, замінюється шифрованих текстом. p>
Дешифрування - зворотний процес шифрування. На основі ключа шифрованийтекст перетвориться у вихідний. p>
Ключ - інформація, необхідна для безперешкодного шифрування ідешифрування текстів. p>
Криптографічний система являє собою сімейство T перетвореньвідкритого тексту. Члени цього сімейства індексуються, або позначаютьсясимволом k; параметр k є ключем. Простір ключів K - це набірможливих значень ключа. Зазвичай ключ являє собою послідовнийряд букв алфавіту. p>
Криптосистеми розділяються на симетричні і з відкритим ключем. p>
У симетричних криптосистемах і для шифрування, і для дешифруваннявикористовується один і той же ключ. p>
У системах з відкритим ключем використовуються два ключі - відкритий ізакритий, які математично пов'язані один з одним. Інформація шифруєтьсяза допомогою відкритого ключа, що доступний усім бажаючим, арозшифровується за допомогою закритого ключа, відомого тільки одержувачуповідомлення. p>
Терміни розподіл ключів і керування ключами відносяться до процесівсистеми обробки інформації, змістом яких є складання ірозподіл ключів між користувачами. p>
Електронної (цифровий) підписом називається що приєднуються до тексту йогокриптографічне перетворення, яке дозволяє при отриманні текстуіншим користувачем перевірити авторство і достовірність повідомлення. p>
криптостійкості називається характеристика шифру, що визначає йогостійкість до дешифруванню без знання ключа (тобто криптоаналіз). Єкілька показників криптостійкості, серед яких:кількість всіх можливих ключів;середній час, необхідний для криптоаналізу. p>
Перетворення Tk визначається відповідним алгоритмом і значеннямпараметра k. Ефективність шифрування з метою захисту інформації залежить відзбереження таємниці ключа і криптостійкості шифру. p>
Вимоги до криптосистемами p>
Процес криптографічного закриття даних може здійснюватися якпрограмно, так і апаратно. Апаратна реалізація відрізняється істотнобільшою вартістю, проте їй притаманні і переваги: високапродуктивність, простота, захищеність і т.д. Програмна реалізаціябільш практична, допускає відому гнучкість у використанні. p>
Для сучасних криптографічних систем захисту інформаціїсформульовані наступні загальноприйняті вимоги:зашифроване повідомлення повинно піддаватися читання тільки при наявності ключа;число операцій, необхідних для визначення використаного ключашифрування за фрагментом шифрованого повідомлення і відповідного йомувідкритого тексту, має бути не менше загального числа можливих ключів;число операцій, необхідних для розшифрування інформації шляхом переборувсіляких ключів повинно мати строгу нижню оцінку і виходити замежі можливостей сучасних комп'ютерів (з урахуванням можливостівикористання мережевих обчислень);знання алгоритму шифрування не повинно впливати на надійність захисту;незначна зміна ключа повинно приводити до істотної змінивиду зашифрованого повідомлення навіть при використанні одного і того жключа;структурні елементи алгоритму шифрування повинні бути незмінними;додаткові біти, що вводяться в повідомлення в процесі шифрування, повиненбути повністю та надійно сховані в зашифрованому тексті;довжина шифрованого тексту повинна бути рівною довжині вихідного тексту;не повинно бути простих і легко встановлюваних залежністю між ключами,послідовно використовуються в процесі шифрування;будь-який ключ з безлічі можливих повинен забезпечувати надійний захистінформації;алгоритм повинен допускати як програмну, так і апаратну реалізацію, прицьому зміна довжини ключа не повинно вести до якісного погіршенняалгоритму шифрування. p>
Симетричні криптосистеми p>
Усе різноманіття існуючих криптографічних методів можна звести дослідуючих класів перетворень: p>
Моно-і многоалфавітние підстановки. p>
Найбільш простий вид перетворень, що полягає в заміні символіввихідного тексту на інші (того ж алфавіту) за більш-менш складногоправилом. Для забезпечення високої криптостійкості потрібне використаннявеликих ключів. p>
Перестановки. p>
Також нескладний метод криптографічного перетворення. Використовуєтьсяяк правило у поєднанні з іншими методами. p>
гамування. p>
Цей метод полягає в накладенні на вихідний текст деякоїпсевдовипадковою послідовності, що генерується на основі ключа. p>
Блокові шифри. p>
являють собою послідовність (з можливим повторенням ічергуванням) основних методів перетворення, що застосовується до блоку (частини)шіфруемого тексту. Блокові шифри на практиці зустрічаються частіше, ніж "чисті"перетворення того чи іншого класу в силу їх більш високоїкриптостійкості. Російський і американський стандарти шифрування заснованісаме на цьому класі шифрів. p>
Перестановки p>
перестановкою (набору цілих чисел (0,1 ,..., N-1) називається йогопереупорядоченіе. Для того, щоб показати, що ціле i переміщено зпозиції i в позицію ((i), де 0 ((i) (=((( 0), ((1 ),..., ((N-1 )). p>
Число перестановок з (0,1 ,..., N-1) одно n! = 1 * 2 *...*( N-1) * N. Введемопозначення (для взаємно-однозначної відображення (гомоморфізму) набору
S = (s0, s1, ..., sN-1), що складається з n елементів, на себе. P>
(: S (S p>
(: si (s (( i), 0 (i Будемо говорити, що в цьому сенсі (є перестановкою елементів S.
І, навпаки, автоморфізмів S відповідає перестановці цілих чисел
(0,1,2, .., n-1). P>
криптографічного перетворення T для алфавіту Zm називаєтьсяпослідовність автоморфізмів: T = (T (n): 1 (n p>