Veröffentlichungen der Stammzahlenregisterbehörde
Informationen zur Bildung von Stammzahlen und die dazugehörigen Personenkennzeichen
Inhaltsverzeichnis
Die Methoden zur Ermittlung der Stammzahlen und bereichsspezifischer Personenkennzeichen (bPK) gemäß § 6 Absatz (Abs.) 6 E-Government-Gesetz (E-GovG) werden im Folgenden beschrieben und jeweils anhand eines Beispiels erläutert.
Ermittlung der Stammzahl für natürliche Personen
Die Stammzahl wird durch eine symmetrische Verschlüsselung der Zahl der Eintragung im Zentralen Melderegisters (ZMR-Zahl) gebildet. Eine dauerhafte Speicherung der Stammzahl natürlicher Personen darf nur in verschlüsselter Form erfolgen. Sie ist von keiner anderen Stelle als der Stammzahlenregisterbehörde rückrechenbar. Zur eindeutigen Identifikation eines Bürgers in einem Verfahren wird in Folge das bereichsspezifische Personenkennzeichen berechnet. Dieses wird im Verfahren zur eindeutigen Identifikation verwendet.
Grundlage für die Ermittlung der Stammzahlen für natürliche Personen sind
- für in Österreich meldepflichtige Personen die Melderegisterzahl (ZMR-Zahl) (§ 6 Abs. 2 E-GovG bzw. § 16 Abs. 4 Meldegesetz (MeldeG))
- für alle anderen Personen die Zahl der Eintragung im Ergänzungsregister (ER-Zahl) (§ 6 Abs. 4 E-GovG).
Diese natürliche Personen eindeutig identifizierende Zahlen (ZMR-Zahl oder ER-Zahl) werden im Folgenden als Basiszahl bezeichnet.
Algorithmus:
- Ausgangsdatum ist die oben erwähnte Basiszahl (12 Dezimalstellen).
- Diese Basiszahl wird in eine Binärdarstellung umgewandelt (5 Byte).
- Sodann wird die Basiszahl in Binärdarstellung mit einem konstanten geheimen Seedwert [1] (8-Bit Wert) zu einem 128-Bit-Wert (binär) wie folgt konkateniert [2]: Basiszahl Seed Basiszahl Basiszahl. Der Seedwert wird in der Stammzahlenregisterbehörde unter Verschluss gehalten.
- Der 128-Bit Binärwert (16 Byte) wird mit dem geheimen Triple-DES [3] Schlüssel der Stammzahlenregisterbehörde im CBC-Modus [4] zur Stammzahl nach § 6 E-GovG verschlüsselt.
- Die Stammzahl wird schließlich in Base64 [5] kodiert (dies schließt die Kodierung in ASCII mit ein).
Nachfolgende Abbildung und Tabelle veranschaulichen das Verfahren grafisch und exemplarisch:
| Basiszahl | 000247681888 (Bsp: ZMR-Zahl, 12-stellige Dezimalzahl) |
|---|---|
| Binärdarstellung | 00 0E C3 53 60 (5 Byte, Darstellung hexadezimal) |
| Verbreiterung auf 128 Bit | 00 0E C3 53 60 FF 00 0E C3 53 60 00 0E C3 53 60 (16 Byte, Seed-Wert beispielhaft auf 'FF' gesetzt) |
| Triple-DES Verschlüsselung, hexadezimal | 42 AD 37 74 FA E0 70 7B 31 DC 6D 25 29 21 FA 49 (16 Byte) |
| Stammzahl, Base64 [5] | Qq03dPrgcHsx3G0lKSH6SQ== (24 Zeichen) |
Ermittlung der Stammzahl für juristische Personen und sonstige Betroffene
Unbeschadet des Vorhandenseins einer Stammzahl gemäß § 6 Abs. 2 E-GovG ist als Stammzahl für Betroffene
- die im Firmenbuch eingetragen sind, die Firmenbuchnummer (§ 3 Abs. 1 Z 1 des Firmenbuchgesetzes, BGBl. Nr. 10/1991),
- die im Zentralen Vereinsregister eingetragen sind, die Vereinsregisterzahl (§ 18 Abs. 2 des Vereinsgesetzes 2002, BGBl. I Nr. 66/2002),
- die ein Unternehmen im Sinne des § 3 Z 20 des Bundesstatistikgesetz 2000, BGBl. I Nr. 163/1999, sind, und
- Einkünfte gemäß des § 2 Abs. 3 Z 1 bis 3 und 6 des Einkommensteuergesetzes 1988 – EStG 1988, BGBl. Nr. 400/1988, erzielen,
- keine Gebietskörperschaften oder andere Körperschaften oder Anstalten des öffentlichen Rechts sind sowie
- nicht im Firmenbuch oder im Zentralen Vereinsregister eingetragen sind, die für sie vergebene Global Location Number (GLN),
- die ein im land- und forstwirtschaftliches Betriebsinformationssystem (LFBIS) gemäß des § 1 Abs. 1 LFBIS-Gesetz, BGBl. Nr. 448/1980, zu erfassender land- und forstwirtschaftlicher Betrieb sind, und nicht unter Z 1 bis 3 fallen, die für sie vergebene GLN,
- die die Gründung eines Unternehmens im Sinne des § 3 Z 20 Bundesstatistikgesetz 2000 über ein elektronisches Verfahren begonnen haben und nicht unter Z 1 bis 4 fallen, die für sie vergebene GLN,
- die im Ergänzungsregister für sonstige Betroffene (Abs. 4) eingetragen sind, die im Ergänzungsregister vergebene Ordnungsnummer zu verwenden (siehe § 6 Abs 3 E-GovG).
Ein Beispiel ist in Verbindung mit der Berechnung des bereichsspezifischen Personenkennzeichens für die Verwendung im privaten Bereich weiter unten angeführt.
Ermittlung des Organwalter-Personenkennzeichens (OwPK)
Das Organwalter-Personenkennzeichen (OwPK) ist die eindeutige Identifikation eines Organwalters in einem behördlichen Verfahren und kann dort als solches gespeichert werden. Es kann von der Stammzahlenregisterbehörde mit dem zugehörigen Algorithmus auch in die Stammzahl rückgerechnet werden. Grundlage für die Ermittlung des Organwalter-Personenkennzeichens ist die Stammzahl des Verwaltungsbediensteten (Organwalters).
Algorithmus:
- Ausgangsdatum ist die oben erwähnte Stammzahl.
- Der 128-Bit Binärwert (16 Byte) wird mit dem geheimen Triple-DES Schlüssel der Stammzahlenregisterbehörde im CBC-Modus zum OwPK verschlüsselt.
- Das OwPK wird schließlich in Base64 kodiert (dies schließt die Kodierung in ASCII mit ein).
Nachfolgende Abbildung und Tabelle veranschaulichen das Verfahren grafisch und exemplarisch:
| Stammzahl, Base64 | Qq03dPrgcHsx3G0lKSH6SQ== (24 Zeichen) |
|---|---|
| Triple-DES Verschlüsselung, hexadezimal | 42 AD 37 74 FA E0 70 7B 31 DC 6D 25 29 21 FA 49 (16 Byte) |
| Organwalter-Personenkennzeichen, Base64 [5] | Organwalter-Personenkennzeichen, Base64 [5] AEXyDbQ3Niw9OXPdV7E0Zo== (24 Zeichen) |
Ermittlung des bereichsspezifischen Personenkennzeichens (bPK)
Das bereichsspezifische Personenkennzeichen dient zur eindeutigen Identifikation eines Bürgers in einem bestimmten Verfahren vor einer Behörde. Es wird aus der Stammzahl des Bürgers und dem Bereichskürzel des Verfahrens nach der E-Government-Bereichsabgrenzungsverordnung (E-Gov-BerAbgrV), BGBl. II Nr. 289/2004, gebildet.
Das bPK wird in 2 Schritten ermittelt. Der erste Schritt ist die Bildung einer ISO-8859-1 Zeichenkette aus der Stammzahl und dem Bereich. Der zweite Schritt ist die kryptographische Einwegableitung dieser Zeichenkette, die das bPK ergibt.
Algorithmus:
- Ausgangsdaten:
Stammzahl, base64 [5] kodiert
Bereich: ISO-8859-1 Zeichenfolge der Bereichsabkürzung des Bereiches gemäß E-Government-Bereichsabgrenzungsverordnung (E-Gov-BerAbgrV). - Bildung der Zeichenkette als Verbindung (string concatenation) aus Stammzahl, "+" (als Zeichen), URN-Präfix und Bereichskürzel.
- Über die entstehende Zeichenkette (den entstehenden String) wird der SHA-1 Algorithmus wie in FIPS PUB 180-1 beschrieben berechnet. Das Resultat dieser Berechnung ist eine 160-Bit-Zahl (5x32 Bit)
- Diese 160-Bit-Zahl kann für programminterne Zwecke direkt verwendet werden. Ansonsten ist diese Zahl Base64 [5] zu kodieren.
URN-Präfix
URN-Präfix := "urn:publicid:gv.at:cdid+"
Der URN-Präfix ist definiert über:
- URN (RFC 2141 / RFC 2396)
- URN für Public Identifier (RFC 3151)
- Owner: gv.at
- Class: cdid+XXXXX (cdid = context dependent id, z. B. Bescheid)
Nachfolgende Abbildung und Tabelle veranschaulichen das Verfahren grafisch und exemplarisch mit einem Beispiel für einen Bescheid im Bereich Bauen und Wohnen:
| Stammzahl, Base64 [5] | Qq03dPrgcHsx3G0lKSH6SQ== (24 Zeichen) |
|---|---|
| Bereichskürzel | BW (ISO-8859-1, Beispiel: Bauen und Wohnen) |
| Eingangsdaten für die Hashberechnung | Qq03dPrgcHsx3G0lKSH6SQ==+urn:publicid:gv.at: bescheid+BW |
| Hashwert nach SHA-1, hexadezimal | 8FF3717514 21A7EB4DC8 4F56847741 498BB2DE10 (5 x 32bit; Darstellung hexadezimal) |
| bPK, Base64 | j/NxdRQhp+tNyE9WhHdBSYuy3hA= (28 Zeichen) |
Bildung des verschlüsselten bereichsspezifischen Personenkennzeichens (vbPK)
Bei der Anforderung von bPKs aus einem Bereich, in dem der Anfordernde nicht zur Vollziehung berufen ist, dürfen nur verschlüsselte Personenkennzeichen zur Verfügung gestellt werden. Die Verschlüsselung ist so zu gestalten, dass
- nur derjenige entschlüsseln kann, in dessen Datenanwendung das bPK in entschlüsselter Form zulässigerweise verwendet werden darf, und
- durch Einbeziehung von zusätzlichen, dem Anfordernden nicht bekannten variablen Angaben in die Verschlüsselungsbasis das bPK auch in verschlüsselter Form keinen personenbezogenen Hinweis liefert.
Das zur Verschlüsselung zugelassene Verfahren ist RSA mit einer Schlüssellänge von mindestens 4096 Bit.
Algorithmus:
- Ausgangsdaten: bPK in Base64 Darstellung, RSA-Public Key (4096 Bit)
- Erstellung der zu verschlüsselnden Daten entsteht durch Verbinden von ISO-8859-1 Strings (string concatenation) von folgenden Strings:
- "V1::" URN-Präfix und bPK Bereich laut Berechnungs-Algorithmus des bPK.
- "::" bPK in Base64 Darstellung
- "::" Datum und Uhrzeit nach ISO-8601 §5 „extended format": "YYYY-MMDDThh:mm:ss" [ISO-8601]
- Der so gebildete String dient als Eingangsparameter der RSA-Verschlüsselung nach PKCS#1 RSAES-OAEP Spezifikation [PKCS#1].
- Das Resultat der Verschlüsselung wird Base64 kodiert. Anmerkung: Die notwendige geforderte "variable" Verschlüsselung beruht darauf, dass einerseits der Zeitpunkt der Erstellung einbezogen wird, andererseits der verwendete RSAES-OAEP Algorithmus blockorientiert arbeitet und die fehlenden Zeichen auf die Blocklänge durch zufällige Werte auffüllt.
Anmerkung: Die notwendige geforderte "variable" Verschlüsselung beruht darauf, dass einerseits der Zeitpunkt der Erstellung einbezogen wird, andererseits der verwendete RSAES-OAEP Algorithmus blockorientiert arbeitet und die fehlenden Zeichen auf die Blocklänge durch zufällige Werte auffüllt.
| bPK, Base64 | 8lujqZzaRNTPkIIzxx3VfM/zCZs= (28 Zeichen) |
|---|---|
| Kürzel bPK-Bereich | T1 (für Testbereich 1 im SZR) |
| Datum und Uhrzeit | 2025-09-24T11:57:34 |
| Eingangsdaten für Verschlüsselung | V1::urn:publicid:gv.at:cdid+T1::8lujqZzaRNTPkIIzxx3Vf M/zCZs=::2025-09-24T11:57:34 (Kodierung in -8859-1) |
| RSA-Public Key | public exponent: 10001 (3 Bytes) modulus: EA 4C 09 7A 70 CA 99 20 56 7F BC 8C A7 02 90 CB 67 A9 A0 69 75 44 00 BB 92 FC 0E AA 05 B3 FC 64 DD DE 49 09 B4 C6 10 E2 74 9D 76 C7 67 41 EC 6B 72 70 80 75 C2 87 08 B0 DE 79 15 7C 6B 1D 8E F5 A1 0B 54 29 F4 1B D0 78 18 48 4A 2A 32 FE 18 7E 79 31 FB F2 B4 70 EE E5 A0 BC A7 55 DF 65 39 61 CB BD 6B C2 4F E8 2B B4 EA D4 E3 39 A3 1F ED F3 D3 FA B0 02 A5 AA 5F 66 A4 A5 72 DF 88 F5 0A 2A EF 68 24 1E 67 EB 15 DC ED 44 3B F8 41 43 6B 3B 0B 09 94 63 1A 78 9D 2D 34 2D 73 7B 16 59 8A 70 1A 01 AB 1C 96 D4 58 A8 DB 76 7D 21 73 1F 72 C7 6B BC 23 F7 CB 46 6B 31 83 02 CE 5B 18 7F A9 F9 67 A1 6F 08 51 DB 9E C4 BC 95 DC 11 B7 6F 2E D4 DE 11 14 9E 5E 64 24 30 71 CC 37 83 AB 24 B1 1E 33 26 B8 44 CC 0E 1E F9 74 1B 87 20 9B 5E F7 89 4A B7 D2 14 23 97 C4 4F 3D 8A 51 FF D4 80 31 9D F6 FA CB 81 EC 85 FD 04 F0 6B 08 58 57 95 CF 82 8D A5 02 6C 9F 05 06 B5 05 22 1B 11 13 90 B5 46 DD C7 61 F7 57 5D 75 E3 AC 8E 23 AB 31 FC 56 D5 90 9B C9 05 BE E7 C0 C9 F4 3E BB 8D 17 47 59 8D C8 7D C8 00 A9 E1 71 80 09 FA 2A 33 0A 90 DD 9F 8C 90 EF 45 16 08 81 CD FF 05 55 91 E3 B4 0F 86 F5 9E 05 B0 4F 3E 8D 53 AE 60 94 2D D3 49 56 59 A5 54 3B 5A 29 F4 D2 46 47 F4 E6 A3 6C 9A FD F0 FB E9 46 21 9A FD D0 3E DA DD 88 3A 37 3F FF B0 97 04 44 53 D6 B9 E2 9F 8E 05 7B 54 0C CA 72 2D D9 77 5B FF 7A E1 D4 5E A0 62 EB 2E 61 60 C5 09 66 2E F7 94 63 25 20 FB B1 56 7B 6C 7D FC AD AB 36 0D 07 74 5B 8D F9 AE 44 B5 D5 D9 3F 65 72 DD 99 EF 61 99 B6 F8 AD 02 FC BB DF 4F 0D 99 34 CE ED 90 DD 00 8C 9B CD 4F BA 16 47 7E 48 D8 EF E0 BD 2B E1 CF FD B2 A6 D0 07 E6 9E 28 2C 20 F7 1B (4096 bits = 512 Bytes) |
| Verschlüsseltes bPK, hexadezimal | 60 22 5C A8 23 06 D0 2E 34 29 4E B2 27 F3 55 6B AA D2 8A 87 92 8C 35 10 63 A4 3A F9 08 44 FF 98 AB 8F 9E 0C DF F3 B4 22 78 A9 09 AC A2 29 2E D2 F3 C4 46 D1 23 2D 1D 2E F2 E0 5A 02 23 A1 01 27 D3 0D F7 6F 35 FC DC 8E A2 E4 91 FA A1 81 D3 F9 27 E7 DB C4 FB B1 62 28 D2 04 2D BE DE C4 B6 35 32 A7 40 1B 58 3F B6 80 3F 6F 00 54 C7 A1 57 21 81 40 8E 06 5A 0F B5 EB 3D E5 50 2C A2 4D 64 68 EA DE 08 B9 E7 81 F7 7B CD 36 A9 D8 B5 62 9C BC D3 B5 F9 52 CD 1C 15 6B 53 B3 35 11 C6 38 03 69 18 29 D9 43 D5 0C 5E 5E 77 0A D6 6B A5 BE C4 3A 6F E3 D4 50 E6 20 62 FB A2 2D A5 CA 95 C6 35 40 94 E2 49 52 71 31 B9 D1 1D DF 91 5F F4 33 37 FB 75 2D 9F 2D ED A5 B7 DB 59 58 58 B5 59 EE 19 DA D4 D9 55 DA A6 79 E8 19 09 90 87 92 B7 2E 63 FA E4 A1 03 3B AA 96 50 01 C2 8E F2 84 7F 37 55 B5 40 25 32 AB 0D 71 2A A7 02 F7 68 AD 83 96 0C FA E6 E3 13 6A BD D0 66 EC 5F 96 59 48 EB 2A F1 75 37 26 F9 F2 4C 6B 05 9F 81 D4 98 57 14 30 31 04 8A 08 1D A1 A9 95 6D 4D DE 7D 3F 64 18 92 86 4C B0 D6 3B 26 62 D4 4A 01 55 4A 0E 36 96 76 7E DD E0 99 96 67 0A 0A 1C 58 4B C3 0A 3E 0D E7 14 09 0D 49 D0 2F 13 D4 B0 8F 38 42 89 6E AC 9B 6B 13 19 B6 BC 24 1D D7 31 B6 4B C4 97 D9 28 08 CA 36 8E 69 D9 AC B4 6E D2 5D D0 2C A0 DA 73 B4 F6 AD B0 1D 96 1A 5F 97 CE 4C A0 45 C3 43 84 81 85 E1 C3 EA 69 5F 57 A3 30 3D AB 93 0E A5 8E 60 1D 64 F4 62 CE E3 65 59 77 3E 93 17 E4 A5 62 2E B7 FA 96 C5 4D FA 43 88 17 B3 9B DF 19 81 E2 5E 48 42 FF 4B 0C 08 FF F3 98 F3 74 44 78 69 E3 B7 CB 0A 8F D7 4F 20 CA DF 6D A7 56 4F AA 41 FD B9 F6 72 F4 44 FF 91 F4 5D F2 F2 67 53 6E 91 D0 CF 6B 90 (512 Bytes) |
| Verschlüsseltes bPK, Base64 | YCJcqCMG0C40KU6yJ/NVa6rSioeSjDUQ Y6Q6+QhE/5irj54M3/O0InipCayiKS7S88RG0SMtHS7y4Fo CI6EBJ9MN9281/NyOouSR+qGB0/kn59vE+7FiKNIELb7ex LY1MqdAG1g/toA/bwBUx6FXIYFAjgZaD7XrPeVQLKJNZ Gjq3gi554H3e802qdi1Ypy807X5Us0cFWtTszURxjgDaRgp2U PVDF5edwrWa6W+xDpv49RQ5iBi+6ItpcqVxjVAlOJJUnExud Ed35Ff9DM3+3Utny3tpbfbWVhYtVnuGdrU2VXapnnoGQmQ h5K3LmP65KEDO6qWUAHCjvKEfzdVtUAlMqsNcSqnAvdor YOWDPrm4xNqvdBm7F+WWUjrKvF1Nyb58kxrBZ+B1JhXF DAxBIoIHaGplW1N3n0/ZBiShkyw1jsmYtRKAVVKDjaWdn7 d4JmWZwoKHFhLwwo+DecUCQ1J0C8T1LCPOEKJbqybax MZtrwkHdcxtkvEl9koCMo2jmnZrLRu0l3QLKDac7T2rbAdlhp fl85MoEXDQ4SBheHD6mlfV6MwPauTDqWOYB1k9GLO42 VZdz6TF+SlYi63+pbFTfpDiBezm98ZgeJeSEL/SwwI//OY83R EeGnjt8sKj9dPIMrfbadWT6pB/bn2cvRE/5H0XfLyZ1NukdDP a5A= (685 Zeichen) |
Ermittlung des bereichsspezifischen Personenkennzeichens für die Verwendung im Privaten Bereich
Die Bildung des bereichsspezifischen Personenkennzeichens für die Verwendung im privaten Bereich erfolgt analog zur Bildung des gewöhnlichen bPK. Gemäß § 14 Abs. 1 E-GovG kann für die Identifikation von natürlichen Personen im elektronischen Verkehr mit einem Verantwortlichen des privaten Bereichs durch den Einsatz des E-ID eine spezifische Ableitung aus dem Hashwert gebildet werden, die aus der Stammzahl des Betroffenen und der Stammzahl des Verantwortlichen als Bereichskennung erzeugt wird. Voraussetzung hiefür ist, dass der Verantwortliche des privaten Bereichs eine für den Einsatz des E-ID taugliche technische Umgebung eingerichtet hat, in der seine Stammzahl als Bereichskennung im Errechnungsvorgang für das bereichsspezifische Personenkennzeichen für die Verwendung im privaten Bereich zur Verfügung gestellt wird.
Algorithmus:
Der Algorithmus ist identisch mit dem Algorithmus zur Berechnung des bPK mit Ausnahme veränderter Ausgangsdaten.
- Ausgangsdaten:
- Stammzahl der natürlichen Person, Base64 kodiert
- Stammzahl des Verantwortlichen als Bereichskennung
- Bildung der Zeichenkette als Verbindung (string concatenation) aus Stammzahl der natürlichen Person und "+" (als Zeichen) und URN-Präfix und Stammzahl des Verantwortlichen.
- Ist die Stammzahl eine Firmenbuchnummer, so ist diese inklusive des Prüfzeichens anzugeben. Führende Nullen werden unterdrückt. Leerzeichen oder Bindestriche vor dem Prüfzeichen werden nicht angeführt.
- Über die entstehende Zeichenkette (den entstehenden String) wird der SHA-1 Algorithmus wie in FIPS PUB 180-1 beschrieben berechnet. Das Resultat dieser Berechnung ist eine 160bit-Zahl (5x32 bit)
- Diese 160bit-Zahl kann für programminterne Zwecke direkt verwendet werden. Ansonsten ist diese Zahl Base64 zu kodieren.
URN-Präfix
URN-Präfix := "urn:publicid:gv.at:wbpk+XXX+"
Wobei 'XXX' folgenden Wert annimmt, wenn es sich bei der Stammzahl des Verantwortlichen um eine
- Firmenbuchnummer handelt: "FN"
- Vereinsregisternummer handelt: "VR"
- Zahl im Ergänzungsregister für nicht natürliche Personen handelt: "ERJ"
- Stammzahl einer natürlichen in Österreich meldepflichtigen Person handelt: "ZMR"
- Stammzahl einer natürlichen Person mit Eintrag im Ergänzungsregister handelt: "ERN"
Nachfolgende Tabelle veranschaulicht das Verfahren exemplarisch mit einem Beispiel:
| Stammzahl, Base64 [5] | Qq03dPrgcHsx3G0lKSH6SQ== (24 Zeichen) |
|---|---|
| Stammzahl des Verantwortlichen | 468924 i |
| Präfix für Firmenbuchnummer | urn:publicid:gv.at:wbpk+FN+ |
| Eingangsdaten für die Hashberechnung | Qq03dPrgcHsx3G0lKSH6SQ==+urn:publicid:gv.at:wbpk+F N+468924i (Leerzeichen vor "i" entfernt – siehe Schritt 2) |
| Hashwert nach SHA-1, hexadezimal | 43B8485AB5 6A3FE55946 24E2966DFE 9A2A082B9C (5 x 32 bit) |
| Hashwert nach SHA-1, Base64 | Q7hIWrVqP+VZRiTilm3+mioIK5w= (28 Zeichen) |
[1] Seedwert: Der seed [englisch: Saat] ist ein beliebiger (Zufalls)wert, der dem Ausgangswert vor der Durchführung kryptografischer Berechnungen beigefügt werden kann. Dadurch werden einerseits Rückschlüsse auf den Ausgangswert erschwert. Andererseits wird der Ausgangswert auf eine bestimmte Größe erweitert. Durch die Verbindung eines Seedwertes mit einem Ausgangswert können kryptografische Algorithmen wirkungsvoll verstärkt werden. Dies ist vor allem dann sinnvoll, wenn beispielsweise die geringe Anzahl an verschiedenen Ausgangswerten ein "systematisches Erraten" des Ausgangwertes möglich erscheinen lässt.
[2] Konkatenieren ist ein Fachbegriff der Informatik und bedeutet "zusammensetzen".
[3] Triple-DES ist ein Verschlüsselungsalgorithmus, der aus Sicherheitsgründen dreimal hintereinander durchlaufen wird. DES ist die Abkürzung für Digital Encryption Standard (ein digitaler Verschlüsselungsstandard), der eine Blockchiffre darstellt, das heißt, dass der Ausgangswert in gleich große Blöcke eingeteilt und blockweise verschlüsselt wird.
[4] Cipher-Block-Chaining, abgekürzt CBC, ist eine Betriebsart des Triple-DES Algorithmus, in dem die Verschlüsselung des vorangegangenen Blocks logisch mit dem aktuellen Block vor dessen Verschlüsselung verknüpft wird.
[5] Base64 beschreibt ein Verfahren, bei dem Binärdaten in einen 64 Zeichen großen Zeichensatz (bestehend aus Groß- und Kleinbuchstaben, Ziffern von 0 bis 9, sowie den Zeichen "+", "=" und "/") umgewandelt werden.]
Ermittlung des bereichsspezifischen Personenkennzeichens für die Verwendung im Ausland
Bei der Bildung des bereichsspezifischen Personenkennzeichens für die Verwendung bei E-ID-tauglichen Anwendungen im Ausland ist § 14 Abs. 1 eGovG mit der Maßgabe anzuwenden, dass anstelle der Bereichskennung ein staatenspezifisches Kennzeichen oder bei Anwendungen internationaler Organisationen ein organisationsspezifisches Kennzeichen zu verwenden ist.
Algorithmus:
Der Algorithmus ist identisch mit dem Algorithmus zur Berechnung des bPK mit Ausnahme veränderter Ausgangsdaten.
- Ausgangsdaten:
- Stammzahl der natürlichen Person, Base64 kodiert
- staatenspezifisches oder organisationsspezifisches Kennzeichen
- Bildung der Zeichenkette als Verbindung (string concatenation) aus Stammzahl der natürlichen Person und "+" (als Zeichen) und URN-Präfix und staatenspezifisches oder organisationsspezifisches Kennzeichen (standardmäßig gemäß ISO 3166-1 alpha-2)
- Über die entstehende Zeichenkette (den entstehenden String) wird der SHA-1 Algorithmus wie in FIPS PUB 180-1 beschrieben berechnet. Das Resultat dieser Berechnung ist eine 160bit-Zahl (5x32 bit)
- Diese 160bit-Zahl kann für programminterne Zwecke direkt verwendet werden. Ansonsten ist diese Zahl Base64 zu kodieren.
URN-Präfix
URN-Präfix := "urn:publicid:gv.at:eidasid+AT+"
Nachfolgende Tabelle veranschaulicht das Verfahren grafisch und exemplarisch mit einem Beispiel:
| Stammzahl, Base64 [5] | Qq03dPrgcHsx3G0lKSH6SQ== (24 Zeichen) |
|---|---|
| Staatenspezifisches / organisationsspezifisches Kennzeichen (z.B. ISO 3166 ALPHA 2 Code) | EU |
| Präfix inkl. Kennzeichen | urn:publicid:gv.at:eidasid+AT+EU |
| Eingangsdaten für die Hashberechnung | Qq03dPrgcHsx3G0lKSH6SQ==+urn:publicid:gv.at:eidasid+AT+EU |
| Hashwert nach SHA-1, hexadezimal | 88f129f68f 1325437d4a ea862b72f8 3a2f1ff1ee (5 x 32 bit) |
| Hashwert nach SHA-1, Base64 | iPEp9o8TJUN9SuqGK3L4Oi8f8e4= (28 Zeichen) |