Автор работы: Пользователь скрыл имя, 24 Ноября 2011 в 18:43, реферат
Тривалий час під криптографією розумілось лише шифрування — процес перетворення звичайної інформації (відкритого тексту) в незрозуміле «сміття» (тобто, шифротекст).[1] Дешифрування — це зворотній процес відтворення інформації із шифротексту. Шифром називається пара алгоритмів шифрування/дешифрування. Дія шифру керується як алгоритмами, та, в кожному випадку, ключем. Ключ — це секретний параметр (в ідеалі, відомий лише двом сторонам) для окремого контексту під час передачі повідомлення. Ключі мають велику важливість, оскільки без змінних ключей алгоритми шифрування легко зламуються і непридатні для використання в більшості випадків. Історично склалось так, що шифри часто використовуються для шифрування та дешифрування, без виконання додаткових процедур, таких як аутенифікація або перевірка цілісності.
Природно припустити, що символом R зашифрована буква Е, символом О - буква Т і т.д. Це дійсно відповідає таблиці заміни. Подальша розшифровка не становить праці.
Якби обсяг
зашифрованого тексту був
Для підвищення стійкості шрифту використовують полі алфавітні підстановки, в яких для заміни символів вихідного тексту використовуються символи декількох алфавітів. Відомо кілька різновидів поліалфавітної підстановки, найбільш відомими з яких є одне-(звичайна і монофонічна) і многоконтурна.
При
поліалфавітної одно контурної звичайної
підстановки для заміни символів вихідного
тексту використовується кілька алфавітів,
причому зміна алфавітів здійснюється
послідовно і циклічно, тобто перший символ
замінюється відповідним символом першого
алфавіту, другий - символом другого алфавіту
і т.д., поки не будуть використані всі
обрані алфавіти. Після цього використання
алфавітів повторюється.
Шифр табличної підстановки
Для забуття такого шифру заміни зазвичай використовувалися таблиця для запису букв алфавіту і ключове слово (або фраза). У таблицю спочатку вписувалося по рядках ключове слово, причому букви, що повторюються, відкидалися. Потім ця таблиця доповнювалася буквами алфавіту, що не увійшли до неї, по порядку.
Оскільки ключове слово або фразу легко зберігати в пам'яті, то такий підхід спрощував процеси шифрування і розшифрування. Пояснимо цей метод шифрування на прикладі. Для російського алфавіту шифруюча таблиця може мати розмір 4х8. Виберемо як ключ слово БАНДЕРОЛЬ. Шифруюча таблиця з таким ключем показана на мал. 2.
|
Мал. 2. Шифруюча таблиця з ключовим словом БАНДЕРОЛЬ
Як
і в разі полібіанського квадрата, при
шифруванні знаходять в цій таблиці чергову
букву відкритого тексту і записують в
шифротекст букву, розташовану нижче за
неї в тому ж стовпці. Якщо буква тексту
опиняється в нижньому рядку таблиці,
тоді для шифртекста беруть саму верхню
букву з того ж стовпця. Наприклад,
при шифруванні за допомогою цієї таблиці
повідомлення
отримуємо шифртекст ПДКЗИВЗЧШЛИЙСЙ
Такі табличні шифри називаються монограмними, оскільки шифрування виконується по одній букві.
Шифр
афінної підстановки
У шифрі Цезаря ключ може приймати всього m значень (малий ключовий простір), і всі ключі можна просто перебрати. Розглянемо трохи складніший шифр – шифр афінної підстановки:
Тут ключем є пара , причому повинно бути взаємно простим з m.
З (1) одержуємо (2)
де
Рівність (2) має той самий вигляд, що й (1), отже шифрування і розшифрування здійснюються за тим самим алгоритмом, тільки з різними параметрами. Умова взаємної простоти з m потрібна для того, щоб існував обернений елемент і рівняння (1) при фіксованому y мало єдиний розв’язок x , тобто можливо було однозначно розшифрувати ШТ. У противному випадку рівняння (1) має не єдиний розв’язок x або взагалі його не має.
Афінна
підстановка теж легко
Природно припустити, що при шифруванні перейшла в , а - в .
Складемо систему рівнянь:
Відмітимо, що в цій системі невідомими є і , а x і y – відомі.
З (3) маємо: (4)
Якщо пари
підібрані вірно, то рівняння (4) має
розв’язок
. Знаючи
, з (3) знаходимо
. Якщо ж ці пари не відповідають дійсності,
то (4) або не має розв’язку, або при всіх
розв’язках (3), розшифровуючи, одержимо
беззмістовний текст. Тоді можна розглянути
пари
і взагалі пошукати підходящу пару
серед невеликої кількості найчастіших
букв ШТ і ВТ.
Шифр Віженера
Шифр Віженера - поліалфавітний шифр, який у якості ключа використовує слово. Якщо пронумерувати літери алфавіту від 0 до 32 (а → 0, б → 1, в → 2, ...), то шифрування Віженера можна представити формулою
Ci = (Pi + Kj) mod 33,
де Kj - j-та літера ключового слова.
Ключове слово повторюється поки не отримано гаму, рівну довжині повідомлення.
а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | |
а | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я |
б | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а |
в | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б |
г | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в |
ґ | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г |
д | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ |
е | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д |
є | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е |
ж | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є |
з | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж |
и | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з |
і | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и |
ї | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і |
й | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї |
к | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й |
л | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к |
м | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л |
н | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м |
о | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н |
п | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о |
р | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п |
с | с | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р |
т | т | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с |
у | у | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т |
ф | ф | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у |
х | х | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф |
ц | ц | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х |
ч | ч | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц |
ш | ш | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч |
щ | щ | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш |
ь | ь | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ |
ю | ю | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь |
я | я | а | б | в | г | ґ | д | е | є | ж | з | и | і | ї | й | к | л | м | н | о | п | р | с | т | у | ф | х | ц | ч | ш | щ | ь | ю |
По вертикалі
вибираємо літери відкритого тексту, а по горизонталі - ключа,
на перетині цих значень отримуємо знаки шифротексту.
Криптографія сьогодні - це найважливіша частина всіх інформаційних систем: від електронної пошти до стільникового зв'язку, від доступу до мережі Internet до електронної готівки. Криптографія забезпечує підзвітність, прозорість, точність і конфіденційність. Вона запобігає спробам шахрайства в електронній комерції й забезпечує юридичну чинність фінансових транзакцій. Криптографія допомагає встановити нашу особистість, але й забезпечує нам анонімність. Вона заважає хуліганам зіпсувати сервер і не дозволяє конкурентам залізти у в наші конфіденційні документи. А в майбутньому, у міру того як комерція й комунікації будуть усе тісніше зв'язуватися з комп'ютерними мережами, криптографія стане життєво важливої.. Порівняння може вказувати подібні риси багатьох програм, але в безпеці однієї з них при цьому знають міри, яких позбавлена інша система. Досвідчений криптограф зможе визначити різницю між цими системами. Те ж саме може зробити й зловмисник.
На комп’ютерній практиці я
вивчила декілька методів
#include <vcl.h>
#pragma hdrstop