Знайте, Intuit, лекция, де криптиране и AES

Резюме: Един от най-добре познатите криптографски системи с частния ключ е DES - Data Encryption Standard. Тази система е първият получава статут на национален стандарт в криптиране на данните. И въпреки, че старият американски стандарт DES сега се губи своя официален статут, този алгоритъм все още заслужава внимание в изследването на криптографията. Също така в тази глава се обяснява какво е "до два пъти над DES", "се срещат в средата" атака, и как да го решат. В същата лекция разгледано по новия американски стандарт по отношение на блок шифър - един алгоритъм Rijndael.

Целта на лекцията. За да запознае студентите с основна информация за криптиране алгоритъм DES.

основна информация

Един от най-известните криптографски системи с частния ключ е DES - Data Encryption Standard. Тази система е първият получава статут на национален стандарт в криптиране на данните. Тя е разработена от експерти на IBM и влезе в сила в САЩ през 1977 година. DES алгоритъм използва широко в съхраняване и пренос на данни между различни компютърни системи; поща системи, електронни системи, рисунки и електронния обмен на бизнес информация. DES стандарт бе реализиран софтуер и хардуер. Предприятия от различни страни, беше стартирана масово производство на цифрови устройства, които използват DES за шифроване на данни. Всички устройства са сертифицирани за съответствие със стандарта.

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

Дължината на ключа в алгоритъма DES е 56 бита. Той е този факт, свързани с големи противоречия около способността на DES да издържат на различни атаки. Както е известно, всеки блок шифър с частния ключ, може да се пукнат, сортиране чрез всички възможни комбинации от клавиши. Когато дължината на ключа 56 бита 2 56 възможни различни ключове. Ако компютърът ви минава през една секунда 1 милион клавиши (което е приблизително равно на 2 20), а след това през всички 56 клавиши 2 ще изисква 2 36секунди или малко повече от две хиляди години, което разбира се е неприемливо за нарушители.

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

Основните параметри на DES. размер на блока е 64 бита, на ключ с дължина 56 бита. броят на кръга - 16. DES е класически мрежа Feyshtelya с два филиала. Алгоритъмът превежда няколко кръга на 64-битов вход блок на данни в 64-битов изход единица. DES стандарт е изградена на комбинация от пермутации, замествания и XOR. Криптирана информация трябва да бъде представена в двоичен вид.

криптиране

Цялостната структура на DES е показано на фиг. 4.1. Процесът на шифроване на всеки 64-битов блок на оригиналните данни може да бъде разделена на три етапа:

  1. Първоначално блок данни обучение;
  2. 16 кръга "основна верига";
  3. Крайната единица за обработка на данни.

В първия етап на първоначалното Първообразът се извършва на 64-битова отправна блок от текст, през който битовете се преподреждат по определен начин.

Следната (главно) етап блок е разделена на две части (клонове) на всеки 32 бита. Десният клон се трансформира с помощта на функцията F и съответния частичен ключа. получена от ядрото на криптиращия ключ с ключ трансформация специален алгоритъм. На следващо място, комуникацията между лявото и дясното клоновете на блока. Това се повтаря в цикъл 16 пъти.

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

Знайте, Intuit, лекция, де криптиране и AES


Фиг. 4.1. Общата схема на DES

Помислете за по-подробно всички стъпки на криптографска трансформация на DES стандарт.

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

Едновременно с начален блок пермутация на данните е 56-битов ключ първоначална пермутация. Фиг. 4.1. Вижда се, че във всеки кръг, като се използва подходящ 48-битов ключ частично Ки. Ключове Ki се получават чрез специфичен алгоритъм, като се използва всеки от битове на първоначалните ключови няколко пъти. Във всеки кръг на ключа за 56-битов е разделен на две 28-битови половини. След половинките са изместени лявата с един или два бита, в зависимост от броя на кръг. След срязване 48 е избран по определен начин от 56 бита. Тъй като в този случай не само на избрания подмножество от бита, но променя тяхната цел, тогава това се нарича "пермутация компресия". В този резултат, е набор от 48 бита. Като цяло, всяка частица от оригиналния ключ на 56-битов се използва в 14 от 16-те подключове, въпреки че не всички бита се използват същия брой пъти.

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

Знайте, Intuit, лекция, де криптиране и AES


Фиг. 4.2. Структурата на един кръг на DES

Отляво и отдясно клонове на всеки от междинните стойности се третират като отделни стойности 32-битови, определен L и R.

Първоначално, дясната страна на блок Ri е разширена до 48 бита чрез използване на таблица, която определя пермутация, както и удължаване до 16 бита. Тази операция води до дясната половина на размера, в съответствие с размера на клавиш, за да извършите операция XOR. Освен това, в резултат на тази операция се увеличава по-бързо, зависимостта от всички бита на резултата от оригиналните бита данни и ключа (това се нарича "лавина ефект"). Ефектът от лавина е по-изразена при използване на определен алгоритъм за криптиране, толкова по-добре.

След извършване на пермутация с разширяването на получената стойност на 48-битов се извършва с операция XOR е 48-битов подключ Ki. След това, полученият 48-битова стойност е вход за заместване блок S за (от английски Замяна -. Смяна), в резултат на което е 32-битова стойност. Заместването се извършва в единици от осем замествания или осем S-кутии (S-кутии). По време на тази операция, на 48 бита данни са разделени в осем 6-битови подблокове, всяка от които има своя подмяна таблицата се заменя с четири бита. Заместване при използване S-блокове е важна стъпка в DES. Замяна на масата за тази операция, специално разработен от експерти, за да се осигури максимална безопасност. В резултат на тази фаза се получават осем 4-битови блокове, които отново са комбинирани в един 32-битова стойност.

На следващо място, в резултат на 32-битова стойност се обработва от пермутация P (от английски пермутация -. Пермутации), която е независима от ключа. Целта на Първообразът е максимално преподреждане бита, така че в следващия кръг Кодирай всеки бит има вероятност да се обработват от друг S-блок.

И накрая, резултатът от пермутация се комбинира с помощта на XOR операция с лявата половина на първоначалния 64-битов блок данни. Тогава Лявата и дясната половина си разменят местата и започва следващия кръг.

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

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