SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Downloaden Sie, um offline zu lesen
Варна,2014
РЕФЕРАТ ПО БЕЗОПАСНОСТ И ЗАЩИТА
НА ТЕМА :
МЕТОДИ ЗА КРИПТИРАНЕ И
ДЕКРИПТИРАНЕ НА ДАННИ
Изготвил : Кристина Господинова
VI курс, Фак. № 400370
Спец. Приложна информатика
Проверил : доц.д-р Ст. Дражев
ас. Р. Начева
Съдържание
Съдържание..........................................................................................................................................2
Дефиниране на понятието криптография...........................................................................................4
Основни понятия при криптографията................................................................................................4
История на криптографията и криптоанализа....................................................................................6
Съвременна криптография..................................................................................................................8
Причини за използване на криптиране.............................................................................................10
Начини за криптиране на данни........................................................................................................12
Разпространени алгоритми................................................................................................................12
Средства за осигуряване на сигурността чрез криптиране на данни..............................................13
Защита на говор..............................................................................................................................13
Системно криптиране на данни.....................................................................................................13
Изисквания към криптосистемите.....................................................................................................14
Степени на криптиране......................................................................................................................15
Симетрично криптиране....................................................................................................................15
Основни методи за симетрично криптиране....................................................................................16
Замяна на символи при симетрично криптиране........................................................................16
Разместване при симетрично криптиране....................................................................................16
Гамиране при симетрично криптиране.........................................................................................17
Блокови шифри при симетрично криптиране..............................................................................17
Предимства и недостатъци на симетричното криптиране..............................................................17
Алгоритми, използвани в симетричното криптиране......................................................................18
DES (Data Encryption Standard).......................................................................................................18
3-DES (Triple Data Encryption Standard)..........................................................................................18
IDEA (International Encryption Algorithm).......................................................................................18
2
AES (Advanced Encryption Standard)...............................................................................................19
Асиметрично криптиране...................................................................................................................19
Изисквания към системите с асиметрично криптиране..................................................................21
Предназначение на системите с асиметрично криптиране............................................................21
Предимства и недостатъци с асиметрично криптиране..................................................................21
1. Предимства на системите с асиметрично криптиране............................................................21
2. Недостатъци на системите с асиметрично криптиране...........................................................21
Алгоритми на системите с асиметрично криптиране......................................................................22
Основните алгоритми, които намират приложение в съвременните асиметрични
криптосистеми и одобрени като международни стандарти са – RSA, DSA и ECC......................22
RSA (Rivest, Shamir, Aldeman – имената на създателите му) .......................................................22
Начин на шифриране......................................................................................................................22
Сравнение между криптирането със секретен и обществен ключ.................................................24
SSL Certificate.......................................................................................................................................25
Криптографски метод Steganography................................................................................................25
Криптиране на електронна поща......................................................................................................26
Цифрови подписи...............................................................................................................................28
Прилагане на технологиите за криптиране......................................................................................29
Налагане на конфиденциалност........................................................................................................30
Използвана литература......................................................................................................................32
3
Дефиниране на понятието криптография
Представката „крипто“ („crypto“) идва от гръцката дума „krypto“, която
означава „скрит“. Думата „криптология“ („cryptology“) идва от „кгуро“ и „logos“
и следователно означава „скрит свят“. Тя се използва за описание на
изследователските области в криптографията и криптоанализите. Древните
гърци са използвали тази дисциплина за скриване на информация.
Криптографията е изкуство дадена информация да се запази конфиденциална, в
такава форма, в която не може да се прочете от човек, който не притежава
необходимия ключ. Криптоанализите са изкуството да се използват алгоритмите
разработени в криптографията. Криптирането може да се използва за нещо
повече от конфиденциална комуникация. Посредством криптиране могат да се
трансформират данни във форма, от която те не могат да се четат без четящия ги
да има подходящо „познание“ за схемата на криптиране. Това „познание“ се
нарича ключ. Ключът се използва за разрешаване на контролиран достъп до
информацията на определени хора. При това положение информацията може да
се изпрати до всеки, но само тези, които имат правилния ключ могат да я видят.
Често се приема, че криптирането е компонент на сигурността, но в
действителност то е механизъм за постигане на сигурност.
Основни понятия при криптографията
• Открит (изходен) текст – данни (не задължително текстови), предавани
без използване на криптография.
• Шифрован (закрит) текст – данни, получени след използване на
криптосистема с указан ключ.
• Криптосистема – семейство обратими преобразувания на откритият текст
в шифрован.
• Ключ – параметър на шифъра, определящ избора на конкретно
преобразуване на даденият текст. В съвременните шифри алгоритъма на
шифриране е известен и криптографичната устойчивост на шифъра изцяло
се определя от секретността на ключа.
• Частен ключ - частен ключ или секретен ключ е кодиращ/декодиращ
ключ, известен само на едната страна от тези, които разменят кодирани
съобщения. Традиционно в криптографията трябва да има ключ, който да
е достъпен и за двете страни така, че всеки да може да кодира и декодира
4
съобщения. Рискът при такава система е, че ако ключът бъде разбит или
откраднат, системата спира да бъде защитена (на практика тя е разбита). В
такива ситуации частния ключ се използва заедно с публичен ключ.
• Публичен ключ - стойност, която комбинирана по подходящ начин с
частен ключ може да се използва ефективно за декриптиране на кодирано
съобщение и електронен подпис. Използването на публичен и частен ключ
е известно като асиметрична криптография.
• Криптоанализ – наука, изучаваща математическите методи за
нарушаване на конфиденциалността и цялостноста на информацията.
• Криптоаналитик – човек, създаващ и прилагащ методите на
криптоанализа.
• Криптологията – като единна наука за създаване и разбиване на шифри.
Съставя се от криптографията и криптоанализът.
• Криптографска атака – опит на криптоаналитик да предизвика
отклонения в атакуемата защитена система за обмен на информация.
Успешната криптографска атака се нарича разбиване или отваряне.
• Шифриране (криптиране) – процес на нормално прилагане на
криптографско преобразуване на открит текст на основата на алгоритъм и
ключ, в резултат на което възникава шифрован текст.
• Дешифриране (декриптиране) – процес на нормално прилагане на
криптографско преобразуване на шифриран текст в открит.
• Криптографска устойчивост – способността на криптографския
алгоритъм да противостои на криптоанализ.
5
История на криптографията и криптоанализа
Шифрите са се използвали предимно за да се гарантира секретна
комуникация в шпионажа, военното дело, и дипломацията. Но криптография се е
използвала и за защита на личността. Шифрираните текстове, получавани след
прилагане на класическите шифри винаги съдържат статистическа информация
за изходния текст, която може да бъде използвана за разбиването им. След
разработването на честотния анализ в IX век, практически всички такива шифри
стават уязвими за достатъчно квалифициран дешифратор, чак до измислянето на
многоазбучният шифър от Леоне Батиста Алберти около 1465 година. Неговото
нововъведение се състои в това, че използва различни шрифтове за различните
части на съобщението. Също така, той изобретява вероятно първата автоматична
шифровъчна машина – колело, което осъществявало частична реализация на
неговото изобретение. В многоазбучният шифър на Вижинер, за шифриране се
използва ключова дума, която контролира замяната на буквите в зависимост от
това, коя буква от ключовата дума е използвана. В средата на XVIII век
английският математик Чарлз Бабидж разработва тест, който може да открие
дължината на ключа на Шифърът на Вижинер и тогава разглежда шифъра като
сбор на обикновени Цезарови шифри.
В XIX век става окончателно ясно, че секретността на алгоритъма за
шифриране не се явява гаранция срещу разбиването му, още повече става ясно,
че адекватната криптографска защита трябва да остава защитена, дори ако
противника познава напълно алгоритъма за шифриране. Секретността на ключа
трябва да е достатъчна, за да се осигури криптоустойчивост. Този
фундаментален принцип е формулиран за първи път от Август Кирхов,
холандски лингвист и криптограф, през 1883 г.
За облекчаване на шифрирането са разработвани различни спомагателни
устройства. Едно от най-древните е скиталата, измислена в Древна Гърция,
представляваща просто пръчка. С появата на многоазбучния шифър,
устройствата започват да се усложняват, като например диска с шифротекст на
Алберти, квадратната дъска(tabula recta) на Йоханес Тритемиус и дисковият
шифър на Томас Джеферсън. Най-известна през XX век е роторната машина
Енигма, използвана от немците по време на Втората световна война.
Развитието на електрониката и компютърната техника дава силен тласък в
развитието на криптографията и криптоанализа. Започва развиването на
академични криптографски изследвания с публикуването на стандарта DES от
NBS, в статията на Дифи – Хелман и откриването на алгоритъма RSA. След това
акцентът в криптографията се премества от лингвистичните методи към
математическите, включително теория на информацията, статистика,
комбинаторика, абстрактна алгебра и теория на числата.
6
Основните класически видове шифриране са:
1) Преместване, при което буквите на съобщението се разместват
(например „помогни ми“ става „опомнги им“ при най-простото
преместване;
2) Замяна, когато буквите или групи от букви по определено правило се
заменят с други букви или групи от букви (например „fly at once“
става „gmz bu podf“ при замяна на всяка буква със следващата в
азбуката). Такъв шифър е използвал Юлий Цезар за комуникация с
генералите си.
Макар и с доста дълга история, криптографията няма сериозен напредък
до 19 век. Тогава английският математик Чарлз Бабидж разработва тест, с който
да разбива Шифърът на Вигенере – прост многоазбучен шифър, който може да
открие дължината на ключа и тогава разглежда шифъра като сбор на обикновени
Цезарови Шифри. Малко по-късно, Августе Керковс, холандски лингвист и
криптограф, написва шест принципа за създаването на криптиращи алгоритми:
1) „Системата трябва да бъде, ако не теоретично, то поне практически
неразбиваема.”
2) „Системата не трябва да затруднява потребителя, и не трябва да
изисква твърде голяма сигурност”
3) „Ключът трябва да може да се запомни без бележки и да се сменя
лесно.”
4) „Шифрованият текст трябва да може да бъде изпращан с телеграф.”
5) „Апаратурата трябва да бъде лесно преносима, от сам-човек.”
6) „Системата трябва да е проста, да не изисква някакви знания или
дълъг списък с правила, или въобще много мислене.”
От тези правила, най-известно е второто, под името Принцип на Керковс.
Друг изявен криптограф от това време е Едгар Алан По, който написва есе, в
което описва методи за разбиване на шифри, оказали се полезни за дешифриране
на немските кодове през Първата Световна война.
Криптографията прави своя огромен скок по време на Втората Световна
война, когато се произвеждат много електро-механични криптиращи машини.
Същевременно се наблюдава изумителен напредък в разбиването на шифри.
Всичко това е засекретено, но след изтичането на 50 годишният период при
Великобритания, и отварянето на архивите на САЩ, информацията, свързана с
криптографията през Втората световна война, става достъпна. Тогава немската
армия използва електро-механичната роторна машина Енигма, която претърпява
няколко подобрения по-време на войната.
7
През 1932 година, с помощта на доставените сведения от капитан Густав
Бертранд, от френското разузнаване, полският криптограф Мариан Райевски, от
Шифър Бюро, успява да направи копие на немската Енигма. Това е може би най-
големият криптографски пробив в историята. Той и неговите колеги – Йежъ
Ружетски и Хенрйък Зйъгалски – започват да разчитат немските съобщения,
като същевременно са в крачка с промените в Енигма. Когато по време на
войната, Полша става в неизгодна позиция, Генералният Щаб заповядва
британските и френските разузнавателни служби да бъдат посветени в тайната,
за разчитане съобщенията на немската армия, както и става. От там нататък с
декриптирането се заема основно Блетчли Парк, Англия, където работили
истински светила на тогавашната криптография, като Гордън Уелчмен и разбира
се, Алан Тюринг, считан за бащата на съвременната компютърна наука. Войната
в криптографията е не по-малко ожесточена от тази на бойните полета. Много
средства и сили се хвърлят в тази насока, и доста битки са решени благодарение
на това.
Другите страни, участващи във войната, също ползват електро-механични
устройства за криптиране. Съюзниците притежавали британски TypeX и
американския SIGABA. Също така, британските Special Operations Executive
(SOE) агенти, използват наизустени поеми за ключ към шифри, но по-късно
преминават към one-time-pad. Германия също прави няколко механични опита за
one-time-pad, които са наречени от съюзническите войски Fish ciphers.
Съвременна криптография
Началото на модерната криптография е положено от Клауд Елуоод
Шанън, когато през 1949 година издава книгата си „Communication Theory of
Secrecy Systems”, и малко по – късно книгата „Mathematical Theory of
Communication”, заедно със Уорън Уейвър. След това криптографията
преминава в секретните държавни организации и няма почти никакви
публикувани открития до 1970 година.
Седемдесетте години бележат излизането на криптографията от сянката на
правителствените организации. Първо е публикуван проекта за DES(Data
Encryption Standard) във Федералният Регистър на САЩ на 17 март 1975 г.
Проектът DES е предложен от IBM, по покана на Националното Бюро за
Стандартизация (NBS, в момента NIST), в опит за осигуряване на
конфиденциалност на комуникациите за бизнеса и финансовите организации,
като банките например. NSA(National Security Agency) става първата в света
правителствена организация, която „дава своята благословия” за публичен
стандарт за криптиране.
8
DES блоков шифър, който ползва 64 битов ключ, но тъй като 8 бита са
използвани за проверка, и реално ключът е 56 битов. Има хипотези, че NSA са
оставили задна вратичка, чрез която бързо могат да разбиват съобщения на DES.
През 1976 г. е публикувана статията „New Directions in
Cryptography”(„Нови насоки в криптографията”) от Уитфилд Дифи и Мартин
Хелман, една своеобразна революция в развитието на науката. В статията се
обсъждат начини за крипто-системи, в които да се осигури разговорът между
всеки двама потребители в системата. Тази статия предлага начин, чрез който
ключът може да се предава през несигурна мрежа.
Това става по-следният начин:
• Имаме двама приятели от интернет, Петър и Иван, които искат да си
пращат лични съобщения, като за целта ги криптират. И статията на Дифи
и Хелмен дава възможност, те да уговорят своя ключ по несигурна мрежа.
За целта, се избират едно просто число – p, и една основа q, които биват
изпратени през несигурната мрежа.
1) Петър избира числото a, и пресмята qa (mod p) = A, и изпраща А на
Иван.
2) Иван от своя страна, избира числото b, пресмята qb (mod p) = B, и
изпраща числото B.
3) Петър вече има числото B, за това пресмята k1 = Ba, a Иван
пресмята k2 = Ab. Тъй като qab = qba, то k1 = k2 = k. И уговореният ключ е k.
Друга интересна тема, засегната в статията на Дифи и Хелман е така
наречената еднопосочна функция. Така наречените хеш-функции, се използват
за лесно и бързо криптиране на дадена информация, но почти, или съвсем,
невъзможното й декриптиране. При authentication, паролата на потребителят се
криптира посредством дадена хеш-функция, и се получава резултат – хеш-адрес,
който се записва в паметта. Когато потребителят иска да ползва потребителското
си име, той въвежда парола, тя преминава през същата хеш-функция и
полученият резултат се сравнява със запазеният вече в паметта. По този начин се
избягва разчитането на запазената парола, от трето, неоторизирано за това лице.
С тези разработки, двамата учени полагат основите на ново поколение от
алгоритми – асиметрични. До тогава, всички алгоритми са симетрични – има
единствен ключ, който се ползва за криптиране и декриптиране. „New Directions
in Cryptography” представя начин, по който може да се използва един ключ за
криптиране, и един за декриптиране, така наречената private-public
key(публичен-личен ключ) система. Тя ползва два математически свързани
ключа, един всеизвестен и един таен. За пример отново ще вземем Петър и Иван.
Петър има публичен ключ Ppu и личен Ppr , а Иван има съответно Ipu и Ipr . Тъй
като публичните ключове са известни, Петър криптира съобщението си с Ipu и с
9
Ppr, а Иван декриптира полученото съобщение с Ppu и с Ipr. По този начин, Иван
може да е сигурен, че съобщението е изпратено от някой, знаещ личния ключ на
Петър, и че ако някой се опита да го разчете, ще трябва да знае неговият личен
ключ. И тъй като няма обмяна на ключове през мрежата, асиметричните
алгоритми могат да се считат за по-сигурни.
Предполага се, че асиметричните алгоритми, ключовата обмяна на Дифи и
Хелман, както и за момента най-добрият алгоритъм – RSA, са били независимо
открити от британските тайни служби, преди публикациите им, но се пазили в
пълна тайна.
Съвременната криптография се характеризира с използването на
компютри и от там, с усложняване на прилаганите алгоритми за шифриране.
Криптографията започва да се прилага за защита не само на текст, а и за
всякакви данни в цифров вид. Това довежда и до използването на сложни
математически функции и прилагането им на практика в криптографията.
Бързото развитие на ЕИМ води и до бързо намаляване на
криптоустойчивостта на съответните алгоритми. Също така навлизат
асиметричните алгоритми и криптографията започва да се използва за
удостоверяване на самоличността на подателя чрез подписване с електронен
подпис. Криптографията се използва и за защита на данните при банкови
преводи, банкови и небанкови карти и други плащания, което спомага за
навлизане на електронното банкиране и много улеснява платежните операции.
Причини за използване на криптиране
Криптирането позволява изпращане по електронна поща на
конфиденциални данни, като договори или персонална информация или
съхраняване на конфиденциална информация върху преносим компютър, без да
има опасения, че някой може да я открадне и данните да бъдат разпространени.
Без сериозно криптиране всяка информация може да бъде прихваната лесно и
използвана срещу нейния притежател. Пример за това може да бъде отдела за
покупки на дадена компания, който комуникира с доставчиците или компания,
която разменя ценови листи, договори, спецификации и информация за нови
продукти със своите партньори.
Бизнес компаниите разменят все повече и повече информация през
Интернет. В много случаи тази информация е с финансов произход и в случай,
че попадне при друг получател, може да има негативно влияние върху бизнеса
на компанията. За целите на електронния бизнес, информацията трябва да се
запази конфиденциална. Без използването на криптографски методи, това не
може да се гарантира.
10
Най – важното приложение, което трябва да използва криптиране е
електронната поща. Без криптиране, електронните пощи са електронен
еквивалент на класически пощенски картички. Електронните пощи нямат
физическа форма и могат да съществуват електронно на повече от едно място в
един и същи момент от време. В случай, че имате инсталиран добър софтуер за
криптиране и декриптиране, той автоматично ще криптира изпращаните от вас
съобщение и ще декриптира получаваните. Всичко, което трябва да направите е
да посочите, че дадено съобщение трябва да бъде криптирано. Криптираните
електронни пощи могат да се отъждествят с писмо, което е запечатано в плик и
поставено на сигурно място. Тези, които не притежават ключа не могат да видят
съдържанието.
С увеличаването на броя на използваните компютри и мрежи, въпроса за
гарантиране сигурността на информацията предавана през мрежите става все по
– важен. Поради факта, че компютърния свят премина от структурирани системи
към среда клиент/сървър, криптографията започна да се превръща във
фундаментално бизнес средство. Интернет, който е база за много бизнес
транзакции, понастоящем е несигурен, тъй като всеки може да прихване дадено
предаване. Въпросите със сигурността в интернет се решават бавно, защото
промяната на фундаменталните стандарти е трудна.
Онлайн банките и онлайн плащанията са двете най-големи интернет
приложения, които разчитат на криптирането. Интернет клиентите са много
чувствителни на тема сигурност. Поради тази причина, всички web браузъри
поддържат криптиране на документите. Стандартната дължина на ключа при
международните версии на браузърите е 40 бита. Поради факта, че тази дължина
е малка, декриптирането на ключа е лесно и в много случаи се налага
използването на допълнителни компоненти за криптиране.
С криптографията може да се изпълни и контрол на достъпа.
Телевизионните канали, които са достъпни само за абонати работят на този
принцип. Поради факта, че не е възможно да се отварят или затварят канали за
индивидуални абонати през сателит, информацията се криптира и ключа се
разпространява към тези, които са платили за тези канали. В зависимост от типа
на телевизионния канал ключа е валиден за цял ден, или се променя за всяка
програма. В последният случай, ключа за определена програма се
разпространява до клиентите, които са платили за нея. Ключовете се съхраняват
в приемник, който декодира програмата. Приемникът е свързан към доставчика
по телефонна линия, по която може да се изпрати или отнеме ключа.
11
Начини за криптиране на данни
• Симетричен начини за криптиране на данни – за кодиране и
декодиране на данните се използва един и същи ключ за кодиране.
 Поточни – информацията се обработва побитово (посимволно);
 Блокови – информацията се разбива на блокове, които се
