ID D-16-175 Avalik Rühma- ja ringisignatuurid IDENTITEET Inglise keeles: group and ring signatures Lühidalt: Rühmasignatuurid lubavad anda digitaalset allkirja grupi nimel. Rühmasignatuur varjab konkreetse allkirjastaja isikut. Arenduse keerukus: keskmine (ringisignatuurid) / keskmine (rühmasignatuurid) Ülalpidamise keerukus: madal Täpsus: — Privaatsusgarantii: krüptograafiline Tehnoloogia küpsus: tootestatud Ülevaatlik mudel: Dokumendi signeerimine rühmasignatuuriga ⬆ Privaatsus Signatuur dokumendile Allkirjastatav dokument Allkirjastatav dokument Signatuur dokumendile Rühmasignatuuri kontrollija Kinnitus, kas dokumendi rühmasignatuur pärineb konkreetselt isikute grupilt või ei Turvaeeldused ja jääkriskid:
- Turvaeeldus: serveri ja kliendi funktsionaal- sus tuleb teostada korrektselt.
- Jääkrisk: teostuse vea tõttu lekib konfident- siaalseid andmeid. Rakendusvõimalused:
- Eriotstarbelised süsteemid, kus soovitakse varja- ta, milline konkreetne isik volitatud isikute gru- pist andis sõnumile digitaalse allkirja. Õiguspraktika:
- Õiguslikke hinnanguid on vähe saadaval. Tuntumad rakendused:
- CryptoNote krüptovarade tehnoloogia
- ShadowCash krüptovarade tehnoloogia
- Monero krüptoraha Privaatsuskaitse tehnoloogiate kontseptsioon 31.03.2023 1.1 66 / 138 ID D-16-175 Avalik 4.3.3 Atribuutkrüptograafia Lühidalt. Atribuutkrüptograafia lubab kasutada andmete krüpteerimiseks konkreetse saaja isiku asemel tema omadusi, kaitstes nii tema identiteeti. Ülevaade ja rakendamine. Atribuutkrüpteerimine on avaliku võtmega krüpteerimine, kus andmeid ei krüp- teerita mitte konkreetse avaliku võtmega, millele vastab mingile konkreetsele isikule teadaolev dekrüp- teerimisvõti, vaid tunnuste ehk atribuutide komplektiga, kus iga tunnus on midagi, mis võib andmetel ja/või isikutel olla või mitte olla. Isik saab andmed lahti krüpteerida, kui talle on antud dekrüpteerimisvõti, mille tunnused ühtuvad krüpteerimisel kasutatutega. Joonis 3 illustreerib atribuutkrüptograafia kasutust. Sõnumi krüpteerija krüpteerib sõnumi nii, et selle saab lahti krüpteerida suvaline õppejõud või informaatika tudeng – täpsemalt siis isikud, kellele on antud vastavad tunnuste komplektid. Need, kellel on mõni nõutud tunnus puudu, sõnumit lahti krüpteerida ei saa. tudeng informaatika ja ( )) õppejõud või ( ja ? tudeng informaatika õppejõud majandus tudeng majandus õppejõud informaatika ? tudeng majandus õppejõud informaatika Joonis 3. Atribuutkrüptograafia illustreeriv näide Atribuutkrüptograafia juurutamisel on oluline roll võtmeloomiskeskusel; see roll on natuke sarnane serti- fitseerimiskeskuse rolliga tavalises avaliku võtme infrastruktuuris. Võtmeloomiskeskus on loonud kõigile teadaoleva avaliku alusvõtme, mida krüpteerimisel kombineeritakse soovitud tunnuste komplektiga. Kui mingi isik soovib saada dekrüpteerimisvõtit, mis vastab teatud tunnustele, siis veenab ta võtmeloomis- keskust, et ta ise neile tunnustele vastab ja tal on õigus sellist dekrüpteerimisvõtit teada. Võtmeloomiskes- kus genereerib selle dekrüpteerimisvõtme neist tunnustest ja avalikule alusvõtmele vastavast salajasest alusvõtmest. Atribuutkrüptograafia leiab kasutamist kohtades, kus andmete edastamisel nende kättesaadavust tuleb kontrollida suurema hulga isikute seas. Sellisel juhul ei ole mõistlik krüpteerimise ajal täpselt määrata, millised isikud andmeid dekrüpteerida saavad, sest neid isikuid võib olla palju, nende hulk võib olla pidevas muutumises ning andmete krüpteerija ei ole suuteline otsustama, millistel isikutel on lugemisõigus. Privaatsuskaitse tehnoloogiate kontseptsioon 31.03.2023 1.1 67 / 138
ID D-16-175 Avalik Bezawada ja Ray [ 95] loetlevad mitmeid atribuutkrüpteerimise rakendusi, mis on vähemalt akadeemilist huvi ja prototüüpimist leidnud. Nende seas on • Tasuliste telekanalite levitamine. Siin on tunnuseks õigus ühte või teist telekanalit vaadata. Kanal edas- tatakse krüpteerituna selle tunnusega. Klientidel on dekrüpteerimisvõtmed, millega seotud tunnused vastavad kõigile telekanalitele, mille vaatamisõiguse nad ostnud on. • Rühmavestlused (sotsiaalvõrkudes). Rühmad vastavad tunnustele. • Meditsiiniandmetele juurdepääsu kontrollimine. Meditsiiniprotsessides tekib palju eri tüüpi andmekir- jeid, millele on lubatud ligi pääseda eri rollides isikutel: arstidel, õdedel, apteekritel, raamatupidajatel, klienditeenindajatel, audiitoritel jne. Isikute rollid on siin tunnusteks ja atribuutkrüptograafiat saab kasutada andmetele ligipääsu kontrolliks. Bezawada ja Ray [ 95] nimetavad ka Zeutro LLC-d, mis üritas kasutada atribuutkrüptograafiat ettevõt- te andmetele ligipääsu kontrolliks. Nad on loonud OpenABE teegi 44, mille viimane uuendus jääb kahjuks enam kui kahe aasta taha. Sarnaste kasutusjuhtude baasil üritab atribuutkrüpteerimist kommertsialiseeri- da NTT45, pöörates tähelepanu ka kasutatavate krüptograafiliste konstruktsioonide postkvant-turvalisusele. ETSI on avaldanud46 standardid atribuutkrüptograafiale ja selle kasutamisele atribuutpääsukontrollis [96] ja mõnedes teistes kasutusjuhtudes [ 97]. Selle jaotise esimeses lõigus kirjutasime, et dekrüpteerimine õnnestub siis, kui dekrüpteerimisvõtme tun- nused ühtuvad krüptoteksti omadega. Mida see tähendab? Võime ette kujutada, et kusagil on komplekt tunnuseid ning mingis teises kohas on kirjeldatud poliitika, mis spetsifitseerib, millised tunnusekomplektid sobivad. Üks neist kahest (tunnusekomplekt ja poliitka) on seotud dekrüpteerimisvõtmega ja teine krüp- totekstiga. Kui komplekt rahuldab poliitikat, siis dekrüpteerimine õnnestub. atribuutkrüptograafia skeeme on kaht eri tüüpi, sõltuvalt sellest, mis on seotud millega: • Krüptotekstiga võib olla seotud tunnuste komplekt ja dekrüpteerimisvõtmega olla seotud poliitika [ 98]. Sellisel juhul on tunnustel tähendused, mis on kuidagi seotud krüpteeritavate andmete sisuga. Eel- pool toodud rakendusnäidetest sobitub tasuliste telekanalite levitamine hästi sellise krüpteerimisskee- miga. Dekrüpteerimisvõtmega seotud poliitika kirjeldab, millise sisuga andmeid on võtmeomanikul õigus või vajadus näha. • Dekrüpteerimisvõtmega võib olla seotud tunnuste komplekt ja krüptotekstiga olla seotud poliitika [ 99]. Sellisel juhul on tunnustel tähendused, mis on kuidagi seotud kasutajate rollide, õiguste ja muu säärasega. Eelpool toodud rakendusnäidetest sobitub meditsiiniandmetele juurdepääsu kontrolli- mine hästi sellise krüpteerimisskeemiga. Krüptotekstiga seotud poliitika kirjeldab, milliste õigustega ja/või millistes rollides isikutel on õigus andmeid näha. Poliitika võib nõuda, et tunnuste komplekt peab sisaldama mingit konkreetset tunnust, või mitut konkreet- set tunnust, või vähemalt ühte mitmest võimalikust tunnusest, või ka mingit keerulisemat kombinatsiooni tunnustest. Erinevad krüptograafilised konstruktsioonid atribuutkrüpteerimiseks toetavad eri väljendus- võimsusega poliitikaid [ 100], samuti sõltub nende jõudlus eri viisil parameetrite (tunnuste ja kasutajate arv, tunnuste arv tunnuste komplektis, poliitika keerukus) suurusest, mis atribuutkrüpteerimise juuruta- misel olulised võivad olla. Üks huvitav aspekt, milles eri konstruktsioonid erinevad, on tugi negatiivsetele tunnustele: kas (näiteks) krüptoteksti poliitika saab spetsifitseerida, et dekrüptimine on võimalik ainult siis, kui dekrüpteerimisvõtmega mingit teatud tunnust seotud ei ole ? Negatiivsed tunnused iseenesest ei anna poliitikate väljendusvõimsusele midagi juurde: samasugune tulemus on võimalik saavutada mo- notoonsete poliitikatega (s.t. kui mingi tunnusekomplekt rahuldab poliitikat, siis mõni teine komplekt, mis seda sisaldab, rahuldab seda poliitikat samuti), kui me lisaks igale tunnusele A toome sisse tunnuse A, mille tähendus on tunnuse A puudumine; iga tunnusekomplekt peab sisaldama täpselt ühte tunnustest A ja A. Küll aga võib selline teisendus juurutust ebaefektiivsemaks muuta, sest et nüüd on kõigis kasutusel 44https://github.com/zeutro/openabe (viimati külastatud 01.03.2023). 45NTT is developing attribute-based encryption (ABE) to prevent quantum attacks https://venturebeat. com/security/ntt-is-developing-attribute-based-encryption-abe-to-prevent-quantum-attacks (viimati külastatud 01.03.2023). 46ETSI releases cryptographic standards for secure access control https://www.etsi.org/newsroom/ press-releases/1328-2018-08-press-etsi-releases-cryptographic-standards-for-secure-access-control (viimati külastatud 01.03.2023). Privaatsuskaitse tehnoloogiate kontseptsioon 31.03.2023 1.1 68 / 138 ID D-16-175 Avalik olevates tunnusekomplektides palju tunnuseid. Ajaloost. Atribuutkrüpteerimise pakkusid välja Sahai ja Waters [101] 2005. aastal. Nad pakkusid selle välja kui üldistuse identiteedipõhisele krüptograafiale [102, 103], kus isiku avalikuks võtmeks oli tema nimi ning võtmeloomiskeskus oli võimeline igale isikule genereerima tema privaatvõtme. Turvagarantiid ja jääkriskid. Tegemist on krüpteerimisprimitiiviga, nii et peamised turvaomadused, mi- da me atribuutkrüpteerimiselt ootame, on samad, mida avaliku võtme krüptosüsteemidelt: võimatus ilma dekrüpteerimsvõtit teadmata leida teatud krüptotekstist avateksti, isegi kui meil on juurdepääs funktsio- naalsusele, mis dekrüpteerib teisi krüptotekste (turvalisus valitud krüptotekstiga ründe vastu) ning gene- reerib dekrüpteerimisvõtmeid, millega seotud tunnusekomplekt või poliitika ei ühtu krüptoteksti poliitika või tunnusekomplektiga. Primitiivile spetsiifilisem turvaomadus on võimatus kombineerida erinevaid dekrüpteerimisvõtmeid. Näi- teks skeemi korral, kus dekrüpteerimisvõtmetega on seotud tunnusekomplektid, ei tohi olla võimalik leida krüptotekstile vastavat avateksti, kui ükski meie käsutuses olev võti ei ole seotud tunnusekomplektiga, mis krüptotekstiga seotud poliitikat rahuldab; seda isegi siis, kui seda poliitikat rahuldab meie käsutuses olevate võtmete tunnusekomplektide ühend. Juhised rakendajale. Atribuutkrüpteerimise tehnoloogiate pakkujaid pigem ei leidu, küll leidub rohkem või vähem küpseid tarkvarateekide realisatsioone. Kui seda tehnoloogiat aga juurutama hakata, siis tu- leb kindlasti läbi mõtelda, kus asub võtmeloomiskeskus. Selle süsteemikomponendiga on seotud väga tugevad usaldusnõuded. Vajadusel võib kaaluda mõne usaldustnõudeid vähendava tehnoloogia (näiteks turvaliste ühisarvutuste) kasutamist võtmeloomiskeskuse realisatsioonil. Võtmeloomiskeskuse asukoha valik võib olla veelgi komplitseeritum juhul, kui süsteemis on tunnuseid, mis loogiliselt kuuluvad erine- vatesse domeenidesse, nii et otsustaja, kas kasutajal on või ei ole teatud tunnust, on eri domeenidesse kuuluvate tunnuste korral erinev. Sel juhul võivad need otsustajad kasutajale väljastada tõendeid tema tunnuste kohta; võtmeloomiskeskus loeb neid tõendeid ja genereerib kõigi vajalike tunnustega dekrüp- teerimisvõtme. Alternatiivina on võimalik igas domeenis kasutada eri võtmeloomiskeskust [ 104]. Atribuutkrüpteerimise (sarnaselt identiteedipõhise krüpteerimisega) üks kitsaskohti on võtmete tühista- mise keerukus. Kui mingi dekrüpteerimisvõti on lekkinud, siis kuidas vältida selle edasist kasutust, arves- tades, et me ilmselt ikkagi soovime luua krüptotekste, mille poliitika / tunnusekomplekt ühtuks selle võtme tunnusekomplekti / poliitikaga. Häid lahendusi siin ei ole, üks võimalus on kasutada tunnuseid, mis vas- tavad (üsna lühikestele) ajavahemikele. Iga sellise ajavahemiku alguses peavad kasutajad endale uued võtmed küsima, kus tunnusekomplekt sisaldab sellele ajavahemikule vastavat tunnust või poliitika nõuab selle tunnuse olemasolu. Isikule, kelle dekrüpteerimisvõti on lekkinud, võtmekeskus uut võtit ei genereeri. Kõik selle ajavahemiku jooksul loodavad krüptotekstid peavad sedasama tunnust nõudma või sisaldama, seega ei saa lekkinud võtmega isik neid enam dekrüpteerida. Teine võimalus on kasutada konstruktsioo- ni, mis toetab negatiivseid tunnuseid, luua üks tunnus iga kasutaja kohta (ja lisada see sellele kasutajale väljastatava dekrüpteerimisvõtme tunnusekomplekti) ning mingi kasutaja võtme lekkimisel hakata edas- pidi loodavate krüptotekstidega seotud poliitikates nõudma, et sellele kasutajale vastav tunnus ei tohi tunnusekomplekti kuuluda. Signeerimine. Maji, Prabhakaran ja Rosulek on välja on pakutud ka atribuutsignatuurid [105], kus võt- meloomiskeskus väljastab kasutajatele signeerimisvõtmeid, mis on seotud selle kasutaja kohta käivate tunnuste komplektiga. Kui kasutaja loob signatuuri, siis on tal võimalik valida, millisele poliitikaga see sig- natuuri seotakse; valitav poliitika peab olema aga selline, et kasutaja enda tunnuste komplekt seda poliiti- kat rahuldaks. Signatuuri verifitseerimise üheks argumendiks (lisaks signeeritud sõnumile, signatuurile ja avalikule alusvõtmele) on seesama poliitika. Atribuutsignatuuride oluline privaatsusomadus on signatuu- ride omavahel seostamatus – mitut signatuuri nähes ei tohi olla võimalik aru saada, kas need on loodud sama kasutaja poolt. Atribuutsignatuurid omavad teatavat sarnasust ringisignatuuridega – signeerimisel teatud poliitika valimise asemel võiks moodustada rühma kõigist neist isikutest, kellega seotud tunnuse- komplektid valitavat poliitikat rahuldavad. Erinevus tuleb aga sellest, et atribuutsignatuure kasutades ei pea signeerija kõiki neid isikuid ja nende avalikke võtmeid teadma. Privaatsuskaitse tehnoloogiate kontseptsioon 31.03.2023 1.1 69 / 138 ID D-16-175 Avalik Atribuutkrüptograafia IDENTITEET Inglise keeles: attribute based cryptography Lühidalt: Atribuutkrüptograafia lubab kasutada andmete krüpteerimiseks konkreetse saaja isiku asemel tema omadusi, kaitstes nii tema identiteeti. Arenduse keerukus: kõrge Ülalpidamise keerukus: madal Täpsus: täpne Privaatsusgarantii: krüptograafiline Tehnoloogia küpsus: madal Ülevaatlik mudel: Dokumendi krüpteerimine saaja tunnuste järgi (ilma konkreetset adressaati määramata) ⬆ Privaatsus Kasutajatele nende tunnuste põhjal väljastatud võtmed Krüpteeritav dokument Kombinatsioon tunnustest / avalikest võtmetest Võtmeloomis- keskus Kasutajatele väljastatakse võtmed ja atribuudid Krüpteeritud dokument Krüpteeritud dokument Kombinatsioon tunnustest / salajastest võtmetest Kui dekrüpteerijal on salajane võti, mis on väljastatud sobiva komplekti tunnuste põhjal, siis saab ta dokumendi dekrüpteerida Turvaeeldused ja jääkriskid:
- Turvaeeldus: kasutajatele dekrüpteerimis- võtmeid väljastav võtmeloomiskeskus peab korrektselt töötama.
- Turvaeeldus: tehnoloogia peab arenema nii kaugele, et lahendatud saavad rakendusli- kud küsimused nagu võtmete tühistamine.
- Jääkrisk: tehnoloogia või teostuse vea tõttu lekib konfidentsiaalseid andmeid. Rakendusvõimalused:
- Andmete turvaline jagamine olukorras, kus rolli- põhist juurdepääsukontrolli ei saa usaldada. Õiguspraktika:
- Tehnoloogial pole juurutusi, mis oleks nõud- nud õiguslikku analüüsi. Tuntumad rakendused:
- Tehnoloogia on arenduses ning tööstuslikke ra- kendusi ei ole veel teada. Privaatsuskaitse tehnoloogiate kontseptsioon 31.03.2023 1.1 70 / 138 ID D-16-175 Avalik 4.3.4 Nullteadmustõestused Lühidalt. Nullteadmustõestusega saab privaatsete andmete teadja tõestada kellelegi teisele, et tema andmetel on mingi omadus, ilma neid andmeid avaldamata. Ülevaade ja rakendamine. Nullteadmustõestused on protokollid, mis lubavad ühel osapoolel – Tõestajal – teisele osapoolele – Kontrollijale – tõestada ilma oma käsutuses olevaid andmeid näitamata, et andmed on mingis vahemikus, vastavad mingile standardile või neist saab arvutada mingi avaliku tulemuse. Kontrollija saab teada ainult selle, kas tõestus läks läbi või ei. Kui Tõestaja käsutuses olevad andmed ei rahulda neid omadusi, mida ta tõestada püüab, siis ei suuda ta Kontrollijat veenda isegi juhul, kui ta protokollist kõrvale kaldub. Nullteadmustõestuse juurutamisel on vaja spetsifitseerida väide, milles Tõestaja Kontrollijat veenab. See väide on esitatav kui programm, mis tagastab tõeväärtuse. Ta võtab kaks argumenti: andmed, mis on teada nii Tõestajale kui ka kontrollijale, ja andmed, mis on teada ainult Tõestajale. Näiteks graafi tippude värvimise ülesande juures on mõlemale teada graafi struktuur, aga ainult Tõestajale teada tippude värvid. Programm käib läbi graafi kõik servad ja kontrollib, et otstipud oleksid eri värvi. Väidete, mida me tegelikult tõestada soovime nii krüptograafiliste konstruktsioonide juures kui ka talitlus- mudelites, tõlkimine graafi tippude värvitavuseks on teoreetiliselt küll efektiivne, kuid praktikas kaugelt liiga keeruline. Juurutajale mugavam on spetsifitseerida väide kas loogika- või aritmeetilise lülitusena; ka selliselt esitatud väidete jaoks leiduvad nullteadmustõestused, mis põhinevad diskreetsete logaritmide omavaheliste suhete demonstreerimisel [ 106]. Kahjuks on selle protokolli praktiline efektiivsus suhteliselt väike, sest ta peab iga lülituses oleva värava jaoks arvutama mitu modulaareksponenti. Kui aga väide on aritmeetilise lülitusena spetsifitseeritud, siis võime vaadata nullteadmustõestusi kui turvalise ühisarvutuse eriliiki, kus meil on täpselt kaks osapoolt, kellest üks teab arvutuse kõiki sisendeid, aga võib protokolli mitte täita. Peale piisavalt efektiivsete turvali- se ühisarvutuse protokollide väljapakkumist, mis on turvalised ka protokollist kõrvale kalduvate osapoolte korral, hakati neid protokolle kohandama ka nullteadmustõestustele. Osad efektiivseimad nullteadmus- tõestuseprotokollid [107, 108] on konstrueeritud sel põhimõttel. Teine liik nullteadmustõestuste konstruktsioone põhineb verifitseeritavatel arvutustel. Need on protokol- lid, mille osapooled ja turvanõuded on põhimõtteliselt samad, mis nullteadmustõestustel, aga Tõestaja privaatsust ei garanteerita. Selliste protokollide eesmärgiks on vähendada protokolli sõnumite pikkust ja Kontrollija tööd; tuleb välja, et sõnumite pikkus on võimalik muuta sõltumatuks arvutuse keerukusest [109] ning ka Kontrollija tööaeg saab olla oluliselt väiksem kui arvutuse enda teostamiseks vajalik [ 109, 110]. Verifitseeritavate arvutuste muutmine Tõestaja privaatsust säilitavaks on tüüpiliselt lihtne võrreldes veri- fitseerimisprotokolli enda kontseptuaalse keerukusega. Nullteadmustõestuse protokollide võimalikud kujud.Nullteadmustõestused on protokollid kahe osapoo- le – Tõestaja ja Kontrollija – vahel. Need protokollid tüüpiliselt nõuavad paljude teadete vahetamist nende kahe osapoole vahel; teadete arv sõltub tõestatavat väidet kodeeriva loogika- või aritmeetilise lülitu- se kujust. Protokolli eduka lõpetamise korral on Kontrollija väite kehtivuses veendunud. Ta ei saa seda veendumust aga edasi anda – protokolliteadete näitamine kolmandale osapoolele seda osapoolt enam ei veena, sest Kontrollija oleks võimeline eristamatu teadetejärjendi looma ilma Tõestajaga suhtlematagi (see ongi põhimõtteliselt klassikaline „nullteadmuse“ definitsioon). Hoopis teistsugused on mitteinteraktiivsed nullteadmustõestused . Siin saadab (või publitseerib) Tões- taja üheainsa teate, Kontrollija loeb seda, teeb mingid kontrollivad arvutused ja saab veendud, et väide kehtib. Mitteinteraktiivsetel tõestustel on seega mitu head külge: veenda on võimalik mitut Kontrollijat ja Kontrollija tehtavad arvutused võivad ka väiksemad olla. Halvaks küljeks on Tõestaja suurem arvutusmaht. Leidub viis, nn. Fiat-Shamiri heuristika [ 111], mis teatud klassi interaktiivseid protokolle muudavad mit- teinteraktiivseks. Tõestaja ja Kontrollija töömaht seejuures oluliselt ei muutu. See heuristika pole aga ra- kendatav efektiivseimatele interaktiivsetele protokollidele, mida eespool mainisime. Lühemate tõestus- te ja Kontrollija väiksemate arvutustega (mitteinteraktiivsed) protokollid on loodud teisiti. Siin peab nii Tõestajale kui ka Kontrollijale kättesaadav olema sõne, millel on kindel struktuur [ 112]. See struktuur võib sõltuda konkreetsest väitest, mida tõestatakse (kuid on sõltumatu argumentidest, mis sellele väitele kui programmile ette antakse). Mõne teise protokollikonstruktsiooni korral on see struktuur sõltumatu konk- Privaatsuskaitse tehnoloogiate kontseptsioon 31.03.2023 1.1 71 / 138 ID D-16-175 Avalik reetsest väitest, aga sõne peab olema piisavalt pikk (sõltub väidet kodeeriva lülituse suurusest). Igal juhul peab sõnel olema kindel struktuur; iga juhuslik bitijada ei sobi. Vale struktuuriga sõne rikub ära protokolli turvaomadused. Samuti on turvaomadused rikutud, kui lekivad teatud juhuslikud väärtused, mille alusel selle sõne struktuur tekitatakse. Näeme, et selle struktuurse sõne peab genereerima mingi usaldatud osapool. Üks võimalus selline osa- pool leida on leida palju enam-vähem usaldusväärseid isikuid ning lasta neil see struktuurne sõne gene- reerida turvalist ühisarvutust kasutades. Selline arvutus võib olla kallis, aga neid on tehtud 47. Osadel null- teadmustõestusprotokollidel on võimalik struktuurne sõne genereerida turvalise ühisarvutuse (ptk 4.2.10 abil niimoodi, et kõik arvutuse osapooled ei pea üksteisega teateid vahetama. Selle asemel käib suhtlus niimoodi, et esimene arvutuse osapool loob esialgse sõne, peale mida saadetakse see läbi kõigi osapool- te, kes seda sõnet uuendavad. Kui vähemalt üks osapooltest on aus, siis on saadav struktuurne sõne sobilik protokollis kasutamiseks. Lisaks interaktiivsetele, ühe võimaliku Kontrollijaga protokollidele ja mitteinteraktiivsetele, suvalise Kont- rollijaga protokollidele leidub ka kombinatsioon nendest: mitteinteraktiivsed protokollid, mille loodavad tõestused veenavad ära üheainsa võimaliku kontrollija. Sellised protokollid on ühtpidi paindlikumad kui interaktiivsed, teistpidi efektiivsemad kui suvalise Kontrollijaga. Esimese krüptovaluutana kasutas nullteadmustõestusi Zerocoin [ 113], mis pakkus vaid osalist anonüüm- sust. Nullteadmustõestused võimaldavad krüptorahade Zcash ja Monero tehinguid valideerida ilma nen- dega seotud aadresse ja ülekantavat summat avaldamata [ 114]. Monero anonüümsete tehingute arv on tuhandetes ja nende kaudu on kantud üle miljardite eurode väärtuses vara [ 115]. Krüptorahad, millega on võimalik anonüümselt tehinguid teha, on leidnud kasutust ka ebaseaduslikeks tegevusteks nagu rahapesu, lunavara või kaevekaaperdus. Hoolimata sellise tegevuse väikesest mahust on mitmed valitsused hakanud nende kasutust reguleerima, piirama või keelama [ 116]. Ajaloost. Nullteadmustõestuste väljapakkujateks loetakse Goldwasserit, Micalit ja Rackoffi [ 117] (1985), kes selle eest 1993. aastal jagasid Gödeli auhinda. Nad näitasid nullteadmustõestuse leidumist ühele konkreetsele väitetüübile, mis leiab kasutust krüptograafilistes konstruktsioonides. Järgmisel aastal näi- tasid Goldreich, Micali ja Wigderson [ 118, 119], et nullteadmusega on võimalik tõestada, et mingi graafi tipud on värvitavad kolme värviga, nii et iga serva otstipud on eri värvi. See on üldine tulemus, sest et graafi tippude kolme värviga värvitavusele on teoreetiliselt vähese vaevaga taandatavad kõik väited, mille tõestust on arvutuslikult lihtne kontrollida. Nullteadmustõestused tulid kõigepealt kasutusele krüptograafiliste konstruktsioonide osana, kus tõesta- ti teatud kujul väiteid, mille jaoks osati vajalikke protokolle koostada. Tüüpiliselt olid need väited teatud diskreetsete logaritmide teadmise, võrdsuse, või muude algberaliste omaduste kohta. Aastal 1989 välja pakutud Schnorri signatuurid ja identifitseerimisskeem [ 120] olid üks esimesi konstruktsioone, mille põhi- osa oli nullteadmustõestus diskreetse logaritmi teadmise kohta. Teine varane näide nullteadmustõestuste kasutamisest on teadetetahvlil põhinevad e-hääletusprotokollid [ 121], kus hääletaja kirjutab tahvlile oma krüpteeritud hääle ning annab tõestuse, et hääl on korrektsel kujul (kombinatsioon teatud diskreetsete lo- garitmide teadmisest ja võrdsusest). Nullteadmustõestused on ka valitud krüptotekstiga rünnete suhtes turvaliste avaliku võtme krüpteerimisskeemide osa [ 122]. Selliste nullteadmustõestuste üldistamine viis nn. Groth-Sahai tõestusteni [ 123], millele tuginevad osad efektiivseimad konstruktsioonid tänapäeval. Juhised rakendajale. Soovides nullteadmustõestusi mingis infosüsteemis kasutada, tuleks kõigepealt lä- bi mõtelda, kas sealne kasutusjuht on tegelikult nullteadmustõestuste kasutusjuht – kas seal on Tõestaja ja Kontrollija, kus Tõestaja teab kõike ja Kontrollija eesmärk on üksnes kindlaks teha, et Tõestaja ei va- leta? Kui tundub, et Kontrollijal on ka mingid andmed, mida Tõestaja ei tea, siis on tegemist üldisema ülesandega, mis on ilmselt turvalise ühisarvutuse kasutusjuht. Kui on selge, et leidub osapool „ Tõestaja“, kes teab kõike, siis tuleks järgmisena läbi mõtelda, mis on see argument tõestatavat väidet esitavale programmile, mida teab ka Kontrollija. Teisisõnu, mis on see reaaleluline, (suhteliselt) avalik ankur, mille suhtes me näitame, et tõestatav väide kehtib? Selleks ankruks võib olla näiteks mingisugune avalik võti, mille omanik on süsteemis hästi äratuntav. Selleks ankruks võib 47The crazy security behind the birth of Zcash, the inside story https://spectrum.ieee.org/ the-crazy-security-behind-the-birth-of-zcash (viimati külastatud 01.03.2023). Privaatsuskaitse tehnoloogiate kontseptsioon 31.03.2023 1.1 72 / 138 ID D-16-175 Avalik olla mingi bitijada, mille Kontrollija leiab moel, mis ei sõltu täielikult Tõestajast. Kui sellist ankrut ei leidu, siis ei ole meil tegelikult võimalik Tõestaja esitatavat väidet kontrollida. Peale neile küsimustele vastamist saab läbi mõtelda juurutuse detailid. Kui palju on Tõestajaid ja Kontrol- lijaid, millise kujuga nullteadmustõestuse protokolli saab kasutada? Kuidas seada üles usaldatud osapool, kui seda peaks struktuurse sõne genereerimiseks vaja olema? Avatud lähtekoodiga nullteadmustõestuste realisatsioone on olemas mitmeid, samuti leiab neid osana suurematest süsteemidest. Oluline rakendus, mis nende realisatsioonide küpsemist veab, on privaatsust säilitav krüptoraha plokiahelal. Selles valdkonnas leidub idufirmasid ja standardimisinitsiatiive 48. Õiguslikud aspektid. Nullteadmustõestuste tehnoloogial on potentsiaali parandada andmete privaatsust ja turvalisust paljudel kasutusjuhtudel ning toetada regulatiivsete piirangute täitmist 49. Siiski ei ole teh- noloogia enda kohta õiguslikke seisukohti saadaval. 48ZKProof Standards https://zkproof.org (viimati külastatud 01.03.2023). 49Zero Knowledge Proof: how to maintain privacy in a data-based world https://www.bbva.com/ en/zero-knowledge-proof-how-to-maintain-privacy-in-a-data-based-world (viimati külastatud 25.01.2023). Privaatsuskaitse tehnoloogiate kontseptsioon 31.03.2023 1.1 73 / 138 ID D-16-175 Avalik Nullteadmustõestused IDENTITEET Inglise keeles: zero knowledge proofs Lühidalt: Nullteadmustõestusega saab privaatsete andmete teadja tõestada kellelegi teisele, et tema andmetel on mingi omadus, ilma neid andmeid avaldamata. Arenduse keerukus: kõrge Ülalpidamise keerukus: keskmine Täpsus: täpne Privaatsusgarantii: matemaatiliselt tõestatav Tehnoloogia küpsus: keskmine Ülevaatlik mudel: Lähteandmed (Valikuline samm) Lähteandmetest arvutatakse tõestatav väide ja seda toetavad väärtused ⬆ Privaatsus Tõestatav väide Väide ja vastav nullteadmustõestus Kui tõestuse koostamisel olid olemas sobivad lähteandmed, millel väide kehtib ning väite kehtivuse arvutuskäik on kooskõlas lähteandmetega, siis saab tõestuse kontrollija tõese vastuse. Arvutuskäigu salvestus Tõestatav väide Arvutuskäigu salvestus Nullteadmustõestuse koostamine ⬆ Privaatsus (Valikuline samm) Arvutuskäigu lisamine tõestusele Väide ja vastav nullteadmustõestus Turvaeeldused ja jääkriskid:
- Turvaeeldus: tõestatav väide tuleb õigesti kir- ja panna (s.t. ära programmeerida), kasu- tades sobivat nullteadmuse tehnoloogiat.
- Turvaeeldus: kui kasutatav protokoll vajab eeltöötlust usaldatud kolmanda osapoole poolt, siis tuleb see korrektselt teostada.
- Jääkrisk: teostuse vea tõttu lekib konfident- siaalseid andmeid. Rakendusvõimalused:
- Tõendite esitamine (nt kukrutes või isikutunnis- tustes) Õiguspraktika:
- Õiguslikus mõistes täiendavad kaitsemeet- med. Tuntumad rakendused:
- Internetihääletamise süsteemid
- Zcash krüptoraha Privaatsuskaitse tehnoloogiate kontseptsioon 31.03.2023 1.1 74 / 138 ID D-16-175 Avalik Nullteadmustõestused ning ringi- ja rühmasignatuurid krüptorahades Lühidalt: Krüptorahad Zcash ja Monero kasutavad nullteadmustõestuseid, et valideerida tehinguid ilma nendega seotud aadresse ja ülekantavat summat avaldamata. Monero tehingutes kasutatakse ka ringi- ja rühmasignatuure, mis võimaldavad varjata ülekande sooritajat. Teostamise aasta: Alates 2013 Riik: Globaalne ja detsentraliseeritud Omanik: detsentraliseeritud Teostaja: detsentraliseeritud Süsteemi küpsus: püsiv juurutus Privaatsuskaitse tehnoloogiad:
- nullteadmustõestused
- otspunktkrüpteerimine
- pimesignatuurid
- ringi- ja rühmasignatuurid Sobivad kasutusjuhtumid: hajutatud varade platvorm Ülevaatlik mudel: Kasutaja Kasutaja Kasutajad saadavad krüpteeritud tehinguid plokiahela võrgule valideerimiseks ilma nendega seotud andmeid avaldamata. Privaatsus Avalik Krüpteeritud hajusraamat Krüpteeritud tehing Krüpteeritud tehing Osapool A Osapool C Osapool B Plokiahela võrk Auditeeritavus Märkimisväärsed omadused:
- Krüptorahade tehingute üle arve pidamisel kasutatakse hajusraamatuid, mis on tihti täiesti avalikud ja kasutavad privaatsuse tagamiseks vaid kasutajate pseudonüüme. Privaatsuskaitse tehnoloogiad võimaldavad tagada süsteemi kasutajate anonüümsuse ja maksete korrektsuse.
- Zcash ja Monero on tehnoloogiat edasi arendanud ja juurutanud.
- Privaatsuskaitse tehnoloogiaid nähakse krüptorahadega tehtud maksete juures kui sammu privaatsu- se ja anonüümsuse suunas ning seetõttu on vastavaid tehnoloogiaid kasutavad krüptorahad osu- tunud väga populaarseks. Igapäevaste anonüümsete tehingute arv on tuhandetes ja nende kaudu kantakse iga päev üle miljardeid dollareid.
- Krüptorahad, millega on võimalik anonüümselt tehinguid teha, on mõningal määral leidnud kasutust ebaseaduslikeks tegevusteks nagu rahapesu, lunavara või arvutusressursside kaaperdamine. Privaatsuskaitse tehnoloogiate kontseptsioon 31.03.2023 1.1 75 / 138