24
Standardizacija in kakovost informacijskih sistemov Standardi za varno komunikacijo

Standardizacija in kakovost informacijskih sistemov

  • Upload
    lucus

  • View
    82

  • Download
    7

Embed Size (px)

DESCRIPTION

Standardizacija in kakovost informacijskih sistemov. Standardi za varno komunikacijo. Osnovni pojmi Kriptografija: skrivno pisanje Kriptologija: nauk o zgornjem Kriptoanaliza: isto kot kriptografija, vendar uporabljamo predvsem v smislu razbijanja Spored predavanja Zgodovina kriptografije - PowerPoint PPT Presentation

Citation preview

Page 1: Standardizacija in kakovost  informacijskih sistemov

Standardizacija in kakovost informacijskih sistemov

Standardi zavarno komunikacijo

Page 2: Standardizacija in kakovost  informacijskih sistemov

• Osnovni pojmi– Kriptografija: skrivno pisanje– Kriptologija: nauk o zgornjem– Kriptoanaliza: isto kot kriptografija, vendar

uporabljamo predvsem v smislu razbijanja

• Spored predavanja– Zgodovina kriptografije– Moderni kriptografski algoritmi– Varni protokoli

Page 3: Standardizacija in kakovost  informacijskih sistemov

Antično kodiranje

Skytale: transpozicija (stari Grki)

substitucija (zamik): Cesar Julij

Page 4: Standardizacija in kakovost  informacijskih sistemov

“Chiffre indéchiffrable“

Giovan Batista Belaso (1553):

• kot Cezarjeva, vendar uporabljamo različne zamike, kakor jih določa geslo

Blaiseu de Vigenèr:

• pripišeju mu Belasov postopek (ki ga zdaj imenujemo Vigenerjev)

• poleg tega, česar ni sestavil, je sestavil še nekaj boljšega: avto-ključ

Page 5: Standardizacija in kakovost  informacijskih sistemov
Page 6: Standardizacija in kakovost  informacijskih sistemov

Dešifriranje šifre, ki je ni mogoče dešifrirati

• John Hall Brock Thwaites objavi “novo” metodo šifriranja

• Babbage pove, da to ni nič drugega kot Vigenerjeva koda

• Thwaites je hud in izzove Babbagea, naj dešifrira, če more

• Babbage se poskusi izmazati

• Babbageu se ne uspe izmazati

• Babbage je hud in izumi postopek za dešifriranje– trik je v tem, da s frekvenčno analizo razberemo dolžino ključa

Page 7: Standardizacija in kakovost  informacijskih sistemov

Uporaba permutacijskih šifer

• Secesijska vojna v Ameriki: jug šifrira (Vigener), sever bere, saj jug uporablja samo ključe “Manchester Bluff”, “Complete Victory” in “Come Retribution”

• Druga svetovna vojna: Enigma

Odlična knjiga na temo zgodovine kriptografije: Simon Singh: The Code Book: The Secret History of Codes and Code-breaking

Page 8: Standardizacija in kakovost  informacijskih sistemov

Resnično nezlomljive šifre

• Navajo Code Talkers – uporabljeni v drugi svetovni vojni– vojaška skrivnost do do 1968

• Edini teoretično dokazano varen sistem:– imaš seznam naključnih števil in kodiraš tako, da

narediš “XOR” (ali kaj podobnega) čez knjigo– knjigo uporabiš samo enkrat– Problem: distribucija ključa

• če so ključi semena generatorja naključnih števil, ni rečeno, da bo generator nujno primeren za varno šifro

Page 9: Standardizacija in kakovost  informacijskih sistemov

II. Moderni algoritmi

• Simetrični: obe strani uporabljata isti ključ– Data Encription Standard (DES)– Advanced Encription Standard (AES)– International Data Encryption Algorithm (IDEA)– RC4

• Asimetrični: vsaka stran ima drug ključ– Rivest, Shamir, Adleman (RSA)

• Kvantna kriptografija

Page 10: Standardizacija in kakovost  informacijskih sistemov

Moderni kriptografski algoritmi: DES

• Data Encryption Standard (DES)– razvit sredi sedemdesetih kot IBMov predlog

NBSu (National Institute of Standards and Technology); delovno ime “Lucifer”

– 56 bitni ključ (na zahtevo NSA)– zlomiti ga je mogoče z grobo silo v enem

dnevu– Triple DES (TDES): trojno kodiranje z DES– DES prehaja iz rabe, zamenjuje ga AES

Page 11: Standardizacija in kakovost  informacijskih sistemov

Moderni kriptografski algoritmi: AES

Page 12: Standardizacija in kakovost  informacijskih sistemov

Moderni kriptografski algoritmi: AES

