Hopp til hovedinnhold

Holder binding forklart: hvorfor et kopiert bevis er verdiløst

Et signert legitimasjonsbevis er en svært god kopi av seg selv. Den som får tak i et, har et dokument med en gyldig utstedersignatur, og en kontroll av signaturen vil uten videre si at det er ekte. Holder binding er delen som tetter det hullet: den knytter beviset til en nøkkel som bare én person kan bruke, slik at det kreves mer å vise det frem enn bare å ha det.

Denne siden er versjonen på vanlig norsk. Den tar for seg hva bindingen faktisk er, når den opprettes, hvordan de to europeiske formatene gjør det hver for seg, og delen de fleste forklaringer hopper over: hva holder binding fortsatt ikke forteller en verifikator.

Problemet det løser

Digitale dokumenter kan kopieres perfekt. Et bilde av et pass er en dårlig forfalskning fordi papir har fysiske kjennetegn som en fotokopi mister, men et signert bevis har ikke noe slikt kjennetegn. Kopier filen, og kopien verifiseres nøyaktig like godt som originalen, fordi utstedersignaturen dekker innholdet og innholdet ikke er endret.

En verifikator som bare kontrollerer utstedersignaturen, svarer altså på feil spørsmål. Den har fått vite at opplysningene er ekte. Den har ikke fått vite noe om hvorvidt parten foran den har rett til dem, og det er som regel nettopp det den trengte å vite.

Opplysningene

Faktaene beviset angir: et navn, en fødselsdato, en førerkortklasse, et organisasjonsnummer. Dette er delen alle ser for seg når de tenker på et legitimasjonsbevis.

Utstedersignaturen

Bevis på at disse faktaene kom fra utstederen og ikke er endret siden. Den sier ingenting om hvem som har dem nå.

Innehaverens offentlige nøkkel

Delen som står for bindingen. Utstederen skriver innehaverens offentlige nøkkel inn i det signerte beviset, slik at beviset nå navngir nøkkelen som har lov til å vise det frem.

Bare den tredje delen er ny. Fjern den, og du har et ihendehaverbevis som virker for den som bærer det.

Når bindingen opprettes, og når den brukes

Bindingen opprettes én gang, ved utstedelsen, og den tas i bruk hver gang beviset vises frem. Innehaveren ser ingenting av den utover opplåsingen de allerede forventer.

1. Lommeboken lager en nøkkel

Før den ber om noe, lager lommeboken et nytt nøkkelpar i telefonens egen sikre maskinvare. Den private halvdelen kan ikke leses ut igjen, ikke engang av lommebokappen.

2. Utstederen skriver den inn

Lommeboken sender den offentlige halvdelen med forespørselen og beviser at den har den private. Utstederen legger den offentlige nøkkelen inn i beviset før det signeres.

3. En verifikator spør

Forespørselen har med en ny tilfeldig verdi og sier hvem som spør, slik at svaret bare kan brukes én gang og bare av parten som ba om det.

4. Lommeboken signerer

Lommeboken signerer svaret med den private nøkkelen, som regel etter et fingeravtrykk eller en PIN-kode. Verifikatoren kontrollerer signaturen mot nøkkelen i beviset.

Trinn 1 og 2 skjer én gang, når beviset utstedes. Trinn 3 og 4 gjentas hver gang det vises frem.

Hvor den private nøkkelen faktisk ligger

Bindingen er aldri bedre enn hvor vanskelig det er å bruke nøkkelen uten innehaveren. Derfor lager lommebøker disse nøklene i dedikert maskinvare, det sikre elementet eller tilsvarende som også beskytter telefonens betalingsopplysninger, i stedet for å lagre dem som en fil operativsystemet kan gi til hvilken som helst app som spør.

Ingenting av dette kan en verifikator se i selve fremvisningen. En signatur beviser at nøkkelen ble brukt, ikke at den ble tatt godt vare på. Om nøkkelen virkelig sitter i sertifisert maskinvare, er en egen garanti, båret av attesteringene en lommebok viser en utsteder før den får noe, og etter de europeiske reglene er det nettopp det wallet- og nøkkelattestering finnes for.

Holder binding svarer på

Ble dette svaret laget av nøkkelen beviset ble utstedt til, for denne forespørselen, akkurat nå?

Nøkkelattestering svarer på

Ligger nøkkelen et sted en angriper ikke kan hente den ut fra? Et annet spørsmål, andre bevis, avgjort ved utstedelsen.

Slik gjør de to europeiske formatene det

Ideen er den samme i begge formatene den europeiske lommeboken bygger på. Mekanikken er forskjellig, noe som betyr noe for den som implementerer en verifikator, og for nesten ingen andre.

SD-JWT VC

Utstederen legger innehaverens offentlige nøkkel i et bekreftelsesfelt inne i det signerte beviset. Ved fremvisning legger lommeboken til et lite, separat token, signert med den private nøkkelen, som dekker verifikatorens identitet og den tilfeldige verdien fra forespørselen. En verifikator som ignorerer det tokenet, har kontrollert utstederen og ingenting annet.

Les definisjonen

mdoc

