мини|десно|Огист Керкхофс Керкхофсов принцип (такође Керкхофсов дезидератум, претпоставка, аксиом, доктрина или закон) у криптографији формулисао је холандски криптограф Огист Керкхофс у 19. веку. Принцип гласи да криптосистем треба да буде безбедан чак и ако је све о систему, осим кључа, јавно познато. Овај концепт нашироко прихватају криптографи, за разлику од сигурности кроз обскурност.
Керкхофсов принцип је амерички математичар Клод Шенон исказао речима „противник познаје систем”, односно „системе треба дизајнирати под претпоставком да ће се противник одмах у потпуности упознати с њима”. У том облику назива се Шенонова максима.
Другу формулацију дао је амерички истраживач и професор Стивен М. Беловин: Другим речима — дизајнирајте свој систем претпостављајући да га противници детаљно познају. (Бивши званичник Националног центра за безбедност рачунара НСА рекао ми је да је стандардна претпоставка тамо била да је серијски број 1 сваког новог уређаја испоручен Кремљу.)
Порекло Проналазак телеграфије коренито је изменио војне комуникације и драматично повећао број порука које је требало заштитити од противника, што је довело до развоја теренских шифри које су морале бити једноставне за употребу без великих поверљивих шифрарника које је на бојишту лако заробити. Управо је та средина довела до развоја Керкхофсових захтева.
Огист Керкхофс био је професор немачког језика на париској Високој школи за трговину (HEC Paris). Почетком 1883. Керкхофсов чланак, -{La cryptographie militaire}-, објављен је у два дела у -{Journal of Military Science}-, где је навео шест дизајнерских правила за војне шифре. У преводу са француског, она гласе:
Систем мора бити практично, ако не и математички, неразмрсив; Не треба да изискује тајност и не сме да представља проблем ако падне противнику у руке; Мора да буде могуће пренети и запамтити кључ без употребе писаних бележака, а дописници морају бити у стању да га промене или модификују по жељи; Мора бити применљив на телеграфске комуникације; Мора бити преносив и не сме захтевати да га користи или да њиме рукује више особа; Најзад, с обзиром на околности у којима се користи, систем мора бити лак за коришћење, не сме бити напоран за употребу нити од корисника захтевати да знају и поштују дугачак списак правила.
Нека од њих више нису релевантна с обзиром на способност рачунара да обављају сложено шифровање. Друго правило, данас познато као Керкхофсов принцип, и даље је од пресудне важности.
Објашњење принципа Керкхофс је на криптографију гледао као на ривала и бољу алтернативу стеганографском кодирању, уобичајеном у 19. веку за скривање значења војних порука. Један од проблема с кодирним схемама јесте да се оне ослањају на тајне које чувају људи, попут „речника” који откривају, на пример, тајна значења речи. Стеганографски речници, једном откривени, трајно компромитују одговарајући систем кодирања. Други проблем је што ризик од одавања расте с порастом броја корисника који чувају тајне.
Криптографија 19. века, насупрот томе, користила је једноставне табеле за транспозицију алфанумеричких знакова, обично давањем пресека редова и колона које је било могуће модификовати кључевима — кратким, нумеричким и лако памтљивим. Систем се сматрао „неразмрсивим” јер табеле и кључеви сами по себи не преносе никакво значење. Тајне поруке могу бити компромитоване само ако комплетан скуп табеле, кључа и поруке падне противнику у руке у релевантном временском оквиру. Керкхофс је сматрао да тактичке поруке остају важне само неколико сати. Системи нису нужно компромитовани зато што се његове компоненте (алфанумеричке табеле и кључеви) могу лако променити.
Предност тајних кључева Употреба сигурне криптографије треба да замени тежак проблем обезбеђивања порука много лакшим — чувањем релативно малих кључева. Систем који захтева дугорочну тајност нечега тако великог и сложеног као што је целокупни дизајн криптографског система очигледно не може да оствари тај циљ. Он само замењује један тежак проблем другим. Међутим, ако је систем безбедан чак и када противник зна све осим кључа, онда је све што треба учинити да се кључеви чувају у тајности.
Постоји много начина да се открију унутрашњи детаљи широко коришћеног система. Најочигледнији је да неко може да подмити, уцени или на други начин примора особље или кориснике да објасне систем. На пример, у рату ће једна страна вероватно заробити опрему и људе друге стране. Свака страна ће такође користити шпијуне за прикупљање информација.
Ако метод подразумева софтвер, неко би могао да направи дамп меморије или да покреће софтвер под контролом отклањача грешака да би разумео метод. Ако се користи хардвер, неко би могао да купи или украде део хардвера и направи програме или уређаје потребне за његово тестирање. Хардвер се такође може расклопити да би се детаљи чипа испитали под микроскопом.
Одржавање безбедности Једна од генерализација Керкхофсовог принципа гласи: „Што је мање и једноставније тајни које се морају чувати да би се обезбедила сигурност система, то је лакше одржавати безбедност система.” Брус Шнајер повезује то с уверењем да сви безбедносни системи морају бити пројектовани да откажу на што безбеднији начин:
Сваки безбедносни систем пресудно зависи од тога да одређене ствари остану тајне. Међутим, Керкхофсов принцип истиче да би тајне које се чувају требало да буду оне које је најјефтиније променити ако буду нехотице откривене.
На пример, криптографски алгоритам може бити имплементиран у хардверу и софтверу који је широко дистрибуиран међу корисницима. Ако безбедност зависи од чувања те тајне, онда откривање доводи до великих логистичких потешкоћа у развоју, тестирању и дистрибуцији имплементација новог алгоритма — систем је „крт”. С друге стране, ако чување алгоритма у тајности није важно, већ само кључеви који се користе с алгоритмом морају бити тајни, онда откривање кључева захтева само једноставнији, јефтинији процес генерисања и дистрибуције нових кључева.
Примене У складу с Керкхофсовим принципом, већина цивилне криптографије користи јавно познате алгоритме. Насупрот томе, шифре које се користе за заштиту поверљивих државних или војних информација често се чувају у тајности (видети шифровање типа 1). Међутим, не треба претпоставити да државне/војне шифре морају бити тајне да би се одржала безбедност. Могуће је да су оне намењене да буду криптографски исто толико добре као и јавни алгоритми, а одлука да их се чува у тајности у складу је са слојевитим безбедносним ставом.
Сигурност кроз обскурност
Уобичајено је да компаније држе унутрашњи рад система у тајности. Неки тврде да ова „безбедност кроз обскурност” чини производ безбеднијим и мање рањивим на напад. Противаргумент је да чување унутрашњости у тајности може краткорочно побољшати безбедност, али дугорочно треба веровати само системима који су објављени и анализирани.
Стивен М. Беловин и Ренди Буш коментаришу:
Референце
Спољашње везе Референца на Керкхофсов оригинални рад, са скенираним изворним текстом
Категорија:Криптографија