Протоколът http използва симетрична схема за криптиране. Криптографията е симетрична и асиметрична. Характеристики на асиметричното криптиране

Изявление на предизвикателството за сигурността

Схема симетрично криптиране

Формално симетрична схема за криптиране може да бъде описана по следния начин:

SE = (K, E, D) , където

  • К - алгоритъм за генериране на ключове K,
  • E (M, K) = C - алгоритъм за криптиране на обикновен текст M върху ключ K, резултатът от който е шифрован текст C,
  • D (C, K) = M - алгоритъм за дешифриране на шифров текст C на ключа K, резултатът от който е откритият текст M

Процесът на изпращане на съобщения може да бъде описан по следния начин:

Подателят криптира съобщението с помощта на специфичен алгоритъм за криптиране, на който се доставят оригиналното (некриптирано) съобщение и ключ. Резултатът от алгоритъма е криптирано съобщение. Ключът е стойност, независима от криптираното съобщение. Смяната на ключа трябва да промени криптираното съобщение.

Шифрованото съобщение се изпраща до получателя. Получателят преобразува криптираното съобщение в оригиналното, като използва алгоритъма за декриптиране и същия ключ, който е бил използван при криптирането, или ключ, който лесно се извлича от ключа за криптиране.

Най-важният компонент на схемата за симетрично криптиране е алгоритъмът за криптиране, който тя използва. В момента се разграничават алгоритмите за блоково и поточно криптиране:

  • блокови шифри. Те обработват информация в блокове с определена дължина (обикновено 64, 128 бита, като например в DES или AES), като прилагат ключ към блока в предписан ред, като правило, няколко цикъла на смесване и заместване, наречени кръгове.
  • поточни шифри, при които се извършва криптиране на всеки бит или байт от оригиналния (обикновен) текст с помощта на гама.

На практика линията между алгоритмите за блоково и поточно криптиране е доста размита (поточен шифър може лесно да се създаде на базата на блоков шифър, например GOST 28147-89 в гама режим).

Схеми за криптиране, използвани в блокови шифрисе наричат ​​още режими на криптиране.