Enhetsnøkkelen er angitt i det signerte objektet som beskytter dataelementene, og telefonen signerer utskriften av økten den er en del av. Fordi utskriften dekker utvekslingen mellom de to enhetene, kan et opptak av én fremvisning ikke spilles av på nytt i en annen, og det er det som gjør en offline kontroll langs veien eller ved en dør trygg.

Les definisjonen

En lommebok i det europeiske økosystemet har som regel det samme beviset i begge formater og leverer det motparten forstår, så en virksomhet som tar imot bevis, må kunne kontrollere bindingen i begge.

Hva holder binding ikke beviser

Holder binding beviser kontroll over en nøkkel. Det beviser ikke hvem som holder telefonen. Noen som har fått enheten og PIN-koden, lager nøyaktig det samme gyldige svaret som den rettmessige innehaveren, og ingen mengde kryptografi i beviset kan se forskjellen.

Det sier heller ingenting om hvor grundig utstederen sjekket identiteten før utstedelsen. Et bevis bundet til en nøkkel er fortsatt bare så pålitelig som prosessen som skapte det, og det er det Level of Assurance er der for å beskrive. Å binde et svakt utstedt bevis svært sterkt til en nøkkel gjør ikke opplysningene i det mer sanne.

Sett under ett er arbeidsdelingen ganske tydelig. Holder binding stopper gjenavspilling og kopiering, opplåsingen av lommeboken knytter nøkkelen til et menneske som er til stede, Level of Assurance beskriver hvor godt det mennesket ble identifisert, og en tillitsliste sier hvilke utstedere du i det hele tatt godtar. En verifikator som vil ha et reelt svar, trenger alle fire, ikke bare den som følger gratis med beviset.

Hva dette betyr for deg

Utsteder

Bevisene dine blir ubrukelige for alle som stjeler en kopi, og det fjerner en hel kategori svindel som du ellers måtte oppdage i etterkant. Prisen er at du må være klar til å utstede på nytt når en innehaver bytter enhet.

Verifikator

Kontroller bindingen, ikke bare utstedersignaturen. Send en ny tilfeldig verdi med hver forespørsel og avvis et svar som ikke signerer den, ellers kan en innspilt fremvisning spilles av mot deg senere.

Lommebokinnehaver

Ingenting å administrere og én ting å vite: bevisene dine er knyttet til denne enheten, så en ny telefon betyr at du henter dem på nytt i stedet for å gjenopprette dem fra en sikkerhetskopi.

Relaterte begreper

Ofte stilte spørsmål

Er holder binding det samme som key binding eller device binding?

I praksis ja, og de ulike ordene kommer fra ulike spesifikasjoner, ikke fra noen forskjell i betydning. Holder binding er egenskapen: dette beviset tilhører denne innehaveren. Key binding er navnet SD-JWT VC-verdenen bruker på mekanismen, og ISO-siden snakker om device binding eller device authentication fordi nøkkelen sitter i en bestemt telefon. Bruker et dokument ett av disse uttrykkene, les det som den samme ideen sett fra en annen vinkel.

Beviser holder binding at personen som viser frem beviset, er den det gjelder?

Nei, og dette er den aller vanligste misforståelsen. Det beviser at den som laget svaret, kontrollerer nøkkelen beviset ble utstedt til. Om mennesket som holder telefonen er personen opplysningene beskriver, avhenger av hvordan lommeboken låses opp, hvor grundig utstederen sjekket identiteten i utgangspunktet, og om innehaveren har gitt enheten og PIN-koden til noen andre. For en kontroll med høy verdi kombinerer du bindingen med en lommebok som krever biometri, og med et bevis utstedt på et Level of Assurance som står i forhold til risikoen.

Hva skjer med et bundet bevis når innehaveren får ny telefon?

Det flytter ikke med. Hele poenget med å holde den private nøkkelen i sikker maskinvare er at den ikke kan eksporteres, så et bevis bundet til den gamle telefonen kan ikke gjenopprettes på den nye og forventes å virke. Den nye enheten lager sin egen nøkkel, og beviset utstedes på nytt til den. Planlegg for ny utstedelse som en normal og hyppig hendelse, ikke et unntak, for brukerne dine er det rett og slett dagen de byttet telefon.

Finnes det bevis uten holder binding?

Ja, og de har sin plass. Et bevis uten holder binding er et ihendehaverbevis: den som viser det frem, får fordelen, som med en papirbillett. Det er en rimelig avveining for noe med lav verdi og kort levetid, der kostnaden ved at en kopi blir gjenbrukt er liten og du helst ikke vil be innehaveren låse opp noe. Det er feil valg for identitet, rettigheter og alt en svindler ville synes var verdt å gjenbruke.

Kilder

  1. IETF SD-JWT-based Verifiable Digital Credentials (SD-JWT VC), fortsatt et utkast
  2. OpenID for Verifiable Credential Issuance, om bevis på nøkkelbesittelse ved utstedelse
  3. OpenID for Verifiable Presentations, om å binde et svar til én forespørsel
  4. ISO/IEC 18013-5, om enhetsautentisering for mobile dokumenter

Denne siden er kun til informasjon og utgjør ikke juridisk rådgivning. Se spesifikasjonene direkte for den autoritative ordlyden.

Snakk med oss om å utstede bundne bevis