четвртак, 18 априла, 2024
Интернет, мреже и комуникације

Криптографија/Криптологија (1. део)

Аутор: Владимир Цицовић

Историја криптологије

Писати о историји криптографије/криптологије је врло незахвално. Почећемо са мањим делом, како бисмо касније увели читаоце у део ове науке о тајном писању (kriptos – тајно, grafein – писање, крипто-графија). Иначе, историја о криптологији је заиста пуна тајни. Разлог томе је врло једноставан – људи су чували тајне а криптографија им је помагала. Битни догађаји људске историје су увек под неким велом тајни.

Велики император Јулије Цезар (Јули 100 п.н.е – Март 44 п.н.е), настојао је да сачува своју империју. Знао је да сваког тренутка мора имати контролу над својом империјом. У том погледу најважнији део су биле информације које је слао и примао од својих војсковођа. Те информације су биле шифроване уз помоћ шифарског система који данас зовемо “Цезарова шифра”. Цезар је узео алфабет отвореног текста и померио за 3 места и добио алфабет шифрованог текста.

Пример:
Отворени Текст: А B C D Е F G H I Ј K L М N О P Q R S Т U V W X Y Z
Шифровани Текст: D Е F G H I Ј К L М N О P Q R S Т U V W X Y Z А B C

Тако ће реч NAPAD постати QDSDG (где је NQ, АD…). Ово је могао само да дешифрује онај ко је познавао овај шифарски систем. Прва справа за помоћ при шифровању је била скитала. Овде их спомињем јер је то први пут да људи користе справу како би шифровали. Касније ће доћи и до израде механичких справа као што су Лорензова машина, Енигма и многе друге.

Криптографија се највише развијала током 2. светског рата. У том периоду, поред развијања математике, телекомуникација и сличних области, дошло је до експлозије употребе шифарских система. Самим тим су се развијале области везане за употребу, слање и коришћење шифарских система.

Хладни рат је донео употребу сателитских система који су били заштићени One time pad шифарским системом. Такође, дошло је до појаве такозваних симетричних крипто-система и асиметричних крипто-система.

Иначе, криптографију која користи рачунаре, то јест шифарске системе (овде можемо рећи и алгоритам за рачунар) настале на рачунарима и прилагођене раду рачунара зовемо “Модерном криптографијом” а све раније шифарске системе стављамо под “Класична криптографија”. Да разјаснимо: “криптологија” и “криптографија” – криптологија је наука о тајном, гдје имамо области:

криптографија – наука о тајном писању,
криптофонија – наука о заштити звука,
криптовизија – наука о заштити слике.

Другим речима , криптологија обухвата криптографију.

Терминологија Криптографије

У криптографији имамо две врсте информација: отворени текст и шифровани текст. Операција која отворени текст претвара у шифровани текст зове се шифарски систем. У модерној криптографији то се зове алгоритам. Сваки легалан процес обрнут од шифровања се зове дешифровање. Сваки процес који није легалан, односно користи непознавање шифарског система да би се дошло до текста, зове се декриптовање. Процес анализе, класификовање и друге радње над шифрованим текстом од стране треће стране се зове криптоанализа. Сваки знак отвореног текста има своју замену у виду шифарске замене или шифрованог знака.

Облици комуникације могу бити:

– уговорени облик комуникација (Београд – Дубровник);
– тајни облик комуникације (Брод креће са угљем – где је Брод – артиљерија, угаљ – гранатирање);
– шифровани облик комуникације (шифровани текст:АДФ ФДА – отворени текст: ВАН НАВ );
– невидљиви облик комуникације (невидљива мастила ).

Ми ћемо се обазрети на тему шифрованог облика комуникације.

Поједини шифарски системи користе кључ. Кључ за шифровање може бити:

Према дужини:

– коначни
– бесконачни

Према типу кључа:

– логички (београд, сарајево…)
– нелогички (мАКОС12гоосе= )
– мнемонични (НАПАД = 62723 , ако узмемо бројеве са моб. телефона)

Криптографски Системи

Генерална подела:

1) Систем премештања
2) Систем замењивања
3) Комбинацијске шифре (премештање + замењивање)

Сви шифарски системи могу да имају АЛФАБЕТ: сређени или несређени (АБЦД.. , ДОЈА..)

Шифарски системи премештања:

– обично премештање
– премештање кључем
– премештање решеткама
– двоструко премештање

Шифарски систем замењивања се дели на:

1) Шифре просте замене
2) Шифре сложене замене

1 – Шифре просте замене (МОНОАЛФАБЕТСКЕ) се деле на:
– алфабетске шифре
– биграмске, Триграмске и полигамске шифре
– кодне таблице
– кодови
– шифре рашчлањивањем слова

2 – Шифре сложене замене (ПОЛИАЛФАБЕТСКЕ)
– шифре са сређеним алфабетом
– шифре са несређеним алфабетом

Шта су то шифре премештања ?

Сваки отворен текст над којим се изврши одређено премештање тако да други људи не могу да препознају – зове се шифарски систем премештања. Својствено је шифрама премештања да им се оргинална слова представљају баш онаква каква јесу и пре премештања, тако да, ако узмемо фреквенцију појављивања (причаћемо о лингвистичкој статистици касније) и премештени текст – лако уочавамо да је у питању шифарски систем премештања.