Някои от схемите за симетрично криптиране са:

  1. (ЕЦБ) Електронна книга с кодове
    • (ECB CTS
  2. (CBC) Верига на шифрова блокова верига Режим на свързване на шифров блок
    • (CBC CTS) Кражба на шифрован текст
    1. () Блокова верига Режим на блокова верига
    2. (CBC $) Верига на шифровани блокове с произволен IV (вектор за инициализация) Верижно свързване на блокове със случаен вектор за инициализация
    3. (CBCC) шифрова блокова верига с контролна сума
    4. (PCBC) разпространение на шифрова блокова верига
    5. (CBCPD) шифрова блокова верига на разликата в отворения текст
  3. (CFB) Режим на обратна връзка за шифроване обратна връзкачрез шифрован текст
  4. (OFB) Режим на обратна връзка на изхода
  5. (OFBNLF) изходна обратна връзка с нелинейна функция Режим на нелинеен изходен обратна връзка
  6. (PBC) Верига на блокове с отворен текст. Верига на блокове с отворен текст
  7. (PFB) обратна връзка с отворен текст Режим на обратна връзка с отворен текст
  8. (CTR) Режим на брояча
  9. Множествено криптиране
    1. Двойна
      • Метод на Дейвис-Прайс
    2. Троен
      • Веригата на Touchman
      • Схема с три ключа

Криптографски примитиви и/или протоколи

Криптографската сила на схемите за симетрично криптиране зависи почти изцяло от използвания в тях алгоритъм за симетрично криптиране. Като правило, когато се анализира силата на симетричен (един ключов) алгоритъм, се приема, че се използва най-простата схема за криптиране - ECB. Използването на други схеми може да подобри някои свойства на алгоритъма, в определени случаи, но не и обратното.

За да се гарантира надеждност симетрични алгоритмиизисква се криптиране:

  • криптографският алгоритъм трябва да бъде достатъчно силен, така че предаденото криптирано съобщение да не може да бъде декриптирано без ключ, като се използват само различни статистически модели на криптираното съобщение или всякакви други методи за неговия анализ.
  • сигурността на предаденото съобщение трябва да зависи от секретността на ключа, но не и от поверителността на алгоритъма. Алгоритъмът трябва да бъде анализиран от специалисти, за да се изключи наличието слаби точки, при наличието на които връзката между некриптирани и криптирани съобщения е лошо скрита.
  • алгоритъмът не трябва да нарушава секретността на ключа, дори ако противникът има много двойки отворен текст и съответните шифротекстове, получени с помощта на този ключ.

Като правило се приема, че участниците в криптирания обмен на информация имат пълно доверие един на друг, в противен случай, ако възникнат спорове и разногласия относно надеждността на съобщението, независим наблюдател няма да може да каже от кого е изпратено.

Симетричните крипто схеми обикновено се характеризират с висока скорост на криптиране / декриптиране, което им позволява да се използват за бързо криптиране големи обемиинформация. Освен това с помощта на някои от тях е възможно да се осигурят и трите свойства на информационната сигурност: конфиденциалност, автентичност и цялост.

  • Поверителността на предаването зависи от силата на шифъра и от поверителността на ключа за криптиране.
  • Автентичността се осигурява поради факта, че без предварително декриптиране е практически невъзможно да се извърши семантична модификация и фалшифициране на криптографски затворено съобщение. Фалшиво съобщение не може да бъде криптирано правилно, без да се знае тайния ключ.
  • Целостта на данните се осигурява чрез обединяване на предадените данни специален код(имитация на вмъкване), генериран от секретния ключ. Имитационното вмъкване е вид контролна сума, тоест определена референтна характеристика на съобщение, според която се проверява целостта на последното. Алгоритъмът за генериране на имитиращо вмъкване трябва да осигури неговата зависимост според някакъв сложен криптографски закон от всеки бит от съобщението. Проверката на целостта на съобщението се извършва от получателя на съобщението, като генерира фиктивно вмъкване, съответстващо на полученото съобщение, използвайки секретния ключ и го сравнява с получената фиктивна стойност. Ако има съвпадение, се заключава, че информацията не е променена по пътя от подателя до получателя.

Притежавайки висока скорост на криптиране, криптосистемите с един ключ позволяват решаването на много важни проблеми със сигурността на информацията (например, много е ефективно да се използват симетрични алгоритми за криптиране на локални ресурси, твърд диск, например). но автономно използванеСиметричните криптосистеми в компютърните мрежи пораждат проблема с разпределението на ключовете за криптиране между потребителите.

Практически приложения на криптографски конструкции, особености на тяхното изпълнение (Практически въпроси)

Практическото приложение на схемите за криптиране може да се види в много области от нашия живот, например схемата ECB се използва за криптиране на ключове, схемите CBC и CFB се използват за удостоверяване на данни, схемата CFB се използва и за криптиране на отделни знаци. Схемата OFB често се използва в канали с високи смущения (напр. сателитни системикомуникация). Схемата за криптиране на PCBC използва протоколи Kerberos v4 и WASTE

Компютърни науки, кибернетика и програмиране

Шифроването е преобразуване на данни в нечетима форма с помощта на ключове за криптиране за декриптиране на декриптиране. Състои се от: един или повече алгоритми за криптиране на математически формули; ключовете, използвани от тези алгоритми за криптиране; ключови системи за управление; обикновен текст; и шифротекст шифрован текст. Има две методологии за обработка на криптографска информация с помощта на симетрични и асиметрични ключове. Симетрична секретна методология, при която както за криптиране, така и за декриптиране ...

1. Основи на криптографията.

Необходимостта от сериозен подход към информационната сигурност ни отвежда до основните понятия на криптографията, понятията "цифрова сигурност", "цифров подпис" и криптиране.

Криптографията е науката за защита на данни. Тя търси решения на четири важни проблема за сигурността – поверителността, автентичността, целостта и контрола на участниците във взаимодействието. Шифроването е преобразуване на данни в нечетима форма с помощта на ключове за криптиране - декриптиране (декриптиране). Шифроването ви позволява да гарантирате поверителността, като пазите информацията в тайна от онези, за които тя не е предназначена.

Криптосистемата работи по определена методология (процедура). Състои се от: един или повече алгоритми за криптиране (математически формули); ключовете, използвани от тези алгоритми за криптиране; ключови системи за управление; обикновен текст; и шифрован текст (шифротекст).

2. Симетрично и асиметрично криптиране.

Има две методологии за криптографска обработка на информация с помощта на ключове – симетрична и асиметрична.

Симетричен (тайно)методология къдекакто за криптиране, така и за декриптиране, подателят и получателят използват един и същ ключ, който са се съгласили да използват преди началото на взаимодействието (Фигура 1.3.). Ако ключът не е бил компрометиран, тогава по време на декриптирането изпращачът се удостоверява автоматично, тъй като само подателят има ключ, с който информацията може да бъде криптирана, и само получателят има ключ, който може да се използва за декриптиране на информация. Тъй като подателят и получателят са единствените хора, които знаят този симетричен ключ, ако ключът е компрометиран, само взаимодействието на тези двама потребители ще бъде компрометирано.

Ориз. 1.3.

Алгоритмите за симетрично криптиране използват къси ключове и могат бързо да криптират големи количества данни.

Наличните днес инструменти, които използват симетрична методология, са например мрежите за банкомати. Тези системи са оригинални разработки на банките, които ги притежават и не се продават

От алгоритми за симетрично криптиране широко използванеима алгоритъм за криптиране DES (изобретен от IBM), който се препоръчва за използване в отворените сектори на американската икономика. Този алгоритъм първоначално беше обречен на ограничен живот, поради ограничаването на дължината на ключа до 56 бита. В момента професионалист е в състояние да разбие такъв ключ срещу такса, която е доста приемлива за бюджетите на много страни и корпорации.

Ситуацията се влошава от факта, че според законодателството на САЩ криптиращите системи с ключ не повече от 40 бита са разрешени за износ като софтуерни продукти. Тези. когато купувате шифрова система с ключ 1024 или 2048 и повече битове, трябва да знаете, че когато ключът се промени, 40-битовата част на ключа ще бъде активната (променящата се) част. Системите за симетрично криптиране имат един общ недостатък, който е трудността при разпределянето на ключове. Ако ключът бъде прихванат от трета страна, такава система за криптозащита ще бъде компрометирана. Така че при смяна на ключа той трябва да бъде препратен поверително на участниците в процедурите за криптиране. Очевидно този метод не е подходящ, когато трябва да установите защитени връзки с хиляди или повече интернет абонати. Основният проблем, свързан с тази методология, е как да се генерират и безопасно прехвърлят ключове на участниците във взаимодействието. Как да се създаде защитен канал за предаване на информация между участниците във взаимодействието за прехвърляне на ключове по несигурни комуникационни канали? Отсъствие безопасен методОбменът на ключове ограничава разпространението на техники за симетрично криптиране в Интернет.

Те се опитаха да решат този проблем чрез разработванеАсиметричен (отворен)методология на криптиране.Тя криптира документа с един ключ и декриптира с друг.. Всеки от участниците в трансфера на информация генерира самостоятелно две произволни числа (секретен (частен) и публичен ключ).

Публичният ключ се прехвърля по отворени комуникационни канали на друг участник в процеса на криптозащита, но Тайният ключпазена в тайна.

Подателят криптира съобщениетопубличен ключ на получателя, а само собственикът на частния ключ може да го дешифрира.

Публичният ключ не е необходимо да бъде скрит. Без значение кого познаваш даден ключтъй като е само за криптиране на данни. Този метод е подходящ за широк спектър от приложения. Ако зададете на всеки потребител в Интернет своя собствена двойка ключове и публикувате публичните ключове като номера в телефонния указател, тогава почти всеки може да обменя криптирани съобщения помежду си. Прилича на кутия с две врати с различни страни... Всяка такава врата има своя собствена ключалка. В кутията се поставя документ, заключва се, отключва се от другата страна с ключа на получателя.
Такъв алгоритъм криптографска защитаполучи името RSA. Името е съставено от първите букви на имената на тримата американски математици, разработили алгоритъма. Използвана е теорията на простите числа.

Всички асиметрични криптосистеми са обект на атаки с груба сила и следователно трябва да използват много по-дълги ключове от тези, използвани в симетричните криптосистеми, за да осигурят еквивалентно ниво на защита. Това незабавно се отразява на изчислителните ресурси, необходими за криптиране. RSA се превърна в индустриален стандартен алгоритъм за асиметричен ключ, използван в бизнеса за цифров подпис и криптиране.

3. В цифров подпис.

Цифров подпис защитава документа от промени или подмяна и по този начин гарантира неговата автентичност. Това е низ, в който атрибутите на документа (контролна сума на файла и т.н.) и неговото съдържание са кодирани по такъв начин, че всяка промяна във файла с непроменен подпис се открива.

Когато документ (прикачен файл) е защитен от CPU, тогава този CPU взема предвид не само документа, но исъщо частния ключ на подателя и публичния ключ на получателя.Само собственикът на частния ключ може да подпише правилно текста на документа.

За да провери CPU на документа, получателят използва (с помощта на специална полезност) публичния ключ на подателя.Никоя друга двойка ключове не е валидна за проверка. По този начин, за разлика от обикновения подпис, процесорът зависи от документа, а също и от ключовете на подателя. Ето защо той е с няколко порядъка по-висок от обичайния подпис и печат.

Процесорът само удостоверява документа, но не го защитава от неоторизирано четене.

Симетричните и асиметричните системи за криптиране имат своите предимства и недостатъци. Недостатъците на симетричната система за криптиране са трудността при подмяната на компрометиран ключ и недостатъците асиметрични системи s криптиране при сравнително ниска скорост.

Понастоящем системите за криптиране са широко разпространени, използвайки комбиниран алгоритъм, който позволява висока скоростприсъщо криптиране DES използвайте отворено препращане на ключове за криптиране (както в RSA).

За да избегнете алгоритми с ниска скорост асиметрично криптиране, за всяко съобщение се генерира временен симетричен ключ. Съобщението е криптирано с помощта на този временен симетричен ключ за сесия. След това този ключ на сесията се криптира с помощта на асиметричния публичен ключ на получателя и алгоритъм за асиметрично криптиране.Тъй като ключът на сесията е много по-кратък от самото съобщение, времето за криптиране ще бъде сравнително кратко.След това този криптиран ключ на сесията се предава на получателя заедно с криптираното съобщение. Получателят използва същия асиметричен алгоритъм за криптиране и частен ключ за декриптиране на ключа на сесията, а полученият ключ на сесията се използва за декриптиране на самото съобщение.

4. Обработка на информация по комбиниран алгоритъм.

Последователността на обработка на информацията съгласно комбинирания алгоритъм е показана по-долу на (Фигура 4.1).

Генерират се асиметрични публични и частни ключове. Тайният асиметричен ключ остава при собственика. Изпращачът и получателят на информацията обменят публични асиметрични ключове.

Създава се електронен подпис на текста. Получената стойност се криптира с помощта на асиметричния таен ключ на подателя и след това полученият символен низ се добавя към предавания текст (само подателят може да създаде електронен подпис).

Генерира се таен симетричен ключ, който ще се използва за криптиране само на това съобщение или комуникационна сесия (сесионен ключ).

След това, използвайки симетричен алгоритъм за криптиране / декриптиране и този ключ, той се криптира изходен текстзаедно с добавения към него електронен подпис се получава шифрованият текст.

Ключът на сесията вече е криптиран с помощта на алгоритъма за асиметрично декриптиране-криптиране и асиметричния публичен ключ на получателя.

Шифрованият ключ на сесията се добавя към шифрования текст (който включва и добавения по-рано електронен подпис).

Целият получен пакет от данни (шифрован текст, който включва освен оригиналния текст, неговия електронен подпис и криптиран сесионен ключ) се предава на получателя.

Получателят предприема действия в обратен ред... Първо трябва да решите проблема с декриптирането на ключа на сесията. Той извлича криптирания ключ на сесията от получения пакет. Използвайки своя частен ключ и същия асиметричен алгоритъм за криптиране, получателят декриптира ключа на сесията.

Получателят прилага същия симетричен алгоритъм за криптиране-декриптиране и декриптиран симетричен (сесионен) ключ към шифротекста и получава оригиналния текст заедно с електронния подпис.

Получателят отделя електронния подпис от оригиналния текст.

Цифровият подпис на текста се проверява с помощта на публичния ключ на подателя и асиметричен алгоритъм за криптиране-декриптиране.

Ако се установи, че е надежден, текстът не е променен.

Добър пример за това комбинирана системаможе да разпознава продуктитеНотариус и Атина фирма "Ланкрипто". Разликата от описаната схема е, че алгоритъмът за електронен подпис и криптиране е разделен на две независими процедури и когато се произведе симетричен ключ за криптиране на сесия, ключът се добавя произволно число"Маркант". След това този "маркер" се добавя към текста на вече криптираното съобщение и в отворена формасе изпращат на кореспондента за дешифриране на съобщението. Той, след като получи съобщението, откача "токена" и с помощта на своите частни и публични ключове на подателя и "токена" създава симетричен ключ за декриптиране на полученото съобщение. Тъй като "маркерът" се променя от сесия на сесия, дори и с декриптирания текст на съобщението, е невъзможно да се предвиди ключа на следващата сесия.

Основният принцип на системата с публичен и частен ключ е, че „Един“ може да подпише документ и да го криптира с „Два“. „Двама“ могат да дешифрират документа, знаейки, че е от „Един“, проверете подписа „Един“. Но компютърът „Двама“ не може да подпише документа с подпис „Едно“ и не може да криптира документа от „Едно“ към себе си, т.е. няма да може да фалшифицира документа от "Двама".

Как да защитим публичните ключове от подправяне

В криптосистемите с публичен ключ не е необходимо да защитавате публичните ключове от неоторизиран достъп. Напротив, колкото по-широко се разпространяват, толкова по-добре. Важно е обаче да защитите публичните ключове от подправяне, за да сте сигурни, че ключът наистина принадлежи на лицето, чието име носи.

Да приемем, че искате да изпратите лично съобщение до Алис. Вие изтегляте публичния ключ на Алис от някакво електронно табло за бюлетини (BBS). Вие криптирате писмото си до Алис с нейния публичен ключ и го изпращате през имейл системата на същата BBS.

За съжаление, без да знаете за вас или Алис, друг потребител на име Victor прониква в BBS и генерира публичен ключ, носещ потребителския идентификатор на Алис. Той тайно замества своя фалшив ключ с истинския публичен ключ на Алис. Вие по невнимание използвате този фалшив ключ, собственост на Виктор, вместо публичния ключ на Алис. Всичко изглежда наред, защото фалшивият ключ носи потребителския идентификатор на Алис. Виктор вече може да дешифрира съобщението, предназначено за Алис, тъй като притежава тайния ключ от фалшивата двойка. Дори след това той може да шифрова повторно съобщението, което е декриптирал с истинския ключ на Алис, и да й го изпрати, без никой да забележи. Освен това той може дори тогава да наложи подпис от името на Алис, който ще изглежда истински, тъй като всеки ще използва фалшив ключ, за да я провери.

Единственият начин да се предотврати подобна неприятност е да се премахне възможността за подправяне на публични ключове. Ако сте получили публичния ключ на Алис директно от нея, няма проблем. Но това може да бъде трудно, ако Алис е на хиляди мили или поради други причини е невъзможно да се срещнете лично.

Може би публичният ключ на Алис може да ви даде вашия общ приятелХенри, на когото и двамата вярвате и който знае, че притежава истинския ключ на Алис. Хенри може да подпише публичния ключ на Алис, като по този начин гарантира неговата цялост. Той трябва да използва собствения си частен ключ, за да подпише.

Тази процедура създава подписан сертификат за публичен ключ, който потвърждава, че ключът на Алис не е бил подправен. Разбира се, за да можете да проверите дали подписът на Хенри е правилен, трябва да знаете, че имате валидно копие на неговия публичен ключ. Може би Хенри също може да даде на Алиса подписано копие на вашия ключ. Така Хенри ще служи като посредник между вас и Алис.

Този подписан сертификат за публичен ключ може да бъде качен от Алис или Хенри в BBS, откъдето можете да го копирате по-късно. Тъй като можете да проверите подписа на Хенри с неговия публичен ключ, можете да сте сигурни, че това наистина е ключът на Алис. Никой злодей не може да ви подмами да повярвате, че фалшивият ключ, който е направил, принадлежи на Алис, тъй като никой не може да фалшифицира подписа на Хенри.

Силно доверен човек може дори да се специализира в посредничество между потребителите, като подписва техните сертификати за публичен ключ. Това доверено лице може да се счита за "доверен сертифициращ". На всеки публичен ключ, подписан от оторизиран сертифициращ орган, може да се вярва в смисъл, че принадлежи на лицето, чието име носи. Всички потребители, които желаят да участват в реализацията на такава разпределена мрежа за доверие, трябва да имат известно валидно копие на ключа на упълномощения сертифициращ, за да може подписът да бъде проверен. В някои случаи довереният сертифициращ може също да поддържа сървъра на ключове, позволявайки на мрежовите потребители да търсят публични ключове чрез запитване към сървъра на ключове, но не е необходимо поддържащият ключов сървър да бъде и удостоверителят.

Един оторизиран сертифициращ орган е особено подходящ за големи, централно управлявани организации, правителствени или корпоративни. Някои организационни среди използват йерархии на доверени сертифициращи органи.

За децентрализирани среди вероятно е по-подходящо да се създаде централизиран доверен сертифициращ документ за всички потребители, които да действат като посредници.

Как се решава проблемът? безопасна актуализацияи прехвърляне на ключове по необезпечени телекомуникационни канали? В САЩ това се решава по следния начин:

Асиметричните публични и частни ключове се генерират и разпространяват сигурно. Тайният асиметричен ключ се прехвърля на неговия собственик. Асиметричният публичен ключ се съхранява в база данни X.500 и се администрира от сертифициращ орган (CA).

Подателят трябва да има асиметричен публичен ключ от сертифициращия орган (CA). Прихващането на некриптирани заявки за този публичен ключ е често срещана форма на атака. Може да има цяла система от сертификати, които потвърждават автентичността на публичния ключ на CA. Стандартът X.509 описва редица методи за потребителите да получат публични ключове на CA, но нито един от тях не може напълно да защити срещу подправяне на публичен ключ на CA, което ясно доказва, че няма такава система, която да гарантира автентичността на публичния ключ на CA .

Изпращачът пита CA за асиметричния публичен ключ на получателя. Този процес е уязвим за атака, при която нападателят пречи на комуникацията между подателя и получателя и може да промени трафика между тях. Следователно публичният асиметричен ключ на получателя е "подписан" от CA. Това означава, че CA е използвал своя асиметричен частен ключ за криптиране на асиметричния публичен ключ на получателя. Само CA знае асиметричния частен ключ на CA, така че има гаранция, че публичният асиметричен ключ на получателя е от CA.

Веднъж получен, асиметричният публичен ключ на получателя се дешифрира с помощта на асиметричния публичен ключ на CA и алгоритъма за асиметрично криптиране/декриптиране.

По този начин две лица, които преди това не са водили кореспонденция и нямат общ ключ за криптиране, могат да водят тайна кореспонденция.

Понастоящем износът (и вносът) на продукти за цифрова сигурност е забранен със закон, така че всяка страна има собствена реализация на алгоритмите. Цифровата защита се реализира или софтуерно, или хардуерно (под формата на карти за разширение). Ако имейлът е снабден с пакет за цифрова сигурност, тогава можете да подпишете и след това да шифровате някоя или всички части от писмото, да поставите своя подпис върху документ, който вече е подписан от други, да проверите подписа и т.н.

Ако наскоро криптографията беше прерогатив на индивида държавни структуритогава днес почти всички са съгласни, че както организациите, така и хората изпитват нужда от достъп до технологии за криптиране. С разпространението на интернет все повече хора използват компютри и телефонни мрежи, както в лични, така и в бизнес цели, а криптирането е основата за изграждане на стена на секретност около тези комуникации.

5. Сертифициране криптографски средства.

Криптографската сигурност съществува от дълго време, но в последните временапо ред причини думите "лицензия", "сертификат", Държавна техническа комисия, ФАПСИ са на устата на всички. В същото време малко хора могат ясно да обяснят какво точно може да се направи, за да се защити тяхната информация и за какво можете да носите отговорност.

Сертификация - издаване на документ на производител на продукти за информационна сигурност, потвърждаващ, че софтуерният пакет, разработен от компанията, отговаря на високите пазарни изисквания (т.е. изобщо не е лесно да се отвори криптиран документ) и следователно софтуерможе да се продава.

За да пусне сертифицирани продукти, фирмата трябва да получи лиценз за такива дейности. Лицензи и сертификати в областта на криптографските средства се издават от ФАПСИ и Държавната техническа комисия. По-добре е да купувате криптографски инструменти само сертифицирани от фирми, лицензирани за този вид дейност. В законодателната сфера вече е в сила указ на президента на Руската федерация № 334, който задължава държавните институции да използват само сертифицирани инструменти за криптиране и законът за информацията, според който всяко средство за криптиране може да се използва за защита на некласифицирана и нечетлива информация ( някой от тях).

Що се отнася до използването на криптографски системи от банките, тогава има пълна анархия. Което всъщност е доста добре. Факт е, че в момента няма изисквания към търговските банки от Централната банка на Русия и други държавни органи за задължително използване на инструменти за криптиране, методите за защита на информацията в тази област не са регламентирани.

Не е установено и задължителното използване от търговските банки на сертифицирани средства за електронен обмен с клиенти.

В същото време е законово установено, че потребителите, дистрибуторите и разработчиците са длъжни да сертифицират всички прилагани инструменти за защита на информацията в съответните държавни органи. Указ номер 334 гласи: „...Забранете дейности на правни и лицасвързани с разработването, внедряването иексплоатация инструменти за криптиране без лицензи, издадени от FAPSI”. Вярно е, че този указ не е в сила, но досега никой не го е отменил. Тоест, ако сте имали нещастието да закупите инструменти за криптиране, сертифицирани от FAPSI, тогава трябва да получите лиценз от FAPSI, за да ги използвате. Съответно същият лиценз трябва да бъде получен от тези, с които обменяте криптирани съобщения.

Съгласно практиката по прилагане на законодателството, атестирането и сертифицирането на потребителите е задължително само за държавни органи и структури, работещи с държавна тайна. За търговските структури по-подходящ е Законът на Руската федерация за банките и банковата дейност. Рискът, свързан с използването на несертифицирани информационни системии средствата за тяхната поддръжка, лежи на собственика (собственика) на тези системи и средства. Използването на сертифицирани инструменти за информационна сигурност е предпоставкаЧрез ревизия спорни въпросисъс съдебното разпореждане.

Отговорността на банката към клиента за изтичане на информация в комуникационните канали остава независимо от средствата и методите за защита на информацията. Използването на сертифициран инструмент по принцип дава възможност да се възложи отговорността за изтичането и кражбата на информация на сертифициращите органи.

По този начин търговските банки в отношенията с клиенти имат право да използват несертифицирани FAPSI системи за електронен обмен (документопоток), при условие че тези системи не предвиждат официално средства за криптиране. Правна отговорност възниква само когато инструментите за криптиране станат предмет на бизнес дейности. За да не се заблуждават нито банката, нито нейните клиенти с лицензирането на използването на инструменти за криптиране, в системите Банка-Клиент е необходимо да се заменят думите „криптиране“ с „криптиране“ във всички договори и да продължим да живеем спокойно. Законът, че един стълб е невъзможно да се прескочи, но е лесно да се заобиколи.

Ситуацията с електронния цифров подпис (ЕЦП) е малко по-проста. Законът за електронния цифров подпис гласи, че електронният цифров подпис в електронен документ е еквивалентен на ръкописен подпис в хартиен документ, в случаите, когато установено със закони други регулаторни правни актове на Руската федерация или споразумение на страните (тоест е необходимо споразумение или обикновено споразумение, подписано и заверено с мастичен печат за признаване на EDS от страните). Освен за криптирането, предпоставка за разглеждане на спорни въпроси в съда е използването на сертифицирани инструменти за EDS.

Същият закон отделя голямо внимание на сертифициращите центрове.

Център за проверка:

Генерира сертификати за ключове за подпис;

Създава ключове за електронни цифрови подписи по заявка на участници в информационната система с гаранция за запазване в тайна на частния ключ на електронния цифров подпис;

Суспендира и подновява сертификатите за ключове за подпис, както и ги отменя;

Поддържа регистър на сертификатите за ключове за подпис, осигурява неговата актуалност и възможност за безплатен достъп до него за участниците в информационната система;

Проверява уникалността на публичните ключове на електронните цифрови подписи в регистъра на сертификатите за ключове за подпис и архива на сертифициращия орган;

Издава сертификати за ключове за подпис под формата на хартиени документи и (или) под формата на електронни документи с информация за тяхната валидност;

При искания от потребителите на сертификати за ключ за подпис, той потвърждава автентичността на електронен цифров подпис в електронен документ във връзка с издадените им сертификати за ключове за подпис.

Така че тук, във всички споразумения за признаване на ЕЦП като страни по споразумението, думите "Електронен цифров подпис" трябва да се заменят с "Цифров подпис".

За да предупредя срещу използването на инструментите за криптиране, вградени в бази данни, има само един интересен факт. Има фирма, наречена AccessData, в южната част на Съединените щати, като се обадите на 1-800-658-5199. Тя продава само за $ 185 софтуерен пакет за персонални компютри, който нарушава вградените схеми за криптиране WordPerfect, Word, Lotus 1-2-3, Excel, Quattro Pro, Paradox и Oracle. Софтуерът за криптиране е като лекарство. Хапче, получено от шарлатан, обикновено изглежда точно като лечебна отвара.

6. По-нататъшно развитие на криптографските инструменти.

И така, какво следва? Писане на код, който е достатъчно сложен, че не е интензивен компютърна атакане може да го пробие, е границата на земните и небесните желания на криптографите по целия свят. Тази цел се постига чрез добавяне на нови кодови битове към "секретния ключ", което удвоява сигурността всеки път. " Надеждна защита„Днес означава само, че крадецът ще отнеме твърде много време, за да вдигне ключалка, — нищо друго не е изключено. И всичко би било наред, но напредъкът не стои на едно място: Въпреки това, разработчиците отаз Виртуалните машини вярват, че са намерили интересно решение на проблема със силната крипто защита. Те използваха квантовата физика, за да осигурят напълно сигурен метод за прехвърляне на ключове.

Известно е, че квантовата физика е тъмна и много напреднала област, занимаваща се със свойствата на субатомните структури. Използването на неговите постижения позволи на разработчиците да добавят нов слой сигурност към стандартната технология за криптиране с публичен ключ чрез превеждане на ключови битове в „квантови битове“, quantbits или „cubits“. Състоянията и промените в състоянията на квантовите битове се описват с много сложни математически формули. Това се отразява на качеството на криптирането по най-пряк начин - числото възможни вариантинараства експоненциално. Битът в стандартен компютър се представя с една цифра — нула или едно. Не е така с quantumbit. Последното, представено от частица или фотон, може да съществува едновременно и като нула, и като единица. За да се извърши квантово криптиране, битът се преобразува във фотон, предава се чрез оптичен кабел към компютъра на получателя, след което се превежда обратно в стандартен бит и се чете. Основната тънкост е, че за разлика от стандартния бит, квантовият бит не може нито да бъде копиран, нито прочетен, нито дори видян от трета страна, без да промени състоянието си и по този начин да направи кода неизползваем. Ако външен наблюдател се намеси в системата, нейното състояние се променя незабавно и подателят разбира, че някой се е опитал да види съобщението.

И аз VM, и NT, и Los Alamos National Labs, всички вече са се заели с разработването на методи, които правят възможно използването на постиженията на квантовата физика за предаване на криптирани съобщения в системи за космически и военни цели. V I VM работят за създаване на подобни системи за банки и институции за електронна търговия.

Състоянието на нещата с квантовото криптиране обаче не вдъхновява всички. Тоест вдъхновява основно теоретиците. „Честно казано, квантовата физика в момента е извън нивото на разбиране повечето хора, — експертите по криптиране казват, — следователно е трудно да си представим, че някой ще се втурне да произвежда необходимото оборудване точно сега. Поне през следващите години това няма да се случи." Някои специалисти като цяло са сигурни, че проблемът с поверителна информация от точка А до точка Б е решен днес. Те са уверени, че в обозримо бъдеще все още няма нужда от технологии за квантово криптиране, а технологията RSA способен да генерира ключове до 2048 bit, все още е доста надежден. Макар че през януари 1998 г. Electronic Frontier Foundation и дешифриран за 22,5 часа съобщение, кодирано според 56-битовия стандарт DES (в момента максималният стандарт на технологията за криптиране, разрешен за износ от Съединените щати), експертите смятат, че този случай не е показателен. „Едно нещо е да разбиеш 56-битов стандарт,- те казват, - Около милиард или дори трилион пъти по-трудно е да се разбие съобщение със 128-битов ключ. Не смятаме, че през нашия живот ще има компютър, който може да създаде такова нещо."

Въпреки подобни прогнози, бързото развитие на технологиите като цяло и технологиите за криптиране, както и технологиите за разбиване на криптирани кодове в частност, принуждават I VM и Los Alamos National Labs продължете по пътя на създаването на нови технологии за криптиране, към квантовите шифри. За да разбие квантовия код, кракерът първо ще трябва да наруши законите на физиката и едва след това да избере необходимите числа. Въпреки че хардуерът, необходим за прилагане на квантово криптиране, все още е някъде в сферата на научната фантастика. Вече е налична работеща лабораторна версия. В момента се работи по извеждането на тази технология от лабораторията и поставянето й на индустриални релси.

Освен това в момента обхватът на приложение на криптографските средства се е разширил сериозно поради използването им в мрежи VPN ... В съвременния компютъризиран свят електрониката се превръща в основен начин за пренос на информация. Документи, информация от бази данни, номера кредитни картиочила и файлове с различно съдържание. Всичко това е намерило своето място в нова технологиямрежи в мрежи VPN (виртуална частна мрежа ). Тази технология дава възможност за създаване на глобални корпоративни мрежи на дълги разстояния, където вместо собствени комуникационни линии се използва Интернет, информацията за който се прехвърля в криптирана форма. Така се постига сигурността на информацията, предавана по незащитени комуникационни линии. мрежи VPN имат най-много различни приложения... Те могат да свържат отдалечен офис към главния офис, да свържат няколко заедно корпоративни мрежи... Осигуряване на служители или доверени клиенти на компанията достъп до поверителна информация във фирмената мрежа.


Електронен подпис

Шифровано от Secret 1

Текст

Секретен ключ 1

Публичен ключ 1

Компютър "Два"

Компютър "Един"

Публичен ключ 2

Тайна симетрична

Ключ за сесия

Текстът и подписът са криптирани със симетричен ключ за сесия

Криптирани данни

Шифроване на симетричен ключ за сесия с публичен ключполучател

Електронен текст

подпис

Шифровано

Тайна 1

Всичко е криптирано симетрично

ключ за сесия

Приписва се на шифротекста

Криптиран ключ за сесия

Криптирани данни

Ориз. 4.1.


А също и други произведения, които може да ви заинтересуват

51125. Спектрален анализ на сигнали за Фурие 1,43 MB
Всъщност спектрите на всички дискретни сигнали в периодични и амплитудните спектри са сдвоени функции на честотата. С помощта на MatLAB е възможно да се създадат две половини от един период на спектъра и чрез огледални копия една с една и съща честота на Найкуист. Чрез цената на всички графики на амплитудния спектър има достатъчно и е необходимо да се направи по-малко от половината от периода на спектъра, някои от тях ще увеличат описанието на амплитудния спектър
51126. Разработване на текстов редактор с помощта на I/O файл 54,26 KB
Задача: Разработете текстов редактор, използвайки I/O файл. Програмен код (файл Form1.cs) ...
51127. Изследване на точността на ACS в стационарно състояние 77,99 KB
Графики на грешки Усилваща връзка Pi контролер Диференциална връзка Изчисления на стойности на грешка в стационарно състояние: Усилваща връзка Пи контролер Диференциална връзка Изход по време лабораторна работае изследвано влиянието на степента на астатизъм върху стационарната грешка при стъпаловидно действие.
51128. Филтриране на сигнали 889,81 KB
Мета роботи: вземете бърз съвет за проектиране на цифрови филтри, уточнявайки спецификата на филтрите, в зависимост от авторитетите на сигналите, като например необходимостта от филтриране; получите бърз старт за реализиране на дискретни филтриращи сигнали в средата на MatLAB.
51130. Wavelet анализ на сигнали 914,01 KB
Мета роботи: за да видите изображението на мощностите на сигнала във вълновата скалограма; получите бърз старт за реализиране на уейвлет сигнали в средата на MatLAB
51131. СИНТЕЗ НА АВТОМАТИЧНОТО УПРАВЛЕНИЕ В ПРОИЗВОЛНА БАЗА 126,01 KB
Пояснение на проблема: Сглобете и настройте веригата на управляващата машина чрез подаване на входни сигнали xj от превключващия регистър Използвайки подготвени тестове, покажете правилната работа на веригата, като подадете синхронизиращи сигнали от единичния импулсен генератор и анализирате състоянието на машината с помощта на индикатор лампи Проверете работата на веригата в динамичен режим, премахнете диаграмите на времето на изходните сигнали на управляващата машина ... Тип автомат на Мур тип тригери D.
51132. Анализ на корелационния сигнал. Силата на сигналите от резултатите от корелационния анализ 199,85 KB
Мета роботи: за проследяване на силата на сигналите от резултатите от корелационния анализ; вземете бърз съвет за корелационния анализ на сигналите в средата на MatLAB. Поръчка на роботи...
51133. СИНТЕЗ НА АВТОМАТИЧНОТО УПРАВЛЕНИЕ НА ОСНОВА ДИСТРИБУТОРИ НА СИГНАЛ (PC) 129,3 KB
Цел на работата: да се проучи техниката на внедряване на управляващи машини с твърда логика на базата на разпределители на сигнали. Постановка на проблема: сглобяване и отстраняване на грешки в схемата на разпределителя на сигнала; ...

За обмен на съобщения и скриване на съдържание от трети страни се използва криптиране. Използва се навсякъде, където е необходимо повишено нивозащита. Има две схеми за криптиране: симетрична и асиметрична.

Какво е криптиране

Шифроването ще бъде полезно, когато трябва да скриете някаква информация от аутсайдерии предоставяне на секретни данни на оторизирани потребители.

Характеристика на този тип предаване на данни е използването на ключ.

Има три състояния на сигурност:

  • скриване на информация от непознати;
  • предотвратяване на промени;
  • поддържане на целостта на информацията;
  • идентификация на подателя.

За четене на информация, освен ключа, е необходим декодер. Именно това прави невъзможно киберпрестъпниците да получат данни, тъй като прихващайки данните, но нямайки ключ, е невъзможно да ги прочетат.

Има два вида криптиране: симетрично и асиметрично.

Основната цел на криптирането е да съхранява информация. Това ви позволява да работите с някои данни от ненадеждни източници, да предавате съобщения по несигурни канали. Информацията се изпраща по следния начин:

  • подателят криптира данните;
  • получателят декриптира.

Всяка трансформация се осъществява с помощта на алгоритми, които използват ключове за решаване. Методите за симетрично и асиметрично криптиране са криптографски силни.

Крипто устойчивост

Симетричните и асиметричните системи за криптиране имат характеристика, която е отговорна за трудността при получаване на неоторизиран достъп.

Има 2 основни типа криптографска сила на системата за криптиране.

  1. Абсолютно устойчива система не може да бъде разкрита, дори с безкрайно големи изчислителни ресурси. Характеризира се с това, че за всяко съобщение се генерира отделен ключ. Дължината му е равна или по-голяма от дължината на съобщението.
  2. В гражданска криптографска система се използват достатъчно силни системи. Такъв алгоритъм е труден за дешифриране, но с наличието на подходящи ресурси става възможен.

Сравнение на криптографската сила на някои системи за криптиране

Максимален размер RSA ключ - 4096 бита.

Използва се за криптиране и подпис. Криптографската сила може да бъде описана като 2.7.1028 за 1300-битов ключ. Схемата се използва в много стандарти, принципът на RSA криптиране е един от първите асиметрични алгоритми.

Размерът на ключа на схемата на ElGamal е RSA - 4096 бита. Използва се както за криптиране, така и за цифров подпис. Криптографската сила на тази система не се различава от RSA когато същия размерключ.

Методът DSA използва много по-малък ключ от 1024 бита. Използва се изключително за цифрови подписи.

Симетрично и асиметрично криптиране

Тези два вида криптиране се различават по броя на ключовете и нивото на устойчивост на кракване.

Ако за кодиране и декодиране се използва един ключ, тогава това криптиране е симетрично. Асиметричното криптиране включва използването на един ключ за всеки алгоритъм.

  1. Публичен ключ се използва за криптиране на някакъв код, който е конкретно съобщение. Ключът е известен и на двете страни, предава се по незащитен канал и може да бъде прихванат. Най-важната задача за запазване на информация е защитата на ключа от прихващане.
  2. Private се използва за декриптиране. Известно само от едната страна. Не може да бъде прихванато, тъй като е с един и същ събеседник през цялото време.

Целта на криптирането определя как се поддържа поверителността. Едно от първите беше симетричното, асиметрично криптиране, изобретено по-късно, за да осигури по-голяма сигурност.

Характеристики на симетричното криптиране

Симетричната защитна система има следните предимства.


Недостатъците включват следното:

  • сложността на управлението на ключове в голяма мрежа;
  • сложността на обмена на ключове;
  • необходимостта от намиране на надежден канал за прехвърляне на ключа към страните;
  • невъзможност за използване за цифрови подписи, сертификати.

За да се компенсират недостатъците, се използва комбинирана схема, при която ключът, използван за декриптиране, се предава чрез асиметрично криптиране. Предава се чрез симетрично криптиране.

Характеристики на асиметричното криптиране

Използването на двойка публичен-частен ключ може да се използва като:

  • независими средства за защита на информацията;
  • ключово разпределително съоръжение;
  • средства за удостоверяване на потребителя.

Има следните предимства:

  • съхраняване на секретния ключ на сигурно място, вместо което отвореният се предава по отворения канал;
  • ключът за декриптиране е известен само на една страна;
  • в голяма асиметрична система използвайте по-малко клавиши, за разлика от симетрична.

Трудно е да се правят промени в такива алгоритми. Система като тази има дълги клавиши. Ако симетричният ключ е 128 бита, тогава ключът RSA е 2304 бита. Поради това скоростта на декриптиране страда - тя е 2-3 пъти по-бавна. Декриптирането изисква големи изчислителни ресурси.

Има много примери за симетрични и асиметрични системи за криптиране.

Симетрично криптиране - как изглежда?

Пример за симетрично криптиране и схема за изпълнение е по-долу.

  1. Има двама събеседници, които планират размяна конфиденциална информация.
  2. Първият събеседник генерира ключ d, алгоритми за криптиране E и декриптиране D. След това той изпраща тази информация на втория събеседник.
  3. Съобщението се дешифрира с ключ d.

Основният недостатък е невъзможността да се установи автентичността на текста. Ако ключът бъде прихванат, нападателят ще дешифрира секретната информация.

Има класически методи.

  1. Проста и двойна пермутация.
  2. Магически квадрат.
  3. Единична пермутация.

Първият метод е един от най-простите и не използва ключ в схемата. Изпращачът и получателят се договарят за определен ключ, представен под формата на размер на таблица. Изпратеното съобщение се записва в колоните на таблицата, но се чете ред по ред. Знаейки размера на таблицата, получателят декриптира съобщението.

За осигуряване на по-голяма секретност се използва двойна пермутация. По този начин се получава криптирането на предварително криптирания текст. За това таблиците трябва да се различават по броя на редовете и колоните. Запълват се вертикално, хоризонтално, в змия, в спирала. Този метод не укрепва криптирането, но процесът на кракване отнема повече време.

"Вълшебният квадрат" е по-сложна структура, която е матрица. Естествените числа са вписани в клетките по такъв начин, че сумата от числата за всяка колона, ред, диагонал да е еднаква. Всяко число съответства на буква в съобщението. Полученият текст се записва в низ чрез сравняване на числа и символи.

Примери за асиметрично криптиране

V в такъв случайпубличният ключ се изпраща по отворен канал и теоретично може да бъде прихванат от нападатели.

За разлика от симетричните ключове за криптиране, асиметричните ключове за криптиране са различни. Публичният ключ се използва за криптиране, частният ключ се използва за декриптиране на съобщението. Използването на два ключа решава проблема с прихващането, който беше в симетричния метод. Реализира се по следния начин.

  1. Първият събеседник избира алгоритми за криптиране и декриптиране, чифт ключове. Публичният ключ се изпраща на втория събеседник.
  2. Вторият събеседник криптира информацията с помощта на получения ключ. Изпраща информация до първия партньор в чата, който декриптира съобщението с помощта на частния ключ.

Има такива основни методи за асинхронно криптиране.

  1. Шифър на Ел Гамал.

RSA

RSA е първият криптографски алгоритъм, използван както за криптиране, така и за цифров подпис.

Описано е по следния начин.

  1. Избират се две прости числа, например 3 и 7.
  2. Изчислява се модулът n - произведение на две числа. Оказва се 21.
  3. Изчислява се функцията на Ойлер φ = (p-1) × (q-1) = 2 × 6 = 12.
  4. Изчислява се всяко просто e по-малко от φ и просто с φ. Налични опции: 5, 7, 11.

Двойка числа e, n (5, 21) е публичен ключ. Сега се изчисляват числата d и n на частния ключ. Числото d удовлетворява условието (d × e) mod φ = 1 и е равно на 17. В резултат на това втората двойка числа 17 и 21 е частен ключ. Шифроването се извършва по следния начин: съобщението се издига на степен e, взема се остатъкът от деленето на n и резултатът трябва да е по-малък от n. Оказва се 10 - ще бъдат кодирани данни. За декодиране e се повишава до степен d и се изчислява остатъкът от деленето на n.

DSA

DSA (за разлика от RSA) се използва само за цифрови подписи, а не за криптиране. Посоченият подпис може да бъде публично проверен. Има два алгоритма за генериране и проверка на подпис. Това е хеш съобщението, което е криптирано, което представлява текста в цифрова форма... Следователно се избира сложна хеш функция, за да се избегнат сблъсъци. Изграждането на цифров подпис се състои от следните стъпки.

  1. Избор криптографска хеш функцияН (х).
  2. Разрядността на простото число q трябва да е равна на стойността на хеш функцията H (x).
  3. Избор на такова просто число p, така че p-1 да се дели на q без остатък.
  4. Изчисляване на числото g = h (p-1) / q mod p. h трябва да бъде произволно число в диапазона от 1 до p-1.
  5. Избира се произволно число k от 0 до q.
  6. R = (g k mod p) mod q се изчислява.
  7. Тогава s = k-1 (H (m) + xr)) mod q.
  8. Ако r = 0 или s = 0, се избира друго число k.

