[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/