• Advance Encryption Standard

• Velikost ključa 32-256 bitov

• Varnost:– Ameriška vlada:

• 128 bitov je dovolj za “SECRET”

• 192 bitov je dovolj za “TOP SECRET”

• AES je prvi algoritem, ki se uporablja za “TOP SECRET” in je javno znan

– Edini uspešni napadi so delovali tako, da so napadli “stranske kanale” (ne postopka, temveč prenos ključev ipd.)

– Nekatere skrbi, da je matematično algoritem preveč lep, da ga matematiki ne bi želeli/mogli/uspeli sesuti

Page 13: Standardizacija in kakovost  informacijskih sistemov

Moderni kriptografski algoritmi: IDEA

• Od daleč podoben AES, le transformacija je drugačna (blok na desni se ponovi osemkrat)

• Načelno varen

• IDEA se opušča zaradi hitrejših algoritmov (AES) in napredka v kriptoanalizi

Page 14: Standardizacija in kakovost  informacijskih sistemov

Moderni kriptografski algoritmi: RC4

• RC4 = Rivest Cipher 4

• “Poslovna skrivnost”, dokler ga ni nekdo anonimno objavil na neki mailing listi

• Algoritem– tabelo števil med 0 in 255 naključno zmešaš, kot veleva ključ

j := 0 for i from 0 to 255 j := (j + S[i] + key[i mod keylength]) mod 256 swap(S[i],S[j])

– tabelo uporabi kot del generatorja naključnih števil– sporočilo kriptira tako, da naredi XOR teh naključnih števil in sporočila

• Varnost– slaba– istega ključa nikoli ne smemo uporabiti dvakrat– algoritem ni več priporočen

Page 15: Standardizacija in kakovost  informacijskih sistemov

Moderni kriptografski algoritmi: RSA

• Algoritem za hec odkril Clifford Cocks (1973), a javno objavljen šele 1997

• Vmes ga odkrijejo Rivest, Shamir, Adleman (1977)

• Sistem javnega (tega poveš) in privatnega ključa (tega skrivaš): vsi ti lahko pošiljajo kriptirana sporočila, bereš pa jih samo ti

• Ker je algoritem simetričen, lahko (v načelu isti) privatni ključ uporabiš za “podpisovanje”: kar se odklene s tvojim javnim ključem, je bilo zaklenjeno s privatnim (ki ga veš le ti)

• Varnost:– Algoritem je varen, če (dokler?) ne poznamo učinkovitega algoritma faktorizacije– Praštevila morajo biti primerno naključno izbrana– Napad z merjenjem časa: po tem, koliko časa traja potenciranje, lahko uganemo

približno velikost ključa

• Glavni problem: hitrost. V praksi uporabimo RSA zato, da posredujemo ključ za DES. Ključ za DES mora biti primerno naključen.

Page 16: Standardizacija in kakovost  informacijskih sistemov

Moderni kriptografski algoritmi:Kvantna kriptografija

• Kvantni efekt za določevanje naključnega zaporedja

• Postopek temelji na– ... tem, da so kvantni dogodki naključni in nenapovedljivi– ... tem, da ne moremo meriti dveh količin (kvantnih stanj) istočasno– ... “sumljivi akciji na daljavo” (spooky action at distance)

• Če je imel Einstein prav, ne deluje

• Einstein se je motil

• Varnost:– popolna, razen če se fiziki zelo zelo motijo (z izjemo Einsteina)– prisluškovalec ne more prisluškovati, ker nima čemu

• Primerna za komunikacijo med dvema, ne za, denimo, kodiranje televizijskega signala

• Tehnične težave– slabo prenašanje po zraku (napake zaradi trkov v druge delce)– optične kable je mogoče sabotirati

Page 17: Standardizacija in kakovost  informacijskih sistemov

III. Protokoli

• certifikati

• komunikacija: ssl, tsl

• lupina: ssh

• omizja: remote desktop

• brezžična omrežja: WAP, WPE

Page 18: Standardizacija in kakovost  informacijskih sistemov

Certifikati

• Certifikat vsebuje– ime organizacije– njen javni ključ RSA– izdajatelja certifikata– MD5, kodiran z izdajateljevim privatnim ključem RSA

• Certifikat preverimo tako, da– poberemo izdajateljev certifikat– v njem dobimo izdajateljev javni ključ– s tem ključem dekodiramo gornji MD5 in preverimo, če je pravilen

• Po istem postopku preverimo izdajateljev certifikat – tudi ta ima izdajatelja

• Na koncu pridemo do certifikata, ki podpisuje sam sebe

• Slednji naj bi bili certifikati znanih certifikacijskih organizacij; te dobimo z brskalnikom

