Тема:Методи за криптиране и декриптиране на данни, индефикация и автентикация
1. Икономически Университет- Варна
Център ‘Магистърско Обучение’
Десциплина : БЕЗОПАСНОСТ И ЗАЩИТА НА Мicrosoft МРЕЖИ И
ПРИЛОЖЕНИЯ
Тема:Методи за криптиране и
декриптиране на данни, индефикация
и автентикация
Изготвил : Георги Карагеоргиев Проверил :
Студент 7 курс задочно ФН 4914 Доц. Д-р Стефан Дражев
2. Технологиите за сигурност на компютрите се базират на науката криптогра-
фия, която е учение за „тайнописа" или шифъра. Криптирането използва код
или ключ за разбъркване и след това за подреждане (или дешифриране) на
съобщението, с цел връщането му в неговата първоначална форма. Задачата
по анализиране и дешифриране на криптираните съобщения се нарича
криптоанализ.
Основни криптографски концепции
Данните се криптират с помощта на алгоритъм или шифър. Криптираните
данни се означават като шифрован текст. За да разберете криптирането,
представете си „секретните кодове", използвани от децата (а понякога и от
възрастните) за защита на частния характер на техните комуникации. Една
много проста схема на криптиране задава число на всяка буква от азбуката.
Ако започнем с А като 1, В като 2 и т.н., можем да изпратим „кодирано"
съобщение като следното:
4-9-14-14-5-18 9-19 18-5-1-4-25
Съобщението лесно може да бъде „декодирано" или декриптирано до
оригинала:
Dinner is ready (вечерята е готова)
За нещастие, този шифър лесно може да бъде разбит (кракнат) и затова не е
сигурен. Криптирането при компютрите е по-сложно. Най-общо се използва
ключ (key), който е някакъв вид променлива, комбинираща се с данните,
които се криптират. Методът на комбиниране на ключа с данните се нарича
алгоритъм. Тъй като компютрите обработват двоична информация, тези
изчисления се прилагат към всеки бит или група от битове (вижте Фигурата).
3. Фигура Техниките на компютъризирана криптиране използват
ключове и алгоритми.
Крипти
рани
Колкото no-дълъг е ключът за криптиране, толкова по-трудно е да се разбие
кодът. В областта на криптирането 40- и 56-битовото криптиране се нарича
стандартно криптиране, а 128-битовото криптиране се нарича силно
криптиране.
Закони, управляващи технологиите за
криптиране
Много държави имат законови ограничения върху експорта или импорта на
технологии за криптиране. САЩ класифицират криптирането като „бойно
средство" и забраняват експортирането на софтуер за силно криптиране.
Може да бъде експортирана криптология до 40 бита, а криптология над 56
бита може да бъде експортирана при определени условия. Технологии за
криптиране над 128 бита не могат да бъдат експортирани. В импорта на
елементите за криптиране няма ограничения.
Законите в другите страни варират от Аржентина, която няма контрол над
експорта и импорта и ограничения на използването на криптография, до
Русия, където се регулира както импорта, така и експорта, а използването на
неотори-зирано криптиране в страната е забранено.
4. Два популярни типа криптиране са криптирането със секретен ключ и
криптирането с публичен/частен ключ. Да разгледаме как работи всяко от
тях.
Криптиране със секретен ключ
Криптирането със секретен ключ често се означава като
симетрично криптиране, защото един ключ се използва както за
криптиране, така и за декриптиране на данните. Предаващата и приемащата
страни се договарят за използване на общ ключ или криптиращ алгоритъм,
който представлява споделена тайна. Например, ако Тед и Керъл искат да
обменят поверителни съобщения, те се решават, че всяка буква от азбуката
ще се представя от следния код:
1 Конвертиране на буквата в цифра с помощта на схема, при
която А=6, В=7, С=8 и т.н.
2 Умножаване на резултатното число по 4.
Този ключ, макар че не е невъзможно да бъде разгадан, е доста по-сигурен
от първия пример. Сега, за да изпрати съобщението ..Dinner is ready", Керъл
преминава през следния процес, за да постигне крайното криптиране
съобщение:
D=9
9 • 4 = 36
I = 14
14-4-56
Накрая тя достига до крайното криптирано съобщение:
36-56-76-76-40-92 56-96 92-40-24-36-120
Тед има същия ключ и знае, че за да декриптира съобщението, трябва само
да раздели всяко число на 4 и след това да приложи същата таблица А=6,
В=7, С=8 и т.н., за да възстанови оригиналното съобщение.
Популярни алгоритми за криптиране със секретен ключ са Data Encryption
Standard (DES) и 3DES (произнасян „трипъл DES"). Друг алгоритъм е RC
(Rivest Cipher)-4, създаден от Рон Ривест. Този човек, заедно с Ади Шамир и
5. Леонард Адлеман, разработват популярната схема за криптиране с публичен
ключ RSA, разгледана в следващата секция на тази глава.
При криптирането със секретен ключ има три същностни
проблема:
• Генериране на секретни ключове
• Обмен на ключовете между оторизираните страни, без да
попадат в ръцете на неоторизирани страни
• Справяне със сложността, характерна за реализиране на
сигурност на комуникациите до много различни страни
Благоразумно е да променяме ключовете през определени интервали от
време, за да избегнем компрометиране на сигурността. Това означава, че
трябва да бъдат генерирани допълнителни ключове. Също така трябва да
има начин за получаване на ключа от страната, оторизирана да дешифрира
съобщението. В предишния ни пример, ако Керъл изпрати по електронната
поща ключа на Тед без криптиране, тя осуетява целта на криптирането на
комуникацията. От друга страна, ако тя му изпрати съобщението
криптирано, той няма да може да го прочете, защото не знае ключа.
Разработени са механизми за сигурно генериране и обмен на ключове. Един
пример е алгоритъмът на Дифи-Хелман, който позволява на две страни да
създават тайна, известна само на тях, независимо от факта, че комуникират
по мрежа без реализирана сигурност.
Третият проблем от горния списък е малко по-проблематичен. Керъл и Тед
могат щастливо да обменят (до известна степен) сигурни съобщения с
години, използвайки техния секретен ключ, но какво ще стане, ако Керъл
поиска да изпрати сигурно съобщение до Боб? Ако тя използва същия ключ,
Тед ще може да дешифрира съобщението. Освен това, след като Боб има
ключа, той също може да дешифрира съобщенията на Керъл до Тед.
За да разрешим ситуацията, Керъл и Боб могат да използват напълно
различен ключ. Например съобщенията до Боб могат да бъдат криптирани
чрез преобразуване на буквата в число с помощта на цифровата схема А=12,
В=13 и т.н., и след това прибавяне на 15 към резултата. Но сега Керъл
трябва да помни два ключа, и ако иска да изпрати сигурни съобщения до
голям брой хора, тази техника бързо става неуправляема. По-просто
решение е да се използва различен тип криптиране: криптиране с
публичен/частен ключ.
Криптиране с публичен/частен ключ
6. Макар че за краткост често пъти се означава като криптиране с публичен
ключ, по-точният термин е криптиране с публичен/частен ключ
(public/private key encryption), тъй като този тип криптиране използва два
ключа - единият от тях се публикува и е широко достъпен, а другият е
частен и се знае само от потребителя. За извършване на сигурната
комуникация са необходими и двата ключа. Този тип криптиране се нарича
също асиметрично криптиране. При него всеки
потребител има и публичен, и частен ключ, наречени
двойка ключове. Ето как работи това:
1 Керъл и Тед обменят своите публични ключове.
Няма значение, че това се прави по несигурен
начин, защото съобщенията не могат да бъдат де-
шифрирани само с публичния ключ.
2 Керъл иска да изпрати съобщение на Тед, затова
тя криптира съобщението, използвайки
публичния ключ на Тед. Публичният ключ се
асоциира (съответства) само на един частен
ключ. За да се декриптира съобщение, което е
криптирано с помощта на публичен ключ, е
необходим съответстващият му частен ключ. (В
сила е и обратното - за да се декриптира съ-
общение, криптирано с помощта на частен ключ,
е необходим съответстващият му публичен
ключ).
3 Тед, използвайки своя частен ключ, може да
дешифрира съобщението, защото то е
криптирано с неговия публичен ключ. Обърнете
внимание, че в този процес на криптиране бяха
използвани само ключовете на Тед - публичен и
частен.
Ако Керъл криптира съобщението с помощта на нейния частен ключ, всеки
може да декриптира съобщението, използвайки нейния публичен ключ,
който е достъпен за всички.
За да работи този вид криптиране, трябва да бъдат използвани и двата ключа
на една двойка ключове; не е нужно никой да знае частния ключ на някой
друг. Един добър начин да разберете този тип криптиране е да си
представите двете части информация, необходими за влизане в къща,
защитена от ключалка с цифрова комбинация. Ако някой иска да влезе в
къщата, той или тя трябва да знае както адреса на улицата, така и цифровата
комбинация за отваряне на заключващото устройство. Адресът е публична
информация, която се публикува в телефонния указател. Тя е достъпна за
всеки, точно како публичният ключ е достъпен на всеки. Комбинацията на
ключалката е аналогична на частния ключ на потребителя; тя е позната само
на собственика на къщата. За тази конкретна къща и двата ключа са
уникални, но единият е направен публичен, докато другият е запазен в
тайна.
7. Автентикация
Примерите, които разгледахме дотук, се занимават с конфиденциалността
на данните. Отделен проблем е автентикацията на изпращащия данните.
С помощта на метода на публичния/частния ключ можете лесно да
реализирате сигурността за самите данни. Но тъй като публичният ключ е
достъпен за всеки, Тед не може да знае със сигурност, че съобщението,
което е приел и което е криптирано с неговия публичен ключ, наистина е от
Керъл. За да провери истинността на самоличността на изпращащия (да го
автентицира), Керъл трябва да криптира съобщението с нейния частен
ключ. След това Тед може да го декриптира с нейния публичен ключ, като е
сигурен, че тя е истинският подател, защото само тя знае собственият си
частен ключ.
Друг начин за осигуряване на автентикация на изпращащия е да се
използват цифрови подписи, които ще разгледаме в следващата секция.
Цифрови подписи
Цифровите подписи се състоят от криптирана подписваща информация,
добавена към документа. Тази информация верифицира както
идентичността на изпращащия, така и целостта на самия документ.
Цифровите подписи не криптират данните. Те само гарантират, че данните
не са променени и че изпращачът е автентичен.
Алгоритмите с публичен ключ се използват за създаване и верифициране на
цифрови подписи и хеш алгоритми. Хеш алгоритмите ще разгледаме по-
долу.
Хеш алгоритми
8. Хешът представлява резултатът от еднопосочно математическо изчисление
(хеширащ алгоритъм), което създава дайджест па съобщение (message
digest). Алгоритъмът се нарича „еднопосочен", защото не можете да
обръщате (ревер-сирате) резултата, за да откриете оригиналното съобщение.
Хешът верифицира автентичността на съобщението по следния начин:
1 Изпращачът хешира съобщението с ключ, който е
споделена тайна; т.е. ключът е известен както на
изпращача, така и на получателя. Хешът из-
работва числов резултат (например
0010110010100001).
2 Съобщението и резултатът, или дайджест па
съобщението, се изпращат на приемника.
3 За да потвърди, че съобщението не е променено,
получателят прилага същия ключ и трябва да
получи същия числов резултат
(0010110010100001). Ако съдържанието на
съобщението е променено, резултатът на хеша
няма да съвпада.
Ето някои популярни алгоритми за хеширане:
• Secure Hash Algorithm (SUA) - Разработен от
Националния институт по стандарти и
технологии (NIST) и Националната агенция по
сигурността (NSA)
• Message Digest 5 (MD5) - Разработен от Рои
Ривест в Масачузетския технологичен институт
(MIT)
Най-общо хеширащите алгоритми изработват стойност от поне 128 бита,
което прави особено трудно или невъзможно изработването на същия
резултат с различен набор входни данни.
9. Цифрови сертификати
Цифровите сертификати представляват съобщения, които съдържат
цифровия подпис на доверена трета страна, наречена сертификационна
власт (certificate authority). Третата страна гарантира, че конкретен
публичен ключ реално принадлежи на конкретно лице. Сертификатите се
използват за гарантиране на автентичността на съобщенията, които пътуват
по несигурни публични мрежи, например Интернет.
Потребител, който притежава частния ключ, асоцииран с конкретен
публичен ключ, изпраща заявка за сертификат от сертификационната власт.
Сертифика-ционната власт отговаря за верифицирането, че този конкретен
публичен ключ принадлежи на конкретен потребител. Сертификатите са
валидни за зададен период от време и сертификационната власт може да ги
анулира (отнема).
Организациите могат да изграждат свои собствени сертификационни власти
като част от инфраструктурата на публичните ключове (РК1) на
тяхната мрежа. PKI е система за верификация и автентикация на
самоличността на страните, вземащи участие в електронните комуникации.
Цифровите сертификати се издават от обществени сертификационни власти като:
• Verisign
• GTE Cybertrust
• Keywitness
• TradeWave
Цифровите сертификати могат да бъдат оприличени на електронни карти за
самоличност. Подобно на издаваните от държавата шофьорски книжки, лични карти или
други идентификационни документи, които могат да бъдат представяни за доказване на
вашата идентичност във физическия свят, така и цифровите сертификати изпълняват
тази функция в света на мрежовите комуникации.
10. Kerberos
Kerberos е протокол за автентикация, който е стандарт в
Интернет за верификация на идентичността на потребител или
компютърна система. Той е разработен в MIT и е наречен на
името на триглавото куче от гръцката митология, което пази
вратите на Хадес. Сигурността на Kerberos разчита на три
фактора: клиент, сървър и проверен източник, наречен център за
разпространение на ключове (KDC). KDC поддържа база данни,
която следи участващите в комуникациите единици.
Kerberos е базиран на концепцията на билетите, които
представляват крнптира-ни съобщения, използвани за отправяне
на заявка за услуга от сървър. Автен-тикацията се извършва с
помощта на симетрично криптиране (означавано още като
криптиране със секретен ключ
Процесът на автентикация Kerberos разчита на билети
за верификация на идентичността и за предоставяне на
достъп до сървъри.
11. Ето как работи процесът Kerberos:
1 Първата стъпка включва изпращане на заявка от клиента до сървър за
автентикация за билет и сесиен ключ. Това е ключ за криптиране, базиран на
паролата на отправящия заявката потребител, и се комбинира със
случайна стойност, представяща исканата услуга. Връщаният обратно на клиента
билет се нарича билет за издаване на билет (ticket-granting ticket - TGT). Той
верифицира самоличността на клиента.
2 TGT се изпраща от клиента на сървъра за издаване на билети (който може да бъде
същата физическа машина, като сървъра за автентикация). На базата на TGT,
сървърът за издаване на билети връща билет, който се представя на файловия
сървър, до чиито ресурси клиентът иска достъп.
3 Билетът е валиден за конкретно количество време, през което клиентът може да
отправя допълнителни заявки към сървъра, без да преминава отново през целия
процес.
Kerberos се използва от много години в мрежите с UNIX. Microsoft включи
поддръжка на Kerberos в Windows 2000, а проверените връзки на домейна Active
Directory са базирани на автентикация Kerberos.
Перспективни технологии за идентификация и автентикация
Идентификацията и автентикацията са важни фактори за сигурността, когато
корпоративните мрежи станат по-големи и трябва да поддържат хиляди потре-
бители. Установяването на самоличността на потребител, който се опитва да влезе
в мрежата или да осъществи достъп до ресурси на компютъра, е основата на плана
за силна система за сигурност.
Независимо от интелигентността на технологиите на криптиране на паролите,
проблемът при метода с потребителско име/парола е възможността на неотори-
зирана страна, която е разкрила и използва пълномощията (акредитивите) на
легитимен потребител. Технологиите на разширена идентификация и автентикация
като следващите се опитват да предотвратят това, като базират идентификацията на
фактори, които не могат да бъдат фалшифицирани:
• Смарт карти
• Биометрика, включително разпознаване на пръстови отпечатъци,
сканиране на ретината и разпознаване на ириса на окото и
верификация на гласа
Макар че тези технологии още не се срещат масово в работното пространство
извън държавните агенции, в следващото десетилетие можем да очакваме методите
на разширената верификация да станат масово явление и постоянно да нараства
тяхната важност за мрежовите администратори, които трябва да са запознати с
тяхното реализиране. Всяка от тези технологии е описана в следващите секции.
12. Смарт карти
Смарт картите са устройства за автентикация, които наподобяват кредитни карти и
съхраняват такава информация, каквато са публичните/частните ключове и пароли.
Технологията на съхраняване може да бъде проста, например магнитна ивица или
по-сложна, като интегрална схема, която се вгражда в картата и функционира
подобно на миниатюрен компютър.
ЗАБЕЛЕЖКА: Когато картите се разглеждат в контекста на сигурността на мрежите,
терминът означава устройство за идентификация и автентикация, което съхранява
пълномощията, които позволяват на потребителя да осъществява достъп до систе-
мата. Терминът „смарт карта" се използва също в по-общ смисъл за означаване на
всяка пластична карта, която съхранява информация на чип или магнитна ивица. Такива
карти са кредитните и дебитни карти, картите с медицинска информация и др.
Някои операционни системи, например Windows 2000, имат вградена поддръжка на
смарт карти. Ако не работите под операционна система, която има вградена
поддръжка, може да се наложи да използвате отделен софтуер за използване на
технологиите на смарт картите.
Смарт картите се използват за достъп до компютъра през място в хардуера, на-
речено четец на смарт карти. Смарт картата осигурява допълнителна сигурност,
защото потребителят трябва да бъде притежател на физическата карта. Смарт
картите могат да бъдат използвани на мястото на - или за по-голяма сигурност, в
допълнение към - физически въвежданите пълномощия на потребителя.
В среда с висока сигурност, картата сама по себе си не разрешава достъпа; пот-
ребителят трябва да вкара картата в четеца и да въведе правилните логически
пълномощия преди да му бъде даден достъп. Това означава, че потенциалният
нарушител, който намери паролата на потребителя, пак няма да може да влезе в
мрежата без да притежава картата; по подобен начин някой, който намери или
открадне картата, не може да получи достъп без да знае правилната парола.
Вариант на смарт картите е устройството 1-key на Rainbow Technologies. Това е
малко устройство, което се поставя на клавиатурата и което комуникира по USB
порт вместо да изисква специален хардуер, като четеца.
Биометрика
Все пак е възможно нарушителят да научи паролата и да придобие съответната
смарт карта. За да противодейства на тази възможност, започва въвеждането на
такива технологии, като разпознаване на пръстовите отпечатъци, сканиране на
ретината и верификация на гласа, които представляват стъпка напред в сигур-
ността. Тези технологии са познати като биометрика. което е част от биологичната
статистика.
Биометриката върши работа, защото статистическата вероятност двама души да
имат едни и същи пръстови отпечатъци (или шарки на ретината или тембър на
гласа) е толкова малка, че тези технологии се приемат в съда в много държави като
доказателство при криминални процеси. Технологиите за биометрична
идентификация могат да осигурят положителна идентификация на потребител на
базата на биологичните характеристики.
13. В следващите секции ще опишем как работят различните биометрични методи.
Разпознаване на пръстови отпечатъци
Системата за разпознаване на пръстови отпечатъци често работи съвместно със
системата за сигурност, базирана върху карти. Пръстовите отпечатъци на пот-
ребителите се снемат и се въвеждат в базата данни, и когато даден потребител иска
достъп до компютъра, трябва да постави пръста си (или най-често палеца, макар че
някои системи използват цялата длан) върху екрана на четеца. Въведеното
графично изображение през четеца се сравнява с отпечатъците в базата данни и в
зависимост от това се дава или забранява достъп.
Достъпни са различни софтуерни и хардуерни системи за реализиране на ав-
тентикация с пръстови отпечатъци. Такива системи са VeriPrint и U.are.U, и двете
предлагани от FingerSec Corporation.
Сканиране на ретината и разпознаване на ириса
Друго средство за идентифициране на лица, базирани на техни уникални био-
логични характеристики, е сканирането на ретината. При тази технология
светлинен източник с ниска интензивност се използва за сканиране на шарките на
ретината, която представлява тънка мембрана, която покрива вътрешната очна
ябълка.
Върху характеристиките на човешкото око е базирана и технологията на раз-
познаване на ириса. Тази технология включва компютърен анализ на шарките в
ириса на окото, който представлява пигментирана кръгла мембрана, придаваща
цвета на очите. Тези шарки се приемат за по-уникални от пръстовите отпечатъци
или ДНК. Дори идентични близнаци имат различни шарки на ириса.
Верификация на гласа
Верификацията на гласа работи на принципа, че тембърът на човешкия глас е
уникален за всеки индивид и може да бъде използван за идентифициране на го-
ворещия.
ЗАБЕЛЕЖКА: Верификацията на гласа понякога се бърка с разпознаването на гласа.
Първото се използва за проверка на самоличността на говорещия. Второто не
идентифицира говорещия, а разпознава изговаряните думи и с помощта на
14. компютърен софтуер за разпознаване на глас ги транслира под формата на думи
на екрана.
Най-общо от потребителя се изисква да запише гласа си, изговаряйки парола или
фраза, която се съхранява в базата данни. За да влезе в системата, потребителят
изговаря същата дума или фраза, след което мострите се сравняват. Оценяват се
такива фактори, като височина, тон и интонация на гласа. Технологията на
верификация на глас не се счита за толкова точна като сканирането на ретината,
сканирането на ириса и разпознаването на пръстови отпечатъци. Верификацията на
глас се използва най-често в ситуации, в които самоличността трябва да бъде
проверена по телефонна линия.
Бъдещето на биометриката
В някои части на света, като Австралия, Южна Африка, Южна Америка и Европа
технологиите за биометрично разпознаване и автентикация навлизат бързо в
практиката. В САЩ тези технологии се реализират по-бавно, вероятно поради
проблеми, свързани с конфиденциалиостта или поради пазарни фактори.
Когато технологиите станат по-прецизни и по-малко натрапчиви и започне да се
отделя по-голямо внимание на проблеми като кражба на самоличност, вероятно
използването на биометрика ще нарасне и ще стане често явление в мрежите на
бъдещето.
Използвана литература :
http://www.webopedia.com/TERM/E/encryption.html
http://www.ssd.eff.org/bg/tech/encryption
http://www.eunet.bg/bgnews/media.html?media=61978126