Основи на криптографията
Основни термини и техните определения
Удостоверяване:идентифициране на източника на информацията, т.е. крайния потребител или устройство (централен компютър, сървър, комутатор, рутер и т.н.).
Цялостданни:Гарантиране, че данните остават непроменени по време на предаване.
Декодиране:метод за възстановяване на променена информация и привеждането й в четима форма.
Ключ:цифров код, който може да се използва за криптиране и декриптиране на информация, както и за нейното подписване.
Споделен ключ:цифров код, използван за криптиране/декриптиране на информация и проверка на цифрови подписи; този ключ може да бъде широко разпространен; публичният ключ се използва със съответния частен ключ.
Личен ключ:цифров код, използван за криптиране/декриптиране на информация и проверка на цифрови подписи; собственикът на този ключ трябва да го пази в тайна; частният ключ се използва със съответния публичен ключ.
СекретенКлюч:Цифров код, споделен между две страни за криптиране и декриптиране на данни.
Хеш функция:математическо изчисление, резултатът от което е поредица от битове (цифров код). При този резултат е невъзможно да се възстановят оригиналните данни, използвани за изчислението.
Хеш:последователността от битове, получена в резултат на изчисляване на хеш функцията.
Резултатобработкасъобщение(Съобщениеизвлечение): стойност, върната от хеш функцията
(същото като "хеш").
Шифър: Всеки метод за криптиране на данни.
Цифров подпис: Битова последователност, прикачена към съобщението (шифрован хеш), която осигурява удостоверяване и целостта на данните.
VPN(Виртуални частни мрежи):виртуални частни мрежи.
IDS (система за откриване на проникване):системи за откриване на проникване.
Криптография
Криптографиятае наука за компилиране и дешифриране на криптирани съобщения. Криптографията е съществен елемент за механизмите заудостоверяване, цялостности поверителност.
Удостоверяването е средство за потвърждаване на самоличността на подателя или получателя на информация. Целостта означава, че данните не са били променени, докато поверителността създава ситуация, при която данните не могат да бъдат разбрани от никой друг освен от подателя и получателя. Обикновено криптографските механизми съществуват под формата на алгоритъм (математическа функция) и секретна стойност (ключ).
Удостоверяването, целостта на данните и поверителността на данните се поддържат от три типа криптографски функции: симетрично криптиране, асиметрично криптиране и хеш функции.
Симетричното криптиране, често наричано криптиране със секретен ключ, се използва предимно за осигуряване на поверителност на данните. За да се гарантира поверителността на данните, абонатите трябва съвместно да изберат един единствен математически алгоритъм, който да се използва за криптиране и декриптиране на данни. Освен това те трябва да изберат споделен ключ (таен ключ), който да се използва с алгоритъма за криптиране/декриптиране, който са приели.
Пример за симетрично криптиране е показан на фигура 3.9.1.
Фигура 3.9.1 - Симетрично криптиране
Днес широко се използват алгоритми със секретни ключове като Data Encryption Standard (DES), 3DES (или „троен DES“) и International Data Encryption Algorithm (IDEA). Тези алгоритми криптират съобщения в блокове от 64 бита. Ако обемсъобщението надвишава 64 бита (както обикновено се случва), трябва да го разделите на блокове от по 64 бита всеки и след това по някакъв начин да ги обедините. Такова агрегиране обикновено се извършва по един от следните четири метода:
електронна кодова книга (Electronic Code Book, ECB);
вериги от криптирани блокове (Cipher Block Changing, CBC);
x-битова криптирана обратна връзка (Cipher Feed Back, CFB-x);
изходна обратна връзка (Output FeedBack, OFB).
За поддръжка най-често се използва криптиране с частен ключ
поверителността на данните и е много ефективно реализирана с помощта на неизменни "кабелни" програми (фърмуер). Този метод може да се използва за удостоверяване и поддържане на целостта на данните, но методът на цифровия подпис е по-ефективен. Следните проблеми са свързани с метода на секретния ключ:
Необходимо е често да се сменят секретните ключове, тъй като винаги съществува риск от случайното им разкриване;
Трудно е сигурно генериране и разпространение на секретни ключове.
Асиметричното криптиране често се нарича криптиране със споделен ключ, което използва различни, но допълващи се ключове и алгоритми за криптиране и декриптиране. За да се установи комуникация чрез криптиране с публичен ключ, и двете страни трябва да получат два ключа: публичен ключ и частен ключ (Фигура 2.9.2). И двете страни ще използват различни ключове за криптиране и декриптиране на данни.
Фигура 2.9.2 - Асиметрично криптиране
Ето някои от най-честите употреби на алгоритми с публичен ключ:
поверителността на данните е осигурена;
и при уточнение на подателя;
безопасно получаванепублични ключове за споделяне.
Механизмите за генериране на двойки публичен/частен ключ са доста сложни, но резултатът са двойки от много големи произволни числа, едното от които става публичен ключ, а другото частен ключ. Генерирането на такива числа изисква много процесорна мощност, тъй като тези числа, както и техните продукти, трябва да отговарят на строги математически критерии.
Този процес на генериране обаче е абсолютно необходим, за да се гарантира, че всяка двойка публичен/частен ключ е уникален. Алгоритмите за криптиране с публичен ключ рядко се използват за поддържане на поверителността на данните поради ограничения в производителността. Вместо това, те често се използват в приложения, където удостоверяването се извършва чрез цифров подпис и управление на ключове.
Сред най-известните алгоритми с публичен ключ са RSA (Rivest-Shamir-Adleman, Rivest-Shamir-Adelman) и ElGamal (El-Gamal).
Сигурнатахеш функцияе функция, която е лесна за изчисляване, но почти невъзможна за обръщане, тъй като изисква непропорционално много усилия. Входящото съобщение се предава през математическа функция (хеш функция) и в резултат на това получаваме определена последователност от битове на изхода (Фигура 2.9.3). Тази последователност се нарича "хеш" (или "изход на съобщение"). Хеш функцията приема съобщение с произволна дължина и извежда хеш с фиксирана дължина.
Общите хеш функции включват:
Message Digest 4 алгоритъм (MD 4);
Message Digest 5 алгоритъм (MD 5);
защитен хеш алгоритъм (Secure Hash Algorithm, SHA).

