Verfahren zur Authentisierung, RF-Chip-Dokument, RF-Chip-Lesegerät und Computerprogrammprodukte
Für eine vertrauenswürdige Kommunikation zwischen einer ersten Partei und einer zweiten Partei ist eine gegenseitige Authentisierung erforderlich. Die Erfindung betrifft ein Verfahren zur Authentisierung, ein RF-Chip-Dokument, ein RF-Chip-Lesegerät und
Computerprogrammprodukte.
Grundsätzlich sind zwei Authentisierungsverfahren bekannt. Zum einen eine passwortbasierte Authentisierung und zum anderen eine zertifikatbasierte Authentisierung.
Zur passwortbasierten Authentisierung zählt das Password Authenticated Connection
Establishment (PACE), ausführlich beschrieben in der Technischen Richtlinie TR-03110 Version 2.05 des Bundesamtes für Sicherheit in der Informationstechnik (BSI)„Advanced Security Mechanisms for Machine Readable Travel Documents". Hierbei handelt es sich um eine passwortbasierte Schlüsseleinigung. Die passwortbasierte Schüsseleinigung umfasst die Schritte: Eine erste Partei und zweite Partei
• erzeugen jeweils ein ephemerales Schlüsselpaar, bestehend aus einem privaten
ephemeralen Schlüssel und einem öffentlichen ephemeralen Schlüssel,
• tauschen jeweils den öffentlichen ephemeralen Schlüssel aus und validieren diese über ein gemeinsames Passwort,
• erzeugen und validieren anschließend einen Sitzungsschlüssel, auf dessen Basis ein
sicherer Kommunikationskanal etabliert wird.
Für die zertifikatsbasierte Authentisierung besitzt eine erste Partei ein statisches Schlüsselpaar, bestehend aus einem privaten statischen Schlüssel und einem öffentlichen statischen Schlüssel, und ein von einer Zertifizierungsstelle ausgestelltes Zertifikat über den öffentlichen statischen Schlüssel. Der Zertifizierungsstelle ist ein öffentlicher Schlüssel zugeordnet, den die zweite Partei kennt. Die zertifikatsbasierte Authentisierung basiert darauf, dass die Zugehörigkeit des statischen Schlüsselpaares zur ersten Partei durch eine vertrauenswürdige dritte Partei, die Zertifizierungsstelle, in Form eines Zertifikates bestätigt wird. Das Zertifikat enthält dazu
mindestens den öffentlichen statischen Schlüssel, die eindeutige Identität der ersten Partei und eine elektronische Signatur der Zertifizierungsstelle über diese Daten. Die Signatur ist mir dem öffentlichen Schlüssel der Zertifizierungstelle verifizierbar. In einer nachfolgenden
Authentisierung kann die zweite Partei prüfen, ob die erste Partei den zum im Zertifikat enthaltenen öffentlichen statischen Schlüssel zugehörigen privaten Schlüssel besitzt. Bekannte Verfahren für die zertifikatsbasierte Authentisierung sind die„Chip Authentisierung", ausführlich beschrieben in der Technischen Richtlinie TR-03110 Version 2.05 des Bundesamtes für
Sicherheit in der Informationstechnik (BSI)„Advanced Security Mechanisms for Machine Readable Travel Documents".
Aus der vorgenannten Richtlinie TR-03110 ist auch ein Verfahren bekannt, dass eine
Kombination aus passwortbasierter Authentisierung und zertifikatsbasierter Authentisierung darstellt. Diese Kombination ist unter anderem dann erforderlich, wenn die Identität mindestens einer Partei vertraulich ist. Die Berechtigung zur Kommunikation wird erst durch Kenntnis und Nachweis eines gemeinsamen Passwortes erteilt. Dieses gemeinsame Passwort wird
üblicherweise über einen speziellen Kanal, oft von geringer Bandbreite, zwischen den
Kommunikationspartnern verteilt. Der ersten Partei kann ein RF-Chip-Dokument mit einem RF- Chip zugeordnet sein, auf dem vertrauliche Daten gespeichert sind. Der zweiten Partei kann ein Lesegerät für das RF-Chip-Dokument zugeordnet sein. Das gemeinsame Passwort kann auf dem RF-Chip-Dokument aufgedruckt sein und über einen optischen Scanner an das RF-Chip- Lesegerät übermittelt werden.
Nach der passwortbasierten Authentisierung wissen beide Parteien jeweils, dass sie auf sichere Weise mit einer anderen Partei kommunizieren, die im Besitz des gleichen Passworts ist, jedoch nicht, wer die andere Partei tatsächlich ist. Dieses ist insbesondere dann problematisch, wenn Gruppenpasswörter verwendet werden, so dass die Passwörter nicht eindeutig für jeweils eine Kombination aus zwei Parteien vergeben werden.
Durch eine nachgelagerte, zertifikatsbasierte Authentisierung kann dann die eindeutige Identität einer Partei festgestellt werden. Die Durchführung der zertifikatsbasierten Authentisierung nach der passwortbasierten Authentisierung hat den Vorteil, dass die Identität der sich
authentisierenden Partei erst dann offengelegt wird, wenn festgestellt wurde, dass beide Parteien grundsätzlich zur Kommunikation miteinander berechtigt sind, da beide das gleiche Passwort
verwenden. Aufgrund der Verschlüsselung und Integritätssicherung des Kanals durch die passwortbasierte Schlüsseleinigung können auch Dritte ein ausgetauschtes Zertifikat nicht einsehen. Ferner stellt die passwortbasierte Schlüsseleinigung auch sicher, dass das verwendete Passwort gegen Einsicht von Dritten geschützt ist.
Die bisherige Implementierung führt die beiden Authentisierungsverfahren vollständig nacheinander aus. Illustriert ist dies in Fig. 3. Sowohl in der passwortbasierten Schlüsseleinigung als auch in der zertifikatsbasierten Authentisierung werden ephemerale Schlüsselpaare erzeugt und verwendet. Die Erzeugung der Schlüsselpaare und die Anwendung insbesondere der öffentlichen Schlüssel der ephemeralen Schlüsselpaare ist rechenintensiv und der notwendige Austausch der öffentlichen Schlüssel der ephemeralen Schlüsselpaare erfordert eine zusätzliche Kommunikation zwischen den Parteien.
Ein weiteres Problem der sequentiellen Ausführung ist die fehlende Bindung beider Protokolle, so dass nicht sichergestellt ist, dass beide Protokolle jeweils von der gleichen Partei durchgeführt wurden.
Der Erfindung liegt die Aufgabe zu Grunde, ein Verfahren zur Authentisierung zur
vertrauenswürdigen Kommunikation effizient und sicher auszubilden. Diese Aufgabe wird erfindungsgemäß durch die Merkmale des Verfahrensanspruches 1 gelöst. Die Aufgabe wird ferner durch jeden der nebengeordneten Ansprüche 5, 6, 7und 8 gelöst, die auf die eigenständigen Herstellungsprodukte RF-Chip-Dokument, Computerprogrammprodukt für das RF-Chip-Dokument, RF-Chip-Lesegerät und Computerprogrammprodukt für das RF-Chip- Lesegerät gerichtet sind.
Gemäß Merkmal d des Anspruches 1 berechnet eine Partei A eine Transformation zwischen dem eigenen ephemeralen Schlüsselpaar aus der passwortbasierten Authentisierung und dem eigenen statischen Schlüsselpaar der zertifikatsbasierten Authentisierung unter Erhalt von einem
Parameter der Transformation. Durch die Wiederverwendung des eigenen ephemeralen
Schlüsselpaares aus der passwortbasierten Authentisierung in der zertifikatsbasierten
Authentisierung wird zum einen der gesamte Berechnungs- und Kommunikationsaufwand
verringert, zum anderen erfolgt eine Bindung der beiden Protokolle, so dass sichergestellt ist, dass beide Protokolle von der gleichen Partei ausgeführt werden. Dadurch wird die Sicherheit bei gleichzeitiger Verringerung des Aufwandes erhöht. Die mit der Erfindung erzielten Vorteile bestehen darin, dass die zur Durchführung beider Protokolle benötigte Zeit erheblich reduziert ist. Die Berechnung und die Anwendung der Transformation ist wesentlich effizienter, als die erneute Erstellung eines weiteren ephemeralen Schlüsselpaares und der anschließenden Durchführung der Authentisierung. Mit großem Vorteil wird die Durchführung der zweiten Schlüsseleinigung vollständig eingespart und die
Sitzungsschlüssel der passwortbasierten Authentisierung weiterverwendet. Die Bindung der beiden Protokolle erfolgt dadurch, dass zur Berechnung der Transformation die Kenntnis sowohl des ephemeralen privaten Schlüssels der passwortbasierten Schlüsseleinigung als auch des statischen privaten Schlüssels der zertifikatbasierten Authentisierung notwendig ist.
Ein erstes, eigenständiges Herstellungsprodukt ist ein RF-Chip-Dokument mit einem
Mikrocomputer mit einem Mikrocomputerspeicher, derart, dass im Mikrocomputerspeicher ein erstes Computerprogramm abgespeichert ist, das so ausgebildet ist, dass das Verfahren bezüglich der Partei A ausführbar ist.
Ein erstes Computerprogrammprodukt, das ein computerlesbares Medium aufweist, umfasst einen Programmcode zur Implementierung des ersten Computerprogramms in den
Mikrocomputerspeicher. Hierzu dient eine Rechenanlage, die im Rahmen der Herstellung des RF-Chip-Dokuments verwendet wird.
Ein zweites, eigenständiges Herstellungsprodukt ist ein RF-Chip-Lesegerät mit einem Rechner mit einem Rechnerspeicher, derart, dass im Rechnerspeicher ein zweites Computerprogramm abgespeichert ist, das so ausgebildet ist, dass das Verfahren bezüglich der Partei B ausführbar ist.
Ein zweites Computerprogrammprodukt, das ein computerlesbares Medium aufweist, umfasst einen Programmcode zur Implementierung des zweiten Computerprogramms in den
Rechnerspeicher des Rechners des RF-Chip-Lesegeräts.
Gemäß einer vorteilhaften Ausgestaltung der Erfindung wird im Schritt d) des Anspruches 1 für die Berechnung des Parameters der Transformation der private statische Schlüssel auf den privaten ephemeralen Schlüssel abgebildet. Dies vereinfacht die Berechnung, da alle vom statischen Schlüssel direkt abhängigen Berechnungen einmalig vorberechnet werden können.
Gemäß einer weiteren vorteilhaften Ausgestaltung der Erfindung wird im Schritt d) des
Anspruches 1 für die Berechnung des Parameters der Transformation eine zusätzliche
Zufallszahl verwendet, die von der ersten Partei nicht beeinflussbar ist. Die zusätzliche
Zufallszahl kann eine Zahl sein, die von der zweiten Partei an die erste Partei übermittelt wird. Diese Ausgestaltung hat den Vorteil, dass die Berechnung des Parameters der Transformation nicht ausschließlich auf den ephemeralen und statischen Schlüsselpaaren der ersten Partei basiert, sondern auch von einem Wert abhängt, der nicht unter der Kontrolle der ersten Partei steht. Somit wird die Sicherheit des Verfahrens erhöht.
Gemäß einer weiteren vorteilhaften Ausgestaltung der Erfindung hinsichtlich Schritt f) des Anspruches 1 wendet die zweite Partei den erhaltenen Parameter der Transformation nur auf einen der beiden öffentlichen Schlüssel der ersten Partei an und überprüft die Korrektheit des erhaltenen transformierten öffentlichen Schlüssels dadurch, dass eine Äquivalenz des
transformierten öffentlichen Schlüssels mit dem anderen öffentlichen Schlüssel der Partei überprüft wird. Dadurch, dass die Transformation nur auf einen der beiden öffentlichen Schlüssel der ersten Partei angewendet wird, ist der Berechnungsaufwand gering. Höher wäre der
Berechnungsaufwand, würde man den Parameter der Transformation auf beide öffentlichen Schlüssel der ersten Partei anwenden. Dann würden zwei transformierte öffentliche Schlüssel erhalten werden. Eine jeweilige Korrektheit der beiden transformierten öffentlichen Schlüssel könnte dadurch überprüft werden, indem man eine Äquivalenz der beiden transformierten öffentlichen Schlüssel untereinander überprüft.
Ausführungsbeispiele der Erfindung werden nachfolgend an Hand der Zeichnungen näher
erläutert. Dabei zeigen:
Fig. 1 ein Zusammenwirken einer ersten Partei, einer zweiten Partei und einer
Zertifizierungsstelle, als Skizze;
Fig. 2 einen Ablauf einer Authentisierung, als Ablaufskizze;
Fig. 3 einen Ablauf einer Authentisierung nach dem Stand der Technik, als Ablaufskizze.
Die Fig. 1 illustriert ein System zur Authentisierung zur vertrauenswürdigen Kommunikation zwischen einer ersten Partei A und einer zweiten Partei B. Das System umfasst ein RF-Chip- Dokument und ein RF-Chip-Lesegerät. Das RF-Chip-Dokument ist der ersten Partei A und das RF-Chip-Lesegerät der zweiten Partei B zugeordnet. Das RF-Chip-Dokument umfasst einen Mikrocomputer mit einem Mikrocomputerspeicher. Im Mikrocomputerspeicher ist ein erstes Computerprogramm abgespeichert, das so ausgebildet ist, dass ein Verfahren zur Authentisierung bezüglich der Partei A ausführbar ist. Die Implementierung des ersten Computerprogramms in den Mikrocomputerspeicher erfolgte unter Verwendung eines ersten
Computerprogrammproduktes.
Das RF-Chip-Lesegerät umfasst einen Rechner mit einem Rechnerspeicher. Im Rechnerspeicher ist ein zweites Computerprogramm abgespeichert, das so ausgebildet ist, dass das Verfahren bezüglich der Partei B ausführbar ist. Die Implementierung des zweiten Computerprogramms in den Rechnerspeicher erfolgte unter Verwendung eines zweiten Compute rogrammproduktes.
Hinsichtlich der Partei A ist das RF-Chip-Dokument ein Reisepass. Hinsichtlich der Partei B ist das RF-Chip-Lesegerät ein Gerät für Grenzbeamte. Hersteller und gleichzeitig Herausgeber des Reisepasses ist eine Zertifizierungsstelle C.
Das Verfahren zur Authentisierung ist eine Kombination von einer passwortbasierten
Authentisierung und einer zertifikatsbasierten Authentisierung. Für die zertifikatsbasierte Authentisierung besitzt die erste Partei A ein statisches Schlüsselpaar und ein von der
Zertifizierungsstelle C ausgestelltes Zertifikat.
Die zweite Partei B kennt den öffentlichen Schlüssel der Zertifizierungsstelle C. Bezogen auf das vorliegende Ausführungsbeispiel ist der öffentliche Schlüssel der Zertifizierungsstelle C in dem Rechnerspeicher des Rechners des RF-Chip-Lesegeräts gespeichert.
Wie Fig. 2 zeigt, wird zuerst wird eine passwortbasierte Authentisierung durchgeführt. Die passwortbasierte Authentisierung erfolgt über das PACE-Protokoll, definiert in der Technischen Richtlinie TR-03110 Version 2.05 des Bundesamtes für Sicherheit in der Informationstechnik (BSI)„Advanced Security Mechanisms for Machine Readable Travel Documents".
Allgemein gilt, dass Schlüsselpaare basierend auf diskreten Logarithmen verwendet werden. Der private Schlüssel x ist jeweils eine Zufallszahl im Bereich von 1 bis q-1, wobei q die Ordnung des Erzeugers g der verwendeten mathematischen Gruppe ist (z.B. die multiplikative Gruppe eines endlichen Körpers oder die additive Gruppe der Punkte einer elliptischen Kurve). Der zugehörige öffentliche Schlüssel y berechnet sich mit: y=g^x. Die Potenzierung (^) stellt das x- malige Anwenden der Gruppenoperation (*) beginnend mit dem Erzeuger g dar.
Die Schritte der passwortbasierten Authentisierung sind:
a) Die erste Partei A und zweite Partei B erzeugen jeweils ein ephemerales Schlüsselpaar, bestehend aus einem privaten ephemeralen Schlüssel und einem öffentlichen ephemeralen Schlüssel. Als Kurzbezeichnung für den privaten ephemeralen Schlüssel der Partei A dient nachfolgend xeA. Der öffentliche ephemerale Schlüssel der Partei A wird nachfolgend mit yeA bezeichnet, xeB und yeB stehen für den privaten und öffentlichen ephemeralen Schlüssel der Partei B. Die ephemeralen Schlüsselpaare xeA mit yeA und xeB mit yeB sind für eine Diffie- Hellman-Schlüsseleinigung geeignet.
b) Die erste Partei A und zweite Partei B tauschen jeweils den öffentlichen ephemeralen
Schlüssel aus und validieren diese über ein gemeinsames Passwort. Das Validieren erfolgt mittels der Durchführung des PACE-Protokolls. Mit Blick auf die Fig. 1 ist das gemeinsame Passwort hinsichtlich der Partei A in der RF-Chip- Anordnung des RF-Chip-Dokuments abgespeichert. Ferner ist das gemeinsame Passwort auf dem RF-Chip-Dokument aufgedruckt. Über einen Passwort-Scanner des RF-Chip-Lesegeräts ist der Partei B das gemeinsame
Passwort bekannt.
c) Die erste Partei A und zweite Partei B erzeugen und validieren einen Sitzungsschlüssel, auf dessen Basis ein sicherer Kommunikationskanal etabliert wird. Dies erfolgt auf der Basis eines im PACE-Protokolls etablierten, gemeinsamen Geheimnisses.
Anschließend wird eine zertifikatsbasierte Authentisierung durchgeführt.
Hierzu werden ein erstes und ein zweites Ausführungsbeispiel beschrieben.
Die Schritte des ersten Ausführungsbeispieles der zertifikatsbasierten Authentisierung sind: d) Die erste Partei A berechnet eine Transformation zwischen dem eigenen ephemeralen
Schlüsselpaar aus der passwortbasierten Authentisierung und dem eigenen statischen
Schlüsselpaar der zertifikatsbasierten Authentisierung unter Erhalt von einem Parameter der Transformation.
Für die Berechnung des Parameters der Transformation wird der private statische Schlüssel XSA auf den privaten ephemeralen Schlüssel xeA abgebildet. Es handelt sich um eine bijektive Abbildung. Die Transformation t wird berechnet mit der Formel:
Im vorliegenden ersten Ausführungsbeispiel ist der Parameter der Transformation der berechnete Wert t. Das Inverse des statischen privaten Schlüssels wird nur einmalig und nicht
bei jeder Authentisierung erneut berechnet. Die Transformation ist eine bijektive
Transformation.
e) Die erste Partei A sendet den Parameter der Transformation, hier gegeben durch den in Schritt d bestimmten Wert t, gemeinsam mit dem von der Zertifizierungsstelle C ausgestellten Zertifikat an die zweite Partei B über den sicheren Kommunikationskanal.
f) Die zweite Partei B wendet den erhaltenen Parameter der Transformation auf den im
Zertifikat enthaltenen öffentlichen statischen Schlüssel ys
A der ersten Partei A an und erhält damit einen transformierten öffentliche Schlüssel ytA. Die Formel hierzu lautet:
Die Korrektheit des transformierten öffentlichen Schlüssels ytA ist nun zu überprüfen. Hierzu überprüft die zweite Partei eine Äquivalenz des öffentlichen transformierten Schlüssels ytA
der Partei A mit dem zuvor in der passwortbasierten Authentisierung ausgetauschten öffentlichen ephemeralen Schlüssel yeA der ersten Partei A . Die zweite Partei prüft: yeA = ytA.
In Abweichung zum vorliegenden Ausführungsbeispiel könnte die zweite Partei B den erhaltenen Parameter der Transformation auch auf den öffentlichen ephemeralen Schlüssel yeA der ersten Partei A anwenden und die Korrektheit des erhaltenen transformierten öffentlichen Schlüssels dadurch überprüfen, dass eine Äquivalenz des transformierten Schlüssels mit dem öffentlichen statischen Schlüssel ysA der Partei A überprüft wird.
g) Die zweite Partei B validiert das von der ersten Partei A erhaltene Zertifikat mit dem
öffentlichen Schlüssel der Zertifizierungsstelle C.
Die Schritte des zweiten Ausführungsbeispieles der zertifikatsbasierenden Authentisierung sind: d) Die erste Partei A berechnet eine Transformation zwischen dem eigenen ephemeralen
Schlüsselpaar aus der passwortbasierten Authentisierung und dem eigenen statischen
Schlüsselpaar der zertifikatsbasierten Authentisierung unter Erhalt von einem Parameter der Transformation.
Im Unterschied zum ersten Ausführungsbeispiel wird für die Berechnung der Transfomation zusätzlich eine Zufallszahl c verwendet, die nicht von der Partei A beeinflusst werden kann. Zum Beispiel kann die zweite Partei B zuvor der Partei A eine Zufallszahl c übermitteln oder die Zufallszahl c könnte deterministisch aus dem Protokollablauf berechnet werden, zum Beispiel durch die Anwendung einer Hashfunktion auf den epehmeralen öffentlichen Schlüssel der Partei B.
Die erste Partei A berechnet die Transformation t mit:
Der Parameter der Transformation ist im vorliegenden zweiten Ausführungsbeispiel ein Tupel mit dem Wert der Zufallszahl c und dem Wert der Transformation. Abgekürzt ist der Tupel mit: (c, t).
e) Die erste Partei A sendet den Parameter der Transformation (c, t) gemeinsam mit dem von der Zertifizierungsstelle C ausgestellten Zertifikat an die zweite Partei B über den sicheren Kommunikationskanal. Da die Zufallszahl c der Partei B bekannt ist, genügt es, wenn die erste Partei nur den Wert der Transformation t der Partei B übermittelt.
f) Die zweite Partei B wendet den erhaltenen Parameter (c, t) der Transformation auf den im Zertifikat enthaltenen statischen öffentlichen Schlüssel ysA der ersten Partei A an und erhält damit einen transformierten öffentlichen Schlüssel ytA. Die Formel hierzu lautet:
Die Korrektheit des transformierten öffentlichen Schlüssels yt
A ist nun zu überprüfen. Hierzu überprüft die zweite Partei eine Äquivalenz des öffentlichen transformierten
Schlüssels ytA der Partei A mit dem zuvor in der passwortbasierten Authentisierung ausgetauschten öffentlichen ephemeralen Schlüssel yeA der ersten Partei A . Die zweite Partei prüft:
g) Die zweite Partei B validiert das von der ersten Partei A erhaltene Zertifikat mit dem
öffentlichen Schlüssel der Zertifizierungsstelle C.