обработват.
• Асиметричен начини за криптиране на данни – използват се два ключа.
Първият от тях, който е общоизвестен, служи за шифриране на данните, а
втория, който се знае само от собственика му, служи за разшифриране на
данните. Двата ключа се генерират едновременно и са неразривно
свързани един с друг.
Разпространени алгоритми
Разпространени алгоритми за криптиране :
• Симетрични – DES, Triple DES, AES, ГОСТ 28147-89, Camellia, Twofish,
Blowfish, IDEA, RC4 и др;
• Асиметрични – RSA, Дифи-Хелман (Diffie-Hellman) и Elgamal (Ел-Гамал);
• хеш-функции :
 удостоверяващи източника – MD5-MAC, DES in CBC mode, MAA;
 удостоверяващи целостта на данните – MD4, MD5, SHA-1, ГОСТ Р
34.11-94.
12
Средства за осигуряване на сигурността чрез криптиране на данни
• Защита на говор
Цифрови шифриращи телефони, позволяват защита от неоторизирано
подслушване. Работят в открит или закрит режим и позволяват индивидуални и
групови разговори. Поддържат телефонен указател, автоматично набиране и
дневник за използване на устройството.
• Линейно криптиране на данни – за защита на глобалните комуникации
се използват устройства за криптиране и защитени модеми.
 Устройства за криптиране на данни – поставят се между модема
и мрежовия процесор за всяко направление и осигуряват
криптографска защита на данните, предавани по канала за връзка.
 Защитени модеми – обединяват функциите на модема и
криптиращото устройство. Работят в асинхронен или синхронен
режим по комутируеми или арендовани канали.
• Системно криптиране на данни
Системното криптиране се реализира вътре в компютрите и се явява
функция на операционната система или на специализирана програма. Възможен
е и вариант с апаратна реализация. Обработените файлове се съхраняват в
шифриран вид във външната памет на компютъра и когато е необходимо се
предават по мрежата.
13
Изисквания към криптосистемите
За съвременните криптосистеми важат следните общоприети изисквания:
• Шифровано съобщение може да бъде прочетено само при наличие на
съответен ключ;
• Броя на операциите, необходими за определяне използвания за
шифриране ключ по фрагмент от шифрирания текст и съответстващия му
открит текст, трябва да бъде не по-малък от общия брой възможни ключа;
• Броят на операциите, необходими за дешифриране на дадена информация
чрез изпробване на всички възможни ключове трябва да има долна
граница, която да е по-голяма от възможностите на съвременните
компютри.
• Знаенето на алгоритъма на шифриране не трябва да влияе на
надеждността на защитата;
• Незначителна промяна на ключа, трябва да води до съществено изменение
на вида на шифрования текст;
• Структурните елементи на алгоритъма на шифриране трябва да не се
променят;
• Допълнителните битове, вмъкнати в съобщението в процеса на
шифриране, трябва да са надеждно скрити в шифрирания текст;
• Дължината на шифрирания текст трябва да бъде равна на дължината на
изходния текст;
• Не се допуска лесна за установяване зависимост между ключове,
последователно използвани в процеса на шифриране;
• Всеки ключ от множеството възможни ключа, трябва да осигурява
надеждна защита на информацията;
• Алгоритъмът трябва да допуска както програмна, така и апаратна
реализация, като при това промяната в дължината на ключа не трябва да
довежда до качествено влошаване алгоритъма на шифриране.
14
Степени на криптиране
Технологиите за криптиране могат да се разделят в няколко групи, в
зависимост от степента на защита/криптиране :
• Слаби – такива са текстовите документи, защитени с парола от
текстообработваща програма. Този тип програми използват криптиране с
много ниска степен и с помощта на прости средства може да се разбере
използваната парола;
• Устойчиви – с използването на технология за симетрично криптиране
може да се създаде устойчива защита, но слабата страна на тези
технологии е в това, че при предаване на ключа през несигурни мрежи той
може да се прихване;
• Силни – с използването на технология с обществен ключ, предаването на
ключа през несигурни мрежи е безопасно;
Симетрично криптиране
При симетричните криптосистеми се използва един и същ ключ за
шифриране и за дешифриране на информацията (процесът е двупосочен). Този
ключ трябва да бъде известен и на двете страни – тази, която шифрира
информацията и тази, която я дешифрира. Необходимо е надеждно съхраняване,
разпространение и периодично обновяване на тези ключове между
потребителите на една симетричната криптосистема.
15
Основни методи за симетрично криптиране
Цялото многообразие от криптографически методи може да се сведе до
следните класове преобразуване:
• Замяна на символи при симетрично криптиране
Най-простия вид преобразуване, състоящ се в замяна символите на
изходния текст с други от същия алфавит. За осигуряване на висока
криптоустойчивост е необходимо използването на големи ключове.
 Моноалфавитна замяна
 Полиалфавитна замяна
Всеки символ се заменя с друг символ, подбран от множество символи,
генерирани от псевдослучаен генератор.
Генератор на псевдослучайни числа – генерира случайни числа в рамките
на определен брой комбинации. Тези числа могат да бъдат многократно
генерирани в същия ред.
• Разместване при симетрично криптиране
Сравнително прост метод за криптографическо преобразуване. Като
правило се използва в комбинация с други методи.
16
• Гамиране при симетрично криптиране
Методът се състои в обработка на изходния текст с псевдослучайна
последователност генерирана на база съответния ключ. Обработката на
получената гама с изходния текст трябва да става по обратим начин (например с
използване на събиране по модул 2).
Процесът на дешифриране на данните се свежда до повторна генерация на
същата гама, на база известния ключ и обработката и с шифрирания текст.
• Блокови шифри при симетрично криптиране
Последователност (с възможност за повторение и редуване) на основните
методи за преобразуване, прилагани към блок от текста за шифриране. По –
голяма част от известните стандарти за шифриране използват блокови шифри.
Предимства и недостатъци на симетричното криптиране
1. Предимства на симетричното криптиране :
• Голяма скорост на криптиране/декриптиране, което му дава
възможност да работи с големи масиви данни;
• Лесни за реализация.
2. Недостатъци на симетричното криптиране:
• Секретният ключ е само един и всяка от страните, работещи с
него, може да го компрометира. Това налага честа смяна на
използваните ключове;
• В мрежа с голям брой участници е необходимо поддържане,
разпределение и осигуряване секретността на голям брой
ключове.
17
Алгоритми, използвани в симетричното криптиране
Като международни стандарти в съвременните симетрични криптосистеми
са намерили приложение :
• DES (Data Encryption Standard)
DES (Data Encryption Standard) е симетричен алгоритъм за криптиране, в
който един и същ ключ се използва както за шифриране, така и за дешифриране
на текста. Разработен е от фирмата IBM и утвърден от правителството на САЩ
през 1977 година като официален стандарт (FTPS 46 – 3). DES е една от най-
разпространените схеми за криптиране днес. Работи с 64 – битови блокове от
съобщения. Алгоритъмът използва серия от стъпки за преобразуване на 64 – те
входящи в 64 изходящи бита. В своя стандартен вид, алгоритъмът използва 64 –
битови ключове – 56 бита, от които се избират случайно. Останалите 8 бита са за
контрол по четност (по един за всеки 7-битов блок от 56-битовата случайна
стойност). Алгоритъмът използва комбинация от нелинейни (S-блокове) и
линейни (заменящи E, IP, IP-1) преобразования.
DES алгоритъма има няколко режима:
 режим електронна кодова книга (ECB — Electronic Code Book);
 режим свързване на блокове (СВС — Cipher Block Chaining);
 режим обратна връзка по шифротекст (CFB — Cipher Feed Back);
 режим обратна връзка по изход (OFB — Output Feed Back).
