1 / 20

Avainten vaihto ja eheys

Avainten vaihto ja eheys. Avainta pitää vaihtaa aika ajoin. Avainten vaihto ei ole helppoa, ja mitä useampia osapuolia viestintään liittyy, sitä hankalammaksi se käy. Avaimen vaihtamiseen ei ole olemassa mitään helppoa tapaa… ellei sitten ole mahdollisuutta tehdä se avoimen kanavan läpi!

kay-jensen
Download Presentation

Avainten vaihto ja eheys

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. Avainten vaihto ja eheys • Avainta pitää vaihtaa aika ajoin. • Avainten vaihto ei ole helppoa, ja mitä useampia osapuolia viestintään liittyy, sitä hankalammaksi se käy. • Avaimen vaihtamiseen ei ole olemassa mitään helppoa tapaa… ellei sitten ole mahdollisuutta tehdä se avoimen kanavan läpi! • Tässä keskeisenä elementtinä on modulaarinen aritmetiikka eli kansanomaisesti jakojäännös. Timo Mynttinen

  2. Idea on yksinkertainen: lasketaan jakolasku ja katsotaan paljonko jää jakojäännökseksi. • Esimerkiksi luku 7 menee 16:een kaksi kertaa, ja jakojäännökseksi jää 2: • 16=2 mod 7 , ”kuudentoista moduuli (jakojäännös) seitsemän suhteen on kaksi”. • Matemaattisesti asia merkitään hienommin , 16 on kongruentti kahden suhteen modulo 7. • Tulos on nolla silloin, kun jaettava luku on jakajan monikerta, eli jako menee tasan. Timo Mynttinen

  3. Modulaaritekniikan hyödyllisyys piilee siinä, että jakojäännöksen laskeminen tähän suuntaan on helppoa. • Mutta jos laskutehtävä olisi annettu muodossa , oikeita x:n arvoja olisi nyt rajattomasti: 0, 8, 16, 24, 32, 40, … eli kaikki kahdeksan kerrannaiset. • Turvallista avaimenvaihtoprotokollaa kutsutaan kehittäjiensä mukaan Diffie-Hellman avaintenvaihtoprotokollaksi, ja se toimii seuraavasti: Timo Mynttinen

  4. Henri ja Elsi sopivat keskenään yhteisestä luvusta Z. Luku ei ole mitenkään salainen, joten sitä voidaan ehdottaa ja hyväksyä avoimen kanavan yli. 2. Henri valitsee luvun SH (Secret Henri), jonka vain hän itse tietää. Henri laskee luvun PH (Public Henri) kaavalla ja lähettää sen Elsille. 3. Elsi valitsee vastaavasti oman salaisen luvun SE (Secret Elsi) ja laskee siitä PE (Public Elsi) kaavalla ja lähettää sen Henrille. Timo Mynttinen

  5. Elsi on siis saanut Henrin lähettämän julkisen luvun PH ja Henri on saanut vastaavan Elsin lähettämän julkisen luvun PE. Jos joku on salakuunnellut liikennöintiä, niin hänellä on myös tiedossa Z, PH ja PE, mutta hän ei tiedä lukuja SH ja SE, joista PH ja PE on laskettu. 4. Seuraa alkeellista matematiikkaa. Koska seuraa tästä se, että . Timo Mynttinen

  6. Kun Henri saa Elsin lähettämän julkisen luvun PE, hän korottaa sen omaan salaiseen potenssiin SH ja saa avaimeksi kelpaavan luvun K. Vastaavasti Elsi korottaa Henrin lähettämän julkisen luvun PH oman salaisen luvun SE potenssiin . Timo Mynttinen

  7. Molemmilla osapuolilla on nyt hallussaan sama avain K, vaikkei sitä olekaan lähetetty avoimen kanavan yli. • Mikä estää salakuuntelijaa selvittämästä avainta K? Hän ei tunne lukuja SH ja SE. Hänen pitäisi ensin selvittää, mihin potensseihin luku Z on korotettu, jotta siitä on saatu Henrin ja Elsin julkiset luvut PH ja PE. • Tavallisessa matematiikassa tuo tehtävä olisi helppo: otetaan vain logaritmit lopputuloksesta Z:n suhteen. Timo Mynttinen

  8. DH-protokollassa laskutoimitukset tehdään kuitenkin modulo q, missä q on suuri jaoton luku (alkuluku). • Potenssiin korottaminen modulo q on helppo laskea, mutta käänteinen tehtävä – diskreetti logaritmi – on erittäin hankala, eikä siihen tunneta mitään nopeaa menetelmää. • Otetaan äskeinen kättely oikeilla numeroilla (pienillä sellaisilla). Timo Mynttinen

  9. Henri ja Elsi sopivat yhteisestä luvusta Z=7 sekä moduulista, jonka suhteen kaikki laskut jatkossa suoritetaan. Olkoon tämä luku u=11. 2. Henri valitsee salaisen luvun SH=3. 3. Elsi valitsee salaisen luvun SE=4. Timo Mynttinen

  10. Henrin julkinen luku eli =343 mod 11=2 (luvun 343 jakojäännös eli moduuli 11 suhteen). 5. Elsin julkinen luku eli =2401 mod 11=3. 6. Henri lähettää Elsille luvun 2 ja Elsi Henrille luvun 3. 7. Henri laskee eli =27 mod 11=5 (jakojäännös 11:n suhteen) ja saa tuloksena salaisen avaimen K. Timo Mynttinen

  11. Elsi laskee eli =16 mod 11=5. • Molemmat saavat siis saman tuloksen K=5 kuten pitikin. • Mahdollisen salakuuntelijan tiedossa ovat siis luvut Z=7, u=11 sekä PH=2 ja PE=3. Hänen pitäisi laskea SH ja SE voidakseen laskea K:n. • Tarvitaan siis ratkaisu lausekkeista ja . • Kun luvut ovat pieniä, arvot voidaan selvittää kokeilemalla: Timo Mynttinen

  12. Timo Mynttinen

  13. Kuvattu avaimen vaihto (generointi) ei takaa prosessin eheyttä: Kun Henri lähettää Elsille luvun, voi joku siepata sen matkalla ja vaihtaa sen itse laskemaansa lukuun…siis äsken kuvattu avaintenvaihtoprotokolla ei pysty todentamaan osapuolia. Timo Mynttinen

  14. Tiiviste on yksisuuntainen funktio, jolle syötetään suuri joukko bittejä (esimerkiksi tiedosto tai kokonainen sähköpostiviesti) jonka jälkeen funktio tulostaa vakiomittaisen bittijonon eli tiivistearvon (hash value). • Funktio pitää valita siten, että yhdenkin sisään menevän bitin muuttaminen aiheuttaa suuren muutoksen ulos tulevassa arvossa. • Koska funktio on lisäksi yksisuuntainen, sitä ei voida ajaa takaperin: jos ulos tullut arvo tiedetään, ei voida mitenkään päätellä, minkälainen bittijoukko ne on tuottanut. Timo Mynttinen

  15. Koska tiiviste yksilöi sille syötetyn bittijonon, tiivistettä kutsutaan myös bittijoukon sormenjäljeksi (fingerprint). • Hyvä tiivistefunktio täyttää seuraavat kriteerit: • sisään tulevien bittien lukumäärä voi olla mikä tahansa • ulos lähtevien bittien (tiivistearvo) lukumäärä on aina vakio, esim. 128 bittiä • yksisuuntainen (jos lopputulos tiedetään, ei voida mitenkään päätellä, millaisista arvoista se on saatu) • törmäykset epätodennäköisiä • nopea laskea • Yleisesti käytettäviä tiivistefunktioita ovat esim. MD5, RIPEMD-160, SHA-1, SHA-256 JA SHA-512. Timo Mynttinen

  16. Tiivisteellä mm. varmistetaan, ettei viesti ole muuttunut matkalla. • Kun tiiviste lisätään viestin perään, vastaanottaja voi helposti tarkistaa että ne vastaavat toisiaan eikä viestiä ole muutettu. Timo Mynttinen

  17. Edellä kuvatut salaustekniikat turvaavat Henrin ja Elsin välisen viestinnän luottamuksellisuuden, tiivisteet viestien eheyden ja DH-protokolla mahdollistaa avainten vaihtamisen niin usein kuin halutaan. • Kolme ongelmaa jää vielä ratkaisematta: 1. Henrillä ei edelleenkään ole varmuutta siitä, että linjan toisessa päässä on varmasti oikea Elsi. 2. Jos Henri saa Elsiltä tärkeän viestin, sen todistusvoima ei ole aukoton. Vaikka viesti on salainen, molemmat osapuolet tuntevat avaimen ja kumpi tahansa on voinut laatia viestin. Kiistämättömyysperiaate ei siis toteudu. Timo Mynttinen

  18. 3. On vaikeaa muistaa, mitä salasanaa kunkin vastaanottajan kohdalla käytetään – isossa organisaatiossa tämä ei onnistuisikaan! • Tarvittavien avainten määrä saadaan kaavasta , missä n on keskenään viestivien henkilöiden määrä: Timo Mynttinen

  19. Timo Mynttinen

  20. Mainitut kolme ongelmaa voidaan ratkaista vain epäsymmetrisellä salaustekniikalla. Timo Mynttinen

More Related