Фигура 2.9.3 - Изчисляване на хеш функцията
Цифровият подпис е криптиран хеш,който се добавя към документа. Принципът на цифрово подписано криптиране е лесен за разбиране от Фигура 2.9.4.

рисуване. 2.9.4 - Удостоверяване на цифрово подписано съобщение
Може да се използва за удостоверяване на подателя и целостта на документа. Цифровите подписи могат да бъдат създадени с помощта на комбинация от хеш функции и криптография с публичен ключ.
Цифровият сертификат е цифрово подписано съобщение, което сега често се използва за проверка на валидността на публичен ключ. Общият формат на широко приет сертификат X.509 включва следните елементи:
сертификат за сериен номер a;
алгоритъм за информация за емитента;
издател на сертификат a;
начална и крайна дата на валидност на удостоверението;
информация за алгоритъма на публичния ключ на предметния сертификат a;
подпис на издаващата организация.

Фигура 2.9.5 - Прехвърляне на ключ с цифров сертификат
Издателят на сертификата илиСертифициращ орган(CA) е доверена трета страна, на която имате пълно доверие. Публичният ключ се предава, както следва (Фигура 2.9.5):
изпращачът създава сертификат, който включва публичния ключ;
получателят изисква сертификат на изпращача от удостоверяващия орган;
удостоверяващият орган подписва сертификата на подателя;
СО изпраща подписания сертификат на получателя;
получателят проверява подписа на CA и извлича публичния ключ на подателя.
За да се приложи тази схема, е необходима надеждна система за разпространение на публичния ключ на CA до потребителите. За тази цел са създадениинфраструктурнипубличниPKIключове(Инфраструктура с публичен ключ). Използването на PKI позволява да се опрости управлението на сигурността чрез автоматизация, да се засили режимът на защита поради значителната сложност на компрометирането на цифрови сертификати, да се подобри и интегрира управлението на сигурността и да се засили контролът върху защитения достъп до бизнес ресурси.
PKI е йерархична архитектура за управление на атрибутите за сигурност на потребителите, участващи в защитен обмен на информация. В допълнение към живи хора, PKI може да включва и елементи на мрежовата инфраструктура - защитни стени, концентратори на виртуална частна мрежа, рутери, защитени сървъри за приложения и други софтуерни и хардуерни системи, които се нуждаят от удостоверяване и криптиране.
Всеки PKI обект има цифров сертификат, който се издава, отменя и подписва от сертифициращ орган. Сертификатът е подредена структура от данни, която свързва публичен ключ с неговия собственик и съдържа набор от елементи, използвани от субектите при установяване на защитени връзки.