– FireFox: Tools/Options/Advanced/View Certificates/Authorities– IExplorer: Tools/Options/Certificates

• Če niso ... potem moramo pač vedeti, kaj nameščamo

Page 19: Standardizacija in kakovost  informacijskih sistemov

Certifikati

Primer necertificiranega certifikata

Page 20: Standardizacija in kakovost  informacijskih sistemov

Secure Sockets Layer (SSL)Transport Layer Security (TLS)

• Vmesni nivo med http/smtp/nntp/... in TCPjem, ki skrbi za kodiranje– skupen servis za različne storitve

• Delovanje– klient pošlje pozdrav serverju in mu pove, katere algoritme podpira

• javni ključi: RSA, Diffie-Hellman, DSA, Fortezza• simetrično kriptiranje: RC2, RC4, IDEA, DES, 3DES, AES• enosmerno razprševanje (one-way hash): MD5, SHA

– strežnik izbere enega od ponujenih protokolov in ga sporoči klientu– strežnik pošlje klientu certifikat; klient ga preveri– strežnik lahko (odvisno od nastavitev) zahteva klientov certifikat– strežnik in klient se dogovorita za skriti ključ

• z Diffie-Hellmanovim postopkom izmenjave ključev – v principu podoben RSAju),

• ali tako da si eden od njiju (klient) izmisli ključ, ga kodira s strežnikovim javnim ključem in pošlje strežniku (ki ga bo lahko odkodiral); to zagotavlja, da govorimo s pravim strežnikom

– nadaljnja komunikacija temelji na tem dogovorjenem ključu: ključ iz certifikata se je torej kvečjemu enkrat!

Page 21: Standardizacija in kakovost  informacijskih sistemov

Secure Sockets Layer (SSL)Transport Layer Security (TLS)

• Dodatna zaščita– vsi izmenjani podatki so oštevilčeni

– istočasna raba MD5 in SHA

– ob koncu se preveri “hash” vseh poslanih podatkov

• Uporaba– ssl je uporaben pri vsaki komunikaciji prek TCP

– obstajajo programi, s katerimi “ovijemo” poljuben program v ssl

– uporabljamo ga za zaščito http: https je http s ssl-jem

– z njim je možno zaščititi elektronsko pošto (SMTP je dandanes dostopen od zunaj le, če ima ustrezno avtentifikacijo)

– pomemben je v kombinaciji z VPN (Virtual Private Network)

• TLS 1.0 je praktično enak kot SSL 3.0

Page 22: Standardizacija in kakovost  informacijskih sistemov

Secure Shell (ssh)

• Varna zamenjava za telnet, rlogin in rsh

• ssh-1 (1995): razvit zaradi vdora na Helsinki University of Technology

• ssh-2 (1996): uradno priporočeni standard za internet

• Komunikacija:– računalnika si izmenjata javne ključe za RSA ali DSA– dogovorita se za ključ za sejo (session key), ki se nato uporablja za šifriranje z

AES, 3DES...– ključ se zamenja po 1 GB podatkov ali po eni uri, kar se zgodi prej

• Uporaba:– ssh namesto telneta– v kombinaciji z sftp dobimo varen ftp– v kombinaciji s scp dobimo varen rcp (remote copy)– tuneliranje – v kombinaciji z VPN

• Preprost prost klient: putty (poleg njega pa še sftp, scp...):http://www.chiark.greenend.org.uk/~sgtatham/putty/

Page 23: Standardizacija in kakovost  informacijskih sistemov

Oddaljena namizja

• Remote Desktop Protocol vključuje kriptiranje z RC4 (privzeto kodiranje) in je sorazmerno varen

• Virtual Network Computing (VNC) ni varen in ga je potrebno tunelirati (prek ssh, vpn, ssl, tls)– Obstajajo različice, ki vključujejo kriptiranje

Page 24: Standardizacija in kakovost  informacijskih sistemov

Brezžična omrežja

• WEP– temelji na RC4– prvotno 40 bitni ključ, ko ZDA ukinejo omejitev dolžine ključev v izvoženi

tehnologiji, pa 128 bitov – ker RC4 ne sme večkrat uporabiti istega ključa, se vsakič izbere 24 (oz.

104, v močnejši različici) bitov - katere izberemo, povemo javno)– zaradi ponavljanja delov ključev je algoritem ranljiv– WEP je mogoče razbiti v nekaj urah z običajno računalniško opremo

• WPA– v osnovi podoben WEP (128, 48), vendar stalno menja ključ– čeprav mišljen kot začasna rešitev, je še vedno v rabi in varen

• WPA2– namesto RC4 uporablja AES

• Vso komunikacijo na nezavarovanih brezžičnih omrežjih lahko vidi vsak.