[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[eleg-projekt] Skiss av hur en fri och öppen e-leg-lösning skulle kunna fungera
Hej alla på eleg-projekt-listan!
Nu när vi har en egen lista för projektet tänker jag att det är lika bra
att sätta igång och diskutera. :-)
Den här listan arkiveras och publiceras öppet precis som den vanliga
DFRI-listan men nu är det ju bara vi som valt att vara med i projektet
som är prenumeranter på listan så vi behöver inte oroa oss för att störa
folk som inte är intresserade. Den som är med på den här listan får
skylla sig själv.
Jag har skrivit en liten skiss av hur jag tänker att ett e-leg-system
skulle kunna fungera, och jag vill gärna höra vad ni tänker om det.
Observera att det här nu bara är mina egna tankar, kan vara helt fel
tänkt, jag vill bara börja bolla såna här saker med er.
Det hela bygger på asymmetrisk kryptering, "public-key cryptography".
Vi tänker oss att staten utfärdar e-legitimation till en person genom en
procedur där personen själv skapar ett nyckelpar (publik+privat nyckel)
och staten bokför den publika nyckeln. Staten sparar alltså
informationen om att personen som heter Svea Svensson med personnummer
12345678 har e-legitimation med den här publika nyckeln. Staten skapar
också en "eleg-cert-fil", ett digitalt dokument som säger samma sak,
alltså att Svea Svensson med personnummer 12345678 har e-legitimation
med den här publika nyckeln. Staten lägger till en elektronisk signatur
i eleg-cert-filen med hjälp av statens privata nyckel och ger sedan en
kopia av eleg-cert-filen till Svea. Poängen med det här är att Svea
senare kan visa upp eleg-cert-filen för en tredje part och den tredje
parten kan då veta att just den publika nyckeln hör till Svea Svensson
med personnummer 12345678.
Efter att staten utfärdat e-legitimationen till Svea har hon alltså sin
privata nyckel och sin eleg-cert-fil. De två delarna tillsammans utgör
hennes e-legitimation. Hon kan visa eleg-cert-filen för andra när hon
vill, men sin privata nyckel visar hon aldrig för någon annan.
Nu tänker vi oss att Svea vill använda sin e-legitimationen till att
bevisa sin identitet för en tredje part, t.ex. företaget TredjePart som
behöver identifiera sina kunder. Kommunikationen sker i en krypterad
kanal t.ex. via HTTPS (TLS). Svea skickar först sin eleg-cert-fil till
TredjePart och säger därmed "jag är Svea Svensson med personnummer
12345678". TredjePart vet i det läget inte om det verkligen är Svea
eller om det är någon annan som skickat eleg-cert-filen, men Svea kan
bevisa det genom att utföra operationer som bara är möjliga för den som
har hennes privata nyckel. TredjePart skickar en utmaning till Svea som
bara går att svara på för den som har Sveas privata nyckel. En bedragare
som kommit över eleg-cert-filen kommer alltså att misslyckas här, men
Svea själv kan övertyga TredjePart tack vara att hon har sin privata nyckel.
Staten behöver kunna återkalla en tidigare utfärdad e-legitimationen,
till exempel om det befaras att den privata nyckeln kan komma i orätta
händer. Ett sätt att hantera det är att staten har en publik lista
(revocation list) över återkallade e-leg i form av de publika nycklarna.
Alla som verifierar e-leg behöver kolla mot den listan när någon
använder ett e-leg för att säkerställa att det inte har återkallats.
Det kan också behövas ett sätt att begränsa giltighetstiden för
utfärdade e-leg. Det kan hanteras genom att ett sista datum skrivs i
eleg-cert-filen.
Systemet kan bygga helt på öppna standarder, det enda som är hemligt är
de privata nycklarna (statens och individens).
Hanteringen av individens privata nyckel är förstås väldigt viktig. Det
är bara individen själv som har nyckeln och har ansvaret att förvara den
säkert. Individen har själv kontroll. Olika företag kan tävla om att
erbjuda olika säkra lösningar (hårdvara+mjukvara) som individen kan
välja att använda men individen har också friheten att välja att göra på
sitt eget sätt.
Om man vill beskriva det här med termer som brukar användas kring
Self-sovereign identity (SSI), i så fall är eleg-cert-filen en
"verifiable credential", staten är "issuer", individen är "holder" och
tredje part är "verifier".
Vad tror ni, är jag helt ute och cyklar eller kan något i den här stilen
vara möjligt?
Har jag missat något viktigt, i så fall vad?
Vänliga hälsningar
Elias
Listan för diskussion om fri och öppen e-legitimation är öppen för alla.
Listan arkiveras och publiceras öppet på internet.
Arkiv: https://lists.dfri.se/eleg-projekt/