ftp (file transfer protocol) - rso.tsckr.sirso.tsckr.si/rado/varnost.pdfenkripcijski standard des...
TRANSCRIPT
Varnost
RSM
Sl. 2
Varnost računalniških sistemov
• Varnost predstavlja:
zanesljivost = zagotavljanje pogojev za:- delovanje storitev- dostop uporabnikov do storitev
zaščita = onemogočiti: - izvajanje nelegalnih storitev- preprečiti dostop nelegalnim porabnikom do storitev in virov
sistema
Sl. 3
Zaščita
• Zaščita je lahko:
lokalna
decentralizirana
Sl. 4
Zaščita vsebine podatkov, ki se prenašajo preko transportnega
sistema
Pred kom zaščitimo podatke?
Pred tipičnimi vdiralci v sistem, ki so lahko:
upravljalci in nadzorniki lokalnih in globalnih sistemov za prenos podatkov
sodelavci pošiljatelja ali prejemnika, ki poznajo njegovo geslo
državne službe, ki izkoriščajo svoja pooblastila
neznani vdiralci v informacijsko komunikacijski sistem
Sl. 5
Kriptiranje sporočila
• Pred vdiralcem se zavarujemo s kriptiranjem sporočila, tako da je za vdiralca nerazumljivo oz. neberljivo.
Kriptiranje sporočila = skrivanje (zakrivanje) sporočila
Sl. 6
Kriptiranje sporočila
Sporočilo kriptiramo s ključem.
Ključ = geslo določene dolžine, ki omogoča kriptiranje.
Čim daljši je ključ, tem teže je razkriti sporočilo!
Sl. 7
Zaščita vsebine podatkov, ki se prenašajo preko transportnega
sistema
Vdiralec ne sme razvozljati metode dekriptiranja!
Sl. 8
Načini zakrivanja vsebine podatkov
Metode kriptiranja:
• substitucijske metode:vsak znak ali skupino znakov nadomestimo (zamenjamo) z drugimi
• transpozicijske metode:spreminjamo vrstni red: znakov, besed, besednih zvez
Sl. 9
Kriptiranje in dekriptiranje
Ključi za kriptiranje in dekriptiranje:
• simetrični ključi: (E = D)ključ za (en)kriptiranje je enak ključu za dekriptiranje
• asimetrični ključi: (E ≠ D)ključ za (en)kriptiranje se razlikuje od ključa za dekriptiranje
Sl. 10
Primeri kriptografskih metod - 1
• substitucijske metode (simetričen ključ)cezarjev kriptogram ključ kodiranja: celotno besedilo je zamaknjeno za 5 črk vdesno
julua → napad
tšsrponmlkjihgfedčcbažzvu
žzvutšsrponmlkjihgfedčcba
premaknjena abeceda
Sl. 11
Primeri kriptografskih metod - 2a
• substitucijske metode (simetričen ključ)viegenerjev kriptogram ključ kodiranja: geslo, ki ga zapišemo v posebno matriko in ga morata poznati oddajnik in sprejemnik
vsak znak v besedilu zakodiramo z uporabo:- znanega gesla in - dvodimenzionalne Viegenerjeve matrike
geslo je še posebno težko razbiti, če je ključ daljši od besedila!
itilesevagesvaromeskevolč
obalseječidut
inejlšimerpenniidalmomsim
geslo
Sl. 12
Uporaba Viegenerjeve dvodimenzionalne matrike za kriptiranje - 2b
a b c č d e f g h i j k l m n o p r s š t u v z ž b c č d e f g h i j k l m n o p r s š t u v z ž a c č d e f g h i j k l m n o p r s š t u v z ž a b č d e f g h i j k l m n o p r s š t u v z ž a b c d e f g h i j k l m n o p r s š t u v z ž a b c č e f g h i j k l m n o p r s š t u v z ž a b c č d f g h i j k l m n o p r s š t u v z ž a b c č d e g h i j k l m n o p r s š t u v z ž a b c č d e f h i j k l m n o p r s š t u v z ž a b c č d e f g i j k l m n o p r s š t u v z ž a b c č d e f g h j k l m n o p r s š t u v z ž a b c č d e f g h i k l m n o p r s š t u v z ž a b c č d e f g h i j l m n o p r s š t u v z ž a b c č d e f g h i j k m n o p r s š t u v z ž a b c č d e f g h i j k l n o p r s š t u v z ž a b c č d e f g h i j k l m o p r s š t u v z ž a b c č d e f g h i j k l m n p r s š t u v z ž a b c č d e f g h i j k l m n o r s š t u v z ž a b c č d e f g h i j k l m n o p s š t u v z ž a b c č d e f g h i j k l m n o p r š t u v z ž a b c č d e f g h i j k l m n o p r s t u v z ž a b c č d e f g h i j k l m n o p r s š u v z ž a b c č d e f g h i j k l m n o p r s š t v z ž a b c č d e f g h i j k l m n o p r s š t u z ž a b c č d e f g h i j k l m n o p r s š t u v ž a b c č d e f g h i j k l m n o p r s š t u v z
Izsek kriptiranja:
seječidut
meskevolč
dalmomsim
č → pl → uo → hv → j človekse ... → puhjtzde ...e → tk → zs → de → e
Sl. 13
Primeri kriptografskih metod - 3
• substitucijske metode (simetričen ključ)metoda kodiranja Potek kriptiranja: Znak, celo besedo ali celo sporočilo nadomestimo z dogovorjenim substitutom brez posebnih pravil (kodiramo). Ključ predstavlja celotna kodna tabela.
Primer1: Ali ga bomo kozarček?Substitut ga nadomešča besedo vino.
Primer2: barbarosaZnano kodno sporočilo za napad Nemčije na
Rusijov drugi svetovni vojni.
Sl. 14
Primeri kriptografskih metod - 4a
• transpozicijske metode (simetričen ključ)pri tej metodi pa znakov ne zamenjamo ampak jih premešamo (premeščamo, spremenimo jim pozicijo)
Potek (en)kriptiranja:izberemo ključ, ki ne sme imeti enakih črk (triglav)v ključu oštevilčimo stolpce po abecednem vrstnem redu (6532417)prepišemo stolpce po zaporednem vrstnemredu (kvsus vrvij ooateo eaete lmgičb čeelia ssedl) oba
lseječidutitilesevagesvaromeskevolč7142356valgirt
Sl. 15
Primeri kriptografskih metod - 4b
• transpozicijske metode
Potek dekriptiranja:ključ sprejemnik pozna (triglav)pozna tudi zaporedje stolpcev (6532417)izračuna dolžino stolpcev oz. število vrstic(38 : 7 = 5 vrstic in 3 polja) in označi prazna poljavpišemo besedilo v stolpce pripravljene tabele po zaporedjuštevilk stolpcev
sjuisvvrkv
7142356valgirt
Sl. 16
Primeri kriptografskih metod - 5a
Enkripcijski standard DES (Data Encription Standard -1977)
• uporablja kombinacijo substitucijskih in transpozicijskih metod
• je simetričen enkripcijski algoritem
• eden od varnih algoritmov, težko zlomljiv ključ
• veliko v uporabi (tudi ameriška vojska)
Sl. 17
Primeri kriptografskih metod - 5b
Enkripcijski standard DES za razliko od doslej obravnavanih metod se ne zamenjujejo in premeščajo znaki ampak posamezni biti v nizih bitov. Govorimo o substitucijskih in permutacijskih preslikavah.
običajne dolžine nizov podatkovnih bitov so 64 bitov
začetni ključ je 56-biten, nato pa se pretvori v 16 64-bitnih ključev. Vsak od teh ključev omogoči preslikavo 64- bitnega podatka. Tako gre podatek skozi 16 zaporednih preslikav
Sl. 18
Primeri kriptografskih metod - 5c
Enkripcijski standard DES obstaja več izpeljank DES algoritma, npr. :
- 3DES s trikratno dolžino ključa
- izpeljanka, pri kateri se generira neskončen ključ za enkripcijo poljubno dolgega sporočila, itd.
enkripcija je izredno hitra (kriptiranje tekom prenosa) in ne zavira hitrosti prenosa podatkov
Sl. 19
Primeri kriptografskih metod - 5d
Enkripcijski standard DES težave pri uporabi DES algoritma:
- ker gre za simetričen ključ, ga morata imeti oddajnik in sprejemnik
- problem je varna distribucija ključa - ne znotraj ene zgradbe ampak na večje razdalje.
Sl. 20
Uporaba simetričnega algoritma
IDEA -(International EncryptionAlgorithm) uporablja128-bitni ključna 64-bitnihblokih
Sl. 21
Primeri kriptografskih metod - 6a
Enkripcijski algoritem MIT - RSA (1978)(Massachusetts Institute of Technology - avtorji Rivest,
Shamir, Adelman) je primer varnega algoritma z asimetričnim ključem -kriptirni in dekriptirni ključ sta različna!
uporablja dva ključa, ki sta medsebojno matematično povezana in odvisna drug od drugega - nastopata lahko le kot par:
- tajni (zasebni), ki ga ima le lastnik- javen ključ, ki je dostopen vsakomur
Če kriptiramo z javnim ključem, lahko dekriptiramo le s pripadajočim tajnim ključem.
Sl. 22
Primeri kriptografskih metod - 6b
Enkripcijski algoritem RSA
je zelo počasen, ker enkripcija in dekripcija delujeta na principu potenciranja dveh zelo velikih števil
uporaben je predvsem za kriptiranje krajših sporočil kot npr. 56-bitnega ključa za algoritem DES. Z njim prenašamo npr. ključe DES algoritma.
Sl. 23
Kriptografija z uporabo javnega in zasebnega ključa
Potek kriptiranja:
• ker sta javni in zasebni ključ matematično povezana, morata imeti pošiljatelj in prejemnik sporočila vsak svoj par ključev - zasebnega in javnega
• pošiljatelj zakodira sporočilo tako, da poišče prejemnikov javni ključ in ga uporabi za kriptiranje
• prejemnik mora sporočilo dekodirati s svojim zasebnim ključem
Sl. 24
Kriptografija z uporabo javnega in zasebnega ključa
Sl. 25
Kriptografija z uporabojavnega in zasebnega ključa
Varnost kriptiranja:
• algoritmi so javno znani, vsa varnost je dosežena s tajnostjo ključa.
• ključi pri asimetričnih metodah kriptiranja morajo biti daljši od simetričnih za doseganje iste varnosti. Ključu simetrične metode 128 bitov ustreza ključ dolžine 2304 bite pri asimetrični metodi
Sl. 26
Kriptografija
Poleg simetričnih in asimetričnih algoritmov se v kriptografiji uporabljajo še posebni zgostitveni algoritmi (hash), ki poljubno dolg tekst preslikajo v število fiksne dolžine (npr. 128 bitov).Znana algoritma sta MD5 in SHA
(Delovanje teh algoritmov si lahko predstavljamo podobno kot preslikavo nekega bloka podatkov v CRC kodo)
Sl. 27
Kriptografija z uporabo javnega in zasebnega ključa
Varnost kriptiranja:
• Za zagotavljanje varnosti ne zadošča le kriptiranje sporočila, saj lahko na poti skozi omrežje do prejemnika kdo prestreže sporočilo in ga spremeni
• Kako ugotovimo, da ključ, ki je javno objavljen, res pripada pravi osebi, ki ji pošiljamo sporočilo (je verodostojen)?
• Kaj, če nekdo podtakne svoj ključ z namenom, da bo bral naša sporočila?
Sl. 28
Kriptografija z uporabo javnega in zasebnega ključa
Varnost kriptiranja:
• aplikacija je varna, če zagotavlja:zaupnost (confidentiality)celovitost (integrity)overjanje (autentication) preprečevanje tajenja (nonrepudiation)kontrolo dostopa (access control)
• naštete probleme rešujeta:podpisovanje sporočil (digital signatures)overjanje javnih ključev
Sl. 29
Digitalni podpis
• Digitalni podpis nadomešča lastnoročni podpis.
• Za razliko od kriptiranja sporočila, v tem primeru zamenjamo ključa med seboj:
kriptiramo z zasebnim ključem, da tega ne more storiti nihče namesto nas
dekriptiramo z javnim ključem, saj z njim lahko vsak, ki ga naš podpis zanima, preverja pravilnost podpisa
Sl. 30
Uporaba elektronskega podpisa za podpisovanje dokumentov
Sl. 31
Digitalni podpis v plačilnem prometu
• Za digitalne podpise, ki se uporabljajo v plačilnem prometu, velja, da z istim parom ključev lahko podpišemo le en dokument.
• Za podpis naslednjega dokumenta moramo izdelati nov par ključev
Sl. 32
Identifikacija z digitalnim podpisom
• Z digitalnim podpisom lahko identificiramo kogarkoli v internetu:
bodisi pošiljatelja (npr. v primeru elektronske pošte)
ali pa računalnik, saj digitalni podpisi omogočajo medsebojno overjanje računalnikov:
- digitalni podpisi so sestavni del protokolov SSL in TLS, s katerima vzpostavimo varen kanal med spletnim strežnikom in spletnim brskalnikom
- digitalni podpisi so tudi sestavni del protokola IPsec za zaščito podatkov na omrežni ravni
Sl. 33
Overjanje javnih ključev
• Overjanje javnih ključev je osnovni pogoj za dosego varnosti z uporabo asimetričnih ključev
• Overjanje je zaupano agencijam za certificiranje(Certification Authority - CA)
• Kaj pomeni overjanje javnih ključev? Agencija za certificiranje izda potrdilo - certifikat, ki vsebuje javni ključ, ki je digitalno podpisan. Z njim CA zagotavlja drugim uporabnikom avtentičnost ključa z določeno serijsko številko v določenem časovnem obdobju
Sl. 34
Preverjanje veljavnosti javnega ključa
• S preverjanjem se prepričamo, da javni ključ res pripada lastniku. To storimo s certifikatom, ki vsebuje javni ključ, tako, da preverimo veljavnost digitalnega podpisa in drugih podatkov v certifikatu.
• Če ne zaupamo agenciji, preverimo tudi njeno avtentičnost. Nadaljujemo preverjanje agencij po hierarhiji navzgor, dokler ne pridemo do nivoja splošno znane agencije, za katero poznamo javni ključ in ji zaupamo kot je npr. Verisign.
Sl. 35
Kako pridobimo svoj digitalni certifikat?
1. S spletnih strani agencije za certificiranje javnih ključev ustvarimo svoj javni in zasebni ključ in zahtevamo izdajo certifikata za javni ključ
2. Agencija preveri identiteto naročnika (preko spleta, osebno, odvisno od namena uporabe certifikata)
3. Agencija izda certifikat in ga javno objavi v javnem imeniku ali v strežniku
• V Sloveniji je krovna organizacija za certificiranje javnih ključev SI-CA, ki deluje na Institutu Jožef Stefan, poleg nje pa so še Center vlade za informatiko, Trade point Slovenija, itd.
Sl. 36
Preklic osebnega-privatnega ključa
• Tako kot pri kreditnih karticah si tudi za uporabo privatnega ključa moramo zapomniti svoje geslo.
• Kdaj prekličemo svoj ključ? Tako kot pri kreditni kartici:
če nam kdo ukrade ključ
če kdo izve naše geslo
če pozabimo geslo
Sl. 37
PGP zaščita
• PGP (Pretty Good Privacy)
je računalniški program za kodiranje sporočil na osebnih računalnikih
izdelal ga je Phil Zimmerman leta 1991
je hibridni kriptirni sistem, ki temelji na uporabi:- simetričnih algoritmov- asimetričnih algoritmov- zgostitvenih funkcij
(od verzije programa 5 naprej lahko izbiramo med različnimi simetričnimi algoritmi kot RSA, IDEA, Diffie-Hellman, itd.)
Sl. 38
PGP zaščita
• Pošiljatelj zakodira sporočilo s prejemnikovim javnim in svojim tajnim ključem.
• Prejemnik pa sporočilo dekodira le s pošiljateljevim javnim ključem in svojim tajnim ključem
• Z uporabo takega kodiranja odpade potreba po "varnem kanalu", preko katerega je treba v primeru klasične kriptografije prenesti ključ od pošiljatelja do prejemnika.
Sl. 39
Potek PGP kriptiranja
• PGP izračuna iz datoteke povzetek z uporabo MD5 zgostitvene metode
• Zašifrira povzetek s privatnim ključem pošiljatelja z algoritmom RSAin dobi elektronski podpis, (ni prikazan na naslednji sliki!)
• Podpis doda podatkovni datoteki in vse skupaj zgosti s postopkom ZIP (tudi ni prikazano!)
• Ustvari-izračuna enkratni ključ (to je naključno število - session key)in z njim zašifrira ZIP datoteko po algoritmu IDEA.
• Zašifrira enkratni ključ z naslovnikovim javnim ključem po algoritmu RSA
• Doda ključ datoteki. Ta binarni zapis pretvori v berljive znake s programom radix64 (iz treh 8-bitnih naredi štiri ASCII znake). Sporočilo potuje do naslovnika.
Sl. 40
PGP kriptiranje
Sl. 41
Potek PGP dekriptiranja
• Pretvori datoteko iz ASCII formata v čisto binarno (kar ni prikazano na naslednji sliki!)
• Poišče enkratni ključ z dešifriranjem s prejemnikovim privatnim ključem po RSA
• Dešifrira datoteko z enkratnim ključem po algoritmuIDEA
• Razširi (dekompresira) ZIP datoteko (ni prikazano na sliki!)
• Preveri pošiljateljev digitalni podpis z njegovim javnim ključem
Sl. 42
PGP dekriptiranje
Sl. 43
Kaj omogoča program PGP?
• generiranje parov javnih in zasebnih ključev
• uporabo simetrične kriptografije
• kodiranje, dekodiranje, brisanje in podpisovanje vsebine, namizja, datotek, map, diskov, elektronske pošte
• vsebuje priključke (plugin) za standardne odjemalce elektroske pošte
Sl. 44
Zančilnosti programa PGP
• Omogoča uporabo nezlomljive kriptografije
• Pri nas ga je dovoljeno uporabljati, ponekod pa ne
• Je brezplačen