Енкрипција

С Википедије, слободне енциклопедије

Енкрипција (енгл. encryption) или шифровање је процес у криптографији којим се врши измена података тако да се подаци, или поруке, учине нечитљивим за особе које не поседују одређено знање (кључ). На тај начин се добија шифрована информација. Да би ови подаци постали разумљиви и употребљиви, потребно је да се декодирају. Декодирање се врши процесом супротним од енкрипције који се назива декрипција.[1]

У нетехничкој употреби, шифра и код представљају исти термин, али у криптографији ти су појмови различити. У класичној криптографији шифра је одвојена од кода. Начелно, у коду се замењивање врши на темељу обимне књиге кодова, у којој се речи и фразе замењују случајним низом знакова. На пример, UQJHS може бити код за „Наставите до следећих координата”. Оригинална (изворна) информација позната је као отворени текст, а шифрирани облик као шифрирани текст или шифрат. Шифрована порука садржи све информације из отвореног текста, али није у облику читљивом за човека или рачунар без примене одговарајућег механизма за његово дешифровање - треба да представља насумичне знаке за све којима порука није намењена. Операција шифровања обично зависи од додатне информације зване кључ. Процедура шифрирања варира у зависности од кључа, који мења детаље алгоритма. Кључ се мора изабрати пре шифрирања поруке. Без познавања кључа требало би да је тешко, или скоро немогуће, декриптовати шифрат у читљив отворени текст.

Треба разликовати термине дешифровање и декриптовање.[2] Дешифрирање је претварање шифрата у отворени текст кад је кључ познат, и врши га особа којој је порука намењена. Декриптовање је покушај претварања шифрата у отворени текст кад кључ није (унапред) познат, а врше га особе којима порука није намењена. Декриптовање је део криптоанализе. Већина модерних шифри може се сврстати у категорије на неколико начина: (и) по томе да ли се примењује на блоковима знакова сталне дужине (блок шифре), или на непрекидном низу знакова (позната под називима шифра низа, шифра тока или проточна шифра, енгл. stream cipher), (ии) по томе да ли се користи исти кључ за шифрирање и дешифрирање (алгоритми симетричних кључева), или се користи посебан кључ (алгоритми асиметричних кључева). Ако је алгоритам симетричног кључа, кључ мора бити познат приматељу и никоме више. Код алгоритма асиметричног кључа, кључ за шифрирање је различит од кључа за дешифрирање, али је с њим у тесној вези. Ако се један кључ не може утврдити из другог, алгоритам асиметричног кључа има својство јавног/тајног кључа и један од кључева може бити обелодањен без губитка тајности информације.

Порекло[уреди | уреди извор]

Реч шифра потиче из француског језика, фр. cifre - бројка, тајни знак, односно из арапског ар. صفر, şafira - празно, şifr - нула, ништа.

У прошлости, цифра је имала значење „нула”, а касније је кориштена за било који децимални број, или било који број. Ове теорије показују како је цифра постала шифра у значењу шифрирање:

  • У шифрирању су се често користили бројеви.
  • Римски бројни систем је био незграпан, јер не познаје појам нуле (или празног скупа). Појам нуле (која се такође звала цифра), који је данас сасвим природан, био је посве стран у средњевековној Европи. Цифра је стога добила значење скривања јасне поруке, односно шифрирање. Др Ал-Кади[3][4] сматра да се арапска реч şifr за нулу развила у европски технички термин за шифрирање.

Шифрирање и кодирање[уреди | уреди извор]

У нетехничкој употреби, „(тајни) код” обично значи „шифра”. Међутим, у техничким дискусијама речи „код” и „шифра” се односе на два различита појма. Кодови раде на нивоу значења — то јест, речи и изрази се претварају у нешто друго и то сажимање начелно скраћује поруку. Насупрот томе, шифра ради на нижем нивоу: на нивоу појединачних слова, малих група слова, или, у модерним шемама, на појединачним битовим. Неки системи користе комбинацију кода и шифре, такозвано „супершифрирање” за повећање сигурности. У неким случајевима, термини код и шифра се користе као синоними у замени и померању.

Историјски, криптографија је била подељена у дихотомију кода и шифре; код има своју терминологију, аналогну оној за шифру: „кодирање”, „кодни текст”, „декодирање” итд. Међутим, код има доста недостатака, као што су осетљивост на криптоанализу и тешкоће у баратању гломазним књигама кодова. Због тога је код запостављен у модерној криптографији, а шифра је постала доминантна техника.

Елементи енкрипције[уреди | уреди извор]

