Техники за криптиране
Информационната сигурност, предавана чрез актуални комуникационни мрежи, използвайки различни комуникационни носители и стандарти, съхранявани на локални устройства или в облака, е предизвикателство за специалистите в тази област. В информационните системи се използват различни техники за криптиране, за да се осигурят услуги за поверителност, цялост, удостоверяване и отказ от отказ. С течение на времето са разработени множество алгоритми за криптиране и най-подходящите са представени по-долу, заедно с редица техни приложения.
Науката за пазене на тайни
Шифроването е техника за криптиране на данни, която осигурява тайната на информацията. От древни времена се прилагат различни техники за криптиране чрез заместващи и/или транспониращи методи, с тайни последователности "ключ", известни само на упълномощени лица. Пример за това е заместването "Цезарово число", основано на въртенето на азбуката с определен брой позиции, дадени от ключа. Например, ако е избран ключът k = 5, тогава вместо буквата А. се използва буквата F. Слабото място на шифъра е малкият размер на ключовото пространство и простотата на метода, като е уязвим към суровата атака, лесен за разбиване, във време накратко, като изпробвате всички възможни ключови стойности.

Криптологията е наука, която се е развила значително през последните десетилетия. Съвременните техники за криптиране съчетават методите на заместване и транспониране с други математически методи, линейни или нелинейни, базирани на теории за крайни алгебрични полета, хаос, елиптични криви, квантова механика и др.
Целта е да се увеличи стабилността на алгоритмите за шифроване, схемите и схемите при криптографските атаки, които са все по-агресивни и ефективни, предвид развитието на процесорите, устройствата и интернет технологиите като цяло.
Поверителността на информацията може да бъде осигурена чрез прилагане на алгоритми за криптиране с повишена сложност, с ключове за криптиране с по-голяма дължина, тествани да издържат на достатъчно дълъг период от време за криптографски атаки в определен момент.
Класификация на техниките за криптиране
За да можем да опишем и сравним различни алгоритми за криптиране, е полезно да ги класифицираме според различни критерии. Един от критериите е симетрията на алгоритъма. Алгоритмите за криптиране могат да бъдат симетрични, използвайки един и същ ключ, таен или личен, за криптиране и декриптиране. Те включват DES (Data Encryption Standard), TDES (Triple DES) и AES (Advanced Encryption Standard).
Асиметричните алгоритми за криптиране използват публични ключове за криптиране, които могат да се предават през Интернет (PKC - криптография с публичен ключ). RSA (Rivest-Shamir-Adleman) и ElGamal са алгоритми за криптиране с публичен ключ, препоръчвани за криптиране на кратки последователности като пароли, ключове, идентификатори, цифрови сертификати и др. Изборът на алгоритъм за криптиране се прави в зависимост от естеството на информацията, която трябва да бъде защитена, нивото на необходимата сигурност, нивото на приет риск и разходите (финансови, времеви, обработващи ресурси), разрешени за прилагането на тази техника за сигурност.
Друга класификация на алгоритмите за криптиране се основава на вида на обработваните данни, който може да бъде: битови последователности, целочислени десетични стойности, цели числа в математически пръстен или крайно алгебрично поле.
Прилагането на алгоритъм за криптиране може да се извърши директно върху низ от данни (поточен шифър) или върху блокове с данни (блоков шифър), които от своя страна могат да бъдат приложени върху едномерни или многомерни структури от данни. Например 2D и 3D структурите от данни се използват за криптиране на цифрови изображения, но могат да бъдат приложени и към други видове информация, за да се увеличи сложността и надеждността на алгоритмите.
Техники за криптиране и техните приложения
Rivest-Shamir-Adleman (RSA) е алгоритъм за криптиране с публичен ключ, двойка числа (e, n), приложена към цели числа, с алгебрични операции за повишаване на мощността e и модул n, намаляващи резултата. Компонентът n на ключа за кодиране, изведен като произведение на две прости числа, трябва да бъде голямо десетично число с повече от 310 цифри, така че факторизирането му да е практически невъзможно за достатъчно кратко време. RSA изисква голям изчислителен капацитет и поради това се препоръчва за криптиране на относително кратки последователности от данни.
Разработени са различни атаки срещу алгоритъма RSA. Предимството на тази криптосистема е, че чрез увеличаване на дължината на ключа, например чрез удвояване от 1024 на 2048 бита, той осигурява устойчивост на атаки за още няколко години. Този алгоритъм е стандартизиран и въпреки че има някои слабости, той се счита за дългосрочен алгоритъм за информационна сигурност, устойчив на атаки, които могат да бъдат стартирани днес. На принципите на RSA са създадени множество други алгоритми, например алгоритъмът PRESENT, който има по-ниска изчислителна сложност и се използва във RFID схеми. Криптосистемата Elliptic Curve (ECC), базирана на по-къси публични ключове за шифроване от тези, използвани от RSA, предлага повишена сигурност, но има относително ниска скорост на обработка при съвременните изчислителни технологии, като опция за системи бъдеща информационна сигурност.
DES се появи като стандарт FIPS PUB 46 през 1977 г., като един от най-мощните алгоритми за криптиране на тайни ключове от онова време, устойчив на диференциални атаки на криптоанализ. DES е симетрична двоична криптосистема с 64-битови ключове. Алгоритъмът кодира 64-битови блокове, в 16 кръга, с 16 подключа, генерирани от първоначалния ключ за криптиране. Надеждността на алгоритъма се дава от нелинейната функция на Фейстел, използвана във всеки кръг. Алгоритъмът също така извършва първоначалната и крайната пермутация на данните във всеки блок, на принципа на отклоняване ("объркване и дифузия"). Използван успешно над 10 години във военни и държавни приложения, той беше заменен през 1999 г. от AES.

