ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 03.05.2024
Просмотров: 35
Скачиваний: 0
Основні теоретичні поняття криптології План
-
Основні терміни, визначення та предмет науки «криптологія»
-
Криптоаналіз
1 Основні терміни, визначення та предмет науки «криптологія»
Бажання людини сховати інформацію, що передається, привело до виникнення науки «криптологія».
Існує кілька підходів до визначення науки “криптологія” та її предмета.
Один з підходів до визначення терміна “криптологія” та предмета науки “криптологія” був розроблений і запропонований у СРСР в 1985 році.
Автори цього наукового напрямку В. Кузьменко й С. Іванов за підтримки Державного комітету з науки та техніки СРСР, створили “Центр криптології”, що припинив своє існування разом з розпадом СРСР.
Відповідно до вищезазначених авторів криптологія - це наука, що вивчає аномальні явища в навколишньому середовищі, у всіх галузях їхніх проявів, проти яких безсиле людське пізнання.
Пріоритетними галузями досліджень криптології вважаються:
-
енергія та енергетика;
-
способи пересування в просторі;
-
біологія та зоологія;
-
психологія;
-
фармакологія;
-
палеотехнологія (наука досліджує загадкові технології древніх цивілізацій, які коли-небудь існували на планеті).
Однак дослідження в галузі криптології обмежуються не тільки зазначеними напрямками. Всі галузі сучасних природничих наук мають глибокий взаємозв'язок один з одним і розуміння суті та природи аномального явища в одній з галузей науки, може дати поштовх у розвитку всієї науки в цілому. Криптологія поєднує в собі всі знання накопичені людством і направляє їх на дослідження таємниць, розгадка, яких розширить знання про навколишній світ і прискорить розвиток наукового й технічного прогресу людства.
Інший підхід визначає криптологію як науку, що складається із двох галузей: криптографії та криптоаналізу.
Криптографія – наука про способи перетворення (шифрування) інформації з метою її захисту від незаконних користувачів.
Криптоаналіз – наука (і практика її застосування) про методи та способи розкриття шифрів.
Предмет науки криптології (від греч. “криптос” – таємний і “логос” – знання) становить шифрування та розшифрування повідомлень, що виконуються криптографами, а також розроблення та розкриття шифрів криптоаналітиками.
Криптографія пов’язана із зашифруванням і розшифруванням конфіденційної інформації в каналах комунікації, застосовується для визначення походження інформації та запобігання від можливих перекручувань інформації.
Криптоаналіз займається в основному розкриттям зашифрованих повідомлень без знання ключа та використаної системи шифрування.
Це, по суті, дві протилежні галузі, що протистоять одна одній: якщо криптографи намагаються забезпечити таємність інформації, то криптоаналітики прагнуть всіма засобами її зламати.
Незважаючи на існування подібного поділу, він досить умовний і подібну термінологію не можна вважати усталеною. Проблемою є також і те, що людина, яка створює криптографічні системи, швидше за все, здатна зламувати аналогічні. Це означає, що поділ на криптографів і криптоаналітиків досить умовний, тому часто це ті самі люди. У той самий час, якщо криптографія є скоріше теоретичною дисципліною, то криптоаналіз містить значно більше елементів практики.
Аналізуючи все вищезазначене можна помилково вважати, що криптографія – це наука про шифри. Насправді можливості криптографії значно ширші:
-
шифрування переданих повідомлень і збережених даних для захисту їх від витоку інформації;
-
контроль цілісності переданих повідомлень і збережених даних з метою виявлення випадкових або навмисних перекручувань, тобто захист від модифікації інформації;
-
аутентифікація (перевірка дійсності) переданих повідомлень, тобто захист від нав'язування фальсифікованої інформації та забезпечення юридичної значущості електронних документів; аутентифікація технічних засобів, користувачів і носіїв інформації;
-
захист програм від несанкціонованого копіювання та поширення;
-
організація парольних систем та ін.
Сучасна криптографія містить у собі такі основні розділи:
-
Криптосистеми з секретним ключем (класична криптографія).
-
Криптосистеми з відкритим ключем.
-
Криптографічні протоколи.
-
Керування ключами.
Введемо деякі поняття, необхідні в подальшому розгляді курсу криптології:
Алфавіт – кінцева множина використовуваних для шифрування інформації знаків.
Текст – упорядкований набір з елементів алфавіту.
Шифр або криптографічний алгоритм – сукупність оборотних перетворень множини відкритих даних на множину зашифрованих даних, заданих алгоритмом криптографічного перетворення. Інакше кажучи, криптоалгоритм – це математична функція, що використовується для шифрування та розшифрування інформації.
Зашифрування – перетворення відкритих даних у закриті (зашифровані) за допомогою певних правил, які визначені в шифрі.
Розшифрування – процес, зворотний зашифруванню.
Розкриття (зламування) шифру – процес перетворення закритих даних у відкриті при невідомому ключі й (або) невідомому алгоритмі.
Ключ – це змінний елемент шифру, який застосовують для закриття окремого повідомлення. Інакше кажучи, ключ – це конкретний секретний стан параметрів криптоалгоритма, що забезпечує вибір одного варіанта перетворення із сукупності можливих.
Саме ключем визначається в першу чергу безпека інформації, що шифрується, і саме тому перетворення, які застосовуються в надійних шифрах, залежать від ключа. А функції зашифрування та розшифрування мають такий вигляд:
EK(M)=C, (1)
DK(M)=M, (2)
де
М – відкритий текст повідомлення;
ЕК – процес зашифрування із ключем K.
DК – процес розшифрування із ключем К.
При цьому справедлива така рівність
DK(EK(M))=М; (3)
Рівності 1-3 справедливі для симетричних криптосистем або криптосистем із закритим ключем. Ці алгоритми вимагають, щоб перед початком передачі таємних повідомлень учасники обміну погодили, який ключ буде використаний.
Захист інформації в даних криптосистемах забезпечується таємністю ключа. Це означає, що як тільки ключ буде розкритий, секретною інформацією може скористатися будь-хто. Процес зашифрування та розшифрування в симетричних криптосистемах виглядає так, як показано на рис 1.
Рисунок 1 – Симетричні криптосистеми
В асиметричних криптосистемах для шифрування та розшифрування використовуються різні ключі. Для асиметричних криптосистем справедливі рівності 4-6:
(4)
(5)
При цьому справедлива така рівність:
, (6)
де
– ключ шифрування;
– ключ розшифрування.
Процес зашифрування та розшифрування в асиметричних криптосистемах виглядає так, як показано на рис 2
Рисунок 2 – Асиметричні криптосистеми
Шифрування – процес зашифрування або розшифрування.
Криптосистема складається із простору ключів, простору відкритих текстів, простору шифротекстів та алгоритмів зашифрування і розшифрування.
Розкриття криптоалгоритма – результат роботи криптоаналітика, що приводить до можливості ефективного визначення будь-якого зашифрованого за допомогою даного алгоритму відкритого тексту.
Стійкість криптоалгоритма – здатність шифру протистояти всіляким спробам його розкриття, тобто атакам на нього.
Усі сучасні шифри базуються на принципі Кірхгофа, відповідно до якого таємність шифру забезпечується таємністю ключа, а не таємністю алгоритму шифрування.
Якщо захист інформації, що забезпечується алгоритмом, засновано на таємності самого алгоритму, то криптоалгоритм називають обмеженим. Такі алгоритми мають масу недоліків, так, наприклад, алгоритм повинен бути замінений:
-
при виході користувача із групи, якщо група використає такий алгоритм;
-
якщо сторонній випадково довідається секрет групи.
Групи, що використовують обмежені алгоритми, не можуть використовувати відкриті апаратні або програмні продукти, оскільки зловмисник може придбати такий продукт і розкрити секрет. Крім того, такі алгоритми погано піддаються стандартизації та контролю, вони звичайно не проходять оцінки надійності й т.д. Але, незважаючи на це, такі алгоритми дуже популярні в програмних додатках з низьким рівнем захисту.
Тому аналіз надійності таких систем завжди повинен проводитися виходячи з того, що супротивник має всю інформацію про криптоалгоритм, який був застосований, і для нього невідомо тільки значення реально використаного ключа. У зв’язку з вищевикладеним можна сформулювати загальне правило: при створенні або при аналізі стійкості криптосистем не слід недооцінювати можливості супротивника.
До найбільш часто використовуваних на практиці методів оцінки якості криптоалгоритмів можна віднести:
-
будь-які спроби розкриття криптоалгоритмів. Тут багато чого залежить від кваліфікації, досвіду, інтуїції криптоаналітика і від правильної оцінки можливостей супротивника;
-
аналіз складності алгоритму дешифрування. Складність обчислювальних алгоритмів можна оцінювати числом виконуваних елементарних операцій при цьому природно, необхідно враховувати їхню вартість і витрати на їхнє виконання. Якісний шифр неможливо розкрити способом більш ефективним, ніж повний перебір по всьому ключовому простору. При цьому криптограф повинен розраховувати тільки на те, що в супротивника не вистачить ні часу, ні ресурсів, щоб це зробити;
-
оцінка статистичної безпеки шифру. Надійна криптосистема з погляду супротивника є "чорним ящиком", вхідна та вихідна інформаційні послідовності якого взаємно незалежні, при цьому вихідна зашифрована послідовність є псевдовипадковою. Тому зміст випробувань полягає в проведенні статистичних тестів, що встановлюють залежність змін у зашифрованому тексті від змін символів або бітів у вихідному тексті, або ключі, а також аналізують, наскільки вихідна зашифрована послідовність за своїми статистичними властивостями наближається до істинно випадкової послідовності.
Відзначимо необхідні умови стійкості будь-якої криптосистеми, що перевіряють статистичними методами:
-
відсутність статистичної залежності між вхідною та вихідною послідовностями;
-
вихідна послідовність за своїми статистичними властивостями повинна бути схожа на істинно випадкову послідовність;
-
при незмінній вхідній інформаційній послідовності незначна зміна ключа повинна приводити до істотної зміни вихідної послідовності;
-
при незмінному ключі незначна зміна вхідної послідовності повинна приводити до істотної зміни вихідної послідовності;
-
відсутність залежності між ключами, які послідовно використовуються в процесі шифрування.