DES
Опште | |
---|---|
Пројектант(и) | IBM |
Датум објаве | 1977. (стандардизован у јануару 1979.) |
Изведен од | Lucifer |
Наследници | Троструки DES,G-DES,DES-X,LOKI89,ICE |
Детаљи шифре | |
Величина кључа | 56 бита |
Величина блока | 64 бита |
Структура | Фејстелова мрежа |
Рунде | 16 |
Најбоља јавнакриптоанализа | |
DES се сада сматра несигурним због могућегбруталног напада.Од 2008, најбољи аналитички напад јелинеарна криптоанализакоји захтева 243позната отворена текстаи има време сложености од 239–43. |
DES(енгл.Data Encryption Standard)алгоритамје највише коришћеналгоритамза криптовање на свету. Дуго година, DES је међу људима био синоним за сигурношифровање.Упркос напоруElectronic Frontierфондације у прављењу машине за разбијање DES-шифрованих порука, вредне 250.000 америчких долара.
Историјат
[уреди|уреди извор]Дана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. одANSIX3.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бита,левии десни део.Над десним блоком се обавља функција,односнокод декриптовања, где једесних 32 бита, аје 48битникључ који се генерише из заданог тајног кључа криптовања. Вредност добијена операцијом XOR између вредности функцијеи левих 32 бита података, постаје,тј. десних 32 бита за следећи корак итерације.за следећи корак је.Након 16 таквик корака блокови се замењују те се спајају и обавља се коначна пермутација која је инверзна почетној пермутацији, тј..Добијених 64 бита су криптовани блокови. Будући да се након две узастопне операцијеXORса истим бројем добија почетна вредност, тј. а = (аĹ b)Ĺ b, поступак декриптовања може се спровести тако да се операције обављају обрнутим редоседом. Због симетричности алгоритма то се постиже тако да се криптовани блок пусти кроз исти алгоритам са том разликом да се уместо кључау и-том кораку употреби кључ.
Поступак генерисања шестнаест 48битнихкључева од заданог, тајног кључа спроводи се у неколико корака. Прво се помоћу задане таблице пермутације из кључа генеришу два блока по 28 бита. Затим следи 16 следећих корака: сваки се блок ротира улево за одређени број бита (у зависности о којем је кораку реч) те се из насталих блокова (2 × 28) помоћу таблицом задате пермутације генерише кључ,где јеiброј корака. Функција енкрипцијејесте заправо најкритичнији део алгоритма, тј. управо због њене комплексности не постоји (барем колико је за сада познато) начин проваљивања DES-а (осим грубом рачунарском силом). Вредност функције добија се у неколико корака. Најпре се од улазних 32 бита () проширењем заданом таблицом добија 48 бита. Та се вредност сабира логичком операцијомXORса кључемпаралелно над сваким битом. Добијена се 48 битна вредност дели на осам делова од по шест бита. Први и задњи бит сваког дела представља адресу реда, а средња четири адресу колоне у таблици селекције, односно, помоћу шест одређена су четири бита. Истим поступком над сваком шесторком од улазних 48 бита селекцијом добијамо 32 бита. Тих се 32 бита још пермутује задатом таблицом те се добија коначна вредност функције.
Сигурност и криптоанализа
[уреди|уреди извор]DESалгоритамсе данас не може сматрати сигурним алгоритмом, и због релативно мале дужине кључа као и због низа других недостатака који су омогућиликриптоаналитичаримаширом света да објаве низалгоритамаза разбијање овог алгоритма. Најпознатији напади на овајалгоритамсу:
- Brute force attack- овим нападо се испробавају сви могући кључеви, и уз помоћ ове технике напада DES алгоритам је разбијен 1998. године уз помоћ Deep Crackрачунара,за шта је било неопходно свега 56 сати
- Диференцијална анализа- откривена касне 1980. од стране Елија Бихама и Адија Шамира, али је била позната и раније од странеIBM-a и NSA-a, али је била чувана у тајности.
- Линеарна криптоанализа
- Унапређени Дејвисов напад
Замене за DES
[уреди|уреди извор]Данас се DES све мање користи пре свега због мале дужине кључа од 56 бита и све бржим рачунарима и бољим алгоритмима за разбијање DES-а. Тако данас уместо овог алгоритма све више се користеAES(енгл.Advanced Encryption Standard)алгоритам.За овај стандард прихваћен јеалгоритамRIJNDAEL,који су креирали белгијски математичари Џон Демен и Винсент Римен. Овај алгоритам је напреднији у односу на DES алгоритам јер може користити променљиву дужину кључа (128, 192 или 256 бита) као и променљиву дужину блока (128, 192 или 256бита) независно од дужине кључа. Остале предности овог алгоритма су симетрична и паралелна структура, као и погодност за реализацију модернимпроцесорима,специјализованим хардвером или у паметним картицама (које карактерише маламеморија). Врло је важно је напоменути да се код овог алгоритма је појава слабих кључева немогућа пошто алгоритмишифровањаидешифровањакористе различите компоненте. ТакођеAESје отпоран на линеарну и диференцијалну криптоанализу, као и на друге публиковане нападе на блокшифре.
Новији блок шифарски алгоритми који се данас најчешће користе:
- AES
- Triple DES- овајалгоритамје у ствари унапређени DES