Сви системи енкрипције имају у својој основи следеће заједничке елементе:[5]

  • Алгоритам: Функција, обично са јаком математичком основом, која обавља задатак инкрипције података;
  • Кључеви: Користе се заједно са алгоритмима енкрипције и одређују начин на који су подаци шифровани;
  • Дужина кључа: Енкрипциони кључеви имају одређену дужину у зависности од тога који енкрипциони системи се користе. Дужина се мери бројем битова, и што су дужи кључеви, то је теже осујетити систем енкрипције;
  • Отворен текст (енгл. Plaintext): Информације које треба шифровати;
  • Шифрован текст (енгл. Ciphertext): Информације након шифровања.

Врсте енкрипције[уреди | уреди извор]

Постоје две основне врсте енкрипције: симетрична енкрипција и асиметрична енкрипција. Код симетричне енкрипције се и за шифровање и за дешифровање користи иста шифра (кључ). Код асиметричне постоји посебан кључ само за шифровање и други који служи само за дешифровање. Ова два кључа називају се још јавни и тајни кључ. Тајни кључ додељује се онда када се врши енкрипција и на основу њега се генерише јавни кључ, који користи страна која треба да прочита податке. [6] Стандард који се користи при симетричној енкрипцији је ДЕС (енгл. Data Encryption Standard). Асиметрична енкрипција се још назива и криптографија јавног кључа (енгл. Public-Key Cryptography). За ову врсту енкрипције користи се РСА алгоритам (Rivest-Shamir-Adleman). [7]

Историјске шифре[уреди | уреди извор]

Немачка Енигма користи ротирајуће дискове (Роторе) и додатне плоче за преспајање (Plugboard)

Шифре с оловком и папиром које су кориштене у прошлости познате су под називом „класична шифра”. Оне укључују једноставне шифре замјене (супституције) и шифре померања (транспозиције). На пример, „добар дан” може се шифрирати као „ЖСДГЋ ЖГП”, где се у поруци „д” замењује са „Ж”, „а” са „Г” итд. Померањем би „добар дан” могло да буде „РДАНДОБА”. Ове једноставне шифре и примере је врло лако разбити, чак и без помоћи парова отвореног и шифрираног текста.[8]

Једноставне шифре су замењене шифрама „полиалфабетске замене”, које мењају алфабет замене за свако слово. На пример, „добар дан” се може заменити са „ЖЋЗИА ОНВ”, где се у поруци „д” замењује са „Ж” и „О”, „а” са „И” и „Н”. Чак и на малом узорку познатог или претпостављеног отвореног текста, шифре полиалфабетске замене и шифре померања слова (намењене за шифрирање оловком и папиром) се врло лако разбијају.[9]

Почетком двадесетог века изумљене су електромеханичке машине за шифровање и дешифровање, а користиле су померање, полиалфабетску замену и неку врсту „додатне” замене. У „роторским машинама”, неколико ротирајућих дискова је служило за полиалфабетску замену, а додатне плоче су служиле за неку другу замену. Кључеви су се лако мењали заменом ротирајућих дискова и преспајањем жица додатних плоча. Иако су ове методе шифровања биле комплексније од претходних и захтевале машине за шифровање и дешифровање, изумљене су друге машине (као нпр. британска „Бомба”) за декриптирање ових метода шифрирања.

Модерне шифре[уреди | уреди извор]

Модерне методе шифровања могу се поделити по два критерија: по типу кориштеног кључа и типу улазних података.

По типу кључа, шифре се деле на:

  • Алгоритми симетричног кључа (криптографија с тајним кључем), где се исти кључ користи и за шифровање и за дешифровање, и
  • Алгоритми асиметричног кључа (криптографија с јавним кључем), где се користе два различита кључа за шифровање и дешифровање.

Код алгоритма симетричног кључа (нпр. ДЕС и АЕС), пошиљатељ и приматељ морају имати исти кључ, који је унапред припремљен и који мора бити тајан за све којима није намењен - пошиљатељ користи тај кључ за шифрирање, а приматељ исти тај кључ за дешифрирање. Код алгоритма асиметричног кључа (нпр. РСА), постоје два посебна кључа: „јавни кључ” се објављује и омогућује пошиљатељу да изврши шифровање, док „тајни кључ” приматељ чува као тајну и користи га да изврши исправно дешифровање.

По типу улазних података, шифре се могу сврстати у две групе: шифра блокова, којом се шифрира блок података фиксне дужине, и шифра низа (шифра тока или проточна шифра), којом се шифрира континуални низ података.

Величина кључа и рањивост[уреди | уреди извор]

