-
Die
Erfindung betrifft ein Verfahren zum Festlegen eines Vertrauenswürdigkeitsgrades
eines Teilnehmers in einer Datenübertragungsverbindung
zwischen einem ersten Kommunikationsteilnehmer und einem zweiten
Kommunikationsteilnehmer. Insbesondere betrifft die Erfindung ein
Verfahren zum Festlegen des Vertrauenswürdigkeitsgrades einer tragbaren
Einrichtung wie beispielsweise eines Mobiltelefons in einer gesicherten
Umgebung, die z.B. eine Smartcard und einen Nachserver (back-end
server) umfasst.
-
TECHNISCHES GEBIET UND HINTERGRUND DER
ERFINDUNG
-
Karten
mit integrierten Schaltkreisen, die auch unter der Bezeichnung Smartcard
bekannt sind, werden im Allgemeinen als sicherer gegenüber Manipulationen
eingeschätzt
als herkömmliche
Computersysteme und daher oft für
Identitätsprüfungs- und Sicherheitsfunktionen
in großen
Computersystemen eingesetzt. Als Beispiel ist die Verwendung einer Smartcard
als Teilnehmerkennungsmodul, kurz SIM, im Mobilfunksystem GSM zu
nennen. Hier wird das Mobiltelefon bzw. die mobile Einheit ME normalerweise
nicht als vertrauenswürdige
Einheit angesehen und eine vertrauenswürdige Smartcard eingesetzt, um
Teilnehmerdaten sicher zu speichern und Identitätsprüfungsfunktionen auszuführen. Beim
Führen eines
Telefongesprächs
prüft das
Mobilfunknetz die Identität
des mobilen Benutzers durch Ausführen
der in der vertrauenswürdigen
Smartcard enthaltenen Identitätsprüfungsfunktionen.
-
Mobiltelefone
werden jetzt immer mehr zur Ausführung
von Benutzerprogrammen für
Zusatzanwendungen wie Bank- und Zahlungsgeschäfte ausgelegt. Der Zugriff
auf die Smartcard des Mobiltelefons wird für die zur Ausführung der
Zusatzanwendung erforderlichen betreffenden Sicherheitsfunktionen
sichergestellt, zum Beispiel für
die Erstprüfung der
Identität
für eine
vom Mobiltelefon ausgehende Finanztransaktion. Zwar kann eine Smartcard
alle wichtigen Sicherheitsfunktionen ausführen, aber das ist insofern
unwahrscheinlich, als die Smartcard nur über begrenzte Verarbeitungs-
und Speicherkapazität
verfügt.
Daher wird davon ausgegangen, dass die Sicherheitsfunktionen für komplexe
Anwendungen wie Bankgeschäfte
nicht allein durch die Smartcard ausgeführt werden und zumindest ein
Teil der Sicherheitsfunktionen dem Mobiltelefon auferlegt werden muss.
Abgesehen von der Verarbeitung und Speicherung muss die Smartcard
unbedingt dem Mobiltelefon vertrauen, um einen sicheren Datenübertragungskanal
zur und von der Smartcard bereitzustellen.
-
Im
Folgenden wird davon ausgegangen, dass Teile komplexer Anwendungen
im Mobiltelefon ausgeführt
werden. Da das Mobiltelefon auch sämtliche Daten zwischen der
Smartcard, dem Benutzer und dem Nachserver überträgt, könnte ein destruktives Mobiltelefon
möglicherweise
die Inhalte der zwischen den drei Parteien gesendeten Datenpakete verändern. Diese
Bedrohung wird durch die Verwendung der vertrauenswürdigen Smartcard
zum Signieren oder der Echtheit von Nachrichten nicht gemindert,
da die Smartcard nicht prüfen
kann, ob die durch das Mobiltelefon zum Signieren oder Prüfen der
Echtheit vorgelegte Nachricht tatsächlich gleich der Nachricht
ist, die das Mobiltelefon dem Benutzer vorweist.
-
Deshalb
ist es erforderlich, dass Anwendungen mit hohen Anforderungen an
Sicherheit und Geheimhaltung den Sicherheitsbereich erweitern, sodass
dieser auch das Mobiltelefon selbst erfasst. Normalerweise wird
dies durch zwei grundlegende Mittel erreicht, durch manipulationssichere
Hardware und durch Sicherstellen, dass solche manipulationssicheren
Geräte
entsprechend einer Strategie des Nachservers oder der Identitätsprüfung durch
diesen betrieben werden.
-
In
der
US-Patentschrift 5 371 794 werden
ein Verfahren und eine Vorrichtung zur Geheimhaltung und Identitätsprüfung in
Mobilfunknetzen beschrieben. Das Verfahren und die Vorrichtung dienen
zur Bereitstellung einer sicheren drahtlosen Datenübertragungsverbindung
zwischen einem ortsveränderlichen
Mobiltelefon und einer stationären
Datenverarbeitungseinheit. Ein Mobiltelefon sendet zur Basisstation
ein Hostzertifikat (Cert_Mobile) zusammen mit einem zufällig ausgewählten Prüfwert (CH1)
und einer Liste unterstützter
Algorithmen mit gemeinsamem Schlüssel
(SKCS). Die Basisstation prüft,
ob Cert_Mobile gültig
ist. Wenn das Zertifikat Cert_Mobile nicht gültig ist, weist die Basisstation den
Einwählversuch
zurück.
Dann sendet die Basisstation ein Zertifikat Cert_Base, eine mit
dem öffentlichen
Schlüssel
des Mobiltelefons verschlüsselte
zufällige
Zahl (RN1) und eine Kennung für
den gewählten
SKCS an das Mobiltelefon. Die Basisstation speichert den Wert RN1
und fügt
den Wert CH1 und den ausgewählten
SKCS zu den zur Basisstation gesendeten Nachrichten hinzu. Dann wertet
die mobile Einheit das Zertifikat Cert Base aus und prüft, wenn
dieses gültig
ist, unter Verwendung des öffentlichen Schlüssels (Pub_Base)
der Basisstation die Signatur der Nachricht. Die Signatur wird geprüft, indem
die Nachricht der Basisstation an den Prüfwert CH1 und an die Liste
der Algorithmen mit gemeinsamem Schlüssel angehängt wird, welche die mobile
Einheit in der ersten Nachricht mitgeteilt hat. Wenn die Signatur
der Basisstation nicht gültig
ist, wird der Einwählversuch
abgebrochen. Falls die Signatur der Basisstation gültig ist,
ermittelt die mobile Einheit durch Entschlüsseln von Pub_Mobile, RN1 unter
Verwendung ihres privaten Schlüssels
den Wert RN1. Dann erzeugt die mobile Einheit die Zahl RN2 und den
Sitzungsschlüssel
und verschlüsselt
die Zahl RN2 unter Verwendung des öffentlichen Schlüssels Pub_Base. Die
mobile Einheit sendet die verschlüsselte Zahl RN2 und E(Pub_Mobile,
RN1) zur Basisstation. Die Basisstation prüft dann die Signatur der mobilen
Einheit unter Verwendung des aus dem Zertifikat Cert_Mobile erhaltenen öffentlichen
Schlüssels Pub_Mobile.
Wenn die Signatur der mobilen Einheit geprüft worden ist, entschlüsselt die
Basisstation E(Pub_Base, RN2) unter Verwendung ihres privaten Schlüssels. Dann
ermittelt die Basisstation den Sitzungsschlüssel. Die mobile Einheit und
die Basisstation können
dann unter Verwendung verschlüsselter Daten
mit der Phase der Datenübertragung
beginnen, die unter Verwendung des Sitzungsschlüssels RN1 ⊕ RN2 entschlüsselt werden.
-
In
der
europäischen Patentanmeldung
0 589 022 A1 wird ein Verschlüsselungssystem mit öffentlichem
Schlüssel
mit verbesserter digitaler Signaturprüfung beschrieben, bei dem die
Identität
des Inhabers des öffentlichen
Schlüssels
geprüft
wird. Es wird eine Hierarchie von verschachtelten Zertifikaten und Signaturen
eingesetzt, welche die Berechtigungs- und Verantwortlichkeitsgrade
der Person angeben, deren Signatur gerade geprüft wird. Der Zertifizierende
erzeugt beim Erstellen eines Zertifikats eine spezielle Nachricht,
die Felder zur Kennzeichnung des zu zertifizierenden öffentlichen
Schlüssels
und den Namen der zu zertifizierenden Person enthält. Das Zertifikat
wird durch den Zertifizierenden erstellt, um die erteilte Berechtigung
zu definieren, die einen weiten Bereich von Berechtigungen, Delegierungsverantwortlichkeiten
oder -einschränkungen
umfassen kann, die im Zertifikat enthalten sind.
-
In
die Konstruktion von manipulationssicherer Hardware können spezielle
robuste Schaltungen einbezogen werden, die sicherheitsrelevante
Daten wie beispielsweise Verschlüsselungsparameter löscht und
laufende Transaktionen abbricht, wenn eine Einheit physisch manipuliert
wird, zum Beispiel, wenn das Gehäuse
geöffnet
oder die Stromversorgung unterbrochen wird, oder fest verdrahtete
Schaltungen, bei denen es auf den Übertragungspfaden zwischen
der sicheren Smartcard und den erforderlichen Eingabe-/-Ausgabeeinheiten
keine softwaregesteuerten Komponenten gibt.
-
Leider
sind mobile Einrichtungen wie beispielsweise Mobiltelefone zur Zeit
nicht manipulationssicher, und eine Aufrüstung von handelsüblichen Mobiltelefonen
mit komplettem Schutz vor Manipulation ist aufgrund der zu erwartenden
Kosten unrealistisch.
-
AUFGABE UND VORTEILE DER ERFINDUNG
-
Eine
Aufgabe der Erfindung nach Anspruch 1 oder 10 besteht darin, ein
Verfahren zum Festlegen des Vertrauenswürdigkeitsgrades eines Teilnehmers in
einer Datenübertragungsverbindung
bereitzustellen, um das Kommunikationsverhalten an diesen Vertrauenswürdigkeitsgrad
anzupassen. Da es bei der Datenübertragung
sowohl manipulationssichere Geräte,
denen man vertrauen kann, als auch solche Geräte gibt, denen man bei der Übertragung
von sicherheitsrelevanten Daten besser nicht vertraut, stellt die
Erfindung eine vorteilhafte Lösung
für die Datenübertragung
zwischen zwei Partnern über
einen Teilnehmer bereit, indem sie dessen Vertrauenswürdigkeitsgrad
festlegt und das Kommunikationsverhalten an den festgelegten Vertrauenswürdigkeitsgrad
anpasst. Unter Verwendung dieses Verfahrens können an der Datenübertragung
sowohl vertrauenswürdige
als nicht vertrauenswürdige
Einheiten teilnehmen, wobei der Vertrauenswürdigkeitsgrad jeder teilnehmenden
Einheit vor der Übertragung
sicherheitsrelevanter Daten automatisch geprüft wird.
-
Als
Teilnehmer kann eine mobile Einheit wie beispielsweise ein Mobiltelefon
infrage kommen. Der Vertrauenswürdigkeitsgrad
des Mobiltelefons zeigt dessen Grad der Manipulationssicherheit
an. Als erster Kommunikationspartner kann zum Beispiel eine Smartcard
und als zweiter Kommunikationspartner ein Nachserver infrage kommen.
-
Die
Smartcard kann das Mobiltelefon zur Verbindung mit einem Nachserver
nutzen, und die Smartcard und der Nachserver sind auf vorteilhafte Weise
in der Lage, unter Verwendung eines nicht manipulationssicheren
Mobiltelefons eine Sitzung mit Identitätsprüfung einzurichten. Nach dem
Festlegen des Vertrauenswürdigkeitsgrades
teilt die Smartcard dem Nachserver den Vertrauenswürdigkeitsgrad
des Mobiltelefons mit, ohne dass dieser das Mobiltelefon direkt
prüft.
-
Eine
weitere Aufgabe besteht darin, ein Verfahren bereitzustellen, bei
dem eine Sicherheitsstrategie für
eine Anwendung festgelegt wird, welche die Funktionalität der Anwendung
auf der Grundlage des Vertrauenswürdigkeitsgrades des Mobiltelefons
einschränkt.
-
Wenn
das Sicherheitszertifikat mit einer Signatur bei dem ersten Kommunikationspartner
ankommt, die mit einem privaten Schlüssel eines Berechtigungszertifikats
erzeugt wurde, und der erste Kommunikationspartner die Signatur
unter Verwendung eines öffentlichen
Schlüssels
des Berechtigungszertifikats prüft,
wird mittels eines sicheren Verfahrens geprüft, ob die Signatur von einer
kompetenten und vertrauenswürdigen
Zertifizierungsinstanz ausgegeben wurde. Das ist insofern von Vorteil,
als dann leicht nachgewiesen werden kann, dass die in dem entsprechenden
Teilnehmerzertifikat enthaltenen Daten unverändert sind.
-
Der öffentliche
Schlüssel
des Berechtigungszertifikats kann aus einem Speicher des ersten
Kommunikationspartners gelesen werden, was den Vorteil aufweist,
dass dieser Schlüssel
bereits verfügbar ist
und nicht von anderswoher beschafft werden muss. Dadurch wird auch
Zeit gespart.
-
Die Übermittlung
des ermittelten Vertrauenswürdigkeitsgrades
kann durch Signieren und Anhängen
der erforderlichen Daten an Nachrichten auf Anwendungsebene zwischen
der Smartcard und dem Anwendungs-Nachserver erfolgen. Wenn der erste Kommunikationspartner
dem zweiten Kommunikationspartner den etablierten Vertrauenswürdigkeitsgrad
durch Anhängen
einer Information über
den Vertrauenswürdigkeitsgrad
an eine Datennachricht, Signieren der Datennachricht mit einem privaten
Schlüssel
des ersten Partners und Senden der Datennachricht an den zweiten
Kommunikationspartner übermittelt,
wird ebenfalls eine sehr sichere Verfahrensweise gewählt, um
den Nachserver über
den festgelegten Vertrauenswürdigkeitsgrad
zu informieren. Daher kann ein destruktiver Teilnehmer diese Information
nicht verändern
und sich als vertrauenswürdiger
Teilnehmer ausgeben.
-
Als
einer der Parameter des Kommunikationsverhaltens, der in Abhängigkeit
vom festgelegten Vertrauenswürdigkeitsgrad
ausgewählt
wird, kann die Menge oder die Anzahl eines schätzenswerten Gutes ausgewählt werden,
z.B. die maximale Anzahl von Finanztransaktionen und/oder ein maximaler Geldbetrag
einer Finanztransaktion und/oder eine maximale Anzahl vertraulicher
Wörter.
Dieses angepasste Verhalten kann zum Kompensieren möglicher Sicherheitslücken genutzt
werden, die in Form eines niedrigen Vertrauenswürdigkeitsgrades festgelegt wurden.
Bei einem niedrigen Verschlüsselungsgrad können zum
Beispiel nur Finanztransaktionen bis zu einem bestimmten Geldbetrag
ausgeführt
werden.
-
Die
Prüfung,
ob das Sicherheitszertifikat zum Teilnehmer gehört, kann dadurch erfolgen,
dass der erste Kommunikationspartner eine Prüfzahl an den Teilnehmer sendet,
der die Prüfzahl
unter Verwendung seines privaten Schlüssels signiert und zurücksendet.
Die Signatur der zurückgesendeten Prüfzahl wird
unter Verwendung eines öffentlichen
Schlüssels des
Teilnehmers geprüft,
der dem privaten Schlüssel des
Teilnehmers entspricht. Dieses Anforderungs-Antwort-Prinzip liefert
ein einfaches Verfahren, das leicht festgelegt werden kann und einen
hohen Sicherheitsgrad bietet.
-
Der öffentliche
Schlüssel
des Teilnehmers kann durch den ersten Kommunikationspartner in Form
des Inhalts des Sicherheitszertifikats empfangen werden. Dieses
Verfahren bietet die Möglichkeit mehrerer
Sicherheitszertifikate und somit auch mehrerer Vertrauenswürdigkeitsgrade,
wenn jedem Zertifikat ein anderer Vertrauenswürdigkeitsgrad zugewiesen wird.
-
Wenn
der Vertrauenswürdigkeitsgrad
dadurch etabliert wird, dass für
jeden Vertrauenswürdigkeitsgrad
ein anderes Sicherheitszertifikat mit einem entsprechenden Paar
aus öffentlichem
und privatem Schlüssel
des Teilnehmers verwendet wird, ergibt sich ein sehr einfaches und
direktes Verfahren zur Realisierung verschiedener Vertrauenswürdigkeitsgrade.
Dieses Verfahren kann z.B. verwendet werden, indem unterschiedlich
langen Schlüsseln oder
einfach verschiedenen Unterschriftsberechtigungen verschiedene Vertrauenswürdigkeitsgrade zugewiesen
werden können.
-
Das
Mobiltelefon stellt der Smartcard und dem Nachserver zum Ausführen einer
Anwendung Datenübertragungs-
und Verarbeitungsressourcen zur Verfügung. Der Nachserver möchte die
Identität des
Mobiltelefons, da möglicherweise
sicherheitsrelevante Daten über
das Mobiltelefon an die Smartcard gesendet werden können. Da
das Mobiltelefon und der Nachserver durch einen großen physischen Abstand
voneinander getrennt und/oder durch ein Netz mit geringer Bandbreite
miteinander verbunden sein können,
kann die Verwendung eines herkömmlichen
Identitätsprüfungsprotokolls
zwischen dem Mobiltelefon und dem Nachserver kostspielig sein. Daher
ist es günstiger,
zur lokalen Prüfung
des Vertrauenswürdigkeitsgrades
die Smartcard zu verwenden, wenn die Datenübertragung zwischen der Smartcard und
dem Mobiltelefon relativ schnell und billig ist.
-
Die
vorgeschlagene Lösung
ist besonders vorteilhaft für
die Einrichtung von Bankdienstleistungen auf der Grundlage von Mobiltelefonen,
zum Beispiel mit GSM-Telefonen, da solche Anwendungen einen sehr
hohen Sicherheitsgrad erfordern. Wie oben bereits erwähnt, muss
hierzu wiederum auch das Mobiltelefon einen bestimmten Vertrauenswürdigkeitsgrad
erhalten. Aufgrund der hohen Entwicklungs- und Fertigungskosten
solcher Mobiltelefone und aufgrund der großen Anzahl bereits im Einsatz befindlicher
Mobiltelefone, die nicht manipulationssicher sind, sind nicht alle
Mobiltelefone vertrauenswürdig.
-
Die
Smartcard dient als Stellvertreter oder Proxy für den Nachserver, der den Vertrauenswürdigkeitsgrad
für die
Umgebung aus Mobiltelefon und Smartcard lokal festlegt. Das hier
beschriebene System ermöglicht
der vertrauenswürdigen
Smartcard die Erkennung des Grades der Manipulationssicherheit des
Mobiltelefons und die Übermittlung
dieses Grads an den Nachserver. Ein wesentlicher Vorteil der vorgeschlagenen
Lösung
gegenüber
Verfahren zur Prüfung
der Identität
von Geräten
durch den Server liegt in den geringen Datenübertragungsanforderungen zwischen
dem Nachserver und dem Mobiltelefon, was einerseits die Datenübertragungskosten verringert
und andererseits bei Bedarf die mehrfache Wiederholung des Prozesses
ermöglicht,
z.B. vor der Übertragung
jeder Nachricht zwischen der Smartcard und dem Nachserver, wodurch
ein zusätzlicher Schutz
geschaffen wird.
-
Die
Anpassung des Verhaltens bei bestimmten Anwendungen an den übermittelten
Vertrauenswürdigkeitsgrad
kann durch Begrenzung der Anzahl der Transaktionen oder durch Festlegen
eines maximalen Geldbetrages der ausgeführten Transaktionen erfolgen.
Zum Beispiel können
möglicherweise
von unsicheren Mobiltelefonen nur Kontoabfragen zugelassen werden,
während
völlig
vertrauenswürdige Mobiltelefone
zum Ausführen
von Transaktionen mit beliebig hohen Beträgen genutzt werden können. Mobiltelefone
mit dazwischenliegendem Vertrauenswürdigkeitsgrad können auf
Transaktionen bis zu einem bestimmten Betrag pro Monat beschränkt werden.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Es
wird ein Verfahren vorgeschlagen, durch das einem Mobiltelefon ein
Vertrauenswürdigkeitsgrad
zugewiesen wird, der den Grad der von dem Mobiltelefon gewährleisteten
Grad der Manipulationssicherheit wiedergibt. Gegenwärtig sind
beispielsweise Mobiltelefone nicht manipulationssicher und würden den
niedrigsten Vertrauenswürdigkeitsgrad
zugewiesen bekommen. Mittlere Vertrauenswürdigkeitsgrade würden solche
Geräte
anzeigen, bei denen unvollständige,
aber nicht vernachlässigbare
Maßnahmen
zum Schutz vor Manipulation ergriffen wurden.
-
Der
erste Kommunikationspartner, z.B. eine Smartcard, verfügt über Mittel
zur Prüfung
des Grades der Manipulationssicherheit des Mobiltelefons, das Teilnehmer
in der Datenübertragungsverbindung zwischen
dem ersten Kommunikationspartner und einem zweiten Kommunikationspartner
ist, sowie über Mittel
zur sicheren Übermittlung
des erkannten Grades der Manipulationssicherheit im Mobiltelefon
an den zweiten Kommunikationspartner, z.B. an einen Nachserver,
mit dem die Smartcard während
der Ausführung
einer Anwendung beim Teilnehmer Daten austauscht.
-
Dann
ist der Nachserver in der Lage, das Verhalten der Datenübertragung
bzw. der Anwendung an den Grad der Manipulationssicherheit anzupassen,
der durch die Smartcard erkannt und an den Nachserver übermittelt
wurde.
-
Die
Hauptschritte des Verfahrens können wie
folgt beschrieben werden:
Wenn die Smartcard zum Starten einer
Sitzung in das Mobiltelefon eingesteckt wird, fordert sie von dem
Mobiltelefon den Vertrauenswürdigkeitsgrad
an. Der Vertrauenswürdigkeitsgrad
kann dem Mobiltelefon zum Beispiel durch den Hersteller oder möglicherweise
durch die Institution zugewiesen werden, mit welcher oder in deren
Auftrag Anwendungen auf dem Mobiltelefon kommunizieren, zum Beispiel
mit einer Bank oder einem Kreditkartenunternehmen.
-
Die
Smartcard prüft
die Gültigkeit
des Vertrauenswürdigkeitsgrades
daraufhin, ob das Token von einer Institution mit der Berechtigung
zum Zuweisen eines Vertrauenswürdigkeitsgrades
erzeugt wurde und ob der Vertrauenswürdigkeitsgrad nicht einfach
nur wiedergegeben wird. Wenn die Prüfung des Vertrauenswürdigkeitsgrades
negativ ausfällt,
wird das Mobiltelefon als nicht vertrauenswürdig eingeschätzt. In
diesem Fall kann die Smartcard entscheiden, ob die Sitzung beendet
oder mit der Auflage fortgesetzt wird, nur solche Anwendungen auszuführen, für die ein
nicht vertrauenswürdiges
Mobiltelefon geeignet ist. Dann bildet die Smartcard ein TLT (Trustworthiness
Level Token, Token für
den Vertrauenswürdigkeitsgrad),
welches die Smartcard an dritte Teilnehmer weiterleitet, um den
Vertrauenswürdigkeitsgrad
des Mobiltelefons anzuzeigen.
-
Im
Mobiltelefon wird eine Anwendung zur Ausführung ausgewählt, die
sich über
das Netz mit einem Nachserver in Verbindung setzt. Der Nachserver
und die Smartcard werden gegenseitig unter Verwendung eines Protokolls
auf Identität überprüft, das nicht
vom Vertrauenswürdigkeit
des Mobiltelefons abhängt.
Wenn das Mobiltelefon beispielsweise ein GSM-Telefon und die Smartcard
ein SIM ist, werden der Nachserver und die Smartcard-SIM unter Verwendung
der Identitätsprüfungs-GSM-Standardfunktionen
auf ihre Identität überprüft. Alternativ
können die
Authentifizierungsfunktionen von WTLS verwendet werden.
-
Die
Smartcard übermittelt
den Vertrauenswürdigkeitsgrad
des Mobiltelefon an den Nachserver, indem sie das Token Vertrauenswürdigkeitsgrad
TLT für
den Vertrauenswürdigkeitsgrad
an die Anwendungspakete der Anwendung anhängt, die von der Smartcard
zum Nachserver gesendet werden. Das Token Vertrauenswürdigkeitsgrad
TLT kann an jedes Paket angehängt
oder gemäß einer
anderen Strategie übermittelt
werden.
-
Nachdem
der Nachserver das Token Vertrauenswürdigkeitsgrad TLT des Mobiltelefon über die
Smartcard empfangen hat, braucht er den Vertrauenswürdigkeitsgrad
des Mobiltelefons nicht direkt beim Mobiltelefon zu überprüfen, da
die vertrauenswürdige
Smartcard dies bereits erledigt hat. Der Nachserver folgt einer
Sicherheitsstrategie, welche die Einschränkungen beschreibt, die einer
Anwendung in Bezug auf den durch das Token Vertrauenswürdigkeitsgrad
TLT angegebenen Vertrauenswürdigkeitsgrad
auferlegt werden. Der Nachserver passt dementsprechend seine Maßnahmen
und Antworten auf die Anwendung an.
-
BESCHREIBUNG DER ZEICHNUNGEN
-
Im
Folgenden wird die Erfindung in Form eines Beispiels in den Zeichnungen
dargestellt und der Nachserver ausführlich beschrieben. 1 zeigt
ein System mit einem ersten Kommunikationspartner, einem Teilnehmer
und einem zweiten Kommunikationspartner.
-
Die
Figur ist zur Verdeutlichung nicht in den realen Abmessungen dargestellt,
und die Beziehungen der Abmessungen untereinander sind nicht in
einem realen Maßstab
gezeigt.
-
DETAILLIERTE BESCHREIBUNG
DER ERFINDUNG
-
Im
Folgenden werden verschiedene beispielhafte Ausführungsarten der Erfindung beschrieben.
-
1 zeigt
ein System, das einen ersten Kommunikationspartner 1 in
Form einer Smartcard, einen zweiten Kommunikationspartner in Form
eines Nachservers 3 und einen Teilnehmer 2 in
einer Datenübertragungsverbindung
zwischen den Kommunikationspartnern 1, 3 in Form
eines Mobiltelefons umfasst. Das Mobiltelefon 2 umfasst
eine Speichereinheit 4, die auch als Telefon-Sicherheitsmodul
bezeichnet wird und in der ein Sicherheitszertifikat 6 gespeichert
ist.
-
Wenn
die Smartcard 1 zum Starten einer Sitzung über die
Datenübertragungsverbindung
in das Mobiltelefon 2 eingesteckt wird, fordert die Smartcard 1 vom
Mobiltelefon 2 die Übertragung
des Sicherheitszertifikats 6 an.
-
Die
folgende Ausführung
beruht auf dem Grundsatz der Verschlüsselung mit öffentlichem Schlüssel, mit
deren Hilfe eine Institution eine digitale Signatur erzeugen kann
und andere Institutionen die Signatur prüfen können. Es können jedoch auch andere Verfahren
zur Prüfung
der Identität
verwendet werden.
-
Es
wird davon ausgegangen, dass der gültige Satz von Vertrauenswürdigkeitsgraden
(Trustworthiness Level, TL) durch eine Liste von L + 1 ganzen Zahlen
0, 1, ... , L, dargestellt wird, wobei 0 keine, 1 eine geringstmögliche und
L eine größtmögliche Vertrauenswürdigkeit
anzeigt. Die Werte zwischen 0 und L stellen Zwischenwerte des Vertrauenswürdigkeitsgrades
TL dar, wobei höhere
Werte eine höhere Vertrauenswürdigkeit
bedeuten.
-
Während der
Herstellung oder der Personalisierung wurde in das Telefon-Sicherheitsmodul 4 das
Sicherheitszertifikat 6 CertME CA geladen, zum Beispiel im Format X509 oder
im Format WTLS. Das Sicherheitszertifikat 6 CertME CA zeigt eine Verknüpfung zwischen
dem Namen des Mobiltelefons 2 und einem öffentlichen
Schlüssel 7 KME des Teilnehmers an, die im Sicherheitszertifikat 6 CertME CA beschrieben
wird. Das Sicherheitszertifikat 6 CertME CA enthält
auch ein Zusatzfeld 14 mit einer ganzen Zahl, die den dem Mobiltelefon 2 zugewiesenen
Vertrauenswürdigkeitsgrad
TL angibt, wobei 0 ⇐ TL ⇐ L ist.
Das Sicherheitszertifikat 6 enthält eine Sicherheitszertifikatssignatur 9 von
einer Zertifizierungsinstanz CA, die hierfür ihren privaten Schlüssel der
Zertifizierungsinstanz verwendet hat.
-
Desgleichen
werden ein privater Schlüssel 8 K–1 ME des Teilnehmers, der mit dem öffentlichen Schlüssel 7 KME des Sicherheitszertifikats 6 verknüpft ist,
und Funktionen in das Sicherheitsmodul 4 des Mobiltelefons 2 geladen,
die unter Verwendung des privaten Schlüssels K–1 ME des Teilnehmers arbeiten, wobei das Modul 4 einen
sicheren und manipulationsgeschützten
Verarbeitungsbereich darstellt. Ein solcher Bereich muss in allen
Mobiltelefonen mit einem Vertrauenswürdigkeitsgrad TL größer als
0 verwendet werden. Zumindest der private Schlüssel 8 K–1 ME muss so sicher gespeichert werden, dass
er nicht durch eine unberechtigte Person oder Einrichtung gelesen
werden kann.
-
Somit
ist dem Mobiltelefon 2 ein Paar aus öffentlichem/privatem Schlüssel 7, 8 KME/K–1 ME des
Teilnehmers zugewiesen, das zur Prüfung der Verknüpfung oder
Zugehörigkeit
des Sicherheitszertifikats 6 zum Mobiltelefon 2 verwendet
werden kann. Das Mobiltelefon 2 enthält das signierte Sicherheitszertifikat 6,
das seinen öffentlichen
Schlüssel 7 des
Teilnehmers sowie den dem Mobiltelefon 2 zugewiesenen Vertrauenswürdigkeitsgrad
TL enthält.
-
Ein öffentlicher
Schlüssel 17 der
Zertifizierungsinstanz, der dem privaten Schlüssel der Zertifizierungsinstanz
entspricht, kann als öffentlich
verfügbar
angesehen werden, sodass er von jeder Institution verwendet werden
kann, um die Signatur 9 des Sicherheitszertifikats und
dadurch die Verknüpfung zwischen
dem Mobiltelefon 2 und dem Sicherheitszertifikat 6 zu
prüfen.
Auf diese Weise kann der Vertrauenswürdigkeitsgrad TL ermittelt
werden. Ansonsten kann die Zertifizierungsinstanz auch dem ersten Kommunikationspartner 1 diesen öffentlichen Schlüssel 17 der
Zertifizierungsinstanz zukommen lassen, oder er kann von anderer
Stelle heruntergeladen werden, z.B. aus einem Datennetz.
-
Während der
Herstellung oder der Personalisierung wird in ein Smartcardmodul 5 der
Smartcard 1 ein Zertifikat 10 CertSC CA des ersten Partners geladen, das einen öffentlichen
Schlüssel 11 KSC des ersten Partners für die Smartcard 1 und
eine Zertifikatssignatur 12 des ersten Partners kennzeichnet.
Desgleichen wird in das Sicherheitsmodul 5 der Smartcard
auch ein zugehöriger
privater Schlüssel 13 K–1 SC des ersten Partners zusammen mit einer
Gruppe 15 aus drei Musterzertifikaten C1,
C2, C3 von verschiedenen
Zertifizierungsinstanzen CA1, CA2, CA3 geladen. Die
drei Musterzertifikate wurde nur zur Veranschaulichung gewählt. Die
Gruppe 15 der Musterzertifikate sollte im Allgemeinen groß genug
sein, damit ein durch ein beliebiges Mobiltelefon 2 vorgelegte
Sicherheitszertifikat CertSC CA mit
sehr hoher Wahrscheinlichkeit überprüft werden
kann. Hier enthält
ein erstes Musterzertifikat C1 der Musterzertifikate
C1, C2, C3 den öffentlichen
Schlüssel 17 der
Zertifizierungsinstanz, der zur Echtheitsprüfung oder Prüfung der Signatur 9 des
Sicherheitszertifikats benötigt
wird.
-
Wenn
die Smartcard 1 nun in das Mobiltelefon 2 eingesteckt
wird, kann der Vertrauenswürdigkeitsgrad
TL des Mobiltelefons 2 wie folgt festgelegt werden:
Die
Smartcard 1 erzeugt eine Zufallszahl R1 und überträgt diese
zum Telefon-Sicherheitsmodul 4 des Mobiltelefons 2.
Dieser Schritt wird als Anforderungsschritt bezeichnet, auf den
eine Antwort vom Mobiltelefon 2 erwartet wird.
-
Das
Telefon-Sicherheitsmodul 4 des Mobiltelefons 2 signiert
die Zufallszahl R1 mit seinem privaten Teilnehmerschlüssel 8 K–1 ME und sendet die Signatur Sign(R1) für
die Zufallszahl R1 zusammen mit seinem Sicherheitszertifikat
CertME CA an die
Smartcard 1 zurück.
-
Die
Smartcard 1 durchsucht die Gruppe 15 der Zertifikate
C1, C2, C3 nach dem ersten Musterzertifikat C1 für
die Zertifizierungsinstanz CA und prüft die Signatur 9 des
Sicherheitszertifikats im empfangenen Sicherheitszertifikats 6 CertME CA. Als Gruppe 15 der
Zertifikate C1, C2,
C3 kann eine Vorauswahl solcher Zertifikate
in die Smartcard 1 vorab geladen werden, um für die gängigsten
Zertifizierungsinstanzen CA gerüstet
zu sein. Wenn es in der Smartcard 1 für die Signatur 9 des
Sicherheitszertifikats keinen passenden öffentlichen Schlüssel 17 der
Zertifizierungsinstanz und kein dazugehöriges Zertifikat gibt, kann
das fehlende Zertifikat von einer Quelle geladen werden, die dieses
Zertifikat anbietet, zum Beispiel aus einem Netz. Für gewöhnlich sind
Zertifikate kettenförmig
angeordnet, was bedeutet, dass zur Überprüfung eines Zertifikats dessen
Signatur unter Verwendung eines in einem anderen Zertifikat eingebetteten öffentlichen
Schlüssels
geprüft
wird, wobei dieses andere Zertifikat wiederum signiert ist und dessen
Signatur ebenfalls geprüft
wird usw., bis die Prüfung
bei einer unbedingt vertrauenswürdigen
Zertifizierungsinstanz, z.B. bei einem selbst, angelangt ist. Es
kann auch mehrere solcher Zertifikateketten geben.
-
Wenn
die Signatur 9 des Sicherheitszertifikats richtig ist,
entnimmt die Smartcard 1 dem Sicherheitszertifikat 6 CertME CA den öffentlichen
Teilnehmerschlüssel 7 KME und prüft
mit dessen Hilfe die Zufallszahlsignatur Sign(R1).
Die Smartcard 1 bricht den Prozess ab, wenn eine der Signaturprüfungen erfolglos
verläuft
und richtet einen Vertrauenswürdigkeitsgrad
TL von 0 ein.
-
Wenn
die Prüfung
erfolgreich ist, prüft
die Smartcard 1 das Feld 14 Vertrauenswürdigkeit
im Sicherheitszertifikat CertME CA und
erzeugt ein Token Vertrauenswürdigkeitsgrad
(TLT), welches anzeigt, dass das Mobiltelefon 2 mit der
darin befindlichen Smartcard 1 durch die Smartcard 1 auf
den Vertrauenswürdigkeitsgrad
TL geprüft
wurde.
-
Die
Smartcard 1 hat somit geprüft, dass das empfangene Sicherheitszertifikat
CertME CA insofern gültig ist,
als es durch eine Instanz mit der Berechtigung zum Zuweisen des
Sicherheitszertifikats CertME CA erzeugt
wurde, und dass das Sicherheitszertifikat CertME CA nicht einfach nur wiedergegeben oder nachgemacht
wird.
-
Wenn
die Prüfung
des Sicherheitszertifikats CertME CA erfolglos ist, wird das Mobiltelefon 2 als
nicht vertrauenswürdig
angesehen, d.h. ihm wird ein Vertrauenswürdigkeitsgrad TL von 0 zugewiesen.
In diesem Fall kann die Smartcard 1 entscheiden, ob die Sitzung
beendet oder mit der Auflage fortgesetzt wird, nur solche Anwendungen
auszuführen,
für die ein
nicht vertrauenswürdiges
Mobiltelefon geeignet ist.
-
Die
Smartcard 1 erzeugt ein Token Vertrauenswürdigkeitsgrad
TLT, das den festgelegten vertrauenswürdigkeitsgrad TL darstellt,
und leitet dieses an den zweiten Kommunikationspartner 3 als
dritte Partei weiter, um diesem den Vertrauenswürdigkeitsgrad TL des Mobiltelefons 2 anzuzeigen.
-
Die
Smartcard 1 kann den festgelegten Vertrauenswürdigkeitsgrad
Tl an den zweiten. Kommunikationspartner 3 übermitteln,
indem sie das Token Vertrauenswürdigkeitsgrad
TLT an eine Datennachricht anhängt,
diese Datennachricht mit dem privaten Schlüssel 13 des ersten
Partners signiert und an den zweiten Kommunikationspartner 3 sendet,
wo die Signatur unter Verwendung des öffentlichen Schlüssels 11 des
ersten Partners geprüft
werden kann.
-
Alternativ
können
die beiden Kommunikationspartner 1, 3 wie z.B.
in GSM-Netzen üblich
einander bereits vor dem Festlegen des Vertrauenswürdigkeitsgrades
TL des Teilnehmers 2 insofern vertrauen, als beide über einen
gemeinsamen privaten Schlüssel
verfügen,
der gleich dem privaten Schlüssel 13 des
ersten Partners sein könnte.
Das kann dadurch bewerkstelligt werden, dass die Smartcard 1 durch eine
Instanz ausgegeben wird, die im Server 3 den privaten Schlüssel 13 des
ersten Partners festgelegt hat, und dass durch diese Instanz, die
dann natürlich als
vertrauenswürdig
gelten muss, der private Schlüssel 13 des
ersten Partners zuvor in die Smartcard geladen wird.
-
Eine
Anwendung, die mit dem Nachserver 3 in Verbindung steht
und auf dem Mobiltelefon 2 läuft, wird zur Ausführung ausgewählt. Der
Nachserver 3 und die Smartcard 1 werden unter
Verwendung eines Protokolls gegenseitig auf Identität geprüft, das
nicht von der Vertrauenswürdigkeit
des Mobiltelefons 2 abhängt.
Wenn das Mobiltelefon 2 beispielsweise ein GSM-Telefon und die Smartcard 1 ein
SIM ist, werden der Nachserver 3 und die Smartcard 1 unter
Verwendung der Identitätsprüfungs-GSM-Standardfunktionen
auf Identität überprüft. Alternativ
können
die Identitätsprüfungsfunktionen
des WTLS verwendet werden.
-
Die
Smartcard 1 übermittelt
den Vertrauenswürdigkeitsgrad
TL des Mobiltelefons 2 an den Nachserver 3, indem
sie das Token Vertrauenswürdigkeit TLT
an die Pakete der Anwendung anhängt,
die von der Smartcard 1 an den Nachserver 3 gesendet
werden. Das Token Vertrauenswürdigkeitsgrad
TLT kann an jedes Anwendungspaket angehängt oder gemäß einer
anderen Strategie zur Tokenübermittlung übermittelt
werden, z.B. einmal während
einer bestimmten Zeitspanne oder eine festgelegte Anzahl während einer
Sitzung usw.
-
Wenn
der Nachserver 3 über
die Smartcard 1 das Token Vertrauenswürdigkeitsgrad TLT des Mobiltelefons 2 empfangen
hat, braucht er den Vertrauenswürdigkeitsgrad
des Mobiltelefons 2 nicht direkt bei diesem zu überprüfen, da
die vertrauenswürdige Smartcard 1 dies
bereits erledigt hat. Für
die Anwendung A konsultiert der Nachserver 3 eine Sicherheitsstrategie 16 pol(A),
z.B. in Form einer gespeicherten Tabelle, welche die der Anwendung
A auferlegten Beschränkungen
in Bezug auf den Vertrauenswürdigkeitsgrad beschreibt,
der durch das Token Vertrauenswürdigkeitsgrad
TLT angezeigt wird. Der Nachserver 3 passt seine Maßnahmen
und Antworten in der Anwendung A entsprechend an. Mit anderen Worten,
der Nachserver 3 konsultiert die Sicherheitsstrategie 16 pol(A)
für die
Anwendung A und ändert
oder wählt
sein Kommunikationsverhalten entsprechend dem Vertrauenswürdigkeitsgrad
TL, das im Token Vertrauenswürdigkeitsgrad
TLT angegeben ist.
-
Dann
wird die Smartcard 1 durch den Benutzer angewiesen, beim
Nachserver 3 eine sichere und auf Identität geprüfte Sitzung
einzurichten, um die Anwendung zu starten. Der Back-End-Server 3 und die
Smartcard 1 laufen unter WTLS mit der Option, dass sowohl
der Client, d.h. die Smartcard 1, als auch der Nachserver 3 durch
den Austausch von Zertifikaten auf Identität geprüft werden. An dieser Stelle ist
die Vertrauenswürdigkeit
zwischen dem Nachserver 3 und der Smartcard 1 festgelegt.
-
Wenn
die Smartcard 1 Anwendungsdaten D an den Nachserver 3 senden
soll, hängt
die Smartcard 1 das Token Vertrauenswürdigkeitsgrad TLT an und sendet
das Paar (D, TLT). Da der Kanal zwischen dem Nachserver 3 und
der Smartcard 1 auf Identität überprüft wurde, geht der Nachserver 3 davon
aus, dass der im Token Vertrauenswürdigkeitsgrad TLT angegebene
Vertrauenswürdigkeitsgrad bei
dieser Sitzung tatsächlich
gleich dem Vertrauenswürdigkeitsgrad
TL des Mobiltelefons 2 ist, in dem sich die Smartcard 1 befindet.
-
Das
Token Vertrauenswürdigkeitsgrad
TLT ist ein Datenobjekt, das für
den Nachserver 3 von Bedeutung ist. Es kann mit dem ganzzahligen
Wert des Vertrauenswürdigkeitsgrades
TL identisch sein, woraufhin der Nachserver 3 die Strategie 16 konsultieren muss,
welche seine Maßnahmen
oder sein Kommunikationsverhalten für diesen Vertrauenswürdigkeitsgrad
TL beschreibt. Alternativ kann das Token Vertrauenswürdigkeitsgrad
TLT direkt den beabsichtigten Vertrauenswürdigkeitsgrad TL gemäß einem Maß für die Vertrauenswürdigkeit
angeben, z.B. in Form eines Geldbetrages. In diesem Fall wird die Strategie 16 nicht
benötigt.
-
Dieses
Beispiel verdeutlicht auch den Identitätsprüfungsschritt zwischen der Smartcard 1 und dem
Nachserver 3, jedoch muss dies nicht immer zutreffen. Wenn
das Mobiltelefon 2 ein GSM-Telefon ist, kann die Smartcard 1 ein
SIM sein, das unter Verwendung der GSM-Standardalgorithmen zur Identitätsprüfung beim
Einstecken in das Mobiltelefon 2 automatisch auf Identität geprüft wird.
Die Basisstation des SIM kann diese Identitätsprüfungsdaten an den Nachserver 3 weiterleiten
und somit die Notwendigkeit einer WTLS-Sitzung zwischen dem Nachserver 3 und
dem SIM entfallen lassen.
-
Bei
einem weiteren Beispiel hat der Teilnehmer 2 einfach nur
den privaten Teilnehmerschlüssel 8 gespeichert
und verfügt über kein
Sicherheitszertifikat 6. Dann kann die Smartcard 1 entweder
den privaten Teilnehmerschlüssel 8 oder
den entsprechenden öffentlichen
Teilnehmerschlüssel 7 kennen
und die oben beschriebene Anforderungs-Antwort-Prüfung durchführen, um
zu ermitteln, ob das Mobiltelefon 2 den privaten Teilnehmerschlüssel 8 kennt. Wenn
dies der Fall ist, kann ein entsprechender Vertrauenswürdigkeitsgrad
TL zugewiesen werden. Verschiedene Vertrauenswürdigkeitsgrade TL können verschiedenen
privaten Teilnehmerschlüsseln 8 entsprechen.
-
In
der obigen Beschreibung stellt ein Mobiltelefon die nicht vertrauenswürdige Partei
dar. Es wird darauf hingewiesen, dass für die allgemeine nicht vertrauenswürdige Einheit
eine beliebige mobile Einrichtung infrage kommt und das Mobiltelefon
nur als Beispiel dient.