Пређи на садржај

Pretty Good Privacy

С Википедије, слободне енциклопедије
Pretty Good Privacy
Програмер(и)Symantec
Прво издање1991. (1991)
Типсофтвер за шифровање
Лиценцакомерцијала власнички софтвер
Веб-сајтwww.broadcom.com/products/advanced-threat-protection/encryption

Pretty Good Privacy (ПГП) је софтвер - протокол за шифровање и дешифровање података који обезбеђује крипто приватност и ауторизацију за пренос података. Често се користи за потписивање, шифровање и дешифровање текстова, имејлова, фајлова, именика и цео диск партиције и да се повећа безбедност имејл комуникације. Овај софтвер је креирао Phillip R. Zimmermann 1991. године.[1][2]

Настанак Pretty Good Privacy-a

[уреди | уреди извор]

ПГП је настао 1991. године. У америчком Сенату представљен је предлог закона према којем би сви произвођачи опреме за сигурну комуникацију били присиљени уграђивати у своје производе могућност за државу да према потреби декриптује заштићене облике комуникације. Овај предлог никада није заживео као важећи закон, али је и инспирисао Phillipa R. Zimmermanna да те исте године напише, програм чија је основна улога заштита садржаја електронске поште. Пробну верзију свог програма Zimmermann је дао пријатељима и убрзо се PGP пронашао на Интернету и тако напустио границе САД. Овим је Zimmermann прекршио ITAR, те је постао мета вишегодишњег судског прогона америчких власти током чега је добар део тог времена провео у затвору. Судски процес против Zimmermanna обустављен је 1996. године, па су одмах почеле кружити гласине како се Zimmermann нагодио са државом и уградио у свој производ механизам помоћу којег би држава имала увид у податке заштићене PGP-ом. Ова гласина показала се неистинитом, а најбољи доказ је доступност изворног кода чијом би се анализом лако открио евентуални back door. Године 1997. појавила се прва легална верзија PGP-а изван САД. Строги закони изричито су забрањивали извоз криптографског софтвера, па је PGP извезен у облику књиге која је садржала његов изворни код. Изван САД књига је скенирана и помоћу OCR2 софтвера PGP је враћен у електронски облик. Овом операцијом уклоњена је и законска препрека светском ширењу PGP-a.[3]

Принцип рада

[уреди | уреди извор]

ПГП је хибридни криптосистем. Придев хибридни потиче од чињенице да PGP приликом заштите података користи комбинацију најбољих одлика симетричне и асиметричне заштите података. Пошто је његова основна улога заштита података који путују по разним рачунарским мрежама и системима, ПГП се не састоји само од криптографског алгоритма већ од више различитих целина. Због тога се ПГП назива криптосистем или протокол.[4] Због лакшег разумевања, поступак заштите података које пошиљалац жели послати може се разложити на три дела:

  • компресија података
  • енкрипција података
  • енкрипција кључа сесије

Компресија података

[уреди | уреди извор]

Уколико се не подеси другачије, ПГП ће у првом кораку извршити компресију података ZIP алгоритмом. Постоје два разлога за овај поступак. Први и очигледнији је смањивање количине података која ће путовати по мрежи. Други разлог је тај што поступак компресије података јача криптографску заштиту. Наиме, већина метода криптоанализе3 темељи се на препознавању појединих узорака у подацима. Уколико су подаци компресовани пре енкрипције, препознавање узорака биће у великој мери отежано.

Енкрипција података

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

У овом кораку ПГП генерише 128-битни кључ сесије (енгл. session key) који ће бити употребљен само једном, тј. за сваку енкрипцију биће генерисан нови кључ. Подаци се деле на блокове дужине 64-бита и енкриптују се помоћу кључа сесије коришћењем симетричног криптограмског алгоритма IDEA4. IDEA је претпостављени алгоритам и уместо њега могу се употребити и неки други симетрични алгоритми, као што су: Triple-DES, Cast-128, Blowfish, AES и други.

Енкрипција кључа сесије

[уреди | уреди извор]

Као што је у претходном кораку речено, подаци су енкриптовани помоћу симетричног алгоритма, што значи да је кључ који је искоришћен за енкрипцију неопходан и за декрипцију података. Из тога произилази чињеница да је кључ сесије неопходно доставити примаоцу поруке. Кључ сесије се енкриптује помоћу јавног кључа примаоца користећи симетрични алгоритам RSA. Након што је то обављено, енкриптована порука шаље се заједно са енкриптованим кључем који се користи за њену декрипцију. Поступак декрипције обавља се обрнутим редоследом описаног поступка. Када прималац прими поруку, прво помоћу свог приватног кључа декриптује кључ сесије. Након тога, кључем сесије декриптују се заштићени подаци и након тога се врши декомпресија података. Деко пресијом података извршен је и последњи корак декрипције и подаци су доступни примаоцу за даље коришћење.

Дигитални потпис

[уреди | уреди извор]

