Innehåll
Översikt
Inera AB har tillsammans med referensgrupp bestående av representanter från Landstingen/Regionerna tagit fram ett format för Nationella ReservIDentiteter (NRID).
Formatet beskrivs i detta dokument och definieras i Nationellt_ReservID_-_specifikation_1.0.pdf.
Se gärna även Ramverk för hantering av reservidentiteter.
Nationellt ReservID
Fullständig personidentitet består av två delar: DOMÄN samt ID
Domänen utgörs av ett Objekts-ID (OID) och listas på sidan Identitetsformat
Varje domän har sina formatregler på id. För NRID gäller att id är 12 alphanumeriska tecken långt.
Domän gör identiteten globalt unik. Även Personnummer (PNR) och Samordningsnummer (SNR) har sina respektive unika domäner.
För allt utbyte mellan system används fullständig personidentifierare, d.v.s. DOMÄN samt ID. Domän-värdet visas vanligtvis inte i ett användargränssnitt.
Id för NRID lagras och överförs i IT-system som en 12 tecken sträng: XXYYMMDDNNGC. Inga tilläggstecken såsom ”-” skall användas.
Formatet XXYYMMDD-NNGC
Generellt format för NRID är enligt: XXYYMMDDNNGC där C alltid är en kontrollsiffra.
Formatet kan specificera känt respektive okänt födelsedatum samt känt respektive okänt kön.
Regex:
^([0-9]{8})-?([A-Z&&[^IOQVW]]{2}[0-9]{2}|[A-Z&&[^IOQVW]]{3}[0-9]{1})$
Födelsesekel XX
- Känt födelsedatum: födelsesekel + konstant
- Första serien har födelsesekel +3 (d.v.s. 19 → 22, 20 → 23).
- När första serien tar slut för en kombination datum/kön ökas konstanten modulo 3:
- +3, +6, +9 o.s.v. till +78 (totalt 26 serier)
- (01-17 reserveras för framtida behov, 18-21 används inte för att inte blandas ihop med PNR/SNR)
- Okänt födelsedatum: 00
Födelsedatum YYMMDD
- Känt födelsedatum: födelsedatum
- YY=00-99
- MM=01-12
- DD=01-31
- Okänt födelsedatum: löpnummer
- YY=00-99
- MM=20-99
- DD=40-59
Löpnummer NN
- Löpande bokstavskombination
- versala bokstäver A-Z
- ej IOQVW (21 unika bokstäver)
Könsmarkering G
- Känt kön: siffra (samma som för PNR)
- kvinna = 0,2,4,6,8
- man = 1,3,5,7,9
- okänt kön: versal bokstav
- A-Z
- ej IOQVW (21 unika bokstäver)
Kontrollsiffra C
- Kontrollsiffra
- Enligt standard Luhn, https://sv.wikipedia.org/wiki/Luhn-algoritmen
- Bokstäver ersätts med dess ASCII-värde, t.ex. A → 65
- Beräkningen baseras på hela id-strängen före kontrollsiffran d.v.s. XXYYMMDDNNG (11-tecken).
Exempel - uträkning
ReservID (exkl. kontrollsiffra) | 2 | 2 | 7 | 9 | 0 | 8 | 1 | 4 | A | A | 0 | ||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ASCII utbyte | 2 | 2 | 7 | 9 | 0 | 8 | 1 | 4 | 65 | 65 | 0 | ||||
Multiplikationsfaktor | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | ||||
Produkt | 4 | 2 | 14 | 9 | 0 | 8 | 2 | 4 | 130 | 65 | 0 | ||||
Ensiffriga termer | 4 | 2 | 1 | 4 | 9 | 0 | 8 | 2 | 4 | 1 | 3 | 0 | 6 | 5 | 0 |
Summa | 4+2+1+4+9+0+8+2+4+1+3+0+6+5+0 = 49 | ||||||||||||||
Kontrollsiffra | 50 - 49 = 1 | ||||||||||||||
ReservID (inkl. kontrollsiffra) | 22790814AA01 |
Exempel - kontroll
ReservID (inkl. kontrollsiffra) | 2 | 2 | 7 | 9 | 0 | 8 | 1 | 4 | A | A | 0 | 1 | ||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ASCII utbyte | 2 | 2 | 7 | 9 | 0 | 8 | 1 | 4 | 65 | 65 | 0 | 1 | ||||
Multiplikationsfaktor | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | ||||
Produkt | 4 | 2 | 14 | 9 | 0 | 8 | 2 | 4 | 130 | 65 | 0 | 1 | ||||
Ensiffriga termer | 4 | 2 | 1 | 4 | 9 | 0 | 8 | 2 | 4 | 1 | 3 | 0 | 6 | 5 | 0 | 1 |
Summa | 4+2+1+4+9+0+8+2+4+1+3+0+6+5+0+1 = 50 | |||||||||||||||
Kontroll | 50 % 10 = 0 → OK! |
Spärrade bokstavskombinationer
För att undvika oönskade bokstavskombinationer, appliceras samma filter som transportstyrelsen använder för tilldelning av registreringsnummer. Detta säkerställer att kombinationer som APA, SPY o.s.v. ej kan förekomma i ett NRID.
Exempel NRIDs
Notera att "-" har lagts till enbart som en del av presentationen av identiteten för att öka dess läsbarhet. Detta tecken är ej en del av identiteten i sig.
- Känt födelsedatum & kön
- 22950606-FH20
- kvinna född 19950606
- Känt födelsedatum & okänt kön
- 25780404-KHD5
- född 19780404
- Okänt födelsedatum, känt kön
- 00342145-BZ31
- man
- Okänt födelsedatum, okänt kön
- 00749852-BZK0
Kapacitet
Antal möjliga uttag av reservidentiteter samt reserverade serier för testidentiteter.
Känt födelsedatum & kön | ||||||
XX | YY | MM | DD | N | N | G |
---|---|---|---|---|---|---|
25 | 21 | 21 | 5 | |||
55 125 kombinationer per födelsedag/kön +2 205 reserverade för test |
Känt födelsedatum & okänt kön | ||||||
XX | YY | MM | DD | N | N | G |
---|---|---|---|---|---|---|
25 | 21 | 21 | 21 | |||
231 252 kombinationer per födelsedag + 9 261 reserverade för test |
Okänt födelsedatum, känt kön | ||||||
XX | YY | MM | DD | N | N | G |
---|---|---|---|---|---|---|
1 | 99 | 80 | 20 | 21 | 21 | 5 |
349 272 000 + 3 528 000 reserverade för test |
Okänt födelsedatum, okänt kön | ||||||
XX | YY | MM | DD | N | N | G |
---|---|---|---|---|---|---|
1 | 99 | 80 | 20 | 21 | 21 | 21 |
1 466 942 400 + 14 817 600 reserverade för test |
Domän
Nationellt ReservID har tilldelats OID: 1.2.752.74.9.1
Testnummer
Från och med version 4.1 av Personuppgiftstjänsten reserveras vissa serier för testmiljöer.
NRIDs i testmiljöer med känt födelsedatum börjar då med sekelskiftesmarkering 97, 98 eller 99 medan NRIDs med okänt födelsedatum börjar med 0099 i testmiljöer.