Схема на Ел Гамал

За цифрови подписи се използва криптиране на ElGamal. Той е продължение на алгоритъма на Дифи-Хелман.

Когато работите по тази схема, е важно да вземете предвид следната характеристика. Шифроването на El Gamal не е алгоритъм за цифров подпис със същото име. Когато е криптиран, текстът се преобразува в шифър, който е 2 пъти по-дълъг от оригиналното съобщение.

Ключовете се генерират по следния начин.

  1. Избира се произволно просто число p.
  2. Числото g трябва да бъде примитивен корен на p.
  3. Числото x трябва да бъде по-голямо от 1 и по-малко от p-1. Това ще бъде частният ключ.
  4. След това публичният ключ y се изчислява по формулата g ^ x mod p.

Когато се криптира текстът е избран системен ключК. По-голямо е от едно и по-малко от p-1. След това се изчисляват числата a и b, които са шифрован текст, a = g ^ k mod p и b = y ^ k M mod p.

  • Изработка на уебсайт,
  • Алгоритми
    • Превод

    Как все пак работи HTTPS? Това е въпрос, с който се боря от няколко дни в моята работна чернова.

    Като уеб разработчик осъзнах, че използването на HTTPS за защита на потребителските данни е много, много добра идея, но никога не съм имал кристално ясно разбиране за това как всъщност работи HTTPS.

    Как се защитават данните? Как могат да се инсталират клиент и сървър сигурна връзкаако някой вече слуша канала си? Какво е сертификат за сигурност и защо трябва да плащам на някого, за да го получа?

    Тръбопровод

    Преди да се потопим в това как работи това, нека поговорим накратко защо е толкова важно да се защитят интернет връзките и от какво защитава HTTPS.

    Когато браузър направи заявка към любимия ви уебсайт, тази заявка трябва да премине през много различни мрежи, всеки от които потенциално може да бъде използван за подслушване или подправяне на установена връзка.

    От твой собствен компютъркъм други компютри във вашата локална мрежа, чрез рутери и комутатори, чрез вашия интернет доставчик и чрез много други междинни доставчици - огромен брой организации предават вашите данни. Ако нападателят се окаже в поне един от тях, той има възможност да види какви данни се предават.

    Обикновено заявките се изпращат през обикновен HTTP, при който както заявката на клиента, така и отговорът на сървъра се изпращат в чист текст. И има много убедителни причини, поради които HTTP не използва криптиране по подразбиране:

    Отнема повече изчислителна мощност
    Прехвърлят се още данни
    Не мога да използвам кеширане

    Но в някои случаи, когато комуникационният канал се предава изключително важна информация(като пароли или информация за кредитна карта), трябва да се вземат допълнителни мерки за предотвратяване на подслушване на такива връзки.

    Защита на транспортния слой (TLS)

    Сега ще се потопим в света на криптографията, но няма да се нуждаем от специален опит за това - ще разгледаме само най-общите въпроси. Така че криптографията ви позволява да защитите връзката от потенциални нападатели, които искат да попречат на връзката или просто да я слушат.

    TLS, наследникът на SSL, е протоколът, който най-често се използва за осигуряване на защитени HTTP връзки (наречени HTTPS). TLS е един слой под HTTP в OSI модела. Обяснявайки на пръсти, това означава, че в процеса на изпълнение на заявка първо се случват всички "неща", свързани с TLS връзката и едва след това всичко, свързано с HTTP връзката.

    TLS е хибридна криптографска система. Това означава, че използва няколко криптографски подхода, които ще обсъдим по-нататък:

    1) Асиметрично криптиране (криптосистема с публичен ключ) за генериране на споделена тайна и удостоверяване (тоест удостоверяване, че сте този, за когото се представяте).
    2) Симетрично криптиране, използващо таен ключ за допълнително криптиране на заявки и отговори.

    Криптосистема с публичен ключ

    Криптосистемата с публичен ключ е вид криптографска система, при която всяка страна има както публичен, така и частен ключ, свързани математически. Публичният ключ се използва за криптиране на текста на съобщението в глупости, докато частният ключ се използва за декриптиране и извличане на оригиналния текст.

    Тъй като съобщението е криптирано с публичния ключ, то може да бъде декриптирано само със съответния частен ключ. Нито един ключ не може да изпълнява и двете функции. Публичният ключ се публикува в публичното пространство без риск от излагане на системата на заплахи, но частният ключ не трябва да се предава на някой, който няма право да декриптира данните. И така, имаме ключове - публични и частни. Едно от най-впечатляващите предимства на асиметричното криптиране е, че две страни, които преди това не са знаели една за друга, могат да установят защитена връзка, като първоначално обменят данни през отворена, несигурна връзка.
    Клиентът и сървърът използват свои собствени частни ключове (всеки свой) и публикуван публичен ключ, за да генерират споделена тайна за сесията.

    Това означава, че ако някой е между клиента и сървъра и наблюдава връзката, той пак няма да може да разбере нито частния ключ на клиента, нито частния ключ на сървъра, нито тайния ключ на сесията.

    Как е възможно? математика!

    Алгоритъм на Дифи - Хелман

    Един от най-често срещаните подходи е алгоритъмът за обмен на ключове Diffie-Hellman (DH). Този алгоритъм позволява на клиента и сървъра да се споразумеят за споделена тайна, без да се налага да предават тайната през връзката. По този начин нападателите, които слушат канала, няма да могат да определят секретния ключ, дори ако прихващат всички пакети с данни без изключение.

    След като се осъществи обменът на DH ключ, полученият секретен ключ може да се използва за криптиране на допълнителни връзки в рамките на тази сесия, като се използва много по-просто симетрично криптиране.

    Малко математика...

    Математическите функции, залегнали в основата на този алгоритъм, имат важно значение отличителна черта- те са относително лесни за изчисляване в посока напред, но практически не се изчисляват в обратна посока. Тук влизат в действие много големи прости числа.

    Нека Алис и Боб са две страни, разменящи ключове с помощта на алгоритъма DH. Първо се съгласяват по някаква причина корен(обикновено малък брой като 2,3 или 5) и много голям просто число първокласен(повече от 300 цифри). И двете стойности се изпращат в ясен текст по комуникационния канал, без заплаха от компрометиране на връзката.

    Припомнете си, че и Алис, и Боб имат свои собствени частни ключове (повече от 100 цифри), които никога не се предават по комуникационни канали.

    Сместа се предава по комуникационния канал смесполучени от частни ключове, както и от стойности първокласени корен.

    Поради това:
    Сместа на Алис = (корен ^ Тайната на Алис)% първостепенно
    Сместа на Боб = (корен ^ Тайната на Боб)% първичен
    където % е остатъкът от делението

    Така Алис създава своята смес въз основа на одобрените стойности на константите ( корени първокласен), Боб прави същото. След като са получили стойности смеседин друг, те извършват допълнителни математически операции, за да получат частния ключ на сесията. а именно:

    Изчисленията на Алис
    (Сместа на Боб ^ Тайната на Алис)% първостепенно

    Изчисленията на Боб
    (Сместа на Алис ^ Тайната на Боб)% първичен

    Резултатът от тези операции е едно и също число както за Алис, така и за Боб и този номер става частен ключ за тази сесия... Моля, имайте предвид, че нито една от страните не е трябвало да изпраща своя частен ключ по комуникационния канал, а полученият таен ключ също не е бил предаден през отворена връзка. Страхотно!

    За тези, които не са толкова разбираеми в математиката, Уикипедия предоставя отлична картина, обясняваща този процесизползвайки примера за смесване на цветове:

    Забележете как първоначалният цвят (жълт) в крайна сметка се превръща в един и същ "смесен" цвят за Боб и Алис. Единственото нещо, което се предава по отворения комуникационен канал, са полусмесени цветове, всъщност безсмислени за всеки, който слуша комуникационния канал.

    Симетрично криптиране

    Размяната на ключове се извършва само веднъж на сесия, по време на установяване на връзката. Когато страните вече са се договорили за тайния ключ, взаимодействие клиент-сървърсе извършва с помощта на симетрично криптиране, което е много по-ефективно за предаване на информация, тъй като не се изисква допълнително потвърждение.

    Използвайки секретния ключ, получен по-рано, както и съгласуването на режима на криптиране, клиентът и сървърът могат да комуникират сигурно чрез криптиране и декриптиране на съобщения, получени един от друг, използвайки секретния ключ. Нападател, който се свързва с канала, ще види само "боклук", който се разхожда напред-назад в мрежата.

    Удостоверяване

    Алгоритъмът на Diffie-Hellman позволява на две страни да получат частен таен ключ. Но как и двете страни могат да бъдат сигурни, че наистина си говорят? Все още не сме говорили за удостоверяване.

    Ами ако се обадя на моя приятел, ще извършим обмен на DH-ключ, но изведнъж се оказва, че разговорът ми е бил прихванат и всъщност общувах с някой друг ?! Все пак ще мога да общувам безопасно с този човек - никой друг няма да може да ни изслуша - но изобщо няма да е този, с когото мисля, че общувам. Не е много сигурно!

    За да решим проблема с удостоверяването, се нуждаем от инфраструктура на публичен ключ, за да гарантираме, че субектите са тези, за които се представят. Тази инфраструктура е изградена за създаване, управление, разпространение и отнемане на цифрови сертификати. Сертификатите са онези досадни неща, за които трябва да плащате, за да накарате вашия сайт да работи през HTTPS.

    Но всъщност какво представлява този сертификат и как ни осигурява сигурност?

    Сертификати

    В грубо приближение цифровият сертификат е файл, който използва електронен цифров подпис (повече за това след минута) и свързва публичния (публичен) ключ на компютъра с неговата собственост. Цифров подпис върху сертификат означава, че някой удостоверява, че даден публичен ключ принадлежи на конкретно лице или организация.

    По същество сертификатите обвързват имена на домейнисъс специфичен публичен ключ. Това пречи на нападателя да предостави своите публичен ключ, представяйки се като сървъра, до който клиентът има достъп.

    В примера за телефон по-горе, хакер може да се опита да ми покаже публичния си ключ, представяйки се за мой приятел - но подписът върху сертификата му няма да принадлежи на някой, на когото вярвам.

    За да има доверие на сертификат от който и да е уеб браузър, той трябва да бъде подписан от акредитиран сертифициращ орган (сертификационен орган, CA). CA са компании, които ръчно проверяват, че лице, което се опитва да получи сертификат, отговаря на следните две условия:

    1. е реален;
    2. има достъп до домейна, за който се опитва да получи сертификат.

    След като CA е сигурен, че кандидатът е истински кандидат и че той действително контролира домейна, CA подписва сертификат за този сайт, като по същество поставя печат за потвърждение на факта, че публичният ключ на сайта наистина му принадлежи и може да му се вярва .

    Вашият браузър вече е предварително зареден със списък с акредитирани CA. Ако сървърът върне сертификат, който не е подписан от акредитиран CA, тогава ще се появи голямо червено предупреждение. В противен случай всеки може да подпише фалшиви сертификати.

    Така че дори ако хакерът вземе публичния ключ на своя сървър и генерира цифров сертификат, потвърждаващ, че този публичен ключ е свързан със сайта facebook.com, браузърът няма да повярва в това, тъй като сертификатът не е подписан от акредитиран CA.

    Други неща, които трябва да знаете за сертификатите

    Разширено валидиране
    В допълнение към обикновените сертификати X.509, има сертификати за разширена валидация, които предоставят повече високо нивоДоверие. С издаването на такова удостоверение СО извършва друго още проверкипо отношение на лицето, което получава сертификата (обикновено използвайки паспортни данни или сметки).

    При получаване на такъв сертификат браузърът се показва в адресна лентазелена лента, в допълнение към обичайната икона за заключване.

    Обслужване на множество уебсайтове на един сървър
    След обмена на данни TLS протоколвъзниква дори преди началото на HTTP връзката, могат да възникнат проблеми, ако няколко уебсайта се намират на един и същ уеб сървър на същия IP адрес. Маршрутизиране виртуални хостовесе извършва от уеб сървъра, но TLS връзката се осъществява дори по-рано. Един сертификат за целия сървър ще се използва при заявка на всеки сайт, разположен на сървъра, което може да причини

    Хей!
    Нека да разгледаме какво представляват симетричната и асиметричната криптография – защо се наричат ​​така, за какво се използват и как се различават.

    За да бъдем точни, по-правилно е да се каже симетрични и асиметрични алгоритми за криптиране.

    Криптографията (крипто – скрий, скрий), като наука за скриване на написаното, наука за скриване на информация.

    Повечето от използваните алгоритми за криптиране са с отворен код, тоест описанието на алгоритъма е достъпно за всички. Тайната е ключът за криптиране, без който е невъзможно да се криптира и още повече да се декриптира информация.

    Алгоритмите за симетрично криптиране са алгоритми, които използват един и същ ключ за криптиране и декриптиране. Тоест, ако искаме да обменяме криптирани съобщения с приятел, тогава първо трябва да се договорим кой ключ за криптиране ще използваме. Тоест ще имаме един ключ за криптиране за двама.

    В симетричните алгоритми ключът за криптиране е уязвимост и е необходимо да се плати повече вниманиетака че ключът да не бъде разпознат от другите.

    Алгоритмите за асиметрично криптиране са алоритми, при които за криптиране и декриптиране се използват различни, но математически свързани ключове. Такива свързани ключове се наричат ​​крипто двойка. Единият е частен, другият е публичен. В същото време информацията е криптирана на отворен ключ, може да се дешифрира само с частния ключ и обратно, това, което е криптирано частно, може да бъде декриптирано само с публичния ключ.
    Вие съхранявате частния ключ на сигурно място и никой освен вас не го знае и раздавате копие на публичния ключ на всички. По този начин, ако някой иска да обменя криптирани съобщения с вас, той криптира съобщението с вашия публичен ключ, който е достъпен за всички и това съобщение може да бъде декриптирано само с вашия частен ключ.

    Сега за това какво и защо се използват симетрични и асиметрични алгоритми:
    Таблицата показва, че за криптиране на голямо количество информация за поточно криптиране (например криптирана VPN) се използват бързи и неизискващи симетрични алгоритми.

    Но ако трябва да осигурим възможно най-много малък обеминформация, докато не сме ограничени от време и изчислителни ресурси, тогава можем да използваме асиметрична криптография.

    В живота, разбира се, всичко е малко по-различно, отколкото на теория.
    В живота се използва комбинация от симетрични и асиметрични алгоритми.

    Например VPN с криптиране:

      Първата стъпка използва алгоритми за асиметричен ключ за получаване на симетричен ключ за криптиране ().
    Във втората стъпка данните за поточно предаване се криптират с помощта на симетрични алгоритми с ключа, генериран в първата стъпка.

    По този начин е обичайна практика да се използва симетричен ключ за бързо криптиране на големи количества данни. В този случай за обмен и предаване на симетричен ключ се използват асиметрични алгоритми за криптиране.