2.1.1.1 Симетрична (секретна) методология
При тази методология и подателят, и получателят използват един и същ ключ както за криптиране, така и за декриптиране, който са се съгласили да използват преди взаимодействието. Ако ключът не е бил компрометиран, декриптирането автоматично удостоверява подателя, тъй като само подателят има ключа, с който да шифрова информацията, и само получателят има ключа, с който да декриптира информацията. Тъй като подателят и получателят са единствените хора, които знаят този симетричен ключ, само взаимодействието на тези двама потребители ще бъде компрометирано, когато ключът е компрометиран. Проблем, който ще бъде от значение за други криптосистеми, е въпросът как безопасно да се разпространяват симетрични (секретни) ключове.
Алгоритмите за симетрично криптиране използват ключове, които не са много дълги и могат бързо да криптират големи количества данни.
Как да използвате симетрични ключови системи:
Симетричен таен ключ се генерира сигурно, разпространява и съхранява.
Подателят създава електронен подпис, като изчислява хеш функция за текста и добавя получения низ към текста
Подателят използва бърз симетричен алгоритъм за криптиране-декриптиране заедно със таен симетричен ключ към получения пакет (текста заедно с прикачения електронен подпис), за да получи шифрования текст. Имплицитно удостоверяването се извършва по този начин, тъй като само подателят знае симетричния таен ключ и може да шифрова този пакет. Само получателят знае симетричния таен ключ и може да дешифрира този пакет.
Подателят предава шифрования текст. Симетричният таен ключ никога не се предава по незащитени канали.връзки.
Получателят използва същия симетричен алгоритъм за криптиране-декриптиране заедно със същия симетричен ключ (който получателят вече има) към шифрования текст, за да възстанови оригиналния текст и цифровия подпис. Успешното му възстановяване удостоверява някой, който знае секретния ключ.
Получателят отделя електронния подпис от текста.
Получателят създава друг електронен подпис, като изчислява хеш функцията за получения текст.
Получателят сравнява тези два електронни подписа, за да провери целостта на съобщението (отсъствието на неговото изкривяване)
Наличните днес инструменти, които използват симетричната методология, са:
Kerberos, който е проектиран да удостоверява достъпа до ресурси в мрежата, а не да проверява данни. Той използва централна база данни, която съхранява копия на личните ключове на всички потребители.
АТМ мрежи (АТМ банкови мрежи). Тези системи са оригинални разработки на банките, които ги притежават и не се продават. Те също така използват симетрични методологии.
2.1.1.2 Асиметрична (отворена) методология
В тази методология ключовете за криптиране и декриптиране са различни, въпреки че са създадени заедно. Един ключ е известен на всички, а другият се пази в тайна. Въпреки че е възможно да се криптират и декриптират и с двата ключа, данните, криптирани с един ключ, могат да бъдат декриптирани само с другия ключ.
Всички асиметрични криптосистеми са обект на атаки с груба сила и следователно трябва да използват много по-дълги ключове от тези, използвани в симетричните криптосистеми. Това незабавно засяга изчислителните ресурси, необходими за криптиране, въпреки че алгоритмите за криптиране саелиптичните криви могат да смекчат този проблем. Брус дава следните данни за еквивалентни дължини на ключове.
Симетрична дължина на ключа
Дължина на публичния ключ
За да се избегне ниската скорост на асиметричните алгоритми за криптиране, за всяко съобщение се генерира временен симетричен ключ и само той се криптира с асиметрични алгоритми. Самото съобщение е криптирано с помощта на този ключ за временна сесия и алгоритъма за криптиране/декриптиране, описан в точка 2.1.1.1. След това този сесиен ключ се криптира с помощта на публичния асиметричен ключ на получателя и алгоритъм за асиметрично криптиране. След това този криптиран сесиен ключ, заедно с криптираното съобщение, се предава на получателя. Получателят използва същия алгоритъм за асиметрично криптиране и техния частен ключ, за да декриптира сесийния ключ, а полученият сесиен ключ се използва за декриптиране на самото съобщение.
При асиметричните криптосистеми е важно сесийният и асиметричният ключ да са сравними по отношение на нивото на сигурност, което предоставят. Ако се използва кратък сесиен ключ (напр. 40-битов DES), тогава няма значение колко големи са асиметричните ключове. Хакерите няма да атакуват тях, а сесийните ключове.
Как да използвате системи с асиметрични ключове:
Асиметричните публични и частни ключове се генерират и разпространяват сигурно (вижте раздел 2.2 по-долу). Секретният асиметричен ключ се прехвърля на неговия собственик. Публичният асиметричен ключ се съхранява в база данни X.500 и се администрира от сертифициращ орган (на английски - Certification Authority или CA). От потребителите се очаква да се доверят, че такава система сигурно създава, разпространява иключова администрация.
Електронен подпис на текста се създава чрез изчисляване на неговата хеш функция. Получената стойност се криптира с помощта на асиметричния таен ключ на подателя, след което полученият символен низ се добавя към предадения текст (само подателят може да създаде електронен подпис).
Създава се таен симетричен ключ, който ще се използва за криптиране само на това съобщение или сесия на взаимодействие (сесиен ключ), след което с помощта на алгоритъма за симетрично криптиране/декриптиране и този ключ, изходният текст се криптира заедно с добавения към него електронен подпис – получава се шифрованият текст (шифрован текст).
Сега трябва да решим проблема с предаването на сесийния ключ на получателя на съобщението. Това се прави с помощта на асиметричен алгоритъм за криптиране-декриптиране и асиметричен ключ на получателя (получен от CA и дешифриран). Ключът за шифрована сесия е прикрепен към шифрования текст (който включва и добавения преди това електронен подпис).
Целият получен пакет данни (криптиран текст, който включва, освен оригиналния текст, неговия електронен подпис и криптирания сесиен ключ) се предава на получателя. Тъй като криптираният сесиен ключ се предава през незащитена мрежа, той е очевидна цел за различни атаки.
Получателят извлича шифрования сесиен ключ от получения пакет. Използвайки своя таен асиметричен ключ и същия алгоритъм за асиметрично криптиране, получателят дешифрира сесийния ключ.
Получателят прилага същия симетричен алгоритъм за криптиране-декриптиране и декриптирания симетричен (сесиен) ключ към шифрования текст и получава обикновения текст заедно с електронния подпис.
Получателят отделя електронния подпис от оригиналния текст. След това хеш-функцията на текста се декриптира с помощта на публичния ключ на подателя и асиметричен алгоритъм за криптиране-декриптиране. Хеш функцията на получения изходен текст се преизчислява. Двете хеш функции се сравняват, за да се провери дали текстът не е променен.