У чисто математичком нападу[10] (тј. у недостатку других информација које би помогле у разбијању шифре), пре свега, битна су три чиниоца:

  • Математичке предности за откривање и искориштење слабости шифре.
  • Доступна снага израчунавања, тј. снага рачунара који се може употребити за решавање проблема. Треба напоменути да просечне перформансе/капацитет једног рачунара нису једини чинилац који се узима у обзир. Противник може, рецимо, да користи више спрегнутих рачунара и тако значајно убрза потрагу за кључем (такозвани „напад грубом силом”).
  • Величина кључа, тј. дужина кључа који је употребљен за шифровање поруке. Како расте величина кључа, тако се повећава и комплексност претраживања грубом силом, све до тачке кад директно разбијање шифре престаје да биде практично.

Пошто је жељени ефект тешкоћа израчунавања, теоријски се бирају алгоритам и ниво тежине, а на темељу тога се бира одговарајућа дужина кључа. Може се показати да рецимо симетрична шифра са 128 битова, асиметрична шифра са 3072 битова и елиптична крива са 512 битова имају сличну тежину.[11]

Клод Елвуд Шенон је доказао[12] користећи разматрања теорије информација да свака теоретски непробојна шифра мора имати дужину кључа најмање колико је дугачак отворени текст и да се кључ користи само једном (једнократни блок, енг. one-time pad)

Употреба енкрипције[уреди | уреди извор]

Енкрипција се користи за заштиту информација у рачунарским, комуникационим и безбедносним системима. Такође, олакшава управљање ИП адресама штитећи садржај од откривања приликом преноса. Енкрипција обезбеђује заштиту података у мировању, нпр. докумената на рачунару или на уређајима за складиштење података (УСБ) и омогућава очување ових података уколико физичке мере безбедности откажу. Енкрипција се такође користи за заштиту података у току преноса, нпр. преко мреже (интернет, е-трговина), мобилних телефона, бежичних уређаја, банкомата, итд.

Код енкрипције се јављају два главна проблема: тајност и аутентификација. Потребно је обезбедити да је лице које прима кључ сигурно лице које је овлашћено да га добије (аутентификација) и да нико други не може да сазна кључ у току преноса (тајност). Енкрипција, сама по себи, може да обезбеди тајност поруке, али потребне су и друге технике за заштиту интегритета и аутентичности поруке, на пример, провера идентификационог кода поруке или дигитални потпис.

Види још[уреди | уреди извор]

Референце[уреди | уреди извор]

  1. ^ Катз, Јонатхан; Линделл, Yехуда (2008). Интродуцтион то Модерн Црyптограпхy. Цхапман & Хаии/ЦРЦ. ИСБН 978-1-58488-551-1. 
  2. ^ Б . Сцхнеиер (1995). Апплиед Црyптограпхy: Протоцолс, Алгоритхмс, анд Соурце Цоде ин C (2нд изд.). Wилеy. 
  3. ^ Ибрахим А. Ал-Кади, “Црyптограпхy анд Дата Сецуритy: Црyптограпхиц Пропертиес оф Арабиц”, процеедингс оф тхе Тхирд Сауди Енгинееринг Цонференце. Риyадх, Сауди Арабиа: Нов 24-27, Вол 2:910-921., 1991.
  4. ^ Ибрахим А. Ал-Кади, “Тхе оригинс оф црyптологy: Тхе Араб цонтрибутионс”, Црyптологиа, 16(2) (Април 1992) пп. 97–126.
  5. ^ Дан Бонех; Схоуп, Вицтор (17. 8. 2015). А Градуате Цоурсе ин Апплиед Црyптограпхy. 
  6. ^ „Врсте енкрипције”. Архивирано из оригинала 13. 05. 2011. г. 
  7. ^ „Енкрипција података”. 
  8. ^ Давид Кахн, Тхе Цодебреакерс - Тхе Сторy оф Сецрет Wритинг (ISBN 978-0-684-83130-5) (1967)
  9. ^ Хелен Фоуцхé Гаинес, “Црyптаналyсис”, 1939, Довер. ISBN 978-0-486-20097-2.
  10. ^ Абрахам Синков, Елементарy Црyптаналyсис: А Матхематицал Аппроацх, Матхематицал Ассоциатион оф Америца. 1966. ISBN 978-0-88385-622-2.
  11. ^ "Дужина кључа"
  12. ^ Сханнон, Цлауде (1949). „Цоммуницатион Тхеорy оф Сецрецy Сyстемс”. Белл Сyстем Тецхницал Јоурнал. 28 (4): 656—715. 

Литература[уреди | уреди извор]

Спољашње везе[уреди | уреди извор]