Digitaalne tootepass ei näita kõigile sama teavet. Ostja näeb avalikku teavet. Remonditöökoda või taaskasutaja näeb rohkem. Turujärelevalveasutus näeb kõike. See on selge ja Euroopa standardid sätestavad seda nüüd selgesõnaliselt.
Huvitav küsimus on aga varjatum: kui keegi näeb lisaks avalikele andmetele ka kaitstud välju, kas ta saab siis tõendada, et just need väljad on ehtsad? Või peab ta lootma, et platvorm on need õigesti välja valinud ja muutmata kujul edasi andnud?
Kujutagem ette notarit, kes ei kinnita kirja tervikuna, vaid iga lõigu eraldi. Avaliku kirja saab igaüks. Kes on õigustatud saama rohkem, saab lisaks ka täiendavad lõigud, ja igaüks neist kannab endiselt sama notari pitserit. Just nii oleme oma platvormi üles ehitanud. Enamiku platvormide puhul on aus vastus eespool esitatud küsimusele: usaldus. Meie puhul on see: tõend iga väljendi kohta, mis lisatakse alles avalikustamisel. Käesolev artikkel selgitab, miks see erinevus on oluline ja miks me oleme selleks valinud keerulisema tee.
Juurdepääsureeglit täidavad kõik võrdselt
EN 18239, Euroopa standard juurdepääsuõiguste, turvalisuse ja konfidentsiaalsuse kohta DPP-s, nõuab, et juurdepääsu kontrollitaks iga välja puhul eraldi: iga välja jaoks on reegel, kes seda näha tohib. See on õige nõue ja seda ei ole raske täita. Milline on nende standardite staatus üldse, oleme lahti seletanud oma artiklis ühtlustatud standardite kohta.
Tavaliselt saavutatakse see serveris asuva filtri abil. Server teab, kes päringut esitab, kontrollib, mida sellel isikul on lubatud näha, ja edastab tagasi just selle osa andmetest. Rohkemat standard ei nõua. Siin on aga üks konks, millega standard ei tegele: andmeväljavõte saabub ilma pitserita. Lugeja peab uskuma, et server on andmed ausalt valinud ja neid edastamise käigus midagi muutnud. Avaliku infolehe puhul on see sobiv. Kuid kui tegemist on väärtusega, millele töötleja toetub kasutatud patarei hinna määramisel, on see liiga suur usaldus.
Kõige loogilisem lahendus on andmed allkirjastada. Skaala mõlemas otsas toimib tavaline allkiri hästi: allkirjastada avalik vaade, allkirjastada täielik andmekogum. Kuidas see täpselt toimib, on kirjeldatud DPP-s peatükis „Allkirjad ja sertifikaadid“. Keskosas tekib aga probleem. Kogu dokumendi allkiri hõlmab täpselt neid välju, mis allkirjastamise ajal olemas olid. Kui volitatud lugejale avatakse täiendavalt kaitstud väli, jääb see väli allkirjastatud kogumi väljapoole ja jõuab temani kaitseta. Keegi ei allkirjasta eelnevalt kõiki võimalikke „kes-näeb-mida” kombinatsioone, sest kombinatsioonide arv kasvab plahvatuslikult. Tuleb tagasi pöörduda pitserita filtri juurde ja keskmine tase tugineb jälle usaldusele.
Iga välja eraldi allkirjastamine
On olemas parem lahendus, millele me oma platvormi rajame. Selle asemel, et allkirjastada valmis dokument tervikuna, määrab looja ühe tööetapi jooksul iga välja eraldi kindlaks (standarditega kursis olevatele: W3C-protseduur ecdsa-sd-2023).
Iga vaade algab seega samade avalikest väljadest. See, mida lugeja lisaks näeb, lisandub välihaaval, ja igaüks neist väljadest viib endiselt tagasi tootja avalikule võtmele - offline-režiimis, ilma uuesti allkirjastamiseta ja ilma usalduseta asutuse vastu, kes vaate kokku pani. Väljad, millele pole õigust, puuduvad lihtsalt. Neid ei ole mustaks värvitud, vaid neid pole üldse olemas, ja nende kohta ei lekita midagi.
Üks läbiviimine: remonditöökoda
Remonditöökoda on aku suhtes deklareerinud õigustatud huvi - see on üks juurdepääsutasemeid, mida aku määrus selgesõnaliselt ette näeb. Tema töökoja süsteem logib oma võtmega meie liidesesse sisse ja laadib passi alla. Vastuseks saadakse sama avalik pass, mida näeb ka ostja, kuid millele on lisatud täpselt üks väli: demonteerimisjuhend, mis avaldatakse ainult volitatud lugejatele. Ei mingit teist dokumenti, ei mingit eriversiooni.
Enne kui ettevõte sellele väljale tugineb, kontrollib tema tarkvara kaasasolevat pitserit tootja avaliku võtme abil. Kui kontroll õnnestub, sealhulgas ka täiendava välja osas, teab ta: need juhised pärinevad täpselt tootjalt ja keegi pole neid vahepeal muutnud. Kui kontroll ei õnnestu, paneb ta kogu vaate kõrvale. See, et ta saab täpselt need väljad, millele tal on õigus, jääb meie juurdepääsukontrolli ülesandeks. Uus on järgmine samm: kas saadud sisu on ehtne, kontrollib ta ise, meilt küsimata.
Miks „katkematu“ ongi kogu asja tuum
Terviklik pitser ei tähenda, et sisu on tõene. See ütleb: just seda on tootja kirjutanud ja sellest ajast peale pole keegi selles märki muutnud. Seega jääb usaldusküsimusest välja igaüks, kes on dokumenti vaid edasi andnud: vahemälu, võrk, arhiiv, meie. Kes teile passi andis, ei oma enam tähtsust.
Ja pitser on binaarne. See kehtib või ei kehti, poolikult rikutud pitserit ei ole olemas. Seetõttu ei ole see astmeline erinevus, kas lisaväljad jõuavad teieni koos pitseriga või ilma: ilma pitserita ei ole need mitte veidi nõrgemalt täidetud, vaid üldse mitte täidetud.
Mõlemad vaatamisviisid
Igaüks saab seda ise kontrollida. Transpareo Time Machine on meie avatud lähtekoodiga rakendus tootepasside ## vaatamiseks: see sirvib passi versiooniajalugu ja arvutab sealjuures iga allkirja vaataja brauseris uuesti läbi, ilma et peaks meie serverilt midagi küsima. T-särgi passi puhul on allkiri kogu dokumendi ulatuses, patarei passi puhul aga väljade kaupa.
Mõlemad on avatud W3C-standardid, mida igaüks saab rakendada. Kogu dokumenti hõlmav allkiri on märkimisväärselt odavam luua ja hallata ning sellest piisab neile, kes edastavad ainult avalikku teavet. See, et Time Machine toetab mõlemat meetodit, on taotluslik: pass jääb tavaliseks standardvorminguks, mida saab kontrollida iga sobiva tööriistaga, mitte ainult meie omaga.
Kellele see kasu toob ja mida standard nõuab
Kellele avalikustatakse üldse midagi peale avalike andmete? Mitte juhuslikule ostjale. Need on töötleja, kes hindab, kui palju on väärt kasutatud akupakk; kindlustusandja, kes hindab riski; ringlussevõtja, kes sorteerib kemikaale; ametiasutus, kes koostab juhtumi toimikut. Lugejad, kelle otsused sõltuvad rahast või turvalisusest. Ja tavapärase lähenemise puhul just need lugejad, kes ei saa pitserit nende väljade kohta, millel nende otsus põhineb. Meie arvates peaks kontrollpitser kõigile sama tähendama: iga näidatud väli pärineb tootjalt ja seda pole sellest ajast saadik puudutatud. Pitser, mis kehtib ainult avalikele väljadele, on poolik pitser.
Ütleme seda otse: midagi sellest ei ole kohustuslik. Standard EN 18239 nõuab, et juurdepääsu kontrollitaks, ja serveris asuv filter teeb seda veatult. Avalikustatud väljade kontrollitavaks muutmine on meie poolt lisameede, sest allkirjastatud passi kogu mõte seisneb selles, et keegi ei pea platvormi usaldama. Keskmise taseme erandina välja jätmine taastab just selle usalduse, mille allkiri pidi kaotama.
Sama põhimõte võimaldab ühe välja unustada
Iga ## väljaeraldi määratlemine toob kaasa teise omaduse, mida Euroopa õigus tegelikult nõuab. Isikuandmete kaitse üldmäärus annab inimestele õiguse lasta isikuandmed kustutada. Ühe plokina allkirjastatud andmekogum ei suuda seda nõuet täita ilma oma allkirja hävitamata.
Kuna siin on iga väli eraldi, on võimalik üksik väli eemaldada, samal ajal kui ülejäänud osa jääb endiselt kehtivaks. Kui isikuandmed satuvad kogemata passi, saab need sealt puhtalt eemaldada ja pass jääb kehtivaks: pole vaja uut passi väljastada ega ajalugu katkestada. Väljad, mida seadus nõuab säilitada, jäävad alles; see, mis on kustutatav, saab soovi korral kustutada isegi aastaid hiljem.
Miks see on keeruline ja kuidas me selle lahendasime
Me ei ole seda meetodit ise leiutanud, tegemist on avalikult kättesaadava W3C-standardiga. Raske ei ole ideed välja mõelda. Raske on luua see nii, et pass toimiks veel kümne aasta pärast. Tavaline allkiri arvutab dokumendi baitide põhjal. Väljapõhine allkiri arvutab selle üksikute andmete põhjal, ja selleks vormistatakse pass enne allkirjastamist kindlasse kirjutamisviisi, kus iga andmeväli on eraldi lause. See vorm peab kümne aasta pärast tähemärgihaaval uuesti välja tulema, vastasel juhul ei sobi pitser enam kokku. Selle teostamisel takistavad kolme vähetähtsat asja, ja me oleme need kõik kolm juurest lahendanud.
Arvud kaotavad oma tüübi. Väärtus nagu 2,0 tuleb tavalise andmevormingu läbimise järel tagasi kui 2. Inimese jaoks on see sama, kuid kindla kirjutamisviisi jaoks on tegemist teise lausega. Meie süsteemis salvestatakse iga väärtus koos oma tüübiga ning avaldamine katkeb niipea, kui ilmub kasvõi üksainus tüübita arv.
Nimetused ei tähenda veel midagi. Iga väljanimi peab viitama sõnastikus ühesele tähendusele, vastasel juhul kaob väli teisendamisel märkamatult ja pitser seda ei kata. Meil asub iga sõnastik kohapeal ega laadita kunagi võrgust alla; tundmatu väljanimi peatab allkirjastamise, selle asemel et vaikselt tühja tulemust anda.
Kirjed vajavad kindlaid nimesid. Iga kirje dokumendis kannab meie süsteemis kindlat identifikaatorit, et kirjapilt jääks iga läbiviimise korral samaks, selle asemel et iga kord uusi abinimesid anda.
Kõige delikaatsem osa peitub tootja enda võtmes. Iga väljastamise jaoks on vaja täiendavat, lühiajalist võtit, millega avalikustatavad väljad ükshaaval allkirjastatakse. Selle võtme genereerib ja hävitab tootja ise. Kui see oleks meie käes, saaksime üksikuid välju hiljem ise välja mõelda. Igal passil on kaks sellist pitserit: üks tootjalt ja teine Transpareolt, isegi üksiku avalikustatava välja puhul.
Meie jaoks on see vaev õigustatud. Iga pass allkirjastatakse avaldamisel ja aheldatakse eelmise versiooniga, ning muutumatu kümneaastane arhiiv hakkab kehtima niipea, kui passid on registreeritud ELi DPP-registris. Iga välja allkirjastamine kogu ploki asemel on selle tuuma laiendus, mitte lisand.
Kus me oleme
Oleme otsustanud tõendamise kasuks iga lugeja jaoks, sest pitser peaks tähendama ühte ja sama asja, olenemata sellest, kes seda vaatab. Kes soovib näha, kuidas see toimib: kahte eespool lingitud näidispassi saab kontrollida otse brauseris, ilma serverilt küsimata.
Küsimused selle postituse kohta
Kas mõni standard nõuab väljapõhise allkirja kasutamist?
Ei. EN 18239, Euroopa standard, mis käsitleb juurdepääsuõigusi DPP-s, nõuab, et juurdepääsu kontrollitaks iga välja puhul eraldi, ning serveripõhine filter täidab seda nõuet täielikult. Avalikustatud väljade kontrollitavaks muutmine on meie otsus, mitte mingi nõue, mida keegi meilt regulatsiooni raames nõuaks. Me peame seda vaeva õigustatuks, sest allkirjastatud passi kogu mõte seisneb selles, et keegi ei pea platvormi usaldama. Milline on nende standardite staatus üldse, on kirjas meie artiklis ühtlustatud standardite kohta.
Me avaldame ainult avalikku teavet. Kas meil on seda vaja?
Tõenäoliselt mitte, ja seda me ka ütleme. Kogu dokumendi hõlmav allkiri katab passi, mille kõik väljad on avalikud, ning selle loomine ja haldamine on märkimisväärselt odavam. Väljapõhine allkirjastamine tasub end ära niipea, kui lisandub teine sihtrühm, näiteks remondivõrgustik, ringlussevõtja või ametiasutus, kellele te muidu annaksite kätte pitserita väljavõtteid. Mõlemad meetodid on avatud W3C-standardid (ecdsa-sd-2023 väljapõhise allkirja jaoks), iga seda standardit toetav tööriist suudab neid kontrollida ning mõlemad töötavad täna Transpareo Time Machine’is, nii T-särgi passi kui ka aku passi puhul.
Kas isikuandmeid on hiljem võimalik kustutada ilma passi kehtetuks tunnistamata?
Jah, ja seda nõuabki Euroopa õigus. Isikuandmete kaitse üldmäärus annab inimestele õiguse lasta isikuandmed kustutada, kuid plokina allkirjastatud andmekogum ei saa seda nõuet täita ilma oma allkirja hävitamata. Kuna siin on iga väli eraldi määratletud, on võimalik üksik väli eemaldada, samal ajal kui kõik ülejäänu jääb kehtima, ilma et oleks vaja dokumenti uuesti väljastada ja ilma versiooniajaloo katkemiseta. Väljad, mida seadus nõuab säilitada, jäävad alles.
Kes hoiab allkirjastamisvõtit?
Igal passil on kaks pitserit, millest üks võib olla teie oma. Iga väljastamine vajab lisaks lühiajalist võtit, mis allkirjastab avalikustatavad väljad eraldi; selle genereerib ja tühistab tootja ise, sest kui see oleks meie käes, võiksime üksikuid välju hiljem välja mõelda. Enne kui me tagastatud pitserile usaldame, kontrollime seda salvestatud avalikuga võtmega. Seega on igal passil kaks pitserit kahelt sõltumatult asutuselt, nii iga eraldi avalikustatava välja kui ka kogu andmekogumi jaoks.
Kas pass kehtib veel kümne aasta pärast?
Just selles peitubki vaev. Väljapõhine allkiri arvutab dokumendi üksikute andmete põhjal, mitte selle baitide põhjal, seega peab sama kindel kirjutamisviis kümme aastat hiljem tähemärgihaaval uuesti välja tulema. Kolm asja rikuvad seda süsteemi ja me oleme kõik kolm juurest lahendanud. Iga väärtus salvestatakse koos oma tüübiga, iga sõnastik asub meie juures ega laadita kunagi võrgust alla ning iga kanne kannab kindlat tunnusnumbrit. Muutumatu kümneaastane arhiiv on loodud ja hakkab toimima niipea, kui passid on registreeritud ELi registris. Rohkem infot leiate meie registrimääruse analüüsist.




