Rafrænn vörupassi sýnir ekki öllum sömu upplýsingar. Kaupandi sér opinber gögn. Viðgerðar- eða endurnýjunaraðili sér meira. Markaðseftirlitsyfirvald sér allt. Þetta hefur verið skýrt og evrópskir staðlar kveða nú skýrt á um það.
Áhugaverða spurningin er flóknari: ef einhverjum er sýndur verndaður reitur auk almennra gagna, getur hann staðfest að þessi tilteknu reitir séu ekta? Eða þarf hann að treysta því að vettvangurinn hafi valið þá rétt og miðlað þeim óbreyttum?
Fyrir flestar vélar er hreinskilna svarið: traust. Við höfum hannað okkar þannig að svarið sé ‘sönnun’ - ekki aðeins fyrir almennu reitina, heldur fyrir hvern einasta reit sem bætist við í upplýsingagjöfinni. Af hverju þetta skiptir máli og hvers vegna við höfum valið vinnufrekari leiðina.
Allir fara eftir aðgangsreglunni á sama hátt
EN 18239, evrópskur staðall fyrir aðgengisrétti, öryggi og trúnað í DPP, krefst aðgangsstýringar á hvern gagnareiningu: fyrir hvert reiti er regla sem stýrir hverjum er heimilt að skoða hann. Þetta er rétt krafa og ekki erfitt að uppfylla. Við höfum lýst stöðu þessara staðla í smáatriðum undir samræmdum stöðlum.
Algengasta leiðin til að framkvæma þetta er með síun á þjónshlið. Þjónninn veit hver gerir beiðnina, athugar hvað sá aðili er heimilaður að sjá og skilar nákvæmlega þeim hluta. Aðgangsstýring: leyst. Staðallinn krefst ekki meira.
Það er þó einn galli sem staðallinn fjallar ekki um: Kaflinn berst óundirritaður. Lesandinn fær yfirsýn sem er sérsniðin að honum og þarf að treysta því að netþjónninn hafi valið hana heiðarlega og að ekkert hafi verið breytt á leiðinni. Fyrir almennan upplýsingablað er það í lagi. Fyrir verð sem endurvinnsluaðili byggir verðlagningu notaðs rafhlöðu á, krefst það mikils trausts.
Þar sem eintaks undirskrift nær takmörkum sínum
Augljósa lausnin er að undirrita gögnin. Fyrir báða enda keðjunnar hentar staðlað undirskriftarkerfi vel: undirrita almennu yfirlitið, undirrita heildar gagnasafnið og staðfesta bæði með opinberum lykli án þess að netþjónn sé milliliður. Hvernig þetta virkar í smáatriðum er útskýrt í Signatures and Certificates in the DPP.
Vandamálið liggur í miðjunni. Undirskrift sem nær yfir allt skjalið nær nákvæmlega yfir eitt sett reita, þ.e. þá sem voru til staðar þegar undirritað var. Ef löggiltur lesandi fær aðgang að viðbótar vernduðu reit, liggur sá reitur utan við undirritaða safnið og berst til hans óundirritaður. Ef hins vegar er undirritað allt gagnasafnið frá upphafi, nær undirritunin til alls, en þá þyrfti að sýna öllu öllum.
Miðstigin detta því í gegnum glufuna: viðgerðarstöðin, tryggingafélagið, endurvinnslufyrirtækið. Ef undirritaður væri fyrirfram hver möguleg ‘hver-sér-hvað’ samsetning, þyrfti að hafa sérstakt undirritað skjal fyrir hverja samsetningu, og fjöldi samsetninga hækkar gífurlega með hverjum viðbættri aðgangsverði. Enginn gerir það. Maður fellur aftur á óundirritaðan netþjónsíu og millistigið treystir á traustið enn og aftur.
Undirritun hvers reits fyrir sig
Það er til betri nálgun, og það er sú sem við byggjum vettvanginn á. Í stað þess að undirrita fullbúið skjal sem eina heild, tilgreinir útgefandinn hvert reit fyrir sig í einu undirritunarferli (fyrir þá sem þekkja staðla: W3C-staðalinn ecdsa-sd-2023 fyrir valbundna birtingu).
Allar yfirsýnir byrja á opinbera kjarna
Öll yfirsýn byrjar því á sömu opinberu reitunum. Það sem lesandi sér umfram það er bætt við reit fyrir reit, og hver og einn þessara reita rekst enn til opinbera lykils útgefandans - utan netsins, án þess að þurfa að endurrita og án þess að treysta á aðilann sem setti yfirsýnina saman. Reitir sem ekki er réttur til á að fá vantar einfaldlega. Ekki skornir út, heldur alls ekki til staðar, og ekkert um þá lekur í gegn.
Af hverju “órofinn” er kjarni málsins
Ímyndaðu þér löggiltan talsmann sem votta ekki bréfið í heild, heldur hvern kafla fyrir sig. Allir fá opinbera bréfið. Sá sem á rétt á fleiru fær viðbótarkaflana, og hver þeirra ber ennþá sama stimplinn frá sama notera. Í venjulegri málsmeðferð skrifar vettvangurinn þessa kafla inn fyrir þig, og það sem þú færð ber aðeins orð hans sjálfs.
Af hverju ‘órofin’ er svo mikilvæg er vert að útskýra aðeins nánar. Órofin stimplun tryggir ekki að efnið sé satt. Hún staðfestir: þetta er nákvæmlega það sem útgefandinn skrifaði, og enginn hefur breytt einum einasta staf síðan þá. Þetta þýðir að hver sá sem hefur einungis miðlað skjalinu áfram - milliliðurinn, netið, skjalasafnið, við - er útilokaður frá traustspurningunni. Það skiptir ekki lengur máli hver gaf þér vegabréfið.
Og stimplur er tvígildur. Hann er annaðhvort órofa eða ekki; það er ekkert slíkt sem hálfbrjálaður stimplur. Ef það brýst, munt þú ekki vita hvaða setning hafi verið breytt, aðeins að þú getir ekki lengur treyst öllu skjalinu. Þess vegna skiptir ekki máli hvort auka reitirnir komi með eða án innsiglis síns: án innsiglis eru þeir ekki einungis óöruggari staðfestir; þeir eru ekki staðfestir yfir höfuð.
Báðar aðferðirnar til skoðunar
Allir geta athugað þetta sjálfir. Transpareo Time Machine er opinn hugbúnaður okkar til að skoða vöruforða: hann flettir í gegnum útgáfusögu forðans og staðfestir hverja undirskrift í vafranum hjá notandanum án þess að hafa samskipti við einn af netþjónum okkar. Tveir sýnishorns-passarar eru opinberlega aðgengilegir í því. Passarinn fyrir T-skyrtu ber undirskrift sem nær yfir allt skjalið, á meðan passarinn fyrir rafhlöðu sýnir upplýsingar reit fyrir reit.
Báðar eru opnar W3C-tilgreiningar: eddsa-jcs-2022 fyrir undirritun sem nær yfir allt skjalið, og ecdsa-sd-2023 fyrir birtingu reit fyrir reit. Allir sem vilja geta innleitt þær. Vandamálið er sú fyrirhöfn sem það krefst, og þess vegna munu margir ekki gera það: undirritun yfir allt skjalið er mun ódýrari í uppsetningu og rekstri, og hver sem veitir aðeins opinber gögn getur notað hana.
Það er með ásetningi að Time Machine styður báðar aðferðirnar og svo mun halda áfram. Hún tilheyrir engum vettvangi. Staðfestir sem samþykkir eingöngu dýrari aðferðina væri tæki fyrir okkur og engan annan.
Opinberun verndaðra reita
Það borgar sig að spyrja ## hverjum, umfram almenning, nokkuð## séopinberað. Ekki venjulegur kaupandi - hún fær opinbera vottorðið. Það er vinnsluaðilinn sem metur verðmæti notaðs rafhlöðupakka, tryggingafélagið sem metur áhættu, endurvinnslufyrirtækið sem flokkar efni og yfirvöldin sem byggja mál. Þetta eru þeir lesendur sem ákvarðanir þeirra snúast um peninga eða öryggi.
Og þetta eru einmitt þær upplýsingar sem eru ekki birtar samkvæmt venjulegri nálgun. Þeir sem hafa mestan áhuga á dulkóðunarstaðfestingu fá hana ekki, einmitt fyrir þær upplýsingar sem liggja til grundvallar ákvörðun þeirra.
Við teljum að vottunarmerki eigi að merkja hið sama fyrir alla. “Staðfest af Transpareo” merkir hið sama í ítarlegu skýrslu viðgerðarstöðvar og á opinberu vottorði kaupanda: öll reitir sem birtast koma frá útgefanda og ekki hefur verið hnikað við þeim síðan. Þumstagl sem nær aðeins yfir opinberu reitina er aðeins hálft þumstagl.
Meira en staðallinn krefst
Skulum gera okkur ljóst: ekkert af þessu er skylda. EN 18239 krefst þess að aðgangi sé stjórnað, og síuvirkni á þjónustuhliðinni stýrir aðgangi fullkomlega vel. Að gera birta reiti dulkóðunarvottanlega er eitthvað sem við gerum umfram það; það er ekki bara reitur sem þarf að haka í samkvæmt reglugerðinni.
Þess vegna er einmitt þess virði að festa þetta í letur. Það væri auðvelt að fara eftir bókstaf staðalsins, afhenda síuvirknið á þjónsins hlið og lýsa stiginu sem fullu. Við kjósum hins vegar skuldbindingu sem gildir hvar sem stimplið birtist. Enda er megin tilgangurinn með undirritaðan vegabréfsáritun sá að enginn þurfi að treysta vettvangi. Að undanskilja millilagið myndi endurvekja einmitt þann traust sem undirritunin var ætluð til að útrýma.
Sama meginreglan þýðir að eitt reit er hunsaður
Að skuldbinda sig til hvers reits fyrir sig felur í sér aðra kröfu, og þetta er í raun krafist samkvæmt evrópskum lögum. Almenn persónuverndarreglugerð veitir fólki rétt til að persónuupplýsingar þess verði eytt. Gagnaskrá sem undirrituð er sem ein eining getur ekki uppfyllt þetta án þess að eyðileggja eigin undirskrift.
Þar sem hvert reit er hér sjálfstætt er hægt að fjarlægja einn reit á meðan allt annað er áfram staðfestanlegt. Ef persónuupplýsingar berast fyrir slysni í vegabréf er hægt að fjarlægja þær hreint út og vegabréfið gildir áfram: ekki þarf að endurgefa það og engin truflun verður á sögunni. Reglugerðarreitir sem lög krefjast að varðveita eru áfram til staðar; allt sem hægt er að eyða má fjarlægja eftir beiðni, jafnvel mörgum árum síðar.
Þrátt fyrir það er þetta alveg venjulegt vegabréf
Ekkert af þessu gerir vegabréfið að sérstökum hlut sem aðeins okkar verkfæri geta opnað. Það er áfram staðfestanleg réttindaskírteini í JSON-LD, sniði sem vefstaðlannaheimurinn er að færast yfir í, og sama sniðið sem Sameinuðu þjóðirnar nota í gegnsæissamskiptareglunum sínum (Transparency Protocol) og víðara W3C-vistkerfi.
Vegabréfið sem kaupandi skannar í vafranum sínum er því sama skjalið sem samstarfsaðili gagnageymslu getur lesið, og hvaða staðalsamræmdur staðfestir sem er getur staðfest það, ekki bara okkar. Viðbótaröryggið kostar lesandann ekkert og bindur engan við okkur.
Af hverju þetta er tæknilega krefjandi
Fyrst og fremst, til að forðast allan misskilning: við fundum þessa aðferð ekki upp. ecdsa-sd-2023 er opinber W3C-staðalaupplýsing; dulkóðunarkerfið á bak við hana er ekki okkar eigið, og hver sem er vill innleiða það getur kynnt sér það. Það er ekki erfitt að koma með hugmyndina. Erfiðleikarnir felast í því að byggja hana upp á þann hátt að undirskriftin verði enn gild eftir tíu ár. Þar liggur erfiðasta vinna, og nokkuð gagnlegt er hægt að segja um hana.
Munurinn kann að hljóma smávægilegur, en hann breytir grundvallar nálguninni: venjuleg undirskrift framkvæmir útreikninga á байтunum í skjali. Valmenskur upplýsingagjöf reiknar út á grundvelli yfirlýsinga sinna. Áður en undirritað er er vegabréfið umbreytt í staðlað form þar sem hver upplýsinga er sett fram sem aðskilin, sjálfstæð yfirlýsing. Einungis þá er hægt að sleppa yfirlýsingu án þess að ógna gildi restarinnar.
Þetta skapar vandamál sem undirritun byggð á bætum hefur ekki: sama staðlaða formið verður að vera endurskapað nákvæmlega eftir tíu ár. Ekki að hluta til, heldur staf fyrir staf; annars verður sönnunin ekki lengur gild. Þrír hlutir standa í vegi fyrir þetta, og allir þrír eru ósýnilegir.
Tölur missa tegund sína. Ef þú skrifar tölur sem venjulegan JSON-textann, glatast upplýsingarnar um hvaða tegund tölur það eru á leiðinni. Gildi eins og 2.0 kemur út sem 2 eftir vinnslu í JSON. Fyrir manninn er það það sama; fyrir staðlaða formið er það önnur yfirlýsing, og staðfestingin mistekst.
Viðmiðin gefa enn ekki til kynna merkingu. Til þess að staðlaða myndin komi fram verður nafn hvers reits að vísa til einstakrar merkingar. Ef reitur vantar hverfur hann hljóðlega við umbreytingu. Hann birtist þá í vegabréfinu, en sönnunin nær ekki til hans og enginn tekur eftir því.
Merkingar finnast yfirleitt á netinu. Þessi samsvörun er í orðasafni sem flest verkfæri sækja af vefnum við staðfestingu. Sá sem gerir þetta gerir gildi vegabréfs síns háð því að þriðji aðili svari enn eftir tíu ár - og að engar breytingar verði á því.
Hvernig við leystum það
Við leystum þrjú vandamálin við upptökuna, fremur en að reyna að finna þau síðar.
Gerðir. Öll gildi eru skráð með gerð sinni, og birtingu er hætt um leið og eitt einasta talgildi án gerðar birtist í staðlaða sniðið. Villa greinist því þar sem hún kostar aðeins eina kóðalínu, frekar en árum síðar sem óútskýrður staðfestingarvandi.
Orðaforða. Allir orðaforðar sem vegabréfið vísar til eru geymdir staðbundið í kerfinu okkar og eru aldrei sóttir yfir internetið. Óþekkt heimilisfang veldur hörðum stöðvun við undirritun, fremur en þögulu falli á tóma niðurstöðu.
Auðkenni. Hver hnútur í skjalinu ber stöðugt auðkenni, sem tryggir að staðlaða formið haldist endurgeranlegt, fremur en að úthluta nýjum aukanafnum við hverja keyrslu.
Flóknasti hlutinn felst í ‘Bring Your Own Key’. Fyrir hverja útgáfu þarf aukalykil sem er skammlífur, og með honum er undirritað hvert reit fyrir sig sem má birta. Útgáfuaðilinn býr til þennan lykil og hleypur frá honum sjálfur. Ef við héldum lyklinum gætum við búið til einstök reiti afturvirkt, og sjálfstæði undirritunar útgefandans væri ekki annað en fullyrðing. Við staðfestum sönnunina sem skilað er með því að bera hana saman við geymda opinbera lykilinn áður en við treystum henni.
Hver vegabréf ber með sér tvö slík sönnunargögn: eitt frá útgefanda og eitt frá Transpareo, og hvorugt er háð hinu við sýn fyrir lesanda. Tvær undirskriftir, tvær sjálfstæðar yfirvöld - jafnvel fyrir einn birtan reit.
Fyrir okkur er þetta vel þess virði. Við bættum ekki við staðfestanleika sem eftirhugsun; vettvangurinn var byggður upp í kringum þessa meginreglu frá fyrstu útgáfu. Öll vegabréf eru undirrituð við birtingu og keðju tengd við fyrri útgáfu. Óumbreytanleg tíu ára skjalasafn er stofnað og tekur gildi um leið og vegabréfin eru skráð hjá EU DPP Register. Að undirrita hvert reiti frekar en allan blokkinn er útvíkkun á þessari kjarnaaðgerð, ekki viðbót við eitthvað sem aldrei var ætlað í þessu skyni.
Staða okkar
Einfaldlega sagt er valið skýrt. Þú getur birt vernduð reiti og beðið lesandann um að treysta síu þinni - það uppfyllir staðalinn. Eða þú getur birt þá og lagt fram sönnunina á sama tíma - það uppfyllir hærri staðal sem við teljum að þessir reitir eigi skilið.
Við höfum valið sönnunina, til hagsbóta fyrir hvern lesanda, því stimplun ætti að merkja eitt og hið sama, sama hver lítur á hana. Fyrir þá sem vilja sjá þetta í verki: tvær kynningarnar sem tengdar eru hér að ofan sannreyna sig beint í vafranum, án nettengingar, eingöngu með opinberu lykilparinu.
