DES — разлика између измена

Садржај обрисан Садржај додат
Disambiguated: битБит (рачунарство) (2)
Ред 23:
 
==Историјат==
Дана [[15. мај]]а [[1973]]. год. америчка национална управа за стандарде ({{јез-енг|NBS - National Bureau of Standards}}) издала је обавештење у којем траже пропозиције за криптографске алгоритме ради заштите података током преноса и складиштења. -{NBS}- је чекао на реакцију, и она је стигла [[6. август]]а [[1974]], три дана пре [[Ричард Никсон|Никсон]]ове оставке, када је -{[[IBM]]}- поднео свог кандидата под именом -{[[LUCIFER]]}-. После процењивања алгоритма, уз помоћ америчке владине установе задужене за сигурност (-{NSA}-), -{NBS}- је усвојио модификацију -{LUCIFER}- алгоритма јула [[1977]]. и назвао га -{DES}-. Најозбиљнија примедба се односила на величину кључа (128 за -{LUCIFER}-, 56 [[Бит (рачунарство)|бит]]а за -{DES}-). -{DES}- је брзо прихваћен у недигиталним медијима, као у јавним телефонским линијама. Нпр. међународна удружења која су се бавила [[патент]]има за мирисе и парфеме су слали њихове вазне формуле, криптоване -{DES}--ом, преко телефона. У међувремену, банкарска индустрија, која ја највећи корисник енкрипције изван владе, је прихватила -{DES}- као стандард за њихове трансакције 1980. од -{[[ANSI]]}- -{X3.92}-. [[1998]]. године, под водјством Џон Гилмор, -{EFF}- тим је потрошио 250.000 долара да направи машину која би провалила цео -{DES}- кључ у просеку за око 4,5 дана. [[17. јул]]а [[1998]], објавили су да су одредили 56-битни кључ за 56 сати. Та машина је названа ''-{[[Deep Crack]]}-'', и садржала је 27 плоча са по 64 [[чип]]а, и била способна да тестира 90 [[билион]]а кључева у секунди.
 
==Опис==
-{DES}- представља криптовање које трансофмише 64 битне блокове података у 64 битне криптоване блокове података. Дужина кључа криптовања је 64 бита, од којих 8 отпада на проверу паритета, тако да је ефективна дужина кључа 56 бита.
 
-{DES}- криптовање и декриптовање се спроводи у неколико корака, како је то приказано на слици. Прво се битови улазног блока дужине 64 бита пермутују неком иницијализованом [[пермутација|пермутацијом]] - -{IP}-. Тада се улазни блок подели на два дела по 32 [[Бит (рачунарство)|бит]]а, леви <math>L_0</math> и десни део <math>R_0</math>. Над десним блоком се обавља функција <math>F(R_i, K_i)</math>, односно <math>F(R_i, K_{16-i+1})</math> код декриптовања, где је <math>R_i</math> десних 32 бита, а <math>K_i</math> је 48 [[Бит (рачунарство)|бит]]ни кључ који се генерише из заданог тајног кључа криптовања. Вредност добијена операцијом XOR између вредности функције <math>F</math> и левих 32 бита података, постаје <math>R_{i+1}</math>, тј. десних 32 бита за следећи корак итерације. <math>L_{i+1}</math> за следећи корак је <math>R_i</math>. Након 16 таквик корака блокови се замењују те се спајају и обавља се коначна пермутација која је инверзна почетној пермутацији, тј. <math>IP^{-1}</math>. Добијених 64 бита су криптовани блокови. Будући да се након две узастопне операције -{[[XOR]]}- са истим бројем добија почетна вредност, тј. -{а = (аĹ b)Ĺ b}-, поступак декриптовања може се спровести тако да се операције обављају обрнутим редоседом. Због симетричности алгоритма то се постиже тако да се криптовани блок пусти кроз исти алгоритам са том разликом да се уместо кључа <math>K_i</math> у и-том кораку употреби кључ <math>K_{16-i+1}</math>.
 
Поступак генерисања шестнаест 48 [[Бит (рачунарство)|бит]]них кључева од заданог, тајног кључа спроводи се у неколико корака. Прво се помоћу задане таблице пермутације из кључа генеришу два блока по 28 бита. Затим следи 16 следећих корака: сваки се блок ротира у лево за одређени број бита (у зависности о којем је кораку реч) те се из насталих блокова (2 × 28) помоћу таблицом задате пермутације генерише кључ <math>K_i</math>, где је ''-{i}-'' број корака. Функција енкрипције <math>F</math> јесте заправо најкритичнији део алгоритма, тј. управо због њене комплексности не постоји (барем колико је за сада познато) начин проваљивања -{DES}--а (осим грубом рачунарском силом). Вредност функције добија се у неколико корака. Најпре се од улазних 32 бита (<math>R_i</math>) проширењем заданом таблицом добија 48 бита. Та се вредност збраја логичком операцијом [[XOR]] са кључем <math>K_i</math> паралелно над сваким битом. Добијена се 48 битна вредност дели на осам делова од по шест бита. Први и задњи бит сваког дела представља адресу реда, а средња четири адресу колоне у таблици селекције, односно, помоћу шест одређена су четири бита. Истим поступком над сваком шесторком од улазних 48 бита селекцијом добијамо 32 бита. Тих се 32 бита још пермутује задатом таблицом те се добија коначна вредност функције <math>F</math>.
Преузето из „https://sr.wikipedia.org/wiki/DES