В днешно време DES се използва широко в множество комерсиални
приложения и може да бъде използван и в четирите режима: ECB, CBC, CFB и
OFB. Обикновено работи в режим CBC или CFB.
• 3-DES (Triple Data Encryption Standard)
Алгоритъмът представлява развитие на DES, като използва трикратно
последователно шифриране чрез DES и 168-битов ключ (56*3). Поради опасност
от прихващане, ефективната дължина на ключа е 112 бита, която въпреки това е
достатъчна за "днешните" изисквания. Притежава висока степен на надеждност.
• IDEA (International Encryption Algorithm)
18
състои от 8 идентични цикъла, следвани от изходна трансформация. Шифрира
64-битов блок от изходни данни в 64-битов блок шифрирани данни, като
използва 128-битов ключ. При всяка итерация се използват шест 16-битови
подключа. IDEA е 3 пъти по-бърз от 3-DES и е по-сигурен. Търговското му
използване е свързано с заплащане на лицензионна такса.
• AES (Advanced Encryption Standard)
AES (Подобрен стандарт за шифриране) е стандарт за шифриране, приет
през 2002 г. от американския Национален институт за стандарти и технология.
Към 2009 г. това е един от най-широко използваните криптографски алгоритми.
Стандартът включва приложение на алгоритъма Рейндал, разработен през 1998
г. от белгийските криптографи Винсент Реймен и Жоан Дамен, като използва
шифроващи ключове с три дължини: 128, 192 или 256 бита. Дължината на
шифриращия ключ определя броя повторения на криптирането, тоест броя
трансформации необходими за превръщането на входа, наречен „plaintext“
(просто текст) , в изходния резултат наречен “ciphertext” (шифрован текст).
За различните дължини на ключовете повторенията са:
 10 цикъла за 128-битов ключ;
 12 цикъла за 192-битов ключ;
 14 цикъла за 256-битов ключ.
Всеки цикъл се състои от няколко последователни стъпки. Стъпките се
изграждат от пет подобни една на друга процедури, като една от тях зависи от
криптиращият ключ. Криптираното съдържание може да се трансформира в
оригиналния текст, използвайки същият ключ, като се приложат набор от
обратни стъпки.
Байтовете на входното съобщение ("plaintext") се записват в матрица, най
– често именована "state" ("статус", "положение"). Върху тази матрица се
извършват криптиращите трансформациите на алгоритъма Рейндал.
В съвременните системи за защита на информация симетричните
криптосистеми почти не се използват самостоятелно, а винаги в комбинация с
асиметричните
Асиметрично криптиране
Основна слабост на криптосистемите със симетрично криптиране се явява
проблема с разпределение на ключовата информация. За да е възможен обмен на
конфиденциална информация е необходимо за предаване на ключове да се
19
използва някаква допълнителна криптосистема. За решаване на този проблем бе
разработена система с открит ключ, която използва резултати от класическата и
съвременна алгебра.
При криптосистеми с открит ключ всеки потребител притежава два ключа
- публичен и частен. Първият е достъпен по принцип за всички, които се
интересуват, докато частният се съхранява единствено от притежателя му.
Шифриране на определена информация се извършва винаги чрез
използване на двойката ключове и процесът е еднопосочен. При асиметричните
криптосистеми необходимостта от надеждно съхраняване на публичните
ключове отпада, те се разменят свободно от потребителите или се публикуват в
Web сайтове.
Криптосистемите с открит ключ използват необратими или едностранни
функции, които притежават следното свойство: при зададено значение на x е
относително просто да изчисли значението на f(x), но ако y=f(x), то липсва прост
начин за изчисляване на значението x.
Най – общо съществуващите криптосистеми с открит ключ се базират на
един от следните типове необратими преобразувания :
• Разлагане големи числа на прости множители;
• Изчисляване логаритъм в крайно поле;
• Изчисляване на корен на алгебрично уравнение.
20
Изисквания към системите с асиметрично криптиране
• Преобразуването на изходния текст трябва да бъде необратимо и да
изключва възстановяването му на база открития ключ;
• Определянето на закрития ключ на закрития трябва да бъде невъзможно
със съвременни технически средства.
Предназначение на системите с асиметрично криптиране
• Като самостоятелно средство за защита на предавани и съхранявани
данни;
• За разпространение и съхранение на ключове за симетрично шифриране;
• Като средство за автентификация на потребителите (електронен подпис).
Предимства и недостатъци с асиметрично криптиране
1. Предимства на системите с асиметрично криптиране
• Двойката ключове (частен и публичен) могат да се използват дълъг
период от време - до няколко години;
• За разлика от симетричните, в мрежа с N участници броят на
поддържаните ключове е равен на броя на участниците;
• Позволяват изграждане на надеждна и ефективна схема за електронно
подписване и верифициране на данни.
2. Недостатъци на системите с асиметрично криптиране
• Значително по-бавни в сравнение със симетричните;
• При използване за криптиране ключът е много по-дълъг от този при
симетричните;
21
Алгоритми на системите с асиметрично криптиране
Основните алгоритми, които намират приложение в съвременните
асиметрични криптосистеми и одобрени като международни стандарти са –
RSA, DSA и ECC.
• RSA (Rivest, Shamir, Aldeman – имената на създателите му)
RSA е алгоритъм за шифриране на данни, при който се използват
различни ключове за криптиране и декриптиране. Наименованието идва от
фамилните имена на създателите му Ronald L. Rivest, Adi Shamir и Leonard
Adleman. Патентован е през 1983 г, освободен е от патент през 2000 г. Ключът с
дължина от 512 до 1024 бита се използва за кодиране и е различен от ключа,
използван за декодиране. Алгоритъмът на RSA предоставя процедура за
подписване на електронен документ и за проверка на автентичността на подписа.
Електронният подпис не може да бъде константа – той е реквизит на
електронния документ, на който е „положен“. Операциите на RSA, независимо
дали кодирането, декодирането, подписването или проверката, всъщност
представляват модулно експоненциране. Това изчисление се извършва като
серия модулни „умножения“.
RSA в момента е използван широко в много продукти, платформи и
промишлености по света. Той намира разпространение в много търговски
софтуерни продукти и е планирано да бъде използван в много повече. RSA е
приложен в операционни системи на Майкрософт, Епъл, Сън и Новел. В
практиката RSA може да бъде открит в телефони, на мрежови карти за Интернет
и на смарт карти. Като цяло е внедрен като мярка за сигурност във всички
главни протоколи за сигурни интернет-комуникации. Също така е използван
вътрешно в много институции, включително клонове на американското
правителство, водещи корпорации, национални лаборатории и университети.
Лицензът за технологията на RSA е придобит от около 350 компании.
Приблизителният брой на машините за кодиране на базата на RSA е около 300
милиона, правейки го досега най – широко използвания алгоритъм за
криптиране в света.
Начин на шифриране
1. Генериране на двойка ключове
1) Избират се две различни прости числа p и q. За по – добра сигурност те
трябва да бъдат случайни и с еднакъв брой цифри (представени в двоична
бройна система);
2) Изчислява се n=pq. Това е модулът на частния и публичния ключ;
22
3) Изчислява се функцията на Ойлер: φ(n) = (p-1)(q-1);
4) Избира се цяло число e, така че 1 < e < φ(n) и освен това e и φ(n) да нямат
общи делители. Експонента на публичния ключ е e;
5) Изчислява се d, което удовлетворява уравнението de≡1 (mod φ(n)). С
други думи, ed – 1 може да бъде разделено без остатък на (p-1)(q-1).
Експонента на частния ключ е d.
Публичният ключ е съставен от модула n и от публичната експонента e.
Частният ключ съдържа модула n и частната експонента d.
2. Шифриране
Получателят предава публичния си ключ на изпращача и съхранява
частния ключ. Изпращачът изпраща съобщение M. Първоначално M е
превърнато в число като се използва предварително договорен за
целта протокол. След което се шифрира: изчислява се с, където:
Алгоритъм за бързо степенуване позволява бързото му изчисление, след
което с бива изпратено.
3. Дешифриране
Получателят възстановява m от c, като използва ключовата експонента d
от:
Ако е дадено m, оригиналното съобщение M може да бъде възстановено,
като се обърне схемата.
• DSA
Алгоритъмът се използва в механизми за създаване на електронен подпис.
Сигурността се основава на трудността на намиране на дискретен логаритъм Zp.
Недостатък на тази криптосистема е, че шифрирания текст е два пъти по – дълъг
от оригиналния.
• ECC (Eliptic Curve Cryptography)
Базира се на система, основана на елиптични криви – ECC. ECC е
изключително подходяща криптосистема в ресурсно ограничени изчислителни
среди – мобилни устройства, смарт карти и др. ECC в комбинация със
23
симетричните алгоритми 3DES, IDEA и AES се използва за създаване на системи
за защита на информация от особено висок клас.
Сравнение между криптирането със секретен и обществен ключ
Основното предимство на криптирането с обществен ключ пред това със
секретен ключ е, че персоналните ключове никога не се предават. Това прави
този тип криптография по-сигурна и удобна. В една система със секретен ключ,
е необходимо предаване на ключовете, което е свързано с рискове. Освен това
при работа със секретни ключове механизма на идентифициране се осъществява
трудно. Когато един цифров подпис използва инфраструктура с обществен ключ
се налага предаване на секретна информация. За да се избегне отказ на плащане
се налага трета страна да проверява идентичността.
Безспорно криптирането с обществен ключ има няколко недостатъка.
Повечето технологии на секретни ключове са по-бързи от алгоритмите за
криптиране с обществен ключ. Тъй като бързината е по голяма с порядъци,
криптирането с обществен ключ не е препоръчително да се използва за големи
файлове. За да може една система да бъде и защитена и бърза, е необходимо да
се комбинират и двата типа криптография.
При такава комбинация съобщението ще се криптира със секретен ключ,
защото при криптиране с обществен ключ ще се отнеме много време, а
секретния ключ се прикрепва към съобщението, като самия секретен ключ е
криптиран с обществен ключ. По този начин се постига и по-висока скорост и
защита.
При SSL криптирането, което се използва за сигурен обмен на
информация през web, криптирането с обществен ключ се използва за размяна на
секретния ключ. Web сървърът изпраща своя обществен ключ към web браузъра.
Последният създава ключ на сесия и криптира ключа на сесия с обществения
ключ на web сървъра. След това ключа на сесия се предава обратно на web
сървъра, който го декриптира с помощта на своя секретен ключ. По този начин
ключовете на сесии могат спокойно да се предават през незащитени мрежи. След
като ключа на сесия се предаде, той се използва за криптиране на връзката, тъй
като е доста по-бърз. Алгоритмите за секретните ключове ще бъдат от значение
до момента, в който компютрите не станат поне хиляди пъти по-бързи от
съвременните компютри. Ключът на сесия е сигурен, защото е валиден само за
една определена сесия и след това не може да се използва повече.
24
SSL Certificate
Както вече видяхме, криптографията има много приложения. В момента, в
България постепенно навлиза Интернет Банкирането – начин на управление на
сметките чрез персоналния компютър. И както виждате, изключително важно е
да се осигури много добра идентификация. Банките ползват няколко нива на
защита. Първо, по интернет клиентът на банката изпраща своята заявка,
регистрира се с потребителско име и парола. След като въвежда данните си, в
някакъв срок в банката му се прави сертификат и му се изпраща пин-код по
електронната поща (това е несигурен начин за пращане на информация, така че
може да се счита за публична). Тогава, клиентът влиза в сайта на банката и
проверява статуса си. Ако му е издаден сертификат, той получава парола, с която
да го инсталира, след което трябва да отиде и лично да го вземе от посоченият от
него клон, срещу представен документ за самоличност. Сертификатът трябва да
бъде инсталиран на компютъра, или на няколко, от които клиентът иска да
ползва услугата. За инсталацията се ползва дадената парола. След завършване на
всички процедури, клиентът може да ползва интернет банкиране, като въведе
своето потребителско име и парола, които е задал при регистрацията. Тук
основната защита, е предоставена от SSL Certificate. Той осигурява много добра
идентификация на клиента. И понеже се прави персонално за него, дава се
лично, е много добра и сигурна защита. SSL Certificate използва асиметричен
шифър(RSA, Diffie-Hellman, DSA или Fortezza) за уговорка, така наречената
master secret, симетричен шифър(RC2, RC4, IDEA, DES, Triple DES или AES) за
прехвърлянето на данни и хеш-функция(MD2, MD4, MD5 или SHA).
Следващото ниво на защита е паролата, който клиентът въвежда при
регистрация. Информацията, съхранявана в сървъра, като паролите например, са
хеширани. Самата банка не знае личния ключ на клиента, за това е важно той да
не го губи или забравя. Въпреки всичко това е необходимо, за да не може
неоторизирани лица да се възползват от информацията на сървъра.
Криптографски метод Steganography
Съобщенията, които са криптирани посредством метода Steganography,
изглеждат като безвредни съобщения с прикрепени изображения или файлове
със звук. Тези, които се опитат да прихванат такъв файл, ще получат съобщение
и ще останат с впечатление, че то не съдържа секретна информация. Някой,
който чете такава поща, разглежда изображение или чуе звук никога няма да
забележи разликата. В повечето случаи скритите съобщения също са
криптирани, при което се забелязват още по-трудно. Софтуерът използван при
25
този метод се опитва да скрие информацията в обикновени звуци и изображения.
За да останат незабелязани, скритите съобщения трябва да имат същата
статистика, както тази на обикновените изображения и звуци. Проблемът е в
това, че криптираните съобщения обикновено изглеждат по-различни от тези,
които се стремят да имитират. Компютърно-генерираните изображения не са
добро място, в което може да се скрие информация, защото са съвсем
традиционни, докато едно сканирано изображение предлага повече
възможности. Съществуват софтуерни пакети, които се разпространяват
безплатно и позволяват криптиране от този тип. За съжаление обаче качеството
не е добро. В случай, че внимателно анализирате данните, лесно ще откриете
скритото съобщение. Често симулацията на естествен звук не е надежден начин
за скриване на информация.
Комерсиалните софтуерни пакети използвани за този тип криптография
предлагат по-качествено скриване. С използването на тази техника е възможно
предаване на данни без никой да забележи това. В страните, където
криптирането е забранено се използва именно тази техника. Изпращането на
изображения през Интернет не е нещо необичайно и проверката за това дали
съдържат криптирани или скрити съобщения е доста трудна, ако не и
невъзможна.
Криптиране на електронна поща
Електронната поща е най – използваното нещо в кибер пространството. Тя
се използва много лесно и не изисква нищо освен компютър, връзка към
Интернет и елементарна програма за изпращане и получаване на електронна
поща. Съдържанието на електронната поща е във форма на обикновен текст и
може да се прочете на всяка компютърна система. Простотата на приложението
обаче е проблем, защото при предаването му всеки едни компютър по света
може да го прихване и да се прочете съдържанието без да се налага използването
на допълнителен софтуер.
При изпращане на електронна поща, тя не се предава директно към
получателя и, а минава през определени компютри. Това намалява значително
разходите за предаване на информацията, тъй като всеки компютър трябва да
предаде информацията само до следващия. Пътят между източника и получателя
се определя след изпращане на пощата, и например една поща от Щутгарт до
Оксфорд може да премине през компютри в САЩ. Всеки един от компютрите,
участващи в предаването може лесно да провери за определени изпращачи и
получатели и може да запише цялата информация от съобщението във файл на
локалния си твърд диск. Дори ако атакуващия не стои на някой от компютрите,
26
участващи в предаването той може да филтрира потока от съобщения и да
получи необходимата информация. Нападението изисква от хакера да инсталира
определен софтуер на съответния компютър. Този софтуер се нарича
„прихващач". Последният сканира всички електронни пощи за това дали
съдържат определени ключови думи.
Нормално изпращането на електронна поща до всяко едно място по света
става за няколко секунди. Никой няма да забележи, ако някой вземе някаква
информация, дори никой няма да забележи, че дадена информация е променена
преди да бъде изпратена, тъй като няма определено време, за което да се
получават съобщенията. Всички останали електронни пощи с изключение на
класическите, нямат плик, който да скрива изпращаната информация.
Електронните пощи са по-лоши от пощенските картички от гледна точка на
конфиденциалност. Електронните пощи предавани през Интернет могат да бъдат
сканирани за ключови думи лесно и автоматично. Сканирането на нормална
поща в офиса ще изиска доста време, което прави процеса на сканиране
непрактичен.
Криптирането на електронна поща може да стане по няколко начина. Най-
сигурната система за криптиране, която понастоящем се намира на пазара е PGP.
Системата PGP изисква инсталиране на отделен софтуер.
Друг начин за криптиране на съобщение е използването на алгоритми за
симетрично криптиране, които не са свързани със софтуера за електронна поща.
Може да напишете своята поща с текстов редактор, да я криптирате и след това
да я изпратите през мрежата. Може да избирате между Blowfish, IDEA и triple-
DES. Само че на всички компютри трябва да е инсталиран софтуер за
декриптиране на файловете и трябва да е установен канал за сигурен обмен на
ключовете. Процедурата за инсталиране, поддръжка и използване на този метод
е прекалено дълга, за да може да се прилага в бизнес среди. Методът е добър за
персонално използване.
В случай, че ви е необходимо секретно предаване на информацията по
такъв начин, че да може предаваната информация да се чете от повече от един
получател, може да използвате програми като WinZip (www.winzip.com). Почти
всеки има копие и може да го използва лесно. Освен това технологията за
криптиране, която се използва е доста добра, файловете са защитени с парола,
която може да се разбере, но вие можете да променяте паролата всеки път. Освен
това паролата може да се предава и по телефона.
27
Цифрови подписи
Освен за криптиране и декриптиране на информацията, криптографията
може да се използва и за други неща. Идентифицирането е една от най-важните
области при изграждането на връзка на доверие. Логично е, че можете да имате
доверие на някой, само ако знаете кой е той. В много случаи идентифицирането
се прави чрез подписване на документ. За да направите електронните документи
легални трябва да имате механизъм, който да осигурява средство за
идентифициране автора на документа.
За да направите една система приложима за цифров бизнес е необходимо
само една малка част от съобщението да се криптира с персонален ключ. Тази
част се нарича digital hash. Hash кода е функция, която намалява всяко едно
съобщение до фиксиран брой битове. Без значение каква е дължината на файла,
дължината на hash винаги е една и съща. Същността се крие в това, че hash кода
е различен за всяка електронна поща. Hash функцията е еднопосочна. Не е
възможно да създадете определен код и да намерите съобщение, което да
съответства точно на този код. Hash кода може да се разглежда като печат върху
плик. Изпращането на този код заедно с електронна поща ще гарантира, че
никой не може да промени съдържанието на пощата по време на предаване, но
това не ви дава възможност да сте сигурни в изпращача. Поради факта, че този
код е с фиксирана дължина, времето за неговото криптиране винаги е едно и
също.
Цифровите подписи използват технологии за криптиране с обществен
ключ, като RSA, но не работят като стандартното криптиране. Вместо да
критпират съобщението с обществения ключ на получателя, hash кода на
съобщението се криптира с персонален ключ, и след това се декриптира с
обществения ключ на изпращача. Разбира се, всеки може да декриптира hash
кода на съобщението, тъй като обществения ключ може да се намери в
директорията за обществени ключове на сървъра. Само че факта, че вие можете
да декриптирате hash на съобщението с обществения ключ на определен човек
доказва само по себе си, че това съобщение идва точно от този човек. Само този,
който притежава персоналния ключ може да създаде съобщение, което може да
се декриптира със съответния обществен ключ.
При цифровите подписи има две причини за използването на hash код.
Едната причина е, че криптирането на цяло съобщение само за целите на
подписа отнема дълго време. Втората причина е, че всеки иска да криптира
подписани съобщения. В много случаи дадено съобщение е предназначено за
много хора, но автора му иска да докаже неговата идентичност.
28
За да може едно съобщение да се криптира сигурно и в същото време да
има подпис, обикновено пощата се криптира с персонален ключ, а след това
съобщението се криптира с обществения ключ на получателя, за да може всеки
да вижда съдържанието.
Цифровият подпис свързва даден документ с притежателя на определен
ключ, но често това не е добре, ако не се знае момента на подписването.
Например, един договор, който е подписан с цифров подпис не е валиден, ако на
него няма дата. Една онлайн покупка на намалена цена, която е валидна за
определен период от време изисква да има посочена дата, за да се докаже, че
продуктите са закупени в определения период.
От тук се вижда, че цифровия печат за дата е необходим за определяне
момента на поставяне на цифровия подпис. Това може да се направи с добавяне
на дата и час на документа от трета страна и след това тази информация се
криптира с персонален ключ на третата страна. Цифровият печат за време
свързва даден документ с момента на неговото създаване. Тази система не може
да се използва на световно ниво, защото няма никакви регулатори, които да
гарантират, че даден печат за време е валиден.
Прилагане на технологиите за криптиране
Има много и различни типове и видове нива на сигурност. Някои от тях,
като например ROT13, се разбиват много лесно, други като PGP (www.pgp.com)
не могат да бъдат разрушавани в рамките на приемливо време. Реално
действието им се прекъсва като се използват няколко хиляди компютъра в
продължение на няколко хиляди години. Това, което трябва да имате при работа
с тези алгоритми е парола и ключ за декриптиране, който се изпраща в PGP
формат.
Сигурността и конфиденциалността са много важни за вашата компания
въпроси и един малък бъг в софтуера за криптиране може да доведе до много по
– големи проблеми, отколкото бъг в текстообработваща програма.
Един бъг в софтуер или хардуер за криптиране може да повлияе негативно
на целия ви бизнес, просто защото всички конфиденциални неща на вашата
компания ще бъдат достъпни за всекиго. Повечето текстообработващи програми
предлагат възможности за криптиране на документи, но алгоритмите за
криптиране са много слаби и никога не трябва да разчитате на тях. Те могат да се
използват да скривате данни намиращи се на сървъра от колеги, но в никакъв
случай няма да представляват пречка за професионалисти. Компанията
AccessData (www.accessdata.com) дори е създала софтуерен пакет, който е
29
специализиран за разбиването на кодове на такива програми. Този софтуер се
продава, за да може когато някой забрави паролата си да я възстанови, но
разбира се софтуера може да се използва и за недобронамерени цели.
Друг популярен метод за защита на документи е просто да ги скриете.
Сигурността посредством неяснота е доста слаб метод на защита. В
действителност той е дори по-лош от криптиране с текстообработваща програма.
С поставянето на документи на неправилно място, някои хора си мислят, че
могат да ги скрият от останалите, но в действителност всеки може да ги намери.
С използването на обикновено търсене на файл, в повечето случаи се постига
желания резултат. Дори и при използването на слаба защита е необходимо време
за декриптиране.
Файловете криптирани със силна защита могат да се оставят на
обществени сайтове без да имате опасения, че някой може да прочете
съдържащата се в тях информация, дори и ако ги открадне. Дори и алгоритмите
и изходния код на повечето популярни технологии за криптиране да са налице,
никой не може да разбере какъв е принципа на криптиране. Сигурността идва от
алгоритмите, а не от системата, която се използва за изпълнение на тези
алгоритми. В случай, че ключа не се разпространява, никой не може да проникне
в информацията.
Налагане на конфиденциалност
В Интернет, конфиденциалността е един от най-важните въпроси. По
подразбиране Интернет е незащитена среда и всеки може да прихваща
съобщения, разменяни между две страни. Конфиденциалността на предаваните
съобщения може да се обезпечи посредством тяхното криптиране, при което
трети лица не могат да ги четат. Все още е възможно прихващането на
съобщения, от където следва, че е необходимо да се гарантира, че ключовете не
се предават през Интернет като прозрачен текст.
Конфиденциалността не е единствения важен въпрос при Интернет. От
съществено значение е сигурността на мултипотребителските системи, като
сървъри, където няколко потребителя могат да споделят един и същи диск или
конфиденциална информация. Файловете се защитават посредством пароли,
което налага обезпечаване сигурността на паролите. Това може да се постигне
като се съхрани не самата парола, а нейната hash стойност. Декодирането на
паролите е възможно, но hash стойностите не могат да се променят. При
въвеждане на парола от страна на потребител, hash стойността се изчислява и се
30
сравнява със съхранената. При това положение не е възможно да се „крадат"
данни, съхранени на система, чиято парола не се знае.
31
методи за криптиране и декриптиране на данни

