Digitalni putovnica proizvoda ne prikazuje iste informacije svima. Kupac vidi javne podatke. Servis ili obnovitelj vidi više. Tijelo za nadzor tržišta vidi sve. To je razjašnjeno, a europski standardi to sada izričito propisuju.
Zanimljivije je pitanje suptilnije: ako netko dobije pristup zaštićenim poljima izvan javnih podataka, može li provjeriti jesu li ta specifična polja autentična? Ili mora vjerovati da ih je platforma ispravno odabrala i prenijela nepromijenjene?
Zamislite notara koji ne ovjerava pismo u cjelini, već svaki odlomak pojedinačno. Svi dobivaju javnu verziju pisma. Svatko tko ima pravo na više dobiva dodatne odlomke, a svaki od njih i dalje nosi pečat istog notara. Tako smo izgradili našu platformu. Za većinu platformi, iskren odgovor na gore postavljeno pitanje je: povjerenje. Za nas je to: dokaz, za svako polje koje se dodaje tek u trenutku otkrivanja. Ovaj članak objašnjava zašto je ta razlika važna i zašto smo odabrali radno intenzivniji pristup.
Svi se pridržavaju pravila o pristupu na isti način
EN 18239, europski standard za prava pristupa, sigurnost i povjerljivost u DPP-u, zahtijeva da se pristup kontrolira polje po polje: za svako polje postoji pravilo koje uređuje tko ga smije pregledavati. To je ispravan zahtjev i nije ga teško ispuniti. Opisali smo status tih standarda u našem članku o harmoniziranim standardima.
Uobičajen način za postizanje toga je putem filtra na poslužitelju. Poslužitelj zna tko upućuje zahtjev, provjerava što ta osoba smije vidjeti i vraća upravo taj dio. Standard ne zahtijeva ništa više. Čitatelj mora vjerovati da je poslužitelj iskreno odabrao sadržaj i da nije ništa mijenjao usput. Za javnu informativnu brošuru, to je prihvatljivo. No, za vrijednost na kojoj recikler temelji cijenu rabljene baterije, to je puno toga što se uzima zdravo za gotovo.
Postoji jedna poteškoća koju standard ne rješava: isječak stiže bez pečata.
Očito je rješenje potpisati podatke. Za dva krajnja slučaja standardni potpis dobro funkcionira: potpisati javni prikaz; potpisati cjelokupni skup podataka. Kako to u detalje funkcionira objašnjeno je u poglavlju ” u DPP-u. U sredini sustav zakaže. Potpis koji pokriva cijeli dokument obuhvaća točno ona polja koja su postojala u trenutku potpisivanja. Ako se zaštićeno polje dodatno otkrije ovlaštenom čitatelju, to polje leži izvan potpisanog skupa i stiže mu nepotpisano. Nitko unaprijed ne potpisuje svaku moguću kombinaciju “tko-što-vidi”; broj kombinacija vrtoglavo raste. Pomoćni filtar bez pečata dolazi do izražaja, a srednja razina ponovno se oslanja na povjerenje.
Potpisivanje svakog polja pojedinačno
Postoji bolji dizajn i na njemu gradimo platformu. Umjesto potpisivanja gotovog dokumenta kao jednog bloka, autor pojedinačno specificira svako polje u jednom koraku (za one upoznate sa standardima: W3C postupak ecdsa-sd-2023).
Svaki prikaz stoga započinje istim javnim poljima. Sve ostalo što čitatelj vidi dodaje se polje po polje, a svako od tih polja i dalje se može pratiti do javnog ključa proizvođača, izvan mreže, bez potrebe za ponovnim potpisivanjem i bez oslanjanja na entitet koji je sastavio prikaz. Polja bez potraživanja jednostavno nedostaju. Nisu cenzurirana, već ih uopće nema i ništa o njima ne prozvuka.
Jedna izvedba: servis
Servis je izjavio legitiman interes za bateriju, jednu od razina pristupa izričito predviđenih Uredbom o baterijama. Njegov radni sustav prijavljuje se na naše sučelje pomoću svog ključa i preuzima lozinku. Odgovor je ista javna lozinka koju vidi kupac, s točno jednim dodatnim poljem: uputama za rastavljanje, koje su dostupne samo ovlaštenim čitateljima. Bez drugog dokumenta, bez posebne verzije.
Prije nego što se tvrtka oslanja na ovo polje, njezin softver provjerava dostavljeni pečat pomoću javnog ključa proizvođača. Ako provjera potpisa uspije - uključujući i dodatno polje - softver zna da ove upute potječu izravno od proizvođača i da ih nitko usput nije mijenjao. Ako provjera ne uspije, zanemaruje cijeli prikaz. I dalje je zadatak našeg sustava kontrole pristupa osigurati da primi točno ona polja na koja ima pravo. Ono što je novo jest korak koji slijedi: samostalno provjerava je li ono što prima autentično, bez našeg posredovanja.
Zašto je “neokrnjeno” cijela poanta
Neoštećen pečat ne znači da je sadržaj istinit. Ona kaže: ovo je točno ono što je autor napisao i nitko nije izmijenio ni jedan znak od tada. To znači da je svatko tko je samo proslijedio dokument isključen iz pitanja povjerenja: keš, mreža, arhiv, mi.
Više nije važno tko vam je dao putovnicu.
A pečat je binaran. Ili je neoštećen ili nije; ne postoji polurobreni pečat. Zato nije stvar stupnja dolaze li dodatna polja sa svojim pečatom ili bez njega: bez pečata, oni nisu samo malo manje valjani - oni uopće nisu valjani.
Obje metode za pregled
Svatko to može sam provjeriti. Transpareo Time Machine je naša aplikacija otvorenog koda za pregled putovnica proizvoda: ona prolazi kroz povijest verzija putovnice i pritom provjerava svaki potpis u pregledniku korisnika bez upita na jednom od naših poslužitelja. Putovnica majice sadrži potpis koji pokriva cijeli dokument, dok putovnica baterije koristi provjeru polje po polje.
Transpareo Time Machine Oba su otvoreni W3C standardi; svatko ih može implementirati. Potpis koji pokriva cijeli dokument znatno je jeftiniji za postavljanje i održavanje, i svima koji pružaju samo javne podatke to će biti dovoljno. Činjenica da W3C podržava obje metode nije slučajna: putovnica ostaje standardni format koji svaki prikladan alat može provjeriti, ne samo naš.
Tko ima koristi od toga i što standard zahtijeva?
Tko, osim onih koji pristupaju javnim podacima, zapravo dobiva bilo kakve daljnje informacije? Ne obični kupac. To je procesor koji procjenjuje vrijednost iskorištenog baterijskog paketa, osiguravatelj koji određuje cijenu rizika, recikler koji razvrstava kemikalije i tijelo nadležno za vođenje postupka. Čitatelji čije odluke ovise o novcu ili sigurnosti. A, prema uobičajenom pristupu, upravo ti čitatelji ne dobivaju pečat za polja na kojima se temelje njihove odluke. Vjerujemo da kvalitetan pečat treba značiti isto za sve: svako prikazano polje potječe od proizvođača i da mu od tada nije dirano. Pečat koji se odnosi samo na javne polja samo je pola pečata.
Da budemo jasni: ništa od ovoga nije obavezno. Norma EN 18239 zahtijeva kontrolu pristupa, a filtar na poslužitelju to savršeno rješava. Mi idemo korak dalje kako bismo učinili objavljena polja provjerljivima jer je cijela svrha potpisanog putovnice u tome da nitko ne mora vjerovati platformi. Izuzimanje srednjeg sloja vraća upravo ono povjerenje koje je potpis trebao eliminirati.
Isto načelo omogućuje izostavljanje polja
Pojedinačno navođenje svakog polja sa sobom donosi drugu značajku, a to je zapravo i zahtjev europskog prava. Opća uredba o zaštiti podataka daje ljudima pravo na brisanje svojih osobnih podataka. Zapis podataka potpisan kao jedan blok ne može to ispuniti bez uništavanja vlastitog potpisa.
Budući da je ovdje svako polje samostalno, jedno polje se može ukloniti dok sve ostalo ostaje važeće. Ako se osobni podaci slučajno nađu u putovnici, mogu se čisto ukloniti, a putovnica ostaje važeća: nema potrebe za izdavanjem nove, bez narušene povijesti. Polja koja zakon nalaže zadržati ostaju na mjestu; sve što se može izbrisati može se izbrisati na zahtjev, čak i godinama kasnije.
Zašto je to teško i kako smo to riješili
Mi nismo izmislili taj postupak; to je javni W3C standard. Ne predstavlja poteškoću doći do ideje. Teškoća leži u tome da se izgradi na takav način da putovnica i za deset godina bude i dalje važeća. Standardni potpis izračunava se na temelju bajtova dokumenta. Potpis po poljima izračunava se na temelju njihovih pojedinačnih detalja, a za to se putovnica prije potpisivanja pretvara u fiksni format u kojem se svaki detalj pojavljuje kao zasebna rečenica. Ovaj se format mora reproducirati znak po znak za deset godina; inače se nijedan pečat neće podudarati. Tri naizgled neznatna čimbenika stoje na putu tome, a mi smo se pozabavili sva tri u korijenu.
Brojevi gube svoj tip. Vrijednost poput 2.0 vraća se kao 2 nakon prolaska kroz standardni format podataka. Za čovjeka je to isto; za fiksnu notaciju to je različita vrijednost. U našem sustavu svaka se vrijednost pohranjuje sa svojim tipom, a objavljivanje se zaustavlja čim se pojavi i samo jedan broj bez tipa.
Oznake još ne čine značenje. Svaki naziv polja mora odgovarati jedinstvenom značenju u rječniku; u suprotnom, polje tiho nestaje tijekom pretvorbe i pečat ga ne pokriva. Kod nas se svaki rječnik pohranjuje lokalno i nikada se ne dohvaća putem mreže; ime nepoznatog polja zaustavlja postupak potpisivanja, umjesto da tiho vrati prazan rezultat.
Unosi zahtijevaju fiksna imena. Svaki unos u dokumentu ima fiksni identifikator u našem sustavu, tako da notacija ostaje ista pri svakom izvođenju, umjesto da se svaki put dodjeljuju nova privremena imena.
Najzahtjevniji dio leži u vlastitom ključu proizvođača. Za svako izdavanje potreban je dodatni, kratkotrajni ključ, pomoću kojeg se pojedinačno potpisuju polja koja se mogu otkriti. Proizvođač sam generira i odbacuje taj ključ. Da ga posjedujemo, mogli bismo naknadno izmišljati pojedinačna polja. Svaki putovnica nosi dva takva pečata: jedan od proizvođača i jedan od Transparea, čak i za jedno otkriveno polje.
Za nas se ovaj napor itekako isplati. Uz Transpareo Proofchain svaki je pasport potpisan pri objavi i povezan s prethodnom verzijom, a Transpareo Vault - nepromjenjivi desetogodišnji arhiv - stupa na snagu čim se pasporti registriraju u EU DPP registru. Potpisivanje svakog polja umjesto cijelog bloka proširenje je ove osnovne funkcionalnosti, a ne dodatak.
Naša pozicija
Odlučili smo se za dokaz, za svakog čitatelja, jer pečat bi trebao značiti jedno, bez obzira na to tko ga gleda. Za one koji to žele vidjeti u akciji: dva uzorka putovnica povezana iznad mogu se provjeriti izravno u pregledniku, bez upita poslužitelju.
Pitanja o ovoj objavi
Određuje li standard potpis polje po polje?
Ne. EN 18239, europski standard za prava pristupa u DPP-u, zahtijeva da se pristup kontrolira polje po polje, a filter na poslužitelju u potpunosti je u skladu s tim. To da su objavljena polja provjerljiva izvan toga naša je odluka i nije obveza koju nam nalaže bilo koji regulator. Smatramo da je taj napor opravdan jer je cijela poanta potpisanog propusnice u tome da nitko ne mora vjerovati platformi. Status tih standarda naveden je u našem članku o harmoniziranim standardima.
Objavljujemo samo javne podatke. Trebamo li to raditi?
Vjerojatno ne, i u vezi toga smo prilično otvoreni. Potpis koji pokriva cijeli dokument obuhvaća putovnicu, čija su sva polja javna, i znatno je jeftiniji za uspostavljanje i korištenje. Potpisivanje polje po polje postaje isplativo čim se uključi druga ciljana skupina, poput servisne mreže, reciklera ili vladine agencije kojoj biste inače dostavljali izvatke bez pečata. Obje metode su otvoreni W3C standardi (ecdsa-sd-2023 za potpisivanje polje po polje); svaki alat koji podržava standard može ih provjeriti, a obje se trenutačno koriste u Transpareo Time Machineu, na “putovnici” majice i na “putovnici” baterije.
Mogu li se osobni podaci kasnije izbrisati bez poništavanja putovnice?
Da, i ovaj je aspekt zapravo zahtjevan prema europskom pravu. Opća uredba o zaštiti podataka daje pojedincima pravo na brisanje svojih osobnih podataka, a zapis podataka označen kao blokiran ne može ispuniti taj zahtjev bez uništenja vlastitog potpisa. Budući da su ovdje svaka polja definirana zasebno, pojedinačno polje može biti uklonjeno dok sve ostalo ostaje važeće, bez potrebe za ponovnim izdavanjem i bez narušavanja povijesti verzija. Polja koja zakon zahtijeva da se zadrže ostaju na snazi.
Tko drži ključ za potpis?
Svaka propusnica nosi dva pečata, a jedan od njih može biti vaš. Svako izdavanje također zahtijeva kratkotrajni ključ koji pojedinačno potpisuje polja koja se otkrivaju; proizvođač sam generira i odbacuje taj ključ, jer bismo ga, kad bismo ga posjedovali, mogli naknadno iskoristiti za izmišljanje pojedinačnih polja. Provjeravamo vraćeni pečat pomoću pohranjenog javnog ključa prije nego što mu vjerujemo. Svaki pasoš stoga nosi dva pečata dviju neovisnih instanci, jedan za pojedinačno otkriveno polje i jedan za cjelokupni skup podataka.
Hoće li putovnica i za deset godina biti važeća?
Upravo tu leži napor. Potpis po polju izračunava se na temelju pojedinačnih detalja dokumenta, a ne njegovih bajtova; stoga se isti fiksni format mora reproducirati znak po znak deset godina kasnije. Tri stvari to ugrožavaju, a mi smo se pozabavili svim trima u korijenu. Svaka se vrijednost pohranjuje sa svojom vrstom, svaki rječnik pohranjuje se na našim poslužiteljima i nikada se ne dohvaća putem interneta, a svaki unos nosi fiksni identifikator. Nepromjenjivi desetogodišnji arhiv je uspostavljen i stupit će na snagu čim se putovnice registriraju u EU registru. Više o tome pročitajte u našoj analizi Uredbe o registru.