Осим заштите података криптографским алгоритмима, ПГП нуди још једну меру заштите: дигитални потпис. Дигитални - електронски потпис остварује се помоћу hash функције и његова сврха је потврда аутентичности садржаја поруке (доказ да порука није промењена на путу од пошиљаоца до примаоца), као и гарантовање идентитета пошиљаоца поруке. Електронски потпис има исту намену као и својеручни потпис. Једина разлика је у томе што је својеручни потпис могуће фалсификовати, док је фалсификација дигиталног потписа такорећи немогућа. Пошиљалац применом одређених криптографских алгоритама прво од своје поруке која је произвољне дужине ствара запис фиксне дужине који у потпуности осликава садржај поруке.[5]То практично значи да свака промена у садржају поруке доводи до промене потписа. Овако добијени запис пошиљалац енкриптује својим тајним кључем и тако формира дигитални потпис који се шаље заједно са поруком. Када прималац прими поруку, користећи јавни кључ пошиљаоца декриптује дигитални потпис и уколико су потписи идентични потврђен је идентитет пошиљаоца као и интегритет поруке.

Дигитални сертификати

[уреди | уреди извор]

Чак и са сигурносним методама заштите које поседује ПГП, ипак постоји могућност преваре. У сваком тренутку неко може злонамерно подметнути јавни кључ неке друге особе, пресрести и изменити податке намењене особи за коју је пошиљалац сматрао да је власник поменутог кључа. Да би се такви случајеви спречили, ПГП користи дигиталне - електронске сертификате. Можемо их звати и дигиталном личном картом, јер то они и јесу – дигитална лична карта на Интернету. Састоје се од: ° јавног кључа; ° сертификата (информације о власнику, нпр. име, кориснички ID и сл.); ° једног или више дигиталних потписа. Улога дигиталних потписа на дигиталном сертификату је потврда да је истинитост информација садржаних у сертификату потврђена од стране једне или више поузданих особа. Дигитални сертификати дистрибуирају се помоћу сервера за сертификацију (енг. Certificate server) и базе јавних кључева (енг. Public key infrastructure). Сервер за сертификацију и база јавних кључева су базе података које корисницима омогућавају чување и претрагу јавних кључева. База јавних кључева има неких мањих предности јер пружа различите услуге управљања и манипулисања дигиталним сертификатима. Главна одлика система дигиталних сертификата је постојање „треће стране“ која се назива. То су најчешће компаније које имају задатак да провере и утврде нечији идентитет, и након тога му издају дигитални сертификат. На овај начин смањена је могућност злоупотребе електронских сертификата на минимум.[4]

Анализа сигурности

[уреди | уреди извор]

PGP као криптосистем састоји се од четири криптографска елемента:

  • симетричног алгоритма
  • асиметричног алгоритма
  • hash функције
  • генератора случајних бројева.

Симетрични алгоритам

[уреди | уреди извор]

Као што је раније наведено, претпостављени симетрични алгоритам који PGP користи је IDEA. До данас нису јавно објављене било какве напредне методе разбијања овог алгоритма, па је могуће користити једино методу „бруталне силе“ (енг. brutal force attack). IDEO користи 128-битни кључ. То значи да постоји 2128 различитих комбинација. Бројним прорачунима дошло се до податка да би суперрачунар који обавља 1012 операција у секунди, за период од 317 година обавио око 1022 операција. Ово време није чак довољно ни за тестирање 1022 кључева, што представља само део од 2128 могућности, јер за тестирање појединог кључа није довољна само једна операција. Иако се из ове илустрације може закључити колико је 128-битни кључ сигуран, стални развој технологије врло је упозоравајући. 1993. године Michael Wiener из Northern Telecoma у Ottawi, на једној конференцији, представио је нацрте у потпуности развијеног и тестираног чипа који се одликује великом брзином погађања 56-битних DES кључева. Производња овог чипа у великим серијама коштала би 10.5 долара по комаду. За милион долара могуће је конструисати уређај са 57 000 таквих чипова који би могао испробати свих 256 комбинација за само 7 сати. За уложених 10 милиона долара потребно време се смањује на 21 минут, а за 100 милиона долара време пада на невероватних два минута. [6]

Асиметрични алгоритам

[уреди | уреди извор]

Факторизација је тренутно најбољи познати начин разбијања асиметричног алгоритма RSA, који користи ПГП. Међутим, поступак растављања врло великих бројева на факторе рачунарски је врло захтеван, готово немогућ. Данас је познато неколико различитих алгоритама за факторизацију, а најбољим се показао GNFS5, који је посебно погодан за бројеве са више од 110 знакова. Тим алгоритмом 1999 године факторизован је број са 155 знакова. Поступак факторизације трајао је нешто више од 5. месеци паралелно на 292 рачунара, уз четворомесечне припреме на CRAY суперрачунарима. минимална дужина кључа код алгоритма RSA је 1024 бита, што одговара броју са 309 знакова, док дужина кључа од 2048 бита одговара броју са 617 знакова. Из ових података једноставно је закључити да се RSA алгоритам сматра врло сигурним алгоритмом који је приличне тешко разбити.

Хаш функције

[уреди | уреди извор]

Приликом израде дигиталног потписа ПГП користи хаш функцију која се назива MD56. Реч је о двосмерној функцији која за улаз произвољне дужине да је јединствени излаз дужине 128-бита. Хаш функција је тако конструисана да за два улаза која се разликују само у једном биту даје два потпуно различита излаза. Теоретски постоји могућност да за два различита улаза hash функција понуди идентичан излаз, али је та вероватноћа екстремно мала.[7]

Референце

[уреди | уреди извор]

Литература

[уреди | уреди извор]

Спољашње везе

[уреди | уреди извор]