1 / 13

Tietoturvallisuus osa 7

Tietoturvallisuus osa 7. Tietoturvan algoritmeja. Tietoturvan turvapalvelut. Kerrataan tietoturvan 6 turvapalvelua Luottamuksellisuus : Viestin sisältö on vain lähettäjän ja vastaanottajan tiedossa Eheys: Viestin/tiedon sisältö säilyy muuttumattomana

langer
Download Presentation

Tietoturvallisuus osa 7

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tietoturvallisuus osa 7 Tietoturvan algoritmeja

  2. Tietoturvan turvapalvelut • Kerrataan tietoturvan 6 turvapalvelua • Luottamuksellisuus : Viestin sisältö on vain lähettäjän ja vastaanottajan tiedossa • Eheys: Viestin/tiedon sisältö säilyy muuttumattomana • Käytettävyys: Tieto on kaikkien niiden käytettävissä, joille tieto kuuluu • Todennus eli autentikointi (käyttäjän varmennus) • Kiistämättömyys (non-repudiation) • Pääsynvalvonta (access control) Seuraavassa esitellään menetelmiä, joilla näitä palveluja voidaan teknisesti toteuttaa.

  3. Eheyden varmistaminen • Tiedon eheys tarkoittaa paitsi tiedon muuttumattomuutta, myös oikeellisuutta. • Eheys voi vaarantua mm. seuraavista syistä: • Bittien muuttuminen toiseksi tiedonsiirrossa • Tieto voidaan vahingossa syöttää väärin (tilinumero) • Jokin kolmas osapuoli tahallaan muuttaa tiedon tai viestin sisältöä

  4. Bittien muuttumisen havaitseminen tiedonsiirrossa. Vanha tekniikka on käyttää ns 7 bitin koodia merkin ilmaisemiseen. Tavun 8 bitti on ns. pariteettibitti eli tarkistusbitti, jonka arvo on esim. sellainen, että tavun ykkösten summa oli aina parillinen (”even parity”): Esim. 110101000 (pariteettibitti = 0) 010011001 (pariteettibitti = 1) Kun modeemi lähettää viestin tavu kerrallaan, se havaitsee yhden bitin muuttumisen siitä, että pariteettibitti ei täsmää. Tällöin kyseinen tavu lähetetään uudelleen. Jos bittien muuttumisen todennäköisyys on erittäin pieni, tällä tekniikalla havaitaan useimmat virheelliset merkit. (On nimittäin epätodennäköistä, että samaan tavuun sattuisi kaksi virhettä). * Tämä tekniikka on tiedonsiirron kannalta epätaloudellinen, meneehän joka kahdeksas bitti tavallaan hukkaan. Lisäksi 7 bitin koodi rajoittaa merkkivalikoiman koon välille 0 – 127.

  5. Koodauspiirit Mobiilitekniikassa (GSM) käytetään koodauspiirejä, jotka korjaavat automaattisesti mahdolliset bittivirheet. Koodaus perustuu matematiikkaan, jossa digitalisoitu puhe, musiikki tai multimedia käsitellään tietyillä matemaattisilla algoritmeilla, jotka takaavat viestin muuttumattomuuden, mutta toisaalta ovat niin tehokkaita, että eivät hidasta viestien perillemenoa puhelimesta toiseen. Koodaus on keskeinen osa Nokian kaltaisten mobiiliyhtiöiden tutkimusta ja tuotekehittelyä.

  6. Syöttövirheiden ehkäisy • Syöttövirheiden ehkäisy on erityisen tärkeää • Henkilötunnuksen • Pankkitilin numeron • Laskun viitenumeron syöttämisessä • Siksi edellä mainittujen merkkijonojen viimeinen merkki on aina ns. tarkistusmerkki, jonka avulla pyritään varmistamaan eheyden toteutuminen mm. laskuja maksettaessa. • Seuraavassa esitetään algoritmit tarkistusmerkin laskemiseksi.

  7. Henkilötunnuksen tarkistusmerkki • Poistetaan välimerkki tunnuksesta • Muodostetaan kokonaisluku x ensimmäisistä 9 numerosta • Lasketaan jakojäännös y = x mod 31 • Tarkistusmerkki on y :s merkki jonosta 0123456789ABCDEFHJKLMNPRSTUVWXY • (huom! indeksi aloitetaan 0:sta, ts. 0. merkki =0, 1. merkki = 1 j.n.e) • Todennäköisyys, että väärä tunnus menee läpi on 1/31 = 3.2% Esim. Onko henkilötunnus 161278-024R oikea? Kohdan 2 kokonaisluku x = 161278024 Lasketaan jakojäännös jaettaessa luvulla 31: y = 28 Oikea tarkistusmerkki on merkkijonon 28. merkki eli W Henkilötunnus on siten väärä.

  8. Pankkitilin numeron tarkistusmerkki • Tilinumero täytetään välinollilla muotoon 6+ 7 (yksi merkki varataan tarkistusmerkille) • Tarkisteen edessä olevia numeroita painotetaan oikealta kertoimilla 2,1,2,1, .... • Jos tulo on kaksinumeroinen , siitä vähennetään 9 • Tulot lasketaan yhteen. • Tarkiste on 10 miinus kohdan 4 summan viimeinen merkki. • Väärä tilinumero menee läpi 10% todennäköisyydellä tästä varmennuksesta. • Esim. Onko tilinumero 800013- 32405 oikea ? • Saadaan muoto: 80001300032405 • Lasketaan alekkain tulot 8 0 0 0 1 3 0 0 0 3 2 4 0 • 2 1 2 1 2 1 2 1 2 1 2 1 2 • saadaan 16 0 0 0 2 3 0 0 0 3 4 4 0 • summa = 7+2+3+3+4+4 = 23 (huom!16-9=7) • 3) Oikea tarkiste = 10 miinus 3 = 7 • Tilinumero on virheellinen, koska siinä tarkisteena oli luku 5

  9. Viitenumeron tarkistusmerkki 1) Viitenumeron alkuosan numeroita painotetaan oikealta alkaen numeroilla 7,3,1,7,3,1,... 2) Tulot lasketaan yhteen 3) Tarkistusmerkki on 10 miinus kohdan 2 luvun viimeinen numero Todennäköisyys, että väärä viitenumero menee läpi on 10% Esim. Onko viitenumero 18425 38229 oikea? Lasketaan tulot: 1 8 4 2 5 3 8 2 2 1 3 7 1 3 7 1 3 7 1+24+28+15+21+8+6+14 = 117 Tarkistusmerkki = 10 – 7 = 3 Viitenumero on siten virheellinen (koska tark.merkki =9)

  10. Hash –funktiot eli tiivistefunktiot • Pitkien viestien muuttumattomuuden takaamiseksi voidaan koko viestistä laskea ns. tiivistefunktion eli hash-funktion avulla kokonaisluku, joka voidaan lähettää viestin mukana ns. digitaalisen allekirjoituksen algoritmia käyttäen. • Kun viestin vastaanottaja saa viestin ja siihen liittyvän tiivisteluvun, hän voi laskea viestistä samaa algoritmia (sääntöä) käyttäen oman tiivisteluvun. Jos itse laskettu tiivisteluku ja vastaanotettu tiivisteluku ovat samat, on viesti alkuperäinen. • Hash –funktiolta h edellytetään seuraavia ominaisuuksia: • h(M) on helppo laskea viestistä M (message) • Viesti M on vaikea(mahdoton) laskea h(M):n arvosta • On vaikea keksiä toinen viesti M', hash-funktion arvo olisi sama ( h(M) = h(M')) • On yleensä vaikea löytää kahta viestiä M1 ja M2 , joilla olisi sama hash –arvo.

  11. Hash -funktioita Käytettyjä standardoituja hash algorimeja ovat: SHA (secure hash algorithm) , sekä MD5 Seuraavassa on eräs yksinkertaisempi versio hash – funktioksi, jota voitaisiin kohtalaisen turvallisesti käyttää tiivisteen laskemisessa. Oletetaan, että viestit on koodattu luvuiksi joukossa Zn = { 0, 1, 2, … , n-1} , ts. viesti on joukko lukuja M = {M1 , M2 ,…, Mk}. Määritellään h(M) seuraavasti: h(M) = (M12 + M22 +… Mk2) mod n Ts. tiivisteluku on viestin lukujen neliösumma mod n, missä mod n tarkoittaa jakojäännöstä jaettaessa luvulla n.

  12. Esim. Käytetään engl. aakkosten koodausta a= 0, b=1,…,z =25 Viesti M =”helsinki” on numerosarja {7,4,11,18,8,13,10,8}. Suoritetaan laskut jakojäännöksinä mod n, missä n = 26. Viestistä saatu tiiviste on h(M) = 72+42+112+182+82+132+102+ 82 mod 26 = 907 mod 26 = 23

  13. Tehtäviä: • Laske seuraavan henkilötunnuksen tarkistusmerkki: • 150466-531 ? • Lisää seuraavaan viitenumeroon oikea tarkistusmerkki: • 13421 3231 ?

More Related