Криптография със секретен ключ
Секретен ключ (също познат като общ секрет или общ секретен ключ) означава, че криптиращият и декриптиращият ключ са "напълно" еднакви. Общ секрет (Shared secret) Забележете, че пълната еднаквост на ключовете не е необходима. За да се удовлетворят изискванията в дефиницията, двата ключа трябва само да могат бързо и лесно да бъдат извличани един от друг. Когато една от страните има един от тях, не е проблем да го използва за криптиране и декриптиране. За да се гарантира сигурността на така криптираната комуникация, ключът трябва да бъде запазен в тайна между двете комуникиращи страни (естествено може да са повече от две, но в крайна сметка всички трябва да пазят секретната информация). Това решение наистина не предпазва от споменатия проблем – офлайн атака с груба сила и разчита силно на сигурна обмяна на ключовете. Обикновено процесът на криптиране може да бъде описан със следната схема: нешифрован_текст ---> секретен_ключ (нешифрован_текст) ---> шифрован_текст ---> секретен_ключ (шифрован_текст) ---> нешифрован_текст нешифрован_текст ---> секретен_ключ (нешифрован_текст) ---> секретен_ключ (секретен_ключ (нешифрован_текст)) ---> нешифрован_текст Схемата използва следната проста нотация: секретен_ключ (нешифрован_текст) - означава, че нешифрован_текст се криптира чрез секретен_ключ и по този начин се генерира шифрован_текст секретен_ключ (секретен_ключ (нешифрован_текст)) - криптиране на шифрован_текст, използвайки секретен_ключ (или негов прост производен), за да се получи отново оригиналния нешифрован_текст. Симетрични криптографски алгоритми Алгоритми, които използват криптография със секретен ключ, обикновено се наричат симетрични алгоритми, понеже работят по начина, описан по-горе. Вие използвате един и същ ключ за декриптиране и криптиране, като използвате един и същ алгоритъм за двата процеса. Пример Като прост пример да разгледаме криптографски алгоритъм, използван в древен Рим, измислен от Гай Юлий Цезар. Принципът е бил прост. Заменяме всяка буква в нешифрования текст с буквата, която следва в азбуката. Нешифрован текст: Hello Сменяме буквите: H -> I, e -> f, l -> m, o -> p Шифрован текст: Ifmmp Декриптиращ алгоритъм: заменяме всяка буква с предишната в азбуката Това е много прост алгоритъм, но работи. Галите не успели да декриптират съобщенията на Цезар и загубили войната. Освен това вие можете да смените стъпката на отместването, за да получите други криптиращи "ключове". Да видим, каква атака с груба сила може да се извърши върху съобщението? Тя трябва да извърши декриптиращ процес, използвайки първо отместване с един знак наляво, после с два и т.н., докато се получи смислено съобщение. Ако желаете, пробвайте да разбиете с груба сила следните съобщения: J g n n q
|
||
Назад | Съдържание | Напред | ||