Kryptografian tutkimuskohteita

Kryptologia on aktiivinen tutkimusala ja kaikkea muuta kuin ”valmista tekniikkaa”. Myös tällä kurssilla esitettyjä asioita tutkitaan edelleen ja kehitetään jatkuvasti eteenpäin. Niinpä näistä menetelmistä julkaistaan aika ajoin uusia, turvallisempia ja tehokkaampia menetelmiä ja protokollia tai niiden variantteja. Kryptologia kattaa kuitenkin myös paljon asioita, joita ei tämän kurssin puitteissa lainkaan käsitelty.

Seuraavaksi esitellään esimerkinomaisesti muutamia kryptologian osa-alueita, jotka ovat tällä hetkellä aktiivisen tutkimuksen kohteina. Ne antavat toivottavasti kuvan siitä, millaisten ongelmien ja tutkimuskysymysten parissa kryptologit tällä hetkellä työskentelevät.


Sivukanavat

Tällä kurssilla on oletettu, että hyökkääjällä on pääsy vain osapuolten väliseen viestintään. Entä jos hyökkääjä saakin osittaista tietoa myös itse salaamiseen tai sen purkuun käytetystä laskennasta? Jos hyökkääjä esimerkiksi pystyy mittaamaan, kuinka kauan aikaa salaukseen kuluu ja tuo aika riippuu käytetystä avaimesta, niin tällöin hyökkääjä saa tietoa käytetystä avaimesta. Tällaista hyökkäystä kutsutaan ylätasolla harmaan laatikon hyökkäykseksi (engl. gray-box).

Jos hyökkääjä saa salauksen suorittavan laitteen käsiinsä, hän voi esimerkiksi mitata laitteen hetkellisen virrankulutuksen laskennan aikana ja saada vielä enemmän tietoa avaimesta, koska hetkellinen virrankulutus riippuu laskennassa tietyllä hetkellä käytetyistä avaimien ja datan arvoista.

On kyetty osoittamaan myös käytännössä, että tällaiset niin sanotut sivukanavahyökkäykset ovat erittäin tehokkaita menetelmiä, kun murretaan muuten turvallisia kryptografisia järjestelmiä. Tämän vuoksi sekä yliopistoissa että teollisuudessa tutkitaan aktiivisesti sivukanavahyökkäyksiä ja menetelmiä, joilla niiltä voi suojautua. Tämä tutkimus muodostaakin kryptologian osa-alueen, joka on lähellä insinööritieteitä sekä elektroniikkaa ja sähkötekniikkaa.


Valkoisen laatikon kryptografia

Voidaan ajatella, että kryptografinen laskenta, joka toimii kurssilla kuvatulla tavalla vuotamatta mitään ulkopuolisille, on musta laatikko. Sivukanavat, jotka vuotavat jotain rajattua tietoa avaimesta ja laskennan väliarvoista, tekevät siitä harmaan laatikon.

Entä jos laskenta tapahtuukin niin sanotussa valkoisessa laatikossa (engl. white-box), jossa ulkopuoliselle tarkkailijalle annetaan ohjelma ja kaikki sen ajon välivaiheet täsmällisesti? Onko esimerkiksi salaisella avaimelle tapahtuva kryptografinen laskenta mahdollista tehdä siten, että edes valkoisen laatikon tapauksessa tarkkailija ei voi saada salaista avainta selville ohjelman ajon ja sen välitietojen perusteella? Tämä on hyvin hankala ongelma ratkaista turvallisesti, mutta tällaiselle laskennalle on paljon käytännön sovelluksia esim. digitaalisten oikeuksien hallinnassa (engl. digital rights management - DRM).


Homomorfinen salaus

Tavallisella salauksella (esim. AES) salattua tietoa ei voi käsitellä purkamatta ensin salausta. Jos salakieltä muuttaa vähänkin, ei salauksen purkaminen tuota enää mitään järkevää. Tietyissä tapauksissa olisi kuitenkin hyvin kätevää, jos salakielillä voisi tehdä laskentaa niin, että laskentaa tehtäessä ei tiedettäisi laskennassa käytettyjä arvoja, mutta salauksen purun jälkeen tulos olisi nähtävissä.

Tästä hyvänä esimerkkinä toimisi tilanne, jossa etsit tietoa hakukoneella, mutta voisit tehdä sen niin, että salaat hakusanasi (esim. ”kryptografia”) ja lähetät tämän salatun haun hakukoneelle. Hakukone käsittelisi hakusi näkemättä koskaan mitä hakusanaa käytit, ja palauttaisi tuloksen salakielisenä. Kun purkaisit tuloksen omalla salaisella avaimellasi, saisit hakusi tulokset näkyviin, mutta kenelläkään muulla (ei siis edes hakukoneella!) olisi pääsyä siihen.

Salausmenetelmiä, joilla tällainen laskenta on mahdollista, kutsutaan homomorfisiksi salauksiksi. Opetusmoduulissa 8 näimme, että esimerkiksi perusmuotoinen RSA on homomorfinen kertolaskun suhteen. Pelkällä kertolaskulla ei vielä pitkälle pötkitä, mutta vuonna 2009 onnistuttiin kehittämään ensimmäinen täysin homomorfinen salaus, jolla esimerkiksi edellä esitetty tilanne olisi (teoreettisesti) mahdollinen.

Käytännössä laskenta on kuitenkin niin raskasta, että vain yksinkertaisemmat sovellukset ovat käytännössä mahdollisia. Tutkimus on kuitenkin edennyt viime vuosina nopeasti tällä kryptologian alalla.