Версията TripleDES (TDES, 3DES) прилага три пъти DES алгоритъма, в 48 кръга, със 128-битови ключове, като е по-стабилна спрямо суровите атаки и аналитичните атаки, сравнима по устойчивост с AES. TDES се използва за сигурност на информацията, предавана при финансово-банкови транзакции, както и за защита на личните данни, въведени в електронни паспорти.
Стандартът за усъвършенствано шифроване (AES), считан за най-здрав и ефективен в момента, използва симетричен алгоритъм за криптиране, с тайни ключове от 128, 192 и 256 бита, приложени в 10,12 или 14 кръга, върху блокове байта. Операциите, извършени с данните, са сравнително прости по отношение на изчислителната сложност, включително пермутации, замествания, добавяния и продукти в полетата на Galois. AES внедренията са направени както за софтуер, така и за хардуер, ефективни във времето и сложността на изчисленията. AES се използва в Internet Protocol Security (IPsec), Transport Layer Security (TLS), WiFi Protected Access (WPA) в безжични комуникационни мрежи и виртуални частни мрежи (VPN) за криптиране на трафика.
Начините за генериране, предаване и управление на ключове за криптиране влияят върху нивото на предлаганата сигурност. Сигурно предаване на секретни ключове чрез публична мрежа може да се извърши чрез схеми RSA или Diffie-Hellman. Kerberos е усъвършенстван протокол за сигурност, който криптира работните сесии, осигурява сигурен обмен на ключове по мрежата, с ограничена валидност във времето. Специален случай на криптографски функции са функциите Hash, използвани в алгоритмите за криптиране без ключове за криптиране, за изчисляване на последователности с фиксирана дължина, въз основа на които се проверява целостта на данните. Те се използват в схеми за генериране на цифров подпис, за удостоверяване на съобщения, предавани онлайн, в алгоритми за съобщения (MD) и алгоритъм за защитен хеш (SHA), устойчиви на криптографски сблъсъци и атаки въз основа на тях.
Тенденции в областта
За информационна сигурност се прилагат различни алгоритми за криптиране с публичен или таен ключ или хибридни варианти, като тези, използвани от SSL/TLS. Освен това са важни начините, по които се прилагат алгоритмите, условията, при които се използват (данни, съхранявани или предадени, „жични“ или безжични), използваните протоколи за криптиране, приложените политики за сигурност, тъй като уязвимостите в системите за информационна сигурност се появяват на различни нива, от нивото на физически достъп, до нивото на достъп до услугите и нивото на приложение. Човешкият фактор е слабост на системите за сигурност, които са уязвими на атаки, насочени към намиране на пароли, ключове за криптиране и друга критична информация. Следователно прилагането на политики за осъзнаване на риска и обучението на персонала, обработващ секретни данни, е ключов елемент за гарантиране на информационната сигурност.
Резюме
Информацията, изпратена от различни носители, използвайки различни комуникационни стандарти или съхранявана локално или в облак, може да бъде защитена чрез криптиране, за да се гарантира поверителност на информацията, целостта на данните, удостоверяване и услуга за отказ от отказ. Разработени са множество алгоритми и схеми за криптиране, като RSA, DES, TDES, AES, Hash и други. Тези техники се използват за осигуряване на критични данни, пароли и ключове, за генериране на цифрови подписи и цифрови сертификати, за защита на данните, съхранявани в цифрови паспорти или изпратени от VPN.
Автори: доц. Д-р инж. Luminița Scripcariu и инж. Д-р Флорин Мокану, Технически университет „Георге Асачи“, Яш