Weitere ähnliche Inhalte

Was ist angesagt?

Методи за криптиране и декриптиране
Методи за криптиране и декриптиранеМетоди за криптиране и декриптиране
Методи за криптиране и декриптиранеAngel Blagyov
 
Information Security Cryptography ( L02- Types Cryptography)
Information Security Cryptography ( L02- Types Cryptography)Information Security Cryptography ( L02- Types Cryptography)
Information Security Cryptography ( L02- Types Cryptography)Anas Rock
 
Steganography and steganalysis
Steganography and steganalysisSteganography and steganalysis
Steganography and steganalysisSaloniGoyal45
 
Cryptography
CryptographyCryptography
Cryptographyherrberk
 
Encryption technology
Encryption technologyEncryption technology
Encryption technologyNeha Bhambu
 
методи за криптиране и декриптиране на данни
методи за криптиране и декриптиране на данниметоди за криптиране и декриптиране на данни
методи за криптиране и декриптиране на данниkgospodinova89
 
Evolution of Cryptography and Cryptographic techniques
Evolution of Cryptography and Cryptographic techniquesEvolution of Cryptography and Cryptographic techniques
Evolution of Cryptography and Cryptographic techniquesMona Rajput
 
Cryptography Fundamentals
Cryptography FundamentalsCryptography Fundamentals
Cryptography FundamentalsDuy Do Phan
 
Cryptography.ppt
Cryptography.pptCryptography.ppt
Cryptography.pptUday Meena
 
Network security and cryptography
Network security and cryptographyNetwork security and cryptography
Network security and cryptographyRajKumar Rampelli
 

Was ist angesagt? (20)

Методи за криптиране и декриптиране
Методи за криптиране и декриптиранеМетоди за криптиране и декриптиране
Методи за криптиране и декриптиране
 
Information Security Cryptography ( L02- Types Cryptography)
Information Security Cryptography ( L02- Types Cryptography)Information Security Cryptography ( L02- Types Cryptography)
Information Security Cryptography ( L02- Types Cryptography)
 
Steganography and steganalysis
Steganography and steganalysisSteganography and steganalysis
Steganography and steganalysis
 
Cryptography
CryptographyCryptography
Cryptography
 
Cryptography
CryptographyCryptography
Cryptography
 
Cryptography
CryptographyCryptography
Cryptography
 
Encryption technology
Encryption technologyEncryption technology
Encryption technology
 
методи за криптиране и декриптиране на данни
методи за криптиране и декриптиране на данниметоди за криптиране и декриптиране на данни
методи за криптиране и декриптиране на данни
 
Evolution of Cryptography and Cryptographic techniques
Evolution of Cryptography and Cryptographic techniquesEvolution of Cryptography and Cryptographic techniques
Evolution of Cryptography and Cryptographic techniques
 
Digital Certificate
Digital CertificateDigital Certificate
Digital Certificate
 
Cryptography
CryptographyCryptography
Cryptography
 
Cryptography Fundamentals
Cryptography FundamentalsCryptography Fundamentals
Cryptography Fundamentals
 
Cryptography
CryptographyCryptography
Cryptography
 
Cryptography
CryptographyCryptography
Cryptography
 
Cryptography
CryptographyCryptography
Cryptography
 
Criptografia
CriptografiaCriptografia
Criptografia
 
Cryptography.ppt
Cryptography.pptCryptography.ppt
Cryptography.ppt
 
Cryptography Intro
Cryptography IntroCryptography Intro
Cryptography Intro
 
Network security and cryptography
Network security and cryptographyNetwork security and cryptography
Network security and cryptography
 
Cryptography
CryptographyCryptography
Cryptography
 

Andere mochten auch

методи за криптиране и декриптиране на данни
методи за криптиране и декриптиране на данниметоди за криптиране и декриптиране на данни
методи за криптиране и декриптиране на данниGeorgi Georgiev
 
Цифровият подпис-Елена Иванова
Цифровият подпис-Елена ИвановаЦифровият подпис-Елена Иванова
Цифровият подпис-Елена Ивановаe_ivanova
 
д а н н и и кодиране
д а н н и и кодиранед а н н и и кодиране
д а н н и и кодиранеmtrad
 
PKI referat
PKI referatPKI referat
PKI referatKalina89
 
Intrusion detection system - класификация, методи и техники
 Intrusion detection system - класификация, методи и техники Intrusion detection system - класификация, методи и техники
Intrusion detection system - класификация, методи и техникиMaria Kostova
 
Методи за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данниМетоди за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данниMarketDevelopment
 
безопасност и защита при използване на уеб браузъри
безопасност и защита при използване на уеб браузърибезопасност и защита при използване на уеб браузъри
безопасност и защита при използване на уеб браузъриiradi87
 
Intrusion Detection Systems Presentation
Intrusion Detection Systems PresentationIntrusion Detection Systems Presentation
Intrusion Detection Systems Presentationradoatanasov
 
Inrusion Detection Systems Referat
Inrusion Detection Systems ReferatInrusion Detection Systems Referat
Inrusion Detection Systems Referatradoatanasov
 
Концепция за развитие на клуб Маркетинг към ИУ- Варна !
Концепция за развитие на клуб Маркетинг към ИУ- Варна !Концепция за развитие на клуб Маркетинг към ИУ- Варна !
Концепция за развитие на клуб Маркетинг към ИУ- Варна !Nikolay Georgiev
 
с- ми_за-откриване_на_атаки(ids)
с- ми_за-откриване_на_атаки(ids)с- ми_за-откриване_на_атаки(ids)
с- ми_за-откриване_на_атаки(ids)ssalieva
 