Шта су то шифарски системи са решеткама?

Просто речено, узмете квадрат 5×5 и напишете неку реченицу вертикално, а узмете слова хоризонтално. То што сте узели је само познато ономе ко поседује идеју да је то 5×5 (наравно, може се урадити крипто анализа и за мање од 10 секунди се разбија). Ако 5 унутрашњих поља означите са црним, то јест не пишете у њих – и онда испишете – то већ постаје проблем за некога да уради јасну криптоанализу текста, то јест даје тежину за криптоанализу. Сада ово што пишемо зове се решетка – текст уписан у коцку – односно било који облик који има унутар себе коцке (може бити чак и пирамида – набитније да прималац има исту решетку испред себе).

Како обични шифарски систем може бити “појачан”?

Најбоља ствар су такозвани “лажни” знаци. Две стране се морају договорити око лажних знакова – како би их препознали. Наравно да постоје начини да се препознају лажни знаци, шифарски елементи који су само заблуда за криптоаналитичара. Али, такође постоје начини да се они препознају. Пример употребе лажних знакова: NAPADCBRBS – C13BR44B5S; овде смо додали бројеве као лажне знакове.

Шта су то шифре замењивања ?

Шифарски систем замењивања јесте онај у коме најмање један знак отвореног текста постаје своја замена у шифрованом тексту. Такође, где има замена: један знак отвореног текста == један знак шифрованог текста, зове се моноалфабетска или проста замена. Шифарски систем замене где један знак отвореног текста може да постане најмање две замене шифрованог текста, зове се шифарски систем сложене замене.

Другим речима: шифре просте замене су оне где се користи један алфабет отвореног текста и један алфабет или један скуп знакова шифарског система. Шифре сложене замене су оне које користе један алфабет отвореног текста и више алфабета шифарске замене.

Пример просте замене: А = C, B = D… (Цезарова шифра) Пример сложене замене: А = {B, C, D, ..А} – (Вигнерова шифра); АC = DB, CA = BD (Плаyфаиров шифарски систем).

Шта су то комбинацијске шифре?

Шифарски системи који комбинују шифре премештања и шифре замене зову се комбинацијски шифарски системи. Пример: NAPAD, шифра премештања: PААND, шифра замене: CVVХЈ (Цезарова замена). Мала напомена: савремени крипто алгоритми (модерна криптографија) користе комбинацијске шифре, на пример АЕС – има премештање такозвано С-Box и онда шифарске замене.

Цезарова шифра, ROT13

Једноставнији облик шифарског система јесте Цезар шифарски систем. То је обични супституцијски шифарски систем где је једно слово отвореног текста једнако слову шифарског текста.

Пример 1.(узимамо слова алфебета који се користи на рачунарима):

отв. текст: А B C D Е F G H I Ј К L М N О P Q R S Т U V W X Y Z
шиф. текст: F G H I Ј К L М N О P Q R S Т U V W X Y Z А B C D Е

Овде имамо сређени алфабет (гледа се шифарска замена у односу на отворени текст) а може бити и несређени облик алфабета (слова су у произвољном низу постављена).

Пример 2.

отв. текст: А B C D Е F G H I Ј К L М N О P Q R S Т U V W X Y Z
шиф. текст: V Е К U Y N Q L Ј Т R О А B W X P C D H F G Z I М S

Сада ћемо направити трансформацију текста у шифровану замену.

Алфабет из примерa 1. :

отв. текст: MI ZELIMO NAZAD
шиф. текст: RО ЕЈКQRТ SFЕFI

Урадимо кратку анализу Цезаровог шифровања којe смо управо извршили.

Математички приказ ове трансформације је: F(x) ⇒ F(y), где имамо из првог скупа (отворени текст) копирање на други скуп (шифрована замена) – у којем нема таквог елемента првог скупа, који може имати више од једне замене у другом. Такође, приметимо да је F(x) ⇒ F(y), исто као и F(y) ⇒ F(x). Другим речима, све особине отвореног текста добија и шифарска замена. Практично то значи да неко ко познаје особине језика врло брзо може да “разбије” шифарску замену.
Под особинама језика спада:

– фреквенција појављивања слова
– фреквенција биграма, триграма, полиграма
– специфичност језика (рецимо, -АНА наставци у реченицама или -ОВА, -СКА и слично)
– број појављивања глагола, придева, именица и сл.
– просечна величина речи, реченице
– удаљеност слова (NAPAD, гдје је А удаљено од другог A тек једно место или N од DZ и слично)
– диференцијалност текста (текстови исте дужине, где имају поклапања или мимоилажења)
– јединственост речи (ускоро, следеће поглавље …)

Ово спада под криптоанализу, о томе ћемо у наредном броју.

ROT13 има врло занимљиву историју. У ери интернета, постојао је обичај да ако желите да нешто ружно или неприклано кажете на news групама, једноставно реч која не би билa финa да се куца/чита, шифрујете ROT13 (енгл. rotate by 13 places). Такође, он је супституцијски шифарски систем који користи сређени алфабет.

Напоменућу вам да Windows XP, користи ROT13 да би “сакрио” у registry-ju ваше активности.