Tundlikud isikuandmed kolmes turvalises tükis

Teadus

Arvutiteadlase Liina Kammi tööriist Rmind võimaldab statistilisi andmeid analüüsida andmebaasi kirjeid peidetuks jättes.

32-aastane, naine, sellest aastast Tartu ülikooli informaatikadoktor – üksikult võetuna ei tuvasta sellised parameetrid õieti kedagi.

Neid kokku koondades on uudishimulikul aga kiirelt selge: Liina Kamm mis Liina Kamm.

«Ma olen ülikoolis selliseid küsimustikke väga palju näinud,» räägib Kamm.

«Et kogume anonüümset infot, kirjutage palun oma vanus, eriala ja õpinguaste. Ma tean, et keegi ei lähe mind sealt üles otsima – aga ma ei taha seda sinna kirjutada. Minu jaoks ei ole see küsimustik ju anonüümne. Aga siin ongi küsimus: mis hetkest sai vanusest ja soost isikut tuvastav kirje?»

Hiljutises väitekirjas kirjeldas Liina Kamm protokolle, mis võimaldavad statistilisi uuringuid teha platvormiga Sharemind, nn turvalise ühisarvutusega. Selle tuum on iga andmekirje jagamine kolme arvutava osapoole vahel nii, et kirjete tegelikke väärtusi ei näe keegi.

Sinu vanus 32 jagatakse siis kolmeks tükiks, kolme arvutava serveri jaoks?

Pilootuuring: IT-tudengite õpingute katkemise uurimsieks kasutatakse tegelikke andmeid nende hariduse ja sissetulekute.

Sharemind ja Rmind

  • Turvalise ühisarvutuse platvorm Sharemind oli Cybernetica AS-i teadusprojektide juhi Dan Bogdanovi 2013. aastal kaitstud doktoritöö.
  • Kasutamaks seda statistilises analüüsis kirjutas Kamm rakenduse Rmind (mis tugineb populaarsele paketile R). Lisaks tõi ta mängu nn ujukomaarvud: ka täisarve kolmeks osaks jaotades satub statistik nüüd komadega arvude maailma.
  • Sharemindis tehakse enamik arvutusi modulaarselt: näiteks sulle saadetud osak arvust 32 võib olla suurusega kuni 232. Tegelik kirje – 32 – on tulemuseks kõik osakud uuesti modulaarselt kokku liites.
  • Eestis on Sharemindi katsetanud näiteks Infotehnoloogia ja telekommunikatsiooni liit. Veidi erinevat turvalise ühisarvutuse süsteemi katsetasid enne eestlasi ka taanlased.
  • Liina Kammi doktoritööd juhendas TÜ turvalise andmekaeve vanemteadur Sven Laur.

Jah, võtan kolm juhuslikku arvu, mis summeeruvad 32-ks. Sulle 15, mulle 16 ja kolmandale serverile 1, näiteks.

Tegeliku vanuse saab kätte ainult kõigi kolme osakuid liites. Samas ei saa ka päringu esitaja küsida, et anna mulle palun Liina Kammi või anonüümistatud isiku X andmed. Ka tema näeb ainult koondtulemusi: mingi grupi keskmist vanust, näiteks.

Sinu tööriistaga Rmind saab statistilise analüüsi põhitoiminguid Sharemindiga teha ka mittekrüptograaf. Kas selline filosoofia ei uinuta samas paratamatult kasutajaid nende turvalisuse osas?

Noh, kui sa kasutad Excelit, siis sa ka ei tea ju tegelikult, mis seal all töötab.

Ei saa eeldada, et kõik, kes Rmindi kasutama hakkavad, teavad, mis on turvaline ühisarvutus. Lõppkokkuvõttes on statistilise analüüsi meetodid ikkagi tööriistad.

Aga see tehnoloogia peab veel täiskasvanuks saama. Teeme ikkagi alles pilootuuringuid. (Rmindi kohandatakse praegu IT-tudengite õpingute katkemise uurimiseks, kasutades tegelikke palga- ja haridusandmeid Eesti riiklikest andmebaasidest – toim.)

Mudeldad, et selline privaatsust säilitav andmeanalüüs võiks olla kasulik geeniuuringutes.

Geneetiline kood – kui sinult on proov võetud ja ära sekveneeritud – määrab su üheselt ära. Kui oled mingis kohordis sees, siis on väga palju infot sinu haiguste kohta.

See on, jah, väga oluline teema, mida ma tahan edasi arendada. Alustasingi doktorantuuri bioinformaatikas, uurisin biopankade IT-lahendusi. Tahtsin teha hästi praktilist asja, aga seda oli raske publitseerida. Lõpuks liikus teema krüptograafiasse.

Mida selline n-ö turvaline statistika ideeliselt sihib? Kaotada vajadus andmete anonüümistamise või nn konfidentsiaalsuslepete järele?

Ei, lepped [andmete omaniku ja sõltumatu statistiku vahel] ei kao kindlasti mitte kuhugi (naerab).

Anonüümistamise osas – samamoodi ei, sest kui ma üksikuid kirjeid üldse ei näe, on statistikul ka keerulisem kindlat inimest vajadusel üles leida.

Väga tundlikke andmeid antakse ka anonüümistatuna niikuinii välja vähemalt kolme- kuni viieinimeseliste gruppidena. Sellistes gruppides saad näiteks 30–35-aastaste informaatika bakalaureuseõppe lõpetanud meeste palgad.

Saad arvutada näiteks iga grupi keskmise, aga selleks, et leida konkreetselt oma sõpra, peaksid tema palka ikkagi juba teadma.