Intrusion detection and prevention system
Intrusion detection and prevention systemIntrusion detection and prevention system
Intrusion detection and prevention systemNikhil Raj
 

Andere mochten auch (14)

методи за криптиране и декриптиране на данни
методи за криптиране и декриптиране на данниметоди за криптиране и декриптиране на данни
методи за криптиране и декриптиране на данни
 
Цифровият подпис-Елена Иванова
Цифровият подпис-Елена ИвановаЦифровият подпис-Елена Иванова
Цифровият подпис-Елена Иванова
 
д а н н и и кодиране
д а н н и и кодиранед а н н и и кодиране
д а н н и и кодиране
 
PKI referat
PKI referatPKI referat
PKI referat
 
Intrusion detection system - класификация, методи и техники
 Intrusion detection system - класификация, методи и техники Intrusion detection system - класификация, методи и техники
Intrusion detection system - класификация, методи и техники
 
Методи за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данниМетоди за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данни
 
безопасност и защита при използване на уеб браузъри
безопасност и защита при използване на уеб браузърибезопасност и защита при използване на уеб браузъри
безопасност и защита при използване на уеб браузъри
 
Intrusion Detection Systems Presentation
Intrusion Detection Systems PresentationIntrusion Detection Systems Presentation
Intrusion Detection Systems Presentation
 
Inrusion Detection Systems Referat
Inrusion Detection Systems ReferatInrusion Detection Systems Referat
Inrusion Detection Systems Referat
 
Концепция за развитие на клуб Маркетинг към ИУ- Варна !
Концепция за развитие на клуб Маркетинг към ИУ- Варна !Концепция за развитие на клуб Маркетинг към ИУ- Варна !
Концепция за развитие на клуб Маркетинг към ИУ- Варна !
 
с- ми_за-откриване_на_атаки(ids)
с- ми_за-откриване_на_атаки(ids)с- ми_за-откриване_на_атаки(ids)
с- ми_за-откриване_на_атаки(ids)
 
Cryptanalysis Lecture
Cryptanalysis LectureCryptanalysis Lecture
Cryptanalysis Lecture
 
Fração irredutível
Fração irredutívelFração irredutível
Fração irredutível
 
Intrusion detection and prevention system
Intrusion detection and prevention systemIntrusion detection and prevention system
Intrusion detection and prevention system
 

Ähnlich wie методи за криптиране и декриптиране на данни

Pavel Kolev - klasifikaciq na zlonamerenite deistviq na potrebitelite
Pavel Kolev - klasifikaciq na zlonamerenite deistviq na potrebitelitePavel Kolev - klasifikaciq na zlonamerenite deistviq na potrebitelite
Pavel Kolev - klasifikaciq na zlonamerenite deistviq na potrebitelitePavel Kolev
 
курсова 91582
курсова 91582курсова 91582
курсова 91582ailiev
 
PKI presentation
PKI presentationPKI presentation
PKI presentationKalina89
 
Цифровият подпис-теория и практика
Цифровият подпис-теория и практикаЦифровият подпис-теория и практика
Цифровият подпис-теория и практикаe_ivanova
 
OpenID - Реферат
OpenID - РефератOpenID - Реферат
OpenID - РефератMarin Atanasov
 
Безопасност и защита на VPN
Безопасност и защита на VPNБезопасност и защита на VPN
Безопасност и защита на VPNEma Angelova
 
Тема:Методи за криптиране и декриптиране на данни, индефикация и автентикация
Тема:Методи за криптиране и декриптиране на данни, индефикация и автентикацияТема:Методи за криптиране и декриптиране на данни, индефикация и автентикация
Тема:Методи за криптиране и декриптиране на данни, индефикация и автентикацияГеорги Карагеоргиев
 
Методи и средства за филтриране на трафика в Lan мрежи
Методи и средства за филтриране на трафика в Lan мрежиМетоди и средства за филтриране на трафика в Lan мрежи
Методи и средства за филтриране на трафика в Lan мрежиDido Viktorov
 
боряна грудова цифровият подпис - теория и практика
боряна грудова цифровият подпис - теория и практикаборяна грудова цифровият подпис - теория и практика
боряна грудова цифровият подпис - теория и практикаBorqna Grudova
 
Особености на sniffing атаките и как да се предпазим от тях
Особености на sniffing атаките и как да се предпазим от тяхОсобености на sniffing атаките и как да се предпазим от тях
Особености на sniffing атаките и как да се предпазим от тяхUniversity of Economics - Varna
 

Ähnlich wie методи за криптиране и декриптиране на данни (20)

Web Security Intro
Web Security IntroWeb Security Intro
Web Security Intro
 
Pavel Kolev - klasifikaciq na zlonamerenite deistviq na potrebitelite
Pavel Kolev - klasifikaciq na zlonamerenite deistviq na potrebitelitePavel Kolev - klasifikaciq na zlonamerenite deistviq na potrebitelite
Pavel Kolev - klasifikaciq na zlonamerenite deistviq na potrebitelite
 
курсова 91582
курсова 91582курсова 91582
курсова 91582
 
Tor
TorTor
Tor
 
PKI presentation
PKI presentationPKI presentation
PKI presentation
 
Цифровият подпис-теория и практика
Цифровият подпис-теория и практикаЦифровият подпис-теория и практика
Цифровият подпис-теория и практика
 
OpenID - Реферат
OpenID - РефератOpenID - Реферат
OpenID - Реферат
 
Vpn mreji 105227
Vpn mreji 105227Vpn mreji 105227
Vpn mreji 105227
 
Безопасност и защита на VPN
Безопасност и защита на VPNБезопасност и защита на VPN
Безопасност и защита на VPN
 
Netsec
NetsecNetsec
Netsec
 
Тема:Методи за криптиране и декриптиране на данни, индефикация и автентикация
Тема:Методи за криптиране и декриптиране на данни, индефикация и автентикацияТема:Методи за криптиране и декриптиране на данни, индефикация и автентикация
Тема:Методи за криптиране и декриптиране на данни, индефикация и автентикация
 
Advanced Encryption Standard
Advanced Encryption StandardAdvanced Encryption Standard
Advanced Encryption Standard
 
Методи и средства за филтриране на трафика в Lan мрежи
Методи и средства за филтриране на трафика в Lan мрежиМетоди и средства за филтриране на трафика в Lan мрежи
Методи и средства за филтриране на трафика в Lan мрежи
 
боряна грудова цифровият подпис - теория и практика
боряна грудова цифровият подпис - теория и практикаборяна грудова цифровият подпис - теория и практика
боряна грудова цифровият подпис - теория и практика
 
10779
1077910779
10779
 
IDS
IDSIDS
IDS
 
История на хакерството и на хакерите
История на хакерството и на хакеритеИстория на хакерството и на хакерите
История на хакерството и на хакерите
 
VPN Security
VPN SecurityVPN Security
VPN Security
 
Особености на sniffing атаките и как да се предпазим от тях
Особености на sniffing атаките и как да се предпазим от тяхОсобености на sniffing атаките и как да се предпазим от тях
Особености на sniffing атаките и как да се предпазим от тях
 
Vpn mreji 105227
Vpn mreji 105227Vpn mreji 105227
Vpn mreji 105227
 