Monen osapuolen laskenta

Turing-palkittu (tietojenkäsittelytieteen ”Nobel”) Andrew Yao muotoili niin sanotun Yaon miljonäärien ongelman, joka kuuluu seuraavasti: ”Miten kaksi miljonääriä voi vertailla, kumpi on rikkaampi kertomatta omaisuuksiensa määriä toisilleen tai kolmannelle osapuolelle?”. Toisin sanoen, kuinka osapuolet voivat suorittaa keskenään laskentaa ilman, että paljastavat syötteitään toisilleen?

Vaikka ongelma saattaa äkkiseltään tuntua mahdottomalta, on siihen kuitenkin olemassa kryptografisia ratkaisuja. Tätä kryptologian osa-aluetta kutsutaan turvalliseksi monen osapuolen laskennaksi (engl. secure multiparty computation) ja myös tämä on tällä hetkellä yksi kryptologian aktiivisista tutkimusaloista.

Monen osapuolen laskennalla on ilmeisiä sovelluskohteita muun muassa vahvaa yksityisyydensuojaa tarvitsevissa järjestelmissä, mutta samoin kuin homomorfisen salauksen tapauksessa, myös monen osapuolen laskenta tekee ratkaisuista merkittävästi raskaampia verrattuna perinteisiin järjestelmiin.


Mitkä seuraavista väittämistä pitävät paikkansa?

Mitkä seuraavista väittämistä pitävät paikkansa?

Mitkä seuraavista väittämistä pitävät paikkansa?



Käyttö oikeissa järjestelmissä ja sovelluksissa

Miten kryptografisia menetelmiä käytetään osana oikeita monimutkaisia järjestelmiä?

Vaikka kryptografiset menetelmät sinällään ovatkin hyviä ja turvallisia, miten niitä tulee käyttää ratkaisemaan monimutkaisia ongelmia, jotka liittyvät käytännön järjestelmiin? Entä miten ne linkittyvät järjestelmän muihin tietoturvavaatimuksiin?

Entä miten kryptografiaa tulee käyttää esimerkiksi käyttäjien yksityisyyden suojaamiseksi erilaisissa käytännön sovelluksissa? Tämän tyyppistä kryptografiaa soveltavaa tutkimusta tehdään sekä yliopistoissa että teollisuudessa osana laajempaa tietoturvaa ja yksityisyyttä suojaavaa teknologiaa.

Oikein käytettynä kryptografia on kaiken tietoturvan ydin, jonka varaan voidaan rakentaa muita luottamusjärjestelmiä.


Tekoälyn suojaus esimerkkinä

Olet varmaan kuullut koneoppimisesta (engl. machine learning - ML), jossa järjestelmät oppivat tunnistamaan kuvioita niille opetusvaiheessa annetusta datasta. Tekoäly (engl. artificial intelligence - AI) käyttää koneoppimisen algoritmeja päätöksenteon pohjana. Kun nämä menetelmät opettelevat toimintasääntöjä opetusdatan avulla, on tärkeää, ettei opetusdataa ole muutettu. Vastaavasti on tärkeää, että esimerkiksi itseohjautuvaan ajoneuvoon ei voi syöttää väärää informaatiota ohjausjärjestelmän sekoittamiseksi.

  • Esimerkki 1: Kuvitellaan tilanne, jossa joku on päässyt muuttamaan itseohjautuvien ajoneuvojen AI-järjestelmän opetusdataa. Dataan on lisätty videokuvaa jäätelökioskeista ja ajoneuvo on opetettu aina koukkaamaan jäätelökioskin kautta. Tämä olisi varsin harmillinen piilotettu ominaisuus, mutta olisi mahdollista toteuttaa paljon harmillisempiakin toimintoja.

  • Esimerkki 2: Vaikka itseohjautuvan ajoneuvon AI-ohjausjärjestelmä olisi opetettu oikein, mutta joku pääsee syöttämään ajoneuvon järjestelmään väärennettyä videokuvaa tai kuvia, voisi ajoneuvo pysähtyä keskelle ajoa, koska se kuvittelee nähneensä STOP-merkin. Ajoneuvoissa yleensä päätöksenteko perustuu usean anturin antamiin tietoihin. STOP-merkkejä tarkkailee vain kamera, mutta entä jos kamera näyttää, että tie menee suoraan ja tutka väittää että edessä on talo?


Olet tehnyt sopimuksen linja-autoyhtiön kanssa. He ovat pyytäneet sinua lähettämään itsestäsi kuvan, jotta voivat opettaa linja-autojen kamerat tunnistamaan sinut kulkemiesi matkojen kirjaamiseksi. Yllättäen saatkin laskun, jossa on veloitettuna matkoja, joita et ole tehnyt. Mitä on voinut tapahtua? Valitse kaikki oikeat vaihtoehdot.

Harrastusseurasi on järjestänyt korona-aikana äänestyksen hallituksen jäsenistä etänä. Pohdi asiaa kryptografiselta kannalta ja valitse kaikki oikeat vaihtoehdot.



Yhteenveto

Olet saanut nyt lyhyen katsauksen siihen, mitä aiheita kryptologit tutkivat ja tiedät, että ala kehittyy valtavasti juuri nyt.

Seuraavaksi kertaamme oppimamme asiat, minkä jälkeen oletkin päässyt kurssin loppuun.

Palautusta lähetetään...