Turvalise ühisarvutuse puhul ei näe sa ka neid üksikuid väärtusi. Saad ainult tulemuse: see vanusegrupp, keskmine palk selline.

Kuigi, me ei saa kindlalt öelda, et pole mingit võimalust väga kavala päringuga gruppe manipuleerides ikkagi kindla inimese peale sattuda.

Mida te selle vastu teha olete püüdnud?

Meil on meetmed, et kui sinu filtrisse jääb kolm või vähem inimest, siis tulemust ei arvutata, näiteks.

Teisi meetodeid on ka, aga paljudel neist on kontranäited: pead inimese leidmiseks küll kõvasti vaeva nägema, aga samas on teda ikkagi võimalik leida.

Üks meetod, millele veel kontranäiteid ei ole, on diferentsiaalprivaatsus: sa pärid, aga ei saa täpset vastust, vaid õige vastuse lähedase vastuse. Näiteks summa 320 asemel 321.

Selline meetod aitaks meid. Samas, funktsioon, millega tulemustele juhuslikkust lisad, peab infot peitma – aga ei tohi tulemust ka liiga metsa ajada. Selle leidmine on väga keeruline. Siiski tahaks uurida, kuidas seda meie süsteemi lisada.

Kas Sharemind otsib kasutaja päringutes ka mingeid mustreid?

Automaatset tuvastust – et nüüd tehti järjest 70 000 kummalist päringut – praegu ei ole. Me ei tea, kui palju sa oled võimeline päringutega selle andmestu kohta õppima.

Selle vastu kaitseme logimisega: saame pärast vaadata, kas protokollid töötasid õigesti või mitte.

Sharemindi nõrk koht on turvalisus «ausas, aga uudishimulikus» mudelis: me eeldame, et teed alati nii, nagu protokoll töötab. Ei hakka liitmise asemel korrutama, näiteks. Samas eeldame ka, et oled uudishimulik. Jätad meelde kogu info, mis sulle puistatakse.

Pilootprojektis on meil ka uuringuplaan, millega saab Rmindis ära määrata, et mingeid päringuid lihtsalt ei saa arvutada. Sellele plaanile peaks alla kirjutama kõik kolm osapoolt.

Viitad töös, et n-ö mõistlik turvalisuse aste on selline, kus avaldatud andmed ei lekita täiendavalt midagi olulist.

Jah, kuigi põhjalikumat hindamisskeemi ma sellele ei anna.

Meie püüame vältida kindla inimese leidmist kahes olukorras. Esiteks, kui uurid, kas keegi, keda tead, on selles andmestikus. Teisel juhul suudad andmete põhjal aru saada, kes see inimene on.

Saan aru, et praegune krüptograafia tugineb eeldusele, et suurte arvude tegurdamine on raske probleem. Mis on turvalise ühisarvutuse puhul sarnaseks aluseelduseks?

Noh, meie ei krüpteeri andmeid, vaid ühissalastame (ingl k secret sharing), mis on teistsuguse eeldusega. Aga Sharemind eeldab praegu ausat enamust: et kolmest arvutavast osapoolest kaks on ausad. Kui nad teevad koostööd – näiteks läbi korrutamise protokolli –, siis on neil võimalik teada saada ka kolmanda osapoole andmed.

Kuigi, kuna iga osapool annab ühisarvutusse omaenda andmed, siis ei olegi tal ilmselt isu teistega andmete lekitamiseks koostööd teha.

Aga meeskond ehitab ka teistsugust lahendust.

Mainid töös, et rahandusministeeriumil ei õnnestunud leida inimest, kes suudaks selle süsteemi turvalisust teie pilootuuringu jaoks kontrollida.

Nojah, Sharemind on uus ja võõras – loomulik, et koodi tahetakse üle vaadata.

Aga ka näiteks mina peaksin uurima mõnda Sharemindi protokolli päevi ja päevi, et aru saada, kuidas see töötab. Ministeeriumilt ei saagi sellist kompetentsust eeldada.

Ilmselt tahtsid nad lihtsalt näha, et kood oleks kirjutatud professionaalselt. Garantii, et kood tõesti vastab protokollidele, annaks koodiaudit. Üks väheseid firmasid, mis Eestis koodiauditit teeb, on Cybernetica (naerab). (Seal töötati ka Sharemind välja – toim)

Meil on plaanis tellida audit välismaalt, aga Sharemind ei ole lihtsalt veel nii valmis.

Samas, Sharemindi protokollid on aastaid eelretsenseerituna väljas olnud. Teised krüptograafid ei ole seal auke leidnud. Ja meil on olemas ka nii käsitsi tehtud kui automaatsed tõestused protokollide korrektsuse ja turvalisuse kohta.

On sul selles osas kindel tunne, kuidas Eesti riik praegu sinu isikuandmeid hoiab?

Jaa. Võib-olla ma olen sinisilmne, aga usaldan, et minu andmed on Eesti riigis hästi hoitud. Meil on päris tugevad seadused.

Meie pilootuuringus on andmed haridusministeeriumilt ja maksuametilt. Keegi ei saa andmeid tervikuna kätte, need jäävad kolme osapoole vahel jagatuks. Aga isegi siin, kahe riigiasutuse puhul, ei saanud me andmeid lihtsalt ristkasutada. Andmekaitseseadus ja lisaks maksukorralduse seadus ei luba seda.

Nägime päris palju vaeva, et meie süsteemi piisavalt usaldataks. Ja meil on ikkagi ka mitmepoolsed lepingud, et töötleme ja hoiame andmeid hästi ega hakka lekitama.

Mart Zirnask

UT toimetaja 2013–2015

Jaga artiklit

Märksõnad

andmeturve