методи за криптиране и декриптиране на данни

  • 1. Варна,2014 РЕФЕРАТ ПО БЕЗОПАСНОСТ И ЗАЩИТА НА ТЕМА : МЕТОДИ ЗА КРИПТИРАНЕ И ДЕКРИПТИРАНЕ НА ДАННИ Изготвил : Кристина Господинова VI курс, Фак. № 400370 Спец. Приложна информатика Проверил : доц.д-р Ст. Дражев ас. Р. Начева
  • 2. Съдържание Съдържание..........................................................................................................................................2 Дефиниране на понятието криптография...........................................................................................4 Основни понятия при криптографията................................................................................................4 История на криптографията и криптоанализа....................................................................................6 Съвременна криптография..................................................................................................................8 Причини за използване на криптиране.............................................................................................10 Начини за криптиране на данни........................................................................................................12 Разпространени алгоритми................................................................................................................12 Средства за осигуряване на сигурността чрез криптиране на данни..............................................13 Защита на говор..............................................................................................................................13 Системно криптиране на данни.....................................................................................................13 Изисквания към криптосистемите.....................................................................................................14 Степени на криптиране......................................................................................................................15 Симетрично криптиране....................................................................................................................15 Основни методи за симетрично криптиране....................................................................................16 Замяна на символи при симетрично криптиране........................................................................16 Разместване при симетрично криптиране....................................................................................16 Гамиране при симетрично криптиране.........................................................................................17 Блокови шифри при симетрично криптиране..............................................................................17 Предимства и недостатъци на симетричното криптиране..............................................................17 Алгоритми, използвани в симетричното криптиране......................................................................18 DES (Data Encryption Standard).......................................................................................................18 3-DES (Triple Data Encryption Standard)..........................................................................................18 IDEA (International Encryption Algorithm).......................................................................................18 2
  • 3. AES (Advanced Encryption Standard)...............................................................................................19 Асиметрично криптиране...................................................................................................................19 Изисквания към системите с асиметрично криптиране..................................................................21 Предназначение на системите с асиметрично криптиране............................................................21 Предимства и недостатъци с асиметрично криптиране..................................................................21 1. Предимства на системите с асиметрично криптиране............................................................21 2. Недостатъци на системите с асиметрично криптиране...........................................................21 Алгоритми на системите с асиметрично криптиране......................................................................22 Основните алгоритми, които намират приложение в съвременните асиметрични криптосистеми и одобрени като международни стандарти са – RSA, DSA и ECC......................22 RSA (Rivest, Shamir, Aldeman – имената на създателите му) .......................................................22 Начин на шифриране......................................................................................................................22 Сравнение между криптирането със секретен и обществен ключ.................................................24 SSL Certificate.......................................................................................................................................25 Криптографски метод Steganography................................................................................................25 Криптиране на електронна поща......................................................................................................26 Цифрови подписи...............................................................................................................................28 Прилагане на технологиите за криптиране......................................................................................29 Налагане на конфиденциалност........................................................................................................30 Използвана литература......................................................................................................................32 3
  • 4. Дефиниране на понятието криптография Представката „крипто“ („crypto“) идва от гръцката дума „krypto“, която означава „скрит“. Думата „криптология“ („cryptology“) идва от „кгуро“ и „logos“ и следователно означава „скрит свят“. Тя се използва за описание на изследователските области в криптографията и криптоанализите. Древните гърци са използвали тази дисциплина за скриване на информация. Криптографията е изкуство дадена информация да се запази конфиденциална, в такава форма, в която не може да се прочете от човек, който не притежава необходимия ключ. Криптоанализите са изкуството да се използват алгоритмите разработени в криптографията. Криптирането може да се използва за нещо повече от конфиденциална комуникация. Посредством криптиране могат да се трансформират данни във форма, от която те не могат да се четат без четящия ги да има подходящо „познание“ за схемата на криптиране. Това „познание“ се нарича ключ. Ключът се използва за разрешаване на контролиран достъп до информацията на определени хора. При това положение информацията може да се изпрати до всеки, но само тези, които имат правилния ключ могат да я видят. Често се приема, че криптирането е компонент на сигурността, но в действителност то е механизъм за постигане на сигурност. Основни понятия при криптографията • Открит (изходен) текст – данни (не задължително текстови), предавани без използване на криптография. • Шифрован (закрит) текст – данни, получени след използване на криптосистема с указан ключ. • Криптосистема – семейство обратими преобразувания на откритият текст в шифрован. • Ключ – параметър на шифъра, определящ избора на конкретно преобразуване на даденият текст. В съвременните шифри алгоритъма на шифриране е известен и криптографичната устойчивост на шифъра изцяло се определя от секретността на ключа. • Частен ключ - частен ключ или секретен ключ е кодиращ/декодиращ ключ, известен само на едната страна от тези, които разменят кодирани съобщения. Традиционно в криптографията трябва да има ключ, който да е достъпен и за двете страни така, че всеки да може да кодира и декодира 4
  • 5. съобщения. Рискът при такава система е, че ако ключът бъде разбит или откраднат, системата спира да бъде защитена (на практика тя е разбита). В такива ситуации частния ключ се използва заедно с публичен ключ. • Публичен ключ - стойност, която комбинирана по подходящ начин с частен ключ може да се използва ефективно за декриптиране на кодирано съобщение и електронен подпис. Използването на публичен и частен ключ е известно като асиметрична криптография. • Криптоанализ – наука, изучаваща математическите методи за нарушаване на конфиденциалността и цялостноста на информацията. • Криптоаналитик – човек, създаващ и прилагащ методите на криптоанализа. • Криптологията – като единна наука за създаване и разбиване на шифри. Съставя се от криптографията и криптоанализът. • Криптографска атака – опит на криптоаналитик да предизвика отклонения в атакуемата защитена система за обмен на информация. Успешната криптографска атака се нарича разбиване или отваряне. • Шифриране (криптиране) – процес на нормално прилагане на криптографско преобразуване на открит текст на основата на алгоритъм и ключ, в резултат на което възникава шифрован текст. • Дешифриране (декриптиране) – процес на нормално прилагане на криптографско преобразуване на шифриран текст в открит. • Криптографска устойчивост – способността на криптографския алгоритъм да противостои на криптоанализ. 5
  • 6. История на криптографията и криптоанализа Шифрите са се използвали предимно за да се гарантира секретна комуникация в шпионажа, военното дело, и дипломацията. Но криптография се е използвала и за защита на личността. Шифрираните текстове, получавани след прилагане на класическите шифри винаги съдържат статистическа информация за изходния текст, която може да бъде използвана за разбиването им. След разработването на честотния анализ в IX век, практически всички такива шифри стават уязвими за достатъчно квалифициран дешифратор, чак до измислянето на многоазбучният шифър от Леоне Батиста Алберти около 1465 година. Неговото нововъведение се състои в това, че използва различни шрифтове за различните части на съобщението. Също така, той изобретява вероятно първата автоматична шифровъчна машина – колело, което осъществявало частична реализация на неговото изобретение. В многоазбучният шифър на Вижинер, за шифриране се използва ключова дума, която контролира замяната на буквите в зависимост от това, коя буква от ключовата дума е използвана. В средата на XVIII век английският математик Чарлз Бабидж разработва тест, който може да открие дължината на ключа на Шифърът на Вижинер и тогава разглежда шифъра като сбор на обикновени Цезарови шифри. В XIX век става окончателно ясно, че секретността на алгоритъма за шифриране не се явява гаранция срещу разбиването му, още повече става ясно, че адекватната криптографска защита трябва да остава защитена, дори ако противника познава напълно алгоритъма за шифриране. Секретността на ключа трябва да е достатъчна, за да се осигури криптоустойчивост. Този фундаментален принцип е формулиран за първи път от Август Кирхов, холандски лингвист и криптограф, през 1883 г. За облекчаване на шифрирането са разработвани различни спомагателни устройства. Едно от най-древните е скиталата, измислена в Древна Гърция, представляваща просто пръчка. С появата на многоазбучния шифър, устройствата започват да се усложняват, като например диска с шифротекст на Алберти, квадратната дъска(tabula recta) на Йоханес Тритемиус и дисковият шифър на Томас Джеферсън. Най-известна през XX век е роторната машина Енигма, използвана от немците по време на Втората световна война. Развитието на електрониката и компютърната техника дава силен тласък в развитието на криптографията и криптоанализа. Започва развиването на академични криптографски изследвания с публикуването на стандарта DES от NBS, в статията на Дифи – Хелман и откриването на алгоритъма RSA. След това акцентът в криптографията се премества от лингвистичните методи към математическите, включително теория на информацията, статистика, комбинаторика, абстрактна алгебра и теория на числата. 6
  • 7. Основните класически видове шифриране са: 1) Преместване, при което буквите на съобщението се разместват (например „помогни ми“ става „опомнги им“ при най-простото преместване; 2) Замяна, когато буквите или групи от букви по определено правило се заменят с други букви или групи от букви (например „fly at once“ става „gmz bu podf“ при замяна на всяка буква със следващата в азбуката). Такъв шифър е използвал Юлий Цезар за комуникация с генералите си. Макар и с доста дълга история, криптографията няма сериозен напредък до 19 век. Тогава английският математик Чарлз Бабидж разработва тест, с който да разбива Шифърът на Вигенере – прост многоазбучен шифър, който може да открие дължината на ключа и тогава разглежда шифъра като сбор на обикновени Цезарови Шифри. Малко по-късно, Августе Керковс, холандски лингвист и криптограф, написва шест принципа за създаването на криптиращи алгоритми: 1) „Системата трябва да бъде, ако не теоретично, то поне практически неразбиваема.” 2) „Системата не трябва да затруднява потребителя, и не трябва да изисква твърде голяма сигурност” 3) „Ключът трябва да може да се запомни без бележки и да се сменя лесно.” 4) „Шифрованият текст трябва да може да бъде изпращан с телеграф.” 5) „Апаратурата трябва да бъде лесно преносима, от сам-човек.” 6) „Системата трябва да е проста, да не изисква някакви знания или дълъг списък с правила, или въобще много мислене.” От тези правила, най-известно е второто, под името Принцип на Керковс. Друг изявен криптограф от това време е Едгар Алан По, който написва есе, в което описва методи за разбиване на шифри, оказали се полезни за дешифриране на немските кодове през Първата Световна война. Криптографията прави своя огромен скок по време на Втората Световна война, когато се произвеждат много електро-механични криптиращи машини. Същевременно се наблюдава изумителен напредък в разбиването на шифри. Всичко това е засекретено, но след изтичането на 50 годишният период при Великобритания, и отварянето на архивите на САЩ, информацията, свързана с криптографията през Втората световна война, става достъпна. Тогава немската армия използва електро-механичната роторна машина Енигма, която претърпява няколко подобрения по-време на войната. 7
  • 8. През 1932 година, с помощта на доставените сведения от капитан Густав Бертранд, от френското разузнаване, полският криптограф Мариан Райевски, от Шифър Бюро, успява да направи копие на немската Енигма. Това е може би най- големият криптографски пробив в историята. Той и неговите колеги – Йежъ Ружетски и Хенрйък Зйъгалски – започват да разчитат немските съобщения, като същевременно са в крачка с промените в Енигма. Когато по време на войната, Полша става в неизгодна позиция, Генералният Щаб заповядва британските и френските разузнавателни служби да бъдат посветени в тайната, за разчитане съобщенията на немската армия, както и става. От там нататък с декриптирането се заема основно Блетчли Парк, Англия, където работили истински светила на тогавашната криптография, като Гордън Уелчмен и разбира се, Алан Тюринг, считан за бащата на съвременната компютърна наука. Войната в криптографията е не по-малко ожесточена от тази на бойните полета. Много средства и сили се хвърлят в тази насока, и доста битки са решени благодарение на това. Другите страни, участващи във войната, също ползват електро-механични устройства за криптиране. Съюзниците притежавали британски TypeX и американския SIGABA. Също така, британските Special Operations Executive (SOE) агенти, използват наизустени поеми за ключ към шифри, но по-късно преминават към one-time-pad. Германия също прави няколко механични опита за one-time-pad, които са наречени от съюзническите войски Fish ciphers. Съвременна криптография Началото на модерната криптография е положено от Клауд Елуоод Шанън, когато през 1949 година издава книгата си „Communication Theory of Secrecy Systems”, и малко по – късно книгата „Mathematical Theory of Communication”, заедно със Уорън Уейвър. След това криптографията преминава в секретните държавни организации и няма почти никакви публикувани открития до 1970 година. Седемдесетте години бележат излизането на криптографията от сянката на правителствените организации. Първо е публикуван проекта за DES(Data Encryption Standard) във Федералният Регистър на САЩ на 17 март 1975 г. Проектът DES е предложен от IBM, по покана на Националното Бюро за Стандартизация (NBS, в момента NIST), в опит за осигуряване на конфиденциалност на комуникациите за бизнеса и финансовите организации, като банките например. NSA(National Security Agency) става първата в света правителствена организация, която „дава своята благословия” за публичен стандарт за криптиране. 8
  • 9. DES блоков шифър, който ползва 64 битов ключ, но тъй като 8 бита са използвани за проверка, и реално ключът е 56 битов. Има хипотези, че NSA са оставили задна вратичка, чрез която бързо могат да разбиват съобщения на DES. През 1976 г. е публикувана статията „New Directions in Cryptography”(„Нови насоки в криптографията”) от Уитфилд Дифи и Мартин Хелман, една своеобразна революция в развитието на науката. В статията се обсъждат начини за крипто-системи, в които да се осигури разговорът между всеки двама потребители в системата. Тази статия предлага начин, чрез който ключът може да се предава през несигурна мрежа. Това става по-следният начин: • Имаме двама приятели от интернет, Петър и Иван, които искат да си пращат лични съобщения, като за целта ги криптират. И статията на Дифи и Хелмен дава възможност, те да уговорят своя ключ по несигурна мрежа. За целта, се избират едно просто число – p, и една основа q, които биват изпратени през несигурната мрежа. 1) Петър избира числото a, и пресмята qa (mod p) = A, и изпраща А на Иван. 2) Иван от своя страна, избира числото b, пресмята qb (mod p) = B, и изпраща числото B. 3) Петър вече има числото B, за това пресмята k1 = Ba, a Иван пресмята k2 = Ab. Тъй като qab = qba, то k1 = k2 = k. И уговореният ключ е k. Друга интересна тема, засегната в статията на Дифи и Хелман е така наречената еднопосочна функция. Така наречените хеш-функции, се използват за лесно и бързо криптиране на дадена информация, но почти, или съвсем, невъзможното й декриптиране. При authentication, паролата на потребителят се криптира посредством дадена хеш-функция, и се получава резултат – хеш-адрес, който се записва в паметта. Когато потребителят иска да ползва потребителското си име, той въвежда парола, тя преминава през същата хеш-функция и полученият резултат се сравнява със запазеният вече в паметта. По този начин се избягва разчитането на запазената парола, от трето, неоторизирано за това лице. С тези разработки, двамата учени полагат основите на ново поколение от алгоритми – асиметрични. До тогава, всички алгоритми са симетрични – има единствен ключ, който се ползва за криптиране и декриптиране. „New Directions in Cryptography” представя начин, по който може да се използва един ключ за криптиране, и един за декриптиране, така наречената private-public key(публичен-личен ключ) система. Тя ползва два математически свързани ключа, един всеизвестен и един таен. За пример отново ще вземем Петър и Иван. Петър има публичен ключ Ppu и личен Ppr , а Иван има съответно Ipu и Ipr . Тъй като публичните ключове са известни, Петър криптира съобщението си с Ipu и с 9
  • 10. Ppr, а Иван декриптира полученото съобщение с Ppu и с Ipr. По този начин, Иван може да е сигурен, че съобщението е изпратено от някой, знаещ личния ключ на Петър, и че ако някой се опита да го разчете, ще трябва да знае неговият личен ключ. И тъй като няма обмяна на ключове през мрежата, асиметричните алгоритми могат да се считат за по-сигурни. Предполага се, че асиметричните алгоритми, ключовата обмяна на Дифи и Хелман, както и за момента най-добрият алгоритъм – RSA, са били независимо открити от британските тайни служби, преди публикациите им, но се пазили в пълна тайна. Съвременната криптография се характеризира с използването на компютри и от там, с усложняване на прилаганите алгоритми за шифриране. Криптографията започва да се прилага за защита не само на текст, а и за всякакви данни в цифров вид. Това довежда и до използването на сложни математически функции и прилагането им на практика в криптографията. Бързото развитие на ЕИМ води и до бързо намаляване на криптоустойчивостта на съответните алгоритми. Също така навлизат асиметричните алгоритми и криптографията започва да се използва за удостоверяване на самоличността на подателя чрез подписване с електронен подпис. Криптографията се използва и за защита на данните при банкови преводи, банкови и небанкови карти и други плащания, което спомага за навлизане на електронното банкиране и много улеснява платежните операции. Причини за използване на криптиране Криптирането позволява изпращане по електронна поща на конфиденциални данни, като договори или персонална информация или съхраняване на конфиденциална информация върху преносим компютър, без да има опасения, че някой може да я открадне и данните да бъдат разпространени. Без сериозно криптиране всяка информация може да бъде прихваната лесно и използвана срещу нейния притежател. Пример за това може да бъде отдела за покупки на дадена компания, който комуникира с доставчиците или компания, която разменя ценови листи, договори, спецификации и информация за нови продукти със своите партньори. Бизнес компаниите разменят все повече и повече информация през Интернет. В много случаи тази информация е с финансов произход и в случай, че попадне при друг получател, може да има негативно влияние върху бизнеса на компанията. За целите на електронния бизнес, информацията трябва да се запази конфиденциална. Без използването на криптографски методи, това не може да се гарантира. 10
  • 11. Най – важното приложение, което трябва да използва криптиране е електронната поща. Без криптиране, електронните пощи са електронен еквивалент на класически пощенски картички. Електронните пощи нямат физическа форма и могат да съществуват електронно на повече от едно място в един и същи момент от време. В случай, че имате инсталиран добър софтуер за криптиране и декриптиране, той автоматично ще криптира изпращаните от вас съобщение и ще декриптира получаваните. Всичко, което трябва да направите е да посочите, че дадено съобщение трябва да бъде криптирано. Криптираните електронни пощи могат да се отъждествят с писмо, което е запечатано в плик и поставено на сигурно място. Тези, които не притежават ключа не могат да видят съдържанието. С увеличаването на броя на използваните компютри и мрежи, въпроса за гарантиране сигурността на информацията предавана през мрежите става все по – важен. Поради факта, че компютърния свят премина от структурирани системи към среда клиент/сървър, криптографията започна да се превръща във фундаментално бизнес средство. Интернет, който е база за много бизнес транзакции, понастоящем е несигурен, тъй като всеки може да прихване дадено предаване. Въпросите със сигурността в интернет се решават бавно, защото промяната на фундаменталните стандарти е трудна. Онлайн банките и онлайн плащанията са двете най-големи интернет приложения, които разчитат на криптирането. Интернет клиентите са много чувствителни на тема сигурност. Поради тази причина, всички web браузъри поддържат криптиране на документите. Стандартната дължина на ключа при международните версии на браузърите е 40 бита. Поради факта, че тази дължина е малка, декриптирането на ключа е лесно и в много случаи се налага използването на допълнителни компоненти за криптиране. С криптографията може да се изпълни и контрол на достъпа. Телевизионните канали, които са достъпни само за абонати работят на този принцип. Поради факта, че не е възможно да се отварят или затварят канали за индивидуални абонати през сателит, информацията се криптира и ключа се разпространява към тези, които са платили за тези канали. В зависимост от типа на телевизионния канал ключа е валиден за цял ден, или се променя за всяка програма. В последният случай, ключа за определена програма се разпространява до клиентите, които са платили за нея. Ключовете се съхраняват в приемник, който декодира програмата. Приемникът е свързан към доставчика по телефонна линия, по която може да се изпрати или отнеме ключа. 11
  • 12. Начини за криптиране на данни • Симетричен начини за криптиране на данни – за кодиране и декодиране на данните се използва един и същи ключ за кодиране.  Поточни – информацията се обработва побитово (посимволно);  Блокови – информацията се разбива на блокове, които се обработват. • Асиметричен начини за криптиране на данни – използват се два ключа. Първият от тях, който е общоизвестен, служи за шифриране на данните, а втория, който се знае само от собственика му, служи за разшифриране на данните. Двата ключа се генерират едновременно и са неразривно свързани един с друг. Разпространени алгоритми Разпространени алгоритми за криптиране : • Симетрични – DES, Triple DES, AES, ГОСТ 28147-89, Camellia, Twofish, Blowfish, IDEA, RC4 и др; • Асиметрични – RSA, Дифи-Хелман (Diffie-Hellman) и Elgamal (Ел-Гамал); • хеш-функции :  удостоверяващи източника – MD5-MAC, DES in CBC mode, MAA;  удостоверяващи целостта на данните – MD4, MD5, SHA-1, ГОСТ Р 34.11-94. 12
  • 13. Средства за осигуряване на сигурността чрез криптиране на данни • Защита на говор Цифрови шифриращи телефони, позволяват защита от неоторизирано подслушване. Работят в открит или закрит режим и позволяват индивидуални и групови разговори. Поддържат телефонен указател, автоматично набиране и дневник за използване на устройството. • Линейно криптиране на данни – за защита на глобалните комуникации се използват устройства за криптиране и защитени модеми.  Устройства за криптиране на данни – поставят се между модема и мрежовия процесор за всяко направление и осигуряват криптографска защита на данните, предавани по канала за връзка.  Защитени модеми – обединяват функциите на модема и криптиращото устройство. Работят в асинхронен или синхронен режим по комутируеми или арендовани канали. • Системно криптиране на данни Системното криптиране се реализира вътре в компютрите и се явява функция на операционната система или на специализирана програма. Възможен е и вариант с апаратна реализация. Обработените файлове се съхраняват в шифриран вид във външната памет на компютъра и когато е необходимо се предават по мрежата. 13
  • 14. Изисквания към криптосистемите За съвременните криптосистеми важат следните общоприети изисквания: • Шифровано съобщение може да бъде прочетено само при наличие на съответен ключ; • Броя на операциите, необходими за определяне използвания за шифриране ключ по фрагмент от шифрирания текст и съответстващия му открит текст, трябва да бъде не по-малък от общия брой възможни ключа; • Броят на операциите, необходими за дешифриране на дадена информация чрез изпробване на всички възможни ключове трябва да има долна граница, която да е по-голяма от възможностите на съвременните компютри. • Знаенето на алгоритъма на шифриране не трябва да влияе на надеждността на защитата; • Незначителна промяна на ключа, трябва да води до съществено изменение на вида на шифрования текст; • Структурните елементи на алгоритъма на шифриране трябва да не се променят; • Допълнителните битове, вмъкнати в съобщението в процеса на шифриране, трябва да са надеждно скрити в шифрирания текст; • Дължината на шифрирания текст трябва да бъде равна на дължината на изходния текст; • Не се допуска лесна за установяване зависимост между ключове, последователно използвани в процеса на шифриране; • Всеки ключ от множеството възможни ключа, трябва да осигурява надеждна защита на информацията; • Алгоритъмът трябва да допуска както програмна, така и апаратна реализация, като при това промяната в дължината на ключа не трябва да довежда до качествено влошаване алгоритъма на шифриране. 14
  • 15. Степени на криптиране Технологиите за криптиране могат да се разделят в няколко групи, в зависимост от степента на защита/криптиране : • Слаби – такива са текстовите документи, защитени с парола от текстообработваща програма. Този тип програми използват криптиране с много ниска степен и с помощта на прости средства може да се разбере използваната парола; • Устойчиви – с използването на технология за симетрично криптиране може да се създаде устойчива защита, но слабата страна на тези технологии е в това, че при предаване на ключа през несигурни мрежи той може да се прихване; • Силни – с използването на технология с обществен ключ, предаването на ключа през несигурни мрежи е безопасно; Симетрично криптиране При симетричните криптосистеми се използва един и същ ключ за шифриране и за дешифриране на информацията (процесът е двупосочен). Този ключ трябва да бъде известен и на двете страни – тази, която шифрира информацията и тази, която я дешифрира. Необходимо е надеждно съхраняване, разпространение и периодично обновяване на тези ключове между потребителите на една симетричната криптосистема. 15
  • 16. Основни методи за симетрично криптиране Цялото многообразие от криптографически методи може да се сведе до следните класове преобразуване: • Замяна на символи при симетрично криптиране Най-простия вид преобразуване, състоящ се в замяна символите на изходния текст с други от същия алфавит. За осигуряване на висока криптоустойчивост е необходимо използването на големи ключове.  Моноалфавитна замяна  Полиалфавитна замяна Всеки символ се заменя с друг символ, подбран от множество символи, генерирани от псевдослучаен генератор. Генератор на псевдослучайни числа – генерира случайни числа в рамките на определен брой комбинации. Тези числа могат да бъдат многократно генерирани в същия ред. • Разместване при симетрично криптиране Сравнително прост метод за криптографическо преобразуване. Като правило се използва в комбинация с други методи. 16
  • 17. • Гамиране при симетрично криптиране Методът се състои в обработка на изходния текст с псевдослучайна последователност генерирана на база съответния ключ. Обработката на получената гама с изходния текст трябва да става по обратим начин (например с използване на събиране по модул 2). Процесът на дешифриране на данните се свежда до повторна генерация на същата гама, на база известния ключ и обработката и с шифрирания текст. • Блокови шифри при симетрично криптиране Последователност (с възможност за повторение и редуване) на основните методи за преобразуване, прилагани към блок от текста за шифриране. По – голяма част от известните стандарти за шифриране използват блокови шифри. Предимства и недостатъци на симетричното криптиране 1. Предимства на симетричното криптиране : • Голяма скорост на криптиране/декриптиране, което му дава възможност да работи с големи масиви данни; • Лесни за реализация. 2. Недостатъци на симетричното криптиране: • Секретният ключ е само един и всяка от страните, работещи с него, може да го компрометира. Това налага честа смяна на използваните ключове; • В мрежа с голям брой участници е необходимо поддържане, разпределение и осигуряване секретността на голям брой ключове. 17
  • 18. Алгоритми, използвани в симетричното криптиране Като международни стандарти в съвременните симетрични криптосистеми са намерили приложение : • DES (Data Encryption Standard) DES (Data Encryption Standard) е симетричен алгоритъм за криптиране, в който един и същ ключ се използва както за шифриране, така и за дешифриране на текста. Разработен е от фирмата IBM и утвърден от правителството на САЩ през 1977 година като официален стандарт (FTPS 46 – 3). DES е една от най- разпространените схеми за криптиране днес. Работи с 64 – битови блокове от съобщения. Алгоритъмът използва серия от стъпки за преобразуване на 64 – те входящи в 64 изходящи бита. В своя стандартен вид, алгоритъмът използва 64 – битови ключове – 56 бита, от които се избират случайно. Останалите 8 бита са за контрол по четност (по един за всеки 7-битов блок от 56-битовата случайна стойност). Алгоритъмът използва комбинация от нелинейни (S-блокове) и линейни (заменящи E, IP, IP-1) преобразования. DES алгоритъма има няколко режима:  режим електронна кодова книга (ECB — Electronic Code Book);  режим свързване на блокове (СВС — Cipher Block Chaining);  режим обратна връзка по шифротекст (CFB — Cipher Feed Back);  режим обратна връзка по изход (OFB — Output Feed Back). В днешно време DES се използва широко в множество комерсиални приложения и може да бъде използван и в четирите режима: ECB, CBC, CFB и OFB. Обикновено работи в режим CBC или CFB. • 3-DES (Triple Data Encryption Standard) Алгоритъмът представлява развитие на DES, като използва трикратно последователно шифриране чрез DES и 168-битов ключ (56*3). Поради опасност от прихващане, ефективната дължина на ключа е 112 бита, която въпреки това е достатъчна за "днешните" изисквания. Притежава висока степен на надеждност. • IDEA (International Encryption Algorithm) 18
  • 19. състои от 8 идентични цикъла, следвани от изходна трансформация. Шифрира 64-битов блок от изходни данни в 64-битов блок шифрирани данни, като използва 128-битов ключ. При всяка итерация се използват шест 16-битови подключа. IDEA е 3 пъти по-бърз от 3-DES и е по-сигурен. Търговското му използване е свързано с заплащане на лицензионна такса. • AES (Advanced Encryption Standard) AES (Подобрен стандарт за шифриране) е стандарт за шифриране, приет през 2002 г. от американския Национален институт за стандарти и технология. Към 2009 г. това е един от най-широко използваните криптографски алгоритми. Стандартът включва приложение на алгоритъма Рейндал, разработен през 1998 г. от белгийските криптографи Винсент Реймен и Жоан Дамен, като използва шифроващи ключове с три дължини: 128, 192 или 256 бита. Дължината на шифриращия ключ определя броя повторения на криптирането, тоест броя трансформации необходими за превръщането на входа, наречен „plaintext“ (просто текст) , в изходния резултат наречен “ciphertext” (шифрован текст). За различните дължини на ключовете повторенията са:  10 цикъла за 128-битов ключ;  12 цикъла за 192-битов ключ;  14 цикъла за 256-битов ключ. Всеки цикъл се състои от няколко последователни стъпки. Стъпките се изграждат от пет подобни една на друга процедури, като една от тях зависи от криптиращият ключ. Криптираното съдържание може да се трансформира в оригиналния текст, използвайки същият ключ, като се приложат набор от обратни стъпки. Байтовете на входното съобщение ("plaintext") се записват в матрица, най – често именована "state" ("статус", "положение"). Върху тази матрица се извършват криптиращите трансформациите на алгоритъма Рейндал. В съвременните системи за защита на информация симетричните криптосистеми почти не се използват самостоятелно, а винаги в комбинация с асиметричните Асиметрично криптиране Основна слабост на криптосистемите със симетрично криптиране се явява проблема с разпределение на ключовата информация. За да е възможен обмен на конфиденциална информация е необходимо за предаване на ключове да се 19
  • 20. използва някаква допълнителна криптосистема. За решаване на този проблем бе разработена система с открит ключ, която използва резултати от класическата и съвременна алгебра. При криптосистеми с открит ключ всеки потребител притежава два ключа - публичен и частен. Първият е достъпен по принцип за всички, които се интересуват, докато частният се съхранява единствено от притежателя му. Шифриране на определена информация се извършва винаги чрез използване на двойката ключове и процесът е еднопосочен. При асиметричните криптосистеми необходимостта от надеждно съхраняване на публичните ключове отпада, те се разменят свободно от потребителите или се публикуват в Web сайтове. Криптосистемите с открит ключ използват необратими или едностранни функции, които притежават следното свойство: при зададено значение на x е относително просто да изчисли значението на f(x), но ако y=f(x), то липсва прост начин за изчисляване на значението x. Най – общо съществуващите криптосистеми с открит ключ се базират на един от следните типове необратими преобразувания : • Разлагане големи числа на прости множители; • Изчисляване логаритъм в крайно поле; • Изчисляване на корен на алгебрично уравнение. 20
  • 21. Изисквания към системите с асиметрично криптиране • Преобразуването на изходния текст трябва да бъде необратимо и да изключва възстановяването му на база открития ключ; • Определянето на закрития ключ на закрития трябва да бъде невъзможно със съвременни технически средства. Предназначение на системите с асиметрично криптиране • Като самостоятелно средство за защита на предавани и съхранявани данни; • За разпространение и съхранение на ключове за симетрично шифриране; • Като средство за автентификация на потребителите (електронен подпис). Предимства и недостатъци с асиметрично криптиране 1. Предимства на системите с асиметрично криптиране • Двойката ключове (частен и публичен) могат да се използват дълъг период от време - до няколко години; • За разлика от симетричните, в мрежа с N участници броят на поддържаните ключове е равен на броя на участниците; • Позволяват изграждане на надеждна и ефективна схема за електронно подписване и верифициране на данни. 2. Недостатъци на системите с асиметрично криптиране • Значително по-бавни в сравнение със симетричните; • При използване за криптиране ключът е много по-дълъг от този при симетричните; 21
  • 22. Алгоритми на системите с асиметрично криптиране Основните алгоритми, които намират приложение в съвременните асиметрични криптосистеми и одобрени като международни стандарти са – RSA, DSA и ECC. • RSA (Rivest, Shamir, Aldeman – имената на създателите му) RSA е алгоритъм за шифриране на данни, при който се използват различни ключове за криптиране и декриптиране. Наименованието идва от фамилните имена на създателите му Ronald L. Rivest, Adi Shamir и Leonard Adleman. Патентован е през 1983 г, освободен е от патент през 2000 г. Ключът с дължина от 512 до 1024 бита се използва за кодиране и е различен от ключа, използван за декодиране. Алгоритъмът на RSA предоставя процедура за подписване на електронен документ и за проверка на автентичността на подписа. Електронният подпис не може да бъде константа – той е реквизит на електронния документ, на който е „положен“. Операциите на RSA, независимо дали кодирането, декодирането, подписването или проверката, всъщност представляват модулно експоненциране. Това изчисление се извършва като серия модулни „умножения“. RSA в момента е използван широко в много продукти, платформи и промишлености по света. Той намира разпространение в много търговски софтуерни продукти и е планирано да бъде използван в много повече. RSA е приложен в операционни системи на Майкрософт, Епъл, Сън и Новел. В практиката RSA може да бъде открит в телефони, на мрежови карти за Интернет и на смарт карти. Като цяло е внедрен като мярка за сигурност във всички главни протоколи за сигурни интернет-комуникации. Също така е използван вътрешно в много институции, включително клонове на американското правителство, водещи корпорации, национални лаборатории и университети. Лицензът за технологията на RSA е придобит от около 350 компании. Приблизителният брой на машините за кодиране на базата на RSA е около 300 милиона, правейки го досега най – широко използвания алгоритъм за криптиране в света. Начин на шифриране 1. Генериране на двойка ключове 1) Избират се две различни прости числа p и q. За по – добра сигурност те трябва да бъдат случайни и с еднакъв брой цифри (представени в двоична бройна система); 2) Изчислява се n=pq. Това е модулът на частния и публичния ключ; 22
  • 23. 3) Изчислява се функцията на Ойлер: φ(n) = (p-1)(q-1); 4) Избира се цяло число e, така че 1 < e < φ(n) и освен това e и φ(n) да нямат общи делители. Експонента на публичния ключ е e; 5) Изчислява се d, което удовлетворява уравнението de≡1 (mod φ(n)). С други думи, ed – 1 може да бъде разделено без остатък на (p-1)(q-1). Експонента на частния ключ е d. Публичният ключ е съставен от модула n и от публичната експонента e. Частният ключ съдържа модула n и частната експонента d. 2. Шифриране Получателят предава публичния си ключ на изпращача и съхранява частния ключ. Изпращачът изпраща съобщение M. Първоначално M е превърнато в число като се използва предварително договорен за целта протокол. След което се шифрира: изчислява се с, където: Алгоритъм за бързо степенуване позволява бързото му изчисление, след което с бива изпратено. 3. Дешифриране Получателят възстановява m от c, като използва ключовата експонента d от: Ако е дадено m, оригиналното съобщение M може да бъде възстановено, като се обърне схемата. • DSA Алгоритъмът се използва в механизми за създаване на електронен подпис. Сигурността се основава на трудността на намиране на дискретен логаритъм Zp. Недостатък на тази криптосистема е, че шифрирания текст е два пъти по – дълъг от оригиналния. • ECC (Eliptic Curve Cryptography) Базира се на система, основана на елиптични криви – ECC. ECC е изключително подходяща криптосистема в ресурсно ограничени изчислителни среди – мобилни устройства, смарт карти и др. ECC в комбинация със 23
  • 24. симетричните алгоритми 3DES, IDEA и AES се използва за създаване на системи за защита на информация от особено висок клас. Сравнение между криптирането със секретен и обществен ключ Основното предимство на криптирането с обществен ключ пред това със секретен ключ е, че персоналните ключове никога не се предават. Това прави този тип криптография по-сигурна и удобна. В една система със секретен ключ, е необходимо предаване на ключовете, което е свързано с рискове. Освен това при работа със секретни ключове механизма на идентифициране се осъществява трудно. Когато един цифров подпис използва инфраструктура с обществен ключ се налага предаване на секретна информация. За да се избегне отказ на плащане се налага трета страна да проверява идентичността. Безспорно криптирането с обществен ключ има няколко недостатъка. Повечето технологии на секретни ключове са по-бързи от алгоритмите за криптиране с обществен ключ. Тъй като бързината е по голяма с порядъци, криптирането с обществен ключ не е препоръчително да се използва за големи файлове. За да може една система да бъде и защитена и бърза, е необходимо да се комбинират и двата типа криптография. При такава комбинация съобщението ще се криптира със секретен ключ, защото при криптиране с обществен ключ ще се отнеме много време, а секретния ключ се прикрепва към съобщението, като самия секретен ключ е криптиран с обществен ключ. По този начин се постига и по-висока скорост и защита. При SSL криптирането, което се използва за сигурен обмен на информация през web, криптирането с обществен ключ се използва за размяна на секретния ключ. Web сървърът изпраща своя обществен ключ към web браузъра. Последният създава ключ на сесия и криптира ключа на сесия с обществения ключ на web сървъра. След това ключа на сесия се предава обратно на web сървъра, който го декриптира с помощта на своя секретен ключ. По този начин ключовете на сесии могат спокойно да се предават през незащитени мрежи. След като ключа на сесия се предаде, той се използва за криптиране на връзката, тъй като е доста по-бърз. Алгоритмите за секретните ключове ще бъдат от значение до момента, в който компютрите не станат поне хиляди пъти по-бързи от съвременните компютри. Ключът на сесия е сигурен, защото е валиден само за една определена сесия и след това не може да се използва повече. 24
  • 25. SSL Certificate Както вече видяхме, криптографията има много приложения. В момента, в България постепенно навлиза Интернет Банкирането – начин на управление на сметките чрез персоналния компютър. И както виждате, изключително важно е да се осигури много добра идентификация. Банките ползват няколко нива на защита. Първо, по интернет клиентът на банката изпраща своята заявка, регистрира се с потребителско име и парола. След като въвежда данните си, в някакъв срок в банката му се прави сертификат и му се изпраща пин-код по електронната поща (това е несигурен начин за пращане на информация, така че може да се счита за публична). Тогава, клиентът влиза в сайта на банката и проверява статуса си. Ако му е издаден сертификат, той получава парола, с която да го инсталира, след което трябва да отиде и лично да го вземе от посоченият от него клон, срещу представен документ за самоличност. Сертификатът трябва да бъде инсталиран на компютъра, или на няколко, от които клиентът иска да ползва услугата. За инсталацията се ползва дадената парола. След завършване на всички процедури, клиентът може да ползва интернет банкиране, като въведе своето потребителско име и парола, които е задал при регистрацията. Тук основната защита, е предоставена от SSL Certificate. Той осигурява много добра идентификация на клиента. И понеже се прави персонално за него, дава се лично, е много добра и сигурна защита. SSL Certificate използва асиметричен шифър(RSA, Diffie-Hellman, DSA или Fortezza) за уговорка, така наречената master secret, симетричен шифър(RC2, RC4, IDEA, DES, Triple DES или AES) за прехвърлянето на данни и хеш-функция(MD2, MD4, MD5 или SHA). Следващото ниво на защита е паролата, който клиентът въвежда при регистрация. Информацията, съхранявана в сървъра, като паролите например, са хеширани. Самата банка не знае личния ключ на клиента, за това е важно той да не го губи или забравя. Въпреки всичко това е необходимо, за да не може неоторизирани лица да се възползват от информацията на сървъра. Криптографски метод Steganography Съобщенията, които са криптирани посредством метода Steganography, изглеждат като безвредни съобщения с прикрепени изображения или файлове със звук. Тези, които се опитат да прихванат такъв файл, ще получат съобщение и ще останат с впечатление, че то не съдържа секретна информация. Някой, който чете такава поща, разглежда изображение или чуе звук никога няма да забележи разликата. В повечето случаи скритите съобщения също са криптирани, при което се забелязват още по-трудно. Софтуерът използван при 25
  • 26. този метод се опитва да скрие информацията в обикновени звуци и изображения. За да останат незабелязани, скритите съобщения трябва да имат същата статистика, както тази на обикновените изображения и звуци. Проблемът е в това, че криптираните съобщения обикновено изглеждат по-различни от тези, които се стремят да имитират. Компютърно-генерираните изображения не са добро място, в което може да се скрие информация, защото са съвсем традиционни, докато едно сканирано изображение предлага повече възможности. Съществуват софтуерни пакети, които се разпространяват безплатно и позволяват криптиране от този тип. За съжаление обаче качеството не е добро. В случай, че внимателно анализирате данните, лесно ще откриете скритото съобщение. Често симулацията на естествен звук не е надежден начин за скриване на информация. Комерсиалните софтуерни пакети използвани за този тип криптография предлагат по-качествено скриване. С използването на тази техника е възможно предаване на данни без никой да забележи това. В страните, където криптирането е забранено се използва именно тази техника. Изпращането на изображения през Интернет не е нещо необичайно и проверката за това дали съдържат криптирани или скрити съобщения е доста трудна, ако не и невъзможна. Криптиране на електронна поща Електронната поща е най – използваното нещо в кибер пространството. Тя се използва много лесно и не изисква нищо освен компютър, връзка към Интернет и елементарна програма за изпращане и получаване на електронна поща. Съдържанието на електронната поща е във форма на обикновен текст и може да се прочете на всяка компютърна система. Простотата на приложението обаче е проблем, защото при предаването му всеки едни компютър по света може да го прихване и да се прочете съдържанието без да се налага използването на допълнителен софтуер. При изпращане на електронна поща, тя не се предава директно към получателя и, а минава през определени компютри. Това намалява значително разходите за предаване на информацията, тъй като всеки компютър трябва да предаде информацията само до следващия. Пътят между източника и получателя се определя след изпращане на пощата, и например една поща от Щутгарт до Оксфорд може да премине през компютри в САЩ. Всеки един от компютрите, участващи в предаването може лесно да провери за определени изпращачи и получатели и може да запише цялата информация от съобщението във файл на локалния си твърд диск. Дори ако атакуващия не стои на някой от компютрите, 26
  • 27. участващи в предаването той може да филтрира потока от съобщения и да получи необходимата информация. Нападението изисква от хакера да инсталира определен софтуер на съответния компютър. Този софтуер се нарича „прихващач". Последният сканира всички електронни пощи за това дали съдържат определени ключови думи. Нормално изпращането на електронна поща до всяко едно място по света става за няколко секунди. Никой няма да забележи, ако някой вземе някаква информация, дори никой няма да забележи, че дадена информация е променена преди да бъде изпратена, тъй като няма определено време, за което да се получават съобщенията. Всички останали електронни пощи с изключение на класическите, нямат плик, който да скрива изпращаната информация. Електронните пощи са по-лоши от пощенските картички от гледна точка на конфиденциалност. Електронните пощи предавани през Интернет могат да бъдат сканирани за ключови думи лесно и автоматично. Сканирането на нормална поща в офиса ще изиска доста време, което прави процеса на сканиране непрактичен. Криптирането на електронна поща може да стане по няколко начина. Най- сигурната система за криптиране, която понастоящем се намира на пазара е PGP. Системата PGP изисква инсталиране на отделен софтуер. Друг начин за криптиране на съобщение е използването на алгоритми за симетрично криптиране, които не са свързани със софтуера за електронна поща. Може да напишете своята поща с текстов редактор, да я криптирате и след това да я изпратите през мрежата. Може да избирате между Blowfish, IDEA и triple- DES. Само че на всички компютри трябва да е инсталиран софтуер за декриптиране на файловете и трябва да е установен канал за сигурен обмен на ключовете. Процедурата за инсталиране, поддръжка и използване на този метод е прекалено дълга, за да може да се прилага в бизнес среди. Методът е добър за персонално използване. В случай, че ви е необходимо секретно предаване на информацията по такъв начин, че да може предаваната информация да се чете от повече от един получател, може да използвате програми като WinZip (www.winzip.com). Почти всеки има копие и може да го използва лесно. Освен това технологията за криптиране, която се използва е доста добра, файловете са защитени с парола, която може да се разбере, но вие можете да променяте паролата всеки път. Освен това паролата може да се предава и по телефона. 27
  • 28. Цифрови подписи Освен за криптиране и декриптиране на информацията, криптографията може да се използва и за други неща. Идентифицирането е една от най-важните области при изграждането на връзка на доверие. Логично е, че можете да имате доверие на някой, само ако знаете кой е той. В много случаи идентифицирането се прави чрез подписване на документ. За да направите електронните документи легални трябва да имате механизъм, който да осигурява средство за идентифициране автора на документа. За да направите една система приложима за цифров бизнес е необходимо само една малка част от съобщението да се криптира с персонален ключ. Тази част се нарича digital hash. Hash кода е функция, която намалява всяко едно съобщение до фиксиран брой битове. Без значение каква е дължината на файла, дължината на hash винаги е една и съща. Същността се крие в това, че hash кода е различен за всяка електронна поща. Hash функцията е еднопосочна. Не е възможно да създадете определен код и да намерите съобщение, което да съответства точно на този код. Hash кода може да се разглежда като печат върху плик. Изпращането на този код заедно с електронна поща ще гарантира, че никой не може да промени съдържанието на пощата по време на предаване, но това не ви дава възможност да сте сигурни в изпращача. Поради факта, че този код е с фиксирана дължина, времето за неговото криптиране винаги е едно и също. Цифровите подписи използват технологии за криптиране с обществен ключ, като RSA, но не работят като стандартното криптиране. Вместо да критпират съобщението с обществения ключ на получателя, hash кода на съобщението се криптира с персонален ключ, и след това се декриптира с обществения ключ на изпращача. Разбира се, всеки може да декриптира hash кода на съобщението, тъй като обществения ключ може да се намери в директорията за обществени ключове на сървъра. Само че факта, че вие можете да декриптирате hash на съобщението с обществения ключ на определен човек доказва само по себе си, че това съобщение идва точно от този човек. Само този, който притежава персоналния ключ може да създаде съобщение, което може да се декриптира със съответния обществен ключ. При цифровите подписи има две причини за използването на hash код. Едната причина е, че криптирането на цяло съобщение само за целите на подписа отнема дълго време. Втората причина е, че всеки иска да криптира подписани съобщения. В много случаи дадено съобщение е предназначено за много хора, но автора му иска да докаже неговата идентичност. 28
  • 29. За да може едно съобщение да се криптира сигурно и в същото време да има подпис, обикновено пощата се криптира с персонален ключ, а след това съобщението се криптира с обществения ключ на получателя, за да може всеки да вижда съдържанието. Цифровият подпис свързва даден документ с притежателя на определен ключ, но често това не е добре, ако не се знае момента на подписването. Например, един договор, който е подписан с цифров подпис не е валиден, ако на него няма дата. Една онлайн покупка на намалена цена, която е валидна за определен период от време изисква да има посочена дата, за да се докаже, че продуктите са закупени в определения период. От тук се вижда, че цифровия печат за дата е необходим за определяне момента на поставяне на цифровия подпис. Това може да се направи с добавяне на дата и час на документа от трета страна и след това тази информация се криптира с персонален ключ на третата страна. Цифровият печат за време свързва даден документ с момента на неговото създаване. Тази система не може да се използва на световно ниво, защото няма никакви регулатори, които да гарантират, че даден печат за време е валиден. Прилагане на технологиите за криптиране Има много и различни типове и видове нива на сигурност. Някои от тях, като например ROT13, се разбиват много лесно, други като PGP (www.pgp.com) не могат да бъдат разрушавани в рамките на приемливо време. Реално действието им се прекъсва като се използват няколко хиляди компютъра в продължение на няколко хиляди години. Това, което трябва да имате при работа с тези алгоритми е парола и ключ за декриптиране, който се изпраща в PGP формат. Сигурността и конфиденциалността са много важни за вашата компания въпроси и един малък бъг в софтуера за криптиране може да доведе до много по – големи проблеми, отколкото бъг в текстообработваща програма. Един бъг в софтуер или хардуер за криптиране може да повлияе негативно на целия ви бизнес, просто защото всички конфиденциални неща на вашата компания ще бъдат достъпни за всекиго. Повечето текстообработващи програми предлагат възможности за криптиране на документи, но алгоритмите за криптиране са много слаби и никога не трябва да разчитате на тях. Те могат да се използват да скривате данни намиращи се на сървъра от колеги, но в никакъв случай няма да представляват пречка за професионалисти. Компанията AccessData (www.accessdata.com) дори е създала софтуерен пакет, който е 29
  • 30. специализиран за разбиването на кодове на такива програми. Този софтуер се продава, за да може когато някой забрави паролата си да я възстанови, но разбира се софтуера може да се използва и за недобронамерени цели. Друг популярен метод за защита на документи е просто да ги скриете. Сигурността посредством неяснота е доста слаб метод на защита. В действителност той е дори по-лош от криптиране с текстообработваща програма. С поставянето на документи на неправилно място, някои хора си мислят, че могат да ги скрият от останалите, но в действителност всеки може да ги намери. С използването на обикновено търсене на файл, в повечето случаи се постига желания резултат. Дори и при използването на слаба защита е необходимо време за декриптиране. Файловете криптирани със силна защита могат да се оставят на обществени сайтове без да имате опасения, че някой може да прочете съдържащата се в тях информация, дори и ако ги открадне. Дори и алгоритмите и изходния код на повечето популярни технологии за криптиране да са налице, никой не може да разбере какъв е принципа на криптиране. Сигурността идва от алгоритмите, а не от системата, която се използва за изпълнение на тези алгоритми. В случай, че ключа не се разпространява, никой не може да проникне в информацията. Налагане на конфиденциалност В Интернет, конфиденциалността е един от най-важните въпроси. По подразбиране Интернет е незащитена среда и всеки може да прихваща съобщения, разменяни между две страни. Конфиденциалността на предаваните съобщения може да се обезпечи посредством тяхното криптиране, при което трети лица не могат да ги четат. Все още е възможно прихващането на съобщения, от където следва, че е необходимо да се гарантира, че ключовете не се предават през Интернет като прозрачен текст. Конфиденциалността не е единствения важен въпрос при Интернет. От съществено значение е сигурността на мултипотребителските системи, като сървъри, където няколко потребителя могат да споделят един и същи диск или конфиденциална информация. Файловете се защитават посредством пароли, което налага обезпечаване сигурността на паролите. Това може да се постигне като се съхрани не самата парола, а нейната hash стойност. Декодирането на паролите е възможно, но hash стойностите не могат да се променят. При въвеждане на парола от страна на потребител, hash стойността се изчислява и се 30
  • 31. сравнява със съхранената. При това положение не е възможно да се „крадат" данни, съхранени на система, чиято парола не се знае. 31