17. toukokuuta 2010

Kvanttisalaus on murrettu

"Pikkuinen" uutinenhan mokoma on, vai mitä?

No ei todellakaan. Kvanttisalausta on pidetty mahdottomana purkaa. Siis salauksen "Graalin maljana", joka mahdollistaa turvallisen viestinnän ikuisiksi ajoiksi tulevaisuuteen asti (ja vieläpä helposti ilman etukäteen jaettavia avaimia). Ei siis vain "tehokkaaksi" tai "liikaa laskentatehoa purkamiseen vaadittavaksi", vaan todellakin mahdottomaksi koskaan tulevaisuudessa purkaa. Nyt onkin käynyt ilmi, ettei se käytännön tasolla ole sitä, eikä ehkä koskaan voi olla sitä.

Kvanttisalauksella pystytään vaihtamaan salausavain turvallisesti kahden osapuolen välillä, koska jos joku kolmas osapuoli salakuuntelee avaintenvaihtoa, se paljastuu. Kun avaimet on vaihdettu, voidaan salaus tehdä kerta-avainta käyttäen ja saavuttaa ehdottoman varma salaus. Uuden tutkimustiedon mukaan on kuitenkin mahdollista salakuunnella osaa tästä avaintenvaihdosta ilman, että se paljastuu avainta vaihtaville osapuolille, koska nämä luulevat salakuuntelusta aiheutuvien muutosten olevan vain normaaleja häiriöitä. Periaatteessa siis varsin yksinkertainen asia. Vaikutus on kuitenkin merkittävä ja luultavasti palauttaa kvanttikryptointoilijat takaisin suunnitelupöydän ääreen.

Tällä hetkellä ainoa täysin varma salausmenetelmä on siis tuo kerta-avainsalaus, jossa täysin satunnaista dataa käytetään korvaussalakirjoitukseen siten, että satunnaisen datan määrä on sama (tai suurempi) kuin selkokielinen teksti ja samaa satunnaista dataa ei koskaan käytetä kahta kertaa. Näin tehtäessä satunnaisuus siirtyy salausavaimesta (eli siitä satunnaisesta datasta) salakirjoitettavaan tekstiin ja lopputuloksena on ehdottoman varmasti salattu (täysin satunnainen) salakielinen teksti. Hyökkääjällä ei ole mitään mahdollisuutta purkaa salausta, koska mitään kaavaa tai algoritmiä ei ole ja kaikki yritykset käyttää raa'an voiman laskentaa hyväkseen tuottavat vain kaikki mahdolliset ja mahdottomat ratkaisut eikä hyökkääjä voi mitenkään tietää, mikä niistä on oikea (rautalankaa: samasta tekstistä saa vaikkapa "Nähdään_huomenna" ja myös "Eipä_nähdä_vielä" jne.). Viestin vastaanottaja voi kuitenkin purkaa salauksen helposti, mikäli hänellä on tiedossa salaukseen käytetty avain. Ongelmana onkin tässä kerta-avainsalauksessa ollut se, että salausavaimet pitää pystyä vaihtamaan turvallisesti ja salausavaimia tarvitaan paljon. Kvanttisalaus olisi voinut ratkaista tuon avaintenvaihto-ongelman, joten massiivisia salausavainkirjastoja ei tarvitsisi etukäteen vaihtaa ja säilyttää.

Salausavainten vaihtoon käytetään nykyään käytännössä useasti Diffie-Hellman avaintenvaihtoprotokollaa, tai vaihtoehtoisesti Diffie-Hellmanin ja DSA:n yhdistelmää, tai RSA:ta, tai Diffie-Hellmanin ja RSA:n yhdistelmää. Joissain tapauksissa käytetään myös etukäteen tunnettua salaisuutta (josta luodaan salausavain, jota käytetään varsinaiseen salaukseen kaikissa yhteyksissä). Joskus käytetään kaikkien näiden yhdistelmää maksimaalisen tietoturvan saamiseksi, esimerkiksi siten, että Diffie-Hellmannilla vaihdetaan joka kerta eri salausavain ja sitten tätä juuri luotua salausavainta ja etukäteen jaettua salaisuutta käyttäen luodaan varsinainen salausavain, jolla kaikki viestintä salataan. Näin jokaiseen viestintäkertaan saadaan helposti eri salausavain, eikä se, että jaettu salaisuus paljastuisi joskus myöhemmin, mahdollista kuitenkaan aikaisemmin salattujen viestien purkamista (ns. perfect forward secrecy). Kaikki nämä salausmenetelmät perustuvat siihen, että salauksessa käytetään niin suurta avainkokoa (ehdottomasti vähintään 2^1024 avainvaihtoehtoa, mieluiten 2^4096 avainvaihtoehtoa), ettei sen selvittäminen ole nykyisin laskentamenetelmin käytännössä mahdollista ja että digitaalisin allekirjoituksin (tai etukäteen jaetuin RSA-avaimin tai jaetuin salaisuuksin) varmistetaan, ettei avaintenvaihtoa vastaan tehdä mies välissä - hyökkäystä.

Kuten siis jo aikaisemmin tuli todettua, kvanttisalauskin tuntuu nyt kompastuvan tuohon "mies välissä - hyökkäykseen". Ehdottoman varman salauksen vaatimukseen ei riitä mikään muu, kuin 100% varmuus. Näin ollen kvanttisalaus ei ainakaan nykyisessä muodossaan voi sitä antaa (eikä tosin mikään muukaan, kuin etukäteen vaihdetut kerta-avaimet kerta-avainsalaukseen). Käytännön merkitystä tällä asialla ei ole kovinkaan paljon, koska nykyäänkään kvanttisalausta ei juurikaan käytetä ja toisaalta nykyisin käytössä olevat RSA, DH ja DSA mahdollistavat "riittävän turvallisen" avaintenvaihdon ja sitä kautta "riittävän turvallisen" salauksen käyttämisen. Toivoa sopii, että niitäkin käytetään huolellisesti ja riittävää avainkokoa käyttäen, muuten nekään eivät anna suojaa salakuuntelulta.

3 kommenttia:

Anonyymi kirjoitti...

"Kvanttisalausta on pidetty mahdottomana purkaa. Siis salauksen "Graalin maljana", joka mahdollistaa turvallisen viestinnän ikuisiksi ajoiksi tulevaisuuteen asti (ja vieläpä helposti ilman etukäteen jaettavia avaimia)."

Oletko ollenkaan tutustunut kvanttisalaukseen, tai ylipäätään mihinkään salaukseen? Ihan yhtä lailla onnistuu välistävetohyökkäys kuin tavallisissakin salausmenetelmissä, jos ei ole jotakin etukäteen vaihdettua salausavainta tms.

Niko N kirjoitti...

Jos hyökkääjä voi kuitenkin lukea enintään 20% biteistä, niin eikö riitä että laadittaisiin 25% pidempi avain?

(1 + 0.25) * (1 - 0.2) = 1

Markus Jansson kirjoitti...

Välistävetohyökkäys onnistuu kvanttisalauksessakin, en väittänytkään, ettei onnistuisi, vaan totesin, että kvanttisalauksen pitäisi mahdollistaa turvallinen salaus ilman etukäteen jaettavia avaimia. Jonkinlainen autentikointi tarvitaan, esimerkiksi etukäteen jaettu salaisuus tms.