-
Technisches
Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft im Allgemeinen Authentication und
Key Agreement (AKA) bzw. Authentifikations- und Schlüsselübereinstimmungs-Prozeduren in Kommunikationssystemen,
und im Besonderen die Verwendung und Konfiguration manipulationssicherer
Sicherheitsvorrichtungen in solchen Prozeduren.
-
Hintergrund
der Erfindung
-
Im
Allgemeinen enthält
Authentication und Key Agreement (AKA) bzw. eine Authentifikation-
und Schlüsselübereinstimmung
eine gegenseitige Authentifikation, was bedeutet, dass jeder der
Kommunikationsbeteiligten, so wie ein Benutzer und ein zugehöriger Operator,
sicher sein kann, dass der andere Beteiligte der behauptete Beteiligte
ist, aber kann auch eine gewährte
Privatsphäre
enthalten, was zum Beispiel bedeutet, dass der einleitende Beteiligte,
normalerweise der Benutzer, ein Pseudonym für seine/ihre Identität verwenden kann.
Der Operator wird dann fähig
sein, die wahre Identität
des Benutzers zu bestimmen, wohingegen kein anderer Beteiligter
dazu fähig
sein wird. Selbstverständlich
ergibt es keinen Sinn, eine Authentifikation durchzuführen, wenn
nicht irgendwelche nachfolgenden Aktionen und/oder Prozeduren durchgeführt werden,
die die authentifizierten Beteiligten involvieren. Typischerweise
resultiert die Authentifikation deshalb schließlich in einer Schlüsselübereinstimmung
bzw. Schlüsselvereinbarung,
von der ein oder mehrere Schlüssel
erhalten werden, die zum Schützen
einer weiteren Kommunikation zwischen den Teilnehmern verwendet
werden, und zum Sicherstellen, dass jede aufeinander folgende Nachricht
von dem anderen Beteiligten abstammt.
-
Viele
Netzwerkdienste basieren auf einem Speichern von Benutzerberechtigungsnachweisen
(typischerweise ein Geheimschlüssel
k und möglicherweise
auch Benutzeridentitäten
und Pseudonyme) auf einer manipulationssicheren „Sicherheitsvorrichtung", zum Beispiel eine
GSM-SIM-(Subscriber Identity Module), eine UMTS-SIM- oder ISIM-(IP
Multimedia SIM)Karte, und einem Ermöglichen, dass das Netzwerk
mit dieser Vorrichtung durch ein Benutzerendgerät in einem Abfrage-Antwort-Protokoll
interagiert, zum Durchführen
eines (Teilnehmer-)Authentication und Key Agreement (AKA). Im Folgenden
verweisen wir einfach auf solch ein Protokoll als ein AKA-Protokoll.
Zum Beispiel enthält
dieses die GSM- und UMTS-AKA-Protokolle.
-
Typischerweise
arbeitet das Protokoll wie folgt, wie schematisch in 1 veranschaulicht.
In einer Subskribiererdatenbank/Authentifikationszentrale, gemeinhin
als eine AuC in dem Kontext von Mobilkommunikationssystemen bezeichnet,
wird eine erwartete Antwort XRES auf der Grundlage einer Kenntnis
des Geheimschlüssel
und einer erzeugten Abfrage RAND erzeugt. Das AKA-Protokoll kann,
und wird typischerweise, einen AAA-(Authorization, Authentication
und Accounting)Server involvieren, der physikalisch mit der AuC
untergebracht sein kann oder nicht. Die Abfrage RAND und die erwartete
Antwort XRES werden normalerweise an den AAA-Server transferiert.
Die Abfrage wird an das Endgerät
ME (Mobile Equipment) gesendet, welches mit Hilfe der Sicherheitsvorrichtung
die Antwort RES berechnet. Die Antwort wird zurück an den AAA-Server gesendet,
und wenn sie mit der erwarteten Antwort übereinstimmt, ist der Benutzer
authentifiziert. In 1 ist nur das Abfrage-Antwort-Protokoll
gezeigt.
-
In
der Realität
werden zum Beispiel außerdem
Sitzungsschlüssel
zur Verschlüsselung
erzeugt.
-
Ein
Problem ist, dass in manchen Fällen
(wiederum zum Beispiel GSM-SIMs, die den COMP128-Algorithmus verwenden)
die in dem AKA-Protokoll verwendeten kryptographischen Algorithmen
nicht sehr stark sind, und durch Erhalten einer relativ kleinen
Anzahl von Abruf-Antwort-Paaren
kann ein Angreifer die Sicherheitsvorrichtung rückwärts-entwerfen bzw. reverse-engineeren (und herausfinden,
was k ist).
-
Dieses
Problem wird durch die Tatsache schlimmer, dass es einige vorgeschlagene
Lösungen
gibt, wo, um unterschiedliche Typen von Zugriffen und Diensten zu
gewinnen, die Sicherheitsvorrichtung aus ihrer normalen Umgebung
(zum Beispiel ein Mobiltelefon) herausgezogen werden muss und in
eine fremde Umgebung gegeben werden muss. Zum Beispiel wird die
Sicherheitsvorrichtung in einen Kartenleser gegeben, der über einen
USB-(Universal Serial Bus) Port mit einem PC (Personal Computer)
verbunden ist. Da ein PC, im Vergleich zu einem Mobiltelefon, relativ
verwundbar für
Infektionen durch Viren und Trojaner ist, ist es möglich, dass
eine böswillige
Software eingepflanzt wird, die, ohne Wissen des Benutzers, Abfrage-Antwort-Werte
von der Vorrichtung „zieht" und (möglicherweise
später)
sie an einen Angreifer zur Analyse weiterleitet. Dies ist eine ernsthafte
Bedrohung in Fällen,
wo es keine Authentifikation der Abfragen gibt (zum Beispiel alte GSM-Systeme),
oder wenn die Abfragen authentifiziert werden, aber ein Sicherheitsmangel
in dieser Authentifikation gefunden wird. Die Analyse für Angriffe
kann auf einem passiven Mithören
(in 1 durch „ATTACK" und durchgezogene
Linien angegeben) basieren, oder durch eine aktive Injektion adaptiv
ausgewählter Abfragen
(in 1 durch „ATTACK" und gestrichelte
Linien angegeben).
-
Selbst
wenn die Sicherheitskarte immer in dem Endgerät/Telefon verbleibt, gibt es
Fälle,
wo die Sicherheit beeinträchtigt
sein könnte.
Zum Beispiel gibt es Vorschläge
zum Wiederverwenden des AKA-Protokolls über eine andere Schnittstelle,
zum Beispiel Bluetooth oder IRDA, um fähig zu sein, die Berechtigungsnachweise
auf der Karte zum Authentifizieren für andere Dienste neben dem
Netzwerkzugriff zu verwenden. Zum Beispiel könnte das Telefon mit einer
Registrierkasse in einem Geschäft
zum Bezahlen für
erworbene Güter kommunizieren,
als eine „elektronische
Geldbörse" agierend. Da zum
Beispiel GSM-SIMs nicht per Vorgabe die Vorrichtung authentifizieren
können,
die eine Authentifikation anfordert (d.h. die Authentifikation ist
gegenseitig), gibt es ein Risiko, dass böswillige Vorrichtungen an öffentlichen
Plätzen
mit der Absicht zum Angreifen schwacher Algorithmen auf den Karten
aufgestellt werden. Eine vermutlich schlimmere Bedrohung ist die
eines feindlichen Installierens eines böswilligen Agenten in dem Endgerät. Solch
ein Agent kann dann ferngesteuert aktiviert werden, wenn ein Angreifer
sich für
einen Server authentifizieren will, was dem Angreifer AKA-Parameter von dem
infizierten Endgerät
bereitstellt. Dieses schränkt
die Geschäftsfälle ernsthaft
ein, in welchen zum Beispiel eine SIM-basierte Authentifikation
verwendet werden kann.
-
Stand der
Technik
-
In
dem sehr speziellen Fall von GSM-SIMs gibt es eine Weiterentwicklung
in IETF, [1], zum Verbessern der Sicherheit durch Einkapseln der
GSM-A3/A8-Antworten in einem sichereren Algorithmus, so wie den
MD5- oder SHA1-Algorithmen,
[2]. Genauer genommen werden vielmehr sie, eher als direktes Rückgeben
der Werte der A3/A8-Algorithmen,
als eine Eingabe an eine stärkere
Funktion verwendet, und das Ergebnis dieser Funktion wird anstelle
dessen zurückgegeben.
Dies beugt einer direkten Analyse der Ausgaben von A3/A8 vor. Diese
Arbeit, auf die als ein SIM-Profil des Extensible Authentication
Protocol (EAP-SIM) verwiesen werden kann, stellt auch eine Teillösung für die Tatsache
bereit, dass mehr als die standardmäßigen 64 Bits eines GSM-Schlüsselmaterials
gebraucht werden könnten.
Dies wird erreicht durch sequentielles Anfragen der A3/A8-Algorithmen
auf unterschiedliche RAND-Werte, mit Verketten der Ergebnisse in
einem längeren
Schlüssel.
-
2 veranschaulicht
das konventionelle erweiterte Authentifikationsprotokoll EAP-SIM.
Die Mobilapparatur (ME) oder ein anderes Benutzerendgerät leitet
die Abfrage an das SIM weiter und berechnet die Antwort RES und
dann einen Hash-Wert der Antwort. Dieser Hash-Wert wird dann an
den AAA-Server als die neue Antwort RES' gesendet. Der AAA-Server implementiert
selbstverständlich
dieselbe Hash-Funktion. Ein Angreifer, der den Verkehr zwischen
dem AAA-Server und der ME belauscht bzw. snifft, wird in diesem
Fall nicht direkt Zugriff auf die Ausgabe RES vom A3/A8 haben, sondern
nur auf den Hash-Wert, RES',
der A3/A8-Ausgabe. Es kann bemerkt werden, dass eine ähnliche
Arbeit auch in Entwicklung für
UMTS-AKA ist, [3].
-
Während der
EAP-SIM-Vorschlag die theoretischen Probleme mit den GSM-A3/A8-Algorithmen adressierte,
oder genauer genommen den COMP128-Implementierungen davon, hat er
einige Unzulänglichkeiten.
Erstens wird die Lösung
nur die spezifischen Probleme mit Bezug zu COMP128-GSM lösen. Wenn
die EAP-Einkapselung in dem Endgerät, zum Beispiel ein Laptop,
implementiert ist, ist die SIM-ME-Schnittstelle, angegeben durch eine
umkreiste „1" in 2,
auch für
Viren und Trojaner verfügbar.
Dies impliziert, dass ausgewählte
Abfragen und entsprechende Antworten immer noch für Angreifer
verfügbar
sein werden. Vorzugsweise sollte irgendeine Lösung für dieses bestimmte Problem
nicht ein Ändern
des SIM-ME-Schnittstellen-Standards
erfordern, wie in Referenz [4] spezifiziert. Es wird Zeit benötigen, den
Standard zu ändern,
und es könnte
sogar nicht möglich
sein, bevor standardmäßige UMTS-USIMs,
die stärker
sind und nicht den Extraschutz brauchen, auf dem Markt verfügbar sind.
Außerdem
ist, wie in der Einführung
bemerkt, vorgeschlagen worden, dass UMTS Release 99 (R99) gemäße GSM-Telefone/Netzwerke
das stärkere
UMTS-AKA unterstützen
sollten. Somit ist eine Standardisierungsanstrengung fraglich. Außerdem kann
nicht ausgeschlossen werden, dass der EAP-SIM-Vorschlag selbst manche
Schwächen
hat und später „sehr fein
eingestellt" werden
muss. Tatsächlich
wurde kürzlich
entdeckt, dass der Ansatz zum Verwenden einiger RAND-Werte in Reihe zum
Ableiten längerer
Schlüssel
manche Makel hat. Durch Ausstellen desselben, n-mal wiederholten RAND-Wertes,
eher als von n unterschiedlichen RAND-Werten, kann die erhaltene
effektive Sicherheit immer noch nur äquivalent zu der von einem
einzelnen RAND-Wert Erhaltenen sein.
-
Das
Dokument ETSI-TS 101 180 (v 8.0.0) Digital cellular telecommunications
system (Phase 2+); Security mechanism for the SIM Application Toolkit;
Stage 1; GSM 02.48 Release 1999, Mai 2000 (200-05), XP014006016
beschreibt eine Menge von Befehlen und Prozeduren, die es Operatoren
ermöglicht,
spezifische auf einer SIM-Karte residente Anwendungen zu erschaffen.
Im Allgemeinen betrifft das Dokument ein Sichern des SIM Application
Toolkit mit Bezug zu einer Kommunikation über das GSM-Netzwerk. Im Allgemeinen betrifft das
Dokument einen sicheren Transfer von Application Messages von einer Sending
Entity zu einer Receiving Entity. Die Receiving Entity muss eine
Application Message aus einem empfangenen Secured Packet rekonstruieren,
und, auf eine sichere Weise, der Receiving Application die auf das
Secured Packet angewendeten Sicherheitsmechanismen angeben. Ferner
erwähnt
das Dokument einige Erfordernisse für die sichere Kommunikation,
zum Beispiel eine authentifikationsbereitstellende Zusicherung,
dass nur autorisierte Teilnehmer Aktionen mit der SIM-Karte durchführen können, und
dass ein unautorisierter Zugriff verhindert wird. Dank den Sicherheitsanordnungen
gemäß diesem
Dokument kann ein sicherer und authentifizierter Zugriff auf die Anwendungsumgebung
einer Benutzer SIM getätigt
werden, zum Beispiel zur Aktualisierung der Empfangsanwendung. Jedoch
betrifft dieses Dokument nicht eine Authentifikation für einen
Netzwerkzugriff bzw. Zugang und erwähnt im Allgemeinen nicht irgendein
Verfahren zur Authentifikation und Schlüsselübereinstimmung bzw. Schlüsselvereinbarung,
ein AKA-Protokoll, und Schwächen
des AKA-Protokolls.
-
Zusammenfassung
der Erfindung
-
Die
vorliegende Erfindung, die durch den unabhängigen Anspruch 1 und Anspruch
16 definiert ist, überwindet
diese und andere Nachteile der Anordnungen nach dem Stand der Technik.
-
Es
ist eine allgemeine Aufgabe der Erfindung, eine verbesserte Sicherheit
und/oder Privatsphäre
in Verbindung mit einer Authentifikation und/oder Schlüsselübereinstimmung
bzw. Schlüsselvereinbarung
bereitzustellen.
-
Es
ist eine Aufgabe, ein verbessertes SIM oder eine ähnliche
manipulationssichere Sicherheitsvorrichtung bereitzustellen. Bezüglich dessen
ist es insbesondere wünschenswert,
die Funktionalität
der manipulationssicheren Sicherheitsvorrichtung für den Zweck
einer verbesserten Sicherheit und/oder Privatsphäre zu erweitern.
-
Es
ist außerdem
eine Aufgabe der Erfindung, die Gesamtsicherheit aufrecht zu erhalten,
selbst wenn eine manipulationssichere Sicherheitsvorrichtung, so
wie ein SIM, in einer unsicheren Umgebung verwendet wird, oder beim
Wiederverwenden des AKA-Protokolls über eine weniger sichere Schnittstelle.
-
Eine
andere Aufgabe ist es, ein Benutzerendgerät bereitzustellen, das für eine verbesserte
Sicherheit und/oder Privatsphäre
ausgebildet ist.
-
Noch
eine andere Aufgabe der Erfindung ist es, einen Netzwerkserver bereitzustellen,
der Sicherheit- und/oder Privatsphärenverbesserungen in manipulationssicheren
Sicherheitsvorrichtungen unterstützt,
die in Benutzerendgeräten
installiert sind.
-
Wie
oben angegeben, betrifft die Erfindung im Allgemeinen eine manipulationssichere
Sicherheitsvorrichtung, so wie ein Subskribiereridentitätsmodul
oder ein Äquivalent,
das eine Einrichtung zum Speichern von Benutzerberechtigungsnachweisen,
mit wenigstens einem Sicherheitsschlüssel, ein AKA-(Authentication
und Key Agreement) Modul zum Durchführen eines AKA-Prozesses mit
dem Sicherheitsschlüssel,
als auch eine Einrichtung zur externen Kommunikation hat.
-
Die
Grundidee gemäß einem
Hauptaspekt der Erfindung ist es, die manipulationssichere Sicherheitsvorrichtung
mit einer zur Zusammenarbeit mit dem AKA-Modul ausgebildeten Anwendung
und einer Einrichtung zum Koppeln des AKA-Moduls mit dieser Anwendung zu versehen.
-
Die
mit dem AKA-Modul zusammenarbeitende Anwendung ist vorzugsweise
eine Sicherheits- und/oder privatsphärenverbessernde Anwendung,
die typischerweise eine Verarbeitung für eine verbesserte Sicherheit
und/oder Privatsphäre
mit Bezug zu einer Authentifikation und/oder Schlüsselübereinstimmung bzw.
Schlüsselvereinbarung
des AKA-Moduls durchführt.
-
Zur
verbesserten Sicherheit führt
die Anwendung etwas unterschiedliche Sicherheitsverarbeitungsaufgaben
in. Abhängigkeit
von den bestimmten zu erzielenden Sicherheitszielen durch. Im Allgemeinen
kann die Verarbeitung für
eine verbesserte Sicherheit die Verarbeitung von einem oder mehreren
Eingabeparametern (Vorverarbeitung) und/oder Ausgabeparametern (Nachverarbeitung)
des AKA-Prozesses umfassen. Zum Beispiel kann eine sicherheitsverbessernde
Anwendung konfiguriert sein zum Einkapseln von AKA-Antworten in einem
sichereren Algorithmus, wie zum Beispiel in dem oben erwähnten EAP-SIM-Protokoll
vorgeschlagen. Gemäß der Erfindung
findet die gesamte empfindliche Verarbeitung jedoch in der manipulationssicheren
Sicherheitsvorrichtung statt, einschließlich der sicherheitsverbessernden
Schritte. Unter Berücksichtigung
der erhöhten
Stärke
des EAP-SIM und ähnlicher
sicherheitsverbessernder Algorithmen ist die Wahrscheinlichkeit, dass
auf ein Abrufen des Geheimschlüssels
oder anderer empfindlicher Daten gerichtete Angriffe erfolgreich sein
werden, signifikant reduziert. Demgemäß kann die Gesamtsicherheit
aufrecht erhalten werden, selbst wenn die manipulationssichere Sicherheitsvorrichtung
in einer weniger sicheren Umgebung verwendet wird, so wie ein Personalcomputer (PC),
oder beim Wiederverwenden des AKA-Protokolls über eine weniger sichere Schnittstelle,
so wie Bluetooth.
-
Andere
Beispiele der verbesserten Sicherheitsanwendung, die durch die Sicherheitsanwendung
der Erfindung durchgeführt
werden kann, enthalten i) ein Erweitern der Grundsicherheitsfunktionalität zum Erzeugen
eines zusätzlichen
Schlüsselmaterials,
zum Beispiel ein oder mehrere (möglicherweise
längere)
Schlüssel basierend
auf einer oder mehreren Abfrage-Antwort-Anfragen, ii) ein Ausführen wenigstens
eines Teils der Berechnungen, die erforderlich sind zum Erzeugen
eines gemeinsam genutzten Schlüssels
zur Endstellenverschlüsselung
bzw. Ende-zu-Ende-Verschlüsselung
zwischen Benutzern (auf der Grundlage des Schlüssels in dem SIM oder einer ähnlichen
Sicherheitsvorrichtung) und iii) ein Maskieren von durch das AKA-Modul
erzeugter AKA-Schlüsselinformation.
Zum Beispiel könnte
das zusätzliche
Schlüsselmaterial
nützlich
sein für
die Zwecke eines gesetzlichen Abfangens mit erhöhter Sicherheit aus der Sicht
des Endbenutzers, oder für
dem öffentlichen
Zugang zugehörige
Sicherheitsverbesserungen.
-
Die
Erfindung kann außerdem
verwendet werden zum Durchführen
von Wiedergabeprüfungen,
was sicherstellt, dass derselbe AKA-Eingabeparameter (RAND) nicht
auf unsichere Weisen wiederverwendet wird. Beim Kombinieren einiger
AKA-Ausgabeparameter in eine höhere
Sicherheitsantwort oder Schlüssel,
ist es im Besonderen wichtig, sicherzustellen, dass eine Menge eindeutiger
AKA-Eingabeparameter (RAND-Werte) verwendet wird.
-
Für die Privatsphärenverbesserung
ist es ein wichtiger Aspekt, die Benutzeridentität durch Verwalten (Aufrechterhalten
oder möglicherweise
Erzeugen) zweckgemäßer Benutzerpseudonyme,
auch temporäre Benutzeridentifizierer
genannt, zu schützen,
was später
beschrieben werden wird.
-
In
dem Kontext der verbesserten Sicherheit ist die manipulationssichere
Sicherheitsvorrichtung und/oder das entsprechende Benutzerendgerät vorzugsweise
konfiguriert zum Durchführen
einer Form einer Sicherheitsstrategieverarbeitung. Die Sicherheitsstrategieverarbeitung
umfasst normalerweise eine Sicherheitsstrategieentscheidung und/oder
Durchsetzung und basiert vorzugsweise auf einer Information, die
Sicherheitsbedingungen in Bezug zu der manipulationssicheren Sicherheitsvorrichtung
darstellt. Es ist zum Beispiel wichtig, dass die Gesamtsicherheitsverbesserung
nicht durch einen unautorisierten Zugriff, zum Beispiel durch Viren
oder Trojaner, auf residente Anwendungsdateien und Befehle der manipulationssicheren
Sicherheitsvorrichtung beeinträchtigt
wird, die den AKA-Prozess und die entsprechenden AKA-Parameter freilegen könnten. Deshalb
ist die manipulationssichere Vorrichtung vorzugsweise ausgebildet
zum Ermöglichen
eines Zugriffs auf solche residente Dateien und Befehle nur unter
gegebenen Umständen.
Im Besonderen sind gewisse residente Dateien und Befehle der manipulationssicheren
Vorrichtung vorzugsweise gesperrt, wenn die Sicherheitsvorrichtung
aus ihrer normalen Umgebung, zum Beispiel ein Mobiltelefon, herausgezogen
wird und in eine feindlichere Umgebung, so wie ein PC oder Ähnliches,
eingestöpselt
wird. Anstelle dessen werden Anforderungen zur AKA-Verarbeitung
brauchbar an die sicherheitsverbessernde Anwendung geleitet. Dieses könnte zum
Beispiel verwaltet werden durch Nutzen eines internen oder externen
Moduls zum Erfassen der Sicherheitsbedingungen der manipulationssicheren
Sicherheitsvorrichtung und/oder durch den Benutzer unterschiedliche
PIN-Codes oder Äquivalente
eingeben zu lassen zum Setzen von Zugriffsrechten in Abhängigkeit
von dem Typ der Vorrichtung, in der die Sicherheitsvorrichtung angeordnet
ist. Beim Wiederverwenden des AKA-Protokolls über eine weniger sichere Schnittstelle,
so wie Bluetooth, kann das Benutzerendgerät ähnlich AKA-Anforderungen an
die sicherheitsverbessernde Anwendung umleiten.
-
Es
ist erkannt worden, dass es besonders vorteilhaft ist, die sicherheitsverbessernde
und/oder privatsphärenverbessernde
Anwendung als eine Softwareanwendung zu implementieren, vorzugsweise
als ein Applet, das während
der Herstellung vorinstalliert sein kann oder als ein authentifizierter
Anwendungsdownload in einer Anwendungsumgebung in der manipulationssicheren
Sicherheitsvorrichtung bereitgestellt sein kann. Zum Beispiel kann
die Anwendungsumgebung bereitgestellt sein durch das GSM-SAT (SIM
Application Toolkit) gewöhnlicher
GSM-SIM-Karten oder das UMTS-SAT von UMTS-SIM-Karten. Im Allgemeinen
ist die Anwendung sicher (vorzugsweise authentifiziert und verschlüsselt) in
die Anwendungsumgebung von einem Netzwerkserver heruntergeladen,
der von einem vertrauenswürdigen
Beteiligten bzw. Teilnehmer verwaltet wird, so wie ein dem GSM/UMTS-SIM
zugehöriger
Netzwerkoperator.
-
Die
Anwendung zusammen mit einer oder mehreren Sicherheitsstrategien
wird einfach ersetzt oder aufgewertet (selbst über die Luftschnittstelle),
so dass das Endgerät/die
Sicherheitsvorrichtung die letzte „Version" des Anwendungs-Applets hat. Da die
Applets normalerweise unter der Steuerung des Netzwerkoperators oder
irgendeines anderen vertrauenswürdigen
Beteiligten bzw. Teilnehmers und „unterzeichnet" durch den Operator
sind, ist es außerdem
weit weniger wahrscheinlich, dass diese durch böswillige Software infiziert
werden, als für
Applets auf einem gewöhnlichen
PC.
-
In
einer feindlichen Umgebung, typischerweise in externen Vorrichtungen,
werden Abfragen an den AKA-Prozess
als Eingabedaten an die Anwendung in der Anwendungsumgebung gesendet,
anstelle eines Verwendens des gewöhnlichen Befehls (zum Beispiel
der RUN_GSM_ALGORITHMS-Befehl von GSM-SIMs) zum Aufrufen der AKA-Algorithmen.
-
Wenn
die Anwendungsdateien-Eingabedaten in die Anwendungsumgebung durch
ein Verwenden eines existierenden Befehls transferiert sind, so
wie dem ENVELOPE-Befehl des GSM-SAT, erfordert die Eingabe/Ausgabeschnittstelle
der manipulationssicheren Sicherheitsvorrichtung nicht irgendwelche Änderungen. Dies
ist wichtig, da die Erfindung somit nicht existierende Standardspezifikationen
verletzt.
-
In
einer alternativen Ausführungsform
der Erfindung sind die AKA-Algorithmen außerdem wenigstens teilweise
implementiert, vorzugsweise zusammen mit der verbesserten Sicherheits-
und/oder Privatsphärenverarbeitung
als eine Anwendung in der Anwendungsumgebung der manipulationssicheren
Vorrichtung. Offensichtlich erfordert dieser Ansatz nicht eine spezielle
Schnittstelle zwischen dem residenten AKA-Modul und der Anwendungsumgebung,
da sowohl die verbesserte Sicherheits- und/oder Privatsphärenverarbeitung
als auch die AKA-Algorithmen sich in der Anwendungsumgebung befinden.
Selbstverständlich
wird es immer noch eine Programmcodeschnittstelle zwischen den AKA-Algorithmen
und der sicherheitsverbessernden Funktionalität geben.
-
Es
sollte verstanden werden, dass, obwohl eine Softwareimplementierung
besonders vorteilhaft ist, es auch möglich ist, die AKA-zusammenarbeitende
Anwendung vorgefertigt als Hardware in einer manipulationssicheren
Sicherheitsvorrichtung zu haben, mit einer mehr oder weniger direkten
Schnittstelle zwischen der Hardware-Anwendung und dem AKA-Modul.
-
Die
Erfindung bietet die folgenden Vorteile:
- • Aus der
Sicht des Endgeräts
zeigt die vorliegende Erfindung, wie man alte SIMs und ähnliche
manipulationssichere Sicherheitsvorrichtungen mit einer zusätzlichen
Sicherheitsschicht erweitert und verbessert, die die Vorrichtung
in feindlichen, Viren und Trojanern ausgesetzten Umgebungen schützt.
- • Sie
zeigt außerdem
einen einfachen Weg zum Erweitern der Funktionalität zum Erreichen
neuer Sicherheits-/Privatsphärenziele
basierend auf alter Technologie.
- • Ein
Hauptverdienst ist, dass die Lösung
zukunftssicher ist und einfach auf eine sichere Weise durch authentifizierte
Downloads zu administrieren ist.
- • Die
Lösung
ist in gewisser Hinsicht transparent für die Vorrichtung, in die die
manipulationssichere Sicherheitsvorrichtung gestöpselt ist. Außerdem ermöglicht sie
einen sicheren Fernzugang direkt zu der Sicherheitsvorrichtung,
so wie ein SIM, wenn die Sicherheitsvorrichtung noch in dem originalen
(mobilen) Endgerät
ist, mit Kommunizieren zum Beispiel über Bluetooth. Dies bedeutet,
dass das Endgerät
als eine „generische" Authentifikationsvorrichtung
verwendet werden kann, ohne Bedrohung für die Sicherheit des SIM.
- • Aus
der Sicht des Netzwerks sollte beachtet werden, dass der AuC-(oder
ein ähnlicher)Knoten
vollständig unverändert gelassen
werden kann, es ist nur der AAA-Server,
wenn solch ein Server verwendet wird, der die zusätzliche
Sicherheitsverarbeitung implementieren muss.
- • Schließlich haben
viele der vorgeschlagenen Ausführungsformen
keinen Einfluss auf Standards, sondern können eine kleine Änderung
der APIs der internen SAT-Umgebungen in Richtung der normalen SIM-Funktionalität erfordern.
-
Andere
durch die vorliegende Erfindung gebotene Vorteile werden beim Lesen
der unten gegebenen Beschreibung der Ausführungsformen der Erfindung
erkannt werden.
-
Kurze Beschreibung
der Zeichnungen
-
Die
Erfindung, zusammen mit anderen Aufgaben und Vorteilen davon, wird
am besten mit Verweis auf die folgende Beschreibung zusammen mit
den begleitenden Zeichnungen verstanden werden.
-
1 ist
ein schematisches Diagramm einer typischen Abfrage-Antwort-Authentifikationsprozedur nach
dem Stand der Technik, das eine Informationsübertragung zwischen relevanten
Beteiligten veranschaulicht.
-
2 ist
ein schematisches Diagramm einer Abfrage-Antwort-Authentifikation nach dem Stand
der Technik, die mit dem EAP-SIM-Protokoll erweitert ist.
-
3 veranschaulicht
eine beispielhafte Ausführungsform
einer manipulationssicheren Sicherheitsvorrichtung gemäß der Erfindung.
-
4 ist
ein schematisches Diagramm eines mit einer manipulationssicheren
Sicherheitsvorrichtung gemäß einer
beispielhaften Ausführungsform
der Erfindung ausgerüsteten
Endgerätes.
-
5 ist
ein Blockdiagramm einer Ausführungsform
einer manipulationssicheren Vorrichtung gemäß der Erfindung, die als ein
Teilnehmeridentitätsmodul
realisiert ist.
-
6 ist
ein schematisches Diagramm eines Netzwerkservers, der Sicherheits-
und/oder Privatsphärenverbesserungen
in manipulationssicheren Sicherheitsvorrichtungen gemäß einer
beispielhaften Ausführungsform
der Erfindung unterstützt.
-
7 ist
ein Blockdiagramm einer alternativen Ausführungsform einer manipulationssicheren
Vorrichtung, in der eine oder mehrere Sicherheitsstrategien und
eine entsprechende Sicherheitsstrategieverarbeitung in der Anwendungsumgebung
der Sicherheitsvorrichtung implementiert sind.
-
8 ist
ein Blockdiagramm einer weiteren beispielhaften Ausführungsform
einer manipulationssicheren Vorrichtung gemäß der Erfindung, die als ein
Subskribiereridentitätsmodul
realisiert ist.
-
9 ist
ein Blockdiagramm noch einer anderen beispielhaften Ausführungsform
einer manipulationssicheren Vorrichtung gemäß der Erfindung, die als ein
Subskribiereridentitätsmodul
realisiert ist.
-
10 ist
ein schematisches Blockdiagramm einer manipulationssicheren Sicherheitsvorrichtung, das
den Betrieb einer sicherheitsverbessernden Anwendung gemäß einer
beispielhaften Ausführungsform
der vorliegenden Erfindung veranschaulicht.
-
11 ist
ein schematisches Blockdiagramm einer manipulationssicheren Sicherheitsvorrichtung,
das eine sicherheitsverbessernde Anwendung mit einer Verkapselung
bzw. Einkapselung und einer vergleichenden Vorverarbeitung gemäß einer
beispielhaften Ausführungsform
der vorliegenden Erfindung veranschaulicht.
-
12 ist
ein Diagramm, das einen Authentifikationsprozess mit einer Privatsphärenverbesserung veranschaulicht,
die durch ein manipulationssicheres Subskribiereridentitätsmodul
gemäß der Erfindung
erhalten ist.
-
13 ist
ein Blockdiagramm einer anderen beispielhaften Ausführungsform
einer manipulationssicheren Vorrichtung gemäß der Erfindung die als ein
Subskribiereridentitätsmodul
realisiert ist.
-
Detaillierte Beschreibung
der Ausführungsformen
der Erfindung
-
In
sämtlichen
Zeichnungen werden dieselben Bezugszeichen für entsprechende oder ähnliche
Elemente verwendet werden.
-
Wie
unten beschrieben werden wird, ist es möglich, die obigen und andere
Sicherheitsziele auf eine Weise zu erhalten, die ungeachtet der
Algorithmen verwendet werden kann, die aktuell auf der Sicherheitsvorrichtung
implementiert sind.
-
Die
Grundidee gemäß einem
Hauptaspekt der Erfindung ist es, sowohl eine zum Zusammenarbeiten mit
dem AKA-Modul ausgebildete Anwendung als auch eine Schnittstelle,
zum Beispiel eine API oder ähnliche Schnittstelle,
zwischen dem AKA-Modul und der Anwendung bereitzustellen, wie schematisch
in 3 veranschaulicht.
-
3 veranschaulicht
eine beispielhafte Ausführungsform
einer manipulationssicheren Sicherheitsvorrichtung gemäß der Erfindung.
Die Sicherheitsvorrichtung 10 umfasst im Grunde genommen
eine Schaltlogik 11, ein AKA-Modul 12, sicher
gespeicherte Benutzerberechtigungsnachweise 13 mit wenigstens
einem Sicherheitsschlüssel
K (möglicherweise
auch Benutzeridentitäten
und Pseudonyme), eine zum Zusammenarbeiten mit dem AKA-Modul ausgebildete
Anwendung 14 und eine mehr oder weniger direkte Schnittstelle
zwischen dem AKA-Modul 12 und der AKA-Zusammenarbeitsanwendung 14.
Die Schaltlogik 11 analysiert an die Sicherheitsvorrichtung
gesendete Befehle und wickelt eine Kommunikation mit internen Funktionen
ab. Das AKA-Modul 12 umfasst Algorithmen zur Authentifikation
und/oder Schlüsselübereinstimmung
bzw. Schlüsselvereinbarung
wenigstens teilweise basierend auf dem Sicherheitsschlüssel K.
-
Die
manipulationssichere Sicherheitsvorrichtung ist vorzugsweise zur
Implementierung in einer Netzwerkvorrichtung, beispielsweise ein
Benutzerendgerät
oder Äquivalentes,
ausgebildet. 4 veranschaulicht ein Benutzerendgerät 20,
so wie ein Mobiltelefon oder ein Personalcomputer, das im Allgemeinen
eine Form von Netzwerkkommunikationsfähigkeiten 25 und eine
manipulationssichere Sicherheitsvorrichtung 10 hat, die zu
der in 3 Gezeigten ähnlich
ist.
-
Die
mit dem AKA-Modul zusammenarbeitende Anwendung ist normalerweise
eine Anwendung mit Bezug zu einer Authentifikation und/oder Schlüsselübereinstimmung
bzw.
-
Schlüsselvereinbarung,
und vorzugsweise eine sicherheits- und/oder privatsphärenverbessernde
Anwendung.
-
Zur
verbesserten Sicherheit führt
die Anwendung etwas unterschiedliche Sicherheitsverarbeitungsaufgaben
in Abhängigkeit
von den bestimmten Sicherheitszielen durch. Die verbesserte Sicherheitsverarbeitung hat
normalerweise einen Bezug zu einer Authentifikation und/oder Schlüsselübereinstimmung
bzw. Schlüsselvereinbarung
des AKA-Moduls, und ist zugehörig
zu Eingabeparametern und/oder Ausgabeparametern des AKA-Prozesses.
-
In
dem Kontext einer verbesserten Sicherheit sind die manipulationssichere
Sicherheitsvorrichtung und/oder das entsprechende Benutzerendgerät vorzugsweise
konfiguriert zum Durchführen
einer Form einer Sicherheitsstrategieverarbeitung. Die Sicherheitsstrategieverarbeitung
umfasst normalerweise eine Sicherheitsstrategieentscheidung und/oder
Durchsetzung, und basiert vorzugsweise auf einer Information, die
die Sicherheitsbedingungen in Bezug zu der manipulationssicheren
Sicherheitsvorrichtung darstellt, wie später detaillierter beschrieben
werden wird.
-
Zur
verbesserten Privatsphäre
verwaltet die Anwendung zum Beispiel Benutzerpseudonyme.
-
Die
Erfindung wird nun vorwiegend in dem Kontext von GSM-SIMs vorgestellt
werden, obwohl die Ideen auch auf UMTS-SIMs anwendbar sind, oder
tatsächlich
auf irgendeine manipulationssichere Sicherheitsvorrichtung mit einer
AKA-Funktionalität,
oder eine ähnliche
Anwendung und Schnittstelle, wie unten beschrieben. Andere Beispiele
enthalten die für
3GPP-IP-Multimedia verwendeten ISIMs, oder allgemeiner UICC-Karten,
die einige SIMs gleichzeitig enthalten können.
-
Die
Anwendung ist vorzugsweise als eine Softwareanwendung implementiert,
die während
der Herstellung vorinstalliert sein kann oder als ein authentifizierter
Anwendungsdownload in eine Anwendungsumgebung der manipulationssicheren
Sicherheitsvorrichtung bereitgestellt ist.
-
Das
in 5 veranschaulichte SIM 10 enthält eine
Schaltlogik 11, ein AKA-Modul 12, einen Sicherheitsschlüssel K 13,
eine Anwendungsumgebung 15 und vorzugsweise auch ein Modul 16 zum
Erfassen von Sicherheitsbedingungen mit Bezug zu dem SIM, zum Beispiel,
ob das SIM 10 in seiner normalen sicheren Umgebung oder
in einer weniger sicheren Umgebung betrieben wird. Die Schaltlogik 11 analysiert
die an das SIM gesendeten Befehle, wickelt eine Kommunikation mit
internen Modulen ab und leitet nach außen gerichtete Daten an das
Benutzerendgerät
weiter, in dem das SIM sich befindet. Das AKA-Modul 12 führt einen
AKA-Prozess mit Verwenden des Sicherheitsschlüssels K, zum Beispiel ein einer
Client-Operator-Subskription zugehöriger Subskriptionsschlüssel, oder
einem davon abgeleiteten Schlüssel
durch. In GSM-SIMs sind diese Funktion im Allgemeinen die A3/A8-AKA-Algorithmen.
-
Die Anwendungsumgebung
-
Die
Anwendungsumgebung 15 ist vorteilhafterweise durch das
Anwendungs-Toolkit des Subskribiereridentitätsmoduls bereitgestellt und
ist im Allgemeinen eine zum Ausführen
von Code fähige
Umgebung. Für ein
GSM-SIM kann die Anwendungsumgebung durch das SIM Application Toolkit
(SAT) [5] bereitgestellt sein, wohingegen die analoge Anwendungsumgebung
eines UMTS-SIM (USIM) durch UMTS SAT (USAT) [6] bereitgestellt ist.
-
Für ein GSM-SIM
spezifiziert die SIM-ME-(SIM-Mobil Equipment) Schnittstelle die „Befehle" und Daten, die ans/vom
SIM/ME gesendet werden können.
Um zum Beispiel die GSM-A3/A8-AKA-Algorithmen laufen zu lassen,
gibt es einen RUN_GSM_ALGORITHMS-Befehl, der Eingabeparameter/Ausgabeergebnisse
an die/von den residenten AKA-Algorithmen routet bzw. leitet. Die
AKA-Algorithmen
berechnen eine Antwort und/oder einen oder mehrere Schlüssel auf
der Grundlage der Abfrage-RAND (und des gespeicherten Sicherheitsschlüssels).
In der Liste von über
die SIM-ME-Schnittstelle möglichen
Befehlen weisen wir speziell auf den ENVELOPE-Befehl hin. Dieser
Befehl ist beabsichtigt zum Senden von mehr oder weniger beliebigen
Daten an das SIM zur Verwendung mit dem SIM Application Toolkit
(SAT). Das Eingabe-/Ausgabeformat
für das
SIM ist explizit spezifiziert, aber es gibt einen hohen Freiheitsgrad
hinsichtlich dessen, was die Anwendungen exakt tun können oder
nicht. Zum Beispiel könnte
die Anwendung ein ziemlich allgemeines Java Applet sein, siehe Referenz
[7]. Dem Applet können
verschiedene Authentifikationsgrade für den Zugriff auf residente
GSM-bezogene Dateien gegeben werden, wobei es eine Möglichkeit
ist, „vollen
GSM-Zugriff" zu geben.
-
In
einer bevorzugten Ausführungsform
der Erfindung ist die AKA-Zusammenarbeitsanwendung 14 in der
durch das SIM-Anwendungs-Toolkit bereitgestellten Anwendungsumgebung
implementiert, mit Verwenden des ENVELOPE-Befehls oder eines analogen
Befehls. Eingabe-/Ausgabedaten
für die
Anwendung werden vorzugsweise auch in das SAT mittels des ENVELOPE-Befehls
transferiert.
-
Zur
Kommunikation zwischen der Softwareanwendung 14 in der
SAT-Umgebung 15 und dem AKA-Modul 12 gibt es vorzugsweise
eine spezielle Schnittstelle, so wie eine dedizierte API, zwischen
dem AKA-Modul 12 und der SAT-Anwendungsumgebung 15.
-
Das
SIM Application Toolkit (SAT) befähigt den Operator, entweder
die AKA-Zusammenarbeitsanwendung 14 in das SIM „hart zu
codieren" oder über die
Luft herunterzuladen. In dem letzteren Fall des Herunterladens ist
es außerdem
möglich
(und wird stark empfohlen), die Anwendung als von einem vertrauten
Anbieter bzw. Teilnehmer, so wie dem richtigen Operator, kommend
zu authentifizieren. Dies ist wichtig, da es einen Schutz gegenüber einem
Herunterladen von „Viren" von böswilligen
Servern gibt. Die heruntergeladene Anwendung kann auch verschlüsselt sein,
so dass der Anwendungsinhalt nicht außerhalb des SIM verfügbar ist. Für Sicherheitsaspekte
mit Bezug zu dem GSM-SAT wird auf [8] verwiesen. Durch Implementieren
der Anwendung in der Anwendungsumgebung des SIM ist es außerdem möglich, die
Funktionalität
davon aufzuwerten. Aufwertungen werden einfach mit Verwenden des
ENVELOPE-Befehls
heruntergeladen.
-
6 ist
ein schematisches Diagramm eines Netzwerkservers, der einen Download
von Sicherheits- und/oder
Privatsphärenverbesserungsanwendungen
oder Applets in eine manipulationssichere Sicherheitsvorrichtung
unterstützt.
Der Netzwerkserver 30 wird typischerweise durch einen vertrauenswürdigen Beteiligten
bzw. Teilnehmer verwaltet, so wie der Netzwerkoperator, und umfasst
im Grunde eine Applet-Quelle 31, ein
Modul 32 für
Verschlüsselungs-/Authentifikationszwecke
und ein Download-Modul 33.
-
Sicherheitsstrategieverarbeitung
-
Wie
zuvor erwähnt,
ist typischerweise eine Form einer Sicherheitsstrategieverarbeitung
in der manipulationssicheren Sicherheitsvorrichtung und/oder dem
Benutzerendgerät
implementiert, und die Sicherheitsstrategieverarbeitung basiert
vorzugsweise auf einer Information, die die Sicherheitsbedingungen
der manipulationssicheren Sicherheitsvorrichtung darstellt. Beispiele
relevanter Sicherheitsbedingungen können die Umgebung, in der die
Sicherheitsvorrichtung betrieben wird, die Schnittstelle, über die
eine Anforderung zur AKA-Verarbeitung kommt, das von dem Benutzerendgerät zur Netzwerkkommunikation
verwendete Netzwerk usw. enthalten.
-
Zur
erhöhten
Sicherheitssteuerung bzw. Sicherheitskontrolle autorisiert das SIM
oder allgemeiner die Sicherheitsvorrichtung vorzugsweise einen Zugriff
auf residente Anwendungsdateien und Befehle, die den AKA-Prozess
und die entsprechenden AKA-Parameter
freilegen könnten,
nur unter gewissen Sicherheitsbedingungen oder Umständen. Die
Sicherheitsbedingungen können
zum Beispiel intern in der manipulationssicheren Sicherheitsvorrichtung
oder extern, zum Beispiel durch das Benutzerendgerät, erfasst
werden.
-
Aus 5 ist
wiederum ersichtlich, dass das SIM ein Modul 16 zur Erfassung
von Sicherheitsbedingungen enthält,
so wie die Umgebung, in der das SIM platziert ist. Zum Beispiel
autorisiert das SIM oder allgemeiner die Sicherheitsvorrichtung
vorzugsweise einen Zugriff auf residente Anwendungsdateien und Befehle,
die den AKA-Prozess und die entsprechenden AKA-Parameter freilegen
könnten,
nur, wenn das SIM in seiner normalen Umgebung (zum Beispiel ein
Mobiltelefon) betrieben wird. Wenn das SIM sich in einer fremden weniger
sicheren Umgebung befindet oder anderweitig freigelegt ist, ist ein
Zugriff auf solche residente Dateien und Befehle vorzugsweise gesperrt.
Anstelle dessen können
Anforderungen zur AKA-Verarbeitung geeignet an die sicherheits-
und/oder privatsphärenverbessernde
Anwendung geleitet werden. Dies ist ein perfektes Beispiel einer
Sicherheitsstrategie, die in der manipulationssicheren Sicherheitsvorrichtung
implementiert und durchgesetzt ist.
-
Es
sollte verstanden werden, dass die verbesserte Sicherheits- und/oder
Privatsphärenverarbeitung nicht
erforderlich sein braucht, wenn die Sicherheitsvorrichtung in ihrer
normalen Umgebung betrieben wird, mit Verwenden der normalen Netzwerkschnittstelle
des Benutzerendgeräts.
Andererseits kann es, für
unsichere Umgebungen, vorteilhaft sein, die Sicherheitsverarbeitung
in Abhängigkeit
von der bestimmten unsicheren Umgebung, in der das SIM platziert
ist, individuell anzupassen. In der Praxis kann dieses durch Bereitstellen einer
Anzahl unterschiedlich individuell angepasster sicherheitsverbessernder
Module oder Unteranwendungen und Auswählen unter diesen Modulen in
Abhängigkeit
von der Umgebung erreicht werden.
-
Wenn
zum Beispiel ein GSM-SIM extern von seiner normalen Umgebung verwendet
wird, ist es empfehlenswert, dass der/die normale RUN_GSM_ALGORITHMS-Befehl/Schnittstelle
deaktiviert sein kann (anderenfalls könnte ein Virus diesen Befehl
immer noch verwenden). Eine Anzahl von Möglichkeiten zum Erreichen solch
einer Deaktivierung wird nun beschrieben werden.
-
Wenn
das SIM nur außerhalb
des normalen Endgerätes
verwendet werden soll (d.h., dass wir ein Spezialzweck-SIM haben), dann
kann man ein SIM einfach herstellen, so dass es nicht den RUN_GSM_ALGORITHMS-Befehl
annimmt, oder so dass dieser Befehl immer intern an die SAT-Umgebung und die
darin laufende(n) Softwareanwendung(en) „umgeleitet" wird. Selbstverständlich kann
es in diesem Fall auftreten, dass es besser ist, einfach ein Spezialzweck-SIM
von Grund auf aufzubauen. Wenn die meisten der existierenden SIM-Architekturen
wiederverwendet werden können,
ist dieses selbstverständlich
jedoch ein Vorteil.
-
Wie
in 5 veranschaulicht, ist die Sicherheitsvorrichtung
oder das SIM vorzugsweise mit der Fähigkeit zum Prüfen der/des
Identität/Typs
des Endgeräts
oder Handapparats bereitgestellt, in dem es verwendet wird. Dies
kann beim Hochfahren durchgeführt
und durch das Modul 16 erreicht werden, das konfiguriert
ist zum Erfassen, ob das SIM 10 in seiner normalen sicheren
Umgebung (normalerweise das Mobilgerät) oder in einer weniger sicheren
Umgebung, so wie ein PC oder Ähnliches,
betrieben ist. Das Erfassungsmodul 16 steuert vorzugsweise
die Schaltlogik 11, so dass AKA-Anforderungen direkt an das AKA-Modul
transferiert werden oder an die Anwendungsumgebung in Abhängigkeit
von den Umständen
umgeleitet werden. Diese Funktionalität könnte somit genutzt werden,
so dass, wenn das SIM entdeckt oder argwöhnt, dass es nicht in dem (korrekten)
Endgerät/Handapparat
ist, es vermutet, dass es extern (in einer unsicheren Umgebung)
ist und in einen Modus tritt, wo es nur die SAT-Befehle annimmt,
und sämtliche
Anforderungen zum AKA-Zugriff durch residente Dateien oder Befehle
verweigert werden.
-
Es
gibt außerdem
eine Möglichkeit,
mehr als einen PIN-Code
mit dem SIM zu verknüpfen.
In diesem Fall könnte
ein spezifischer PIN-Code das SIM informieren, dass es in einer
externen Vorrichtung verwendet ist, und Zugriffsrechte demgemäß setzen,
so dass nur die „ungefährlichen" SAT-Befehle angenommen
werden. Hierbei kann es sein, dass der PIN-Code für den normalen
SIM-Zugriff erneut
bestätigt
werden muss, um eine Aktivierung eines Normalzugriffs aufgrund eines
Irrtums zu verhindern.
-
Es
ist auch möglich,
eine oder mehrere Sicherheitsstrategien und eine entsprechende Sicherheitsstrategieverarbeitung
in der Anwendungsumgebung der manipulationssicheren Sicherheitsvorrichtung
zu implementieren, wie schematisch in 7 angegeben.
In diesem Beispiel enthält
die Anwendungsumgebung 15 eine AKA-Zusammenarbeitsanwendung 14A,
so wie eine sicherheitsverbessernde Anwendung, und eine Sicherheitsstrategieanwendung 14B.
Die Sicherheitsstrategieanwendung 14B kann teilweise oder
vollständig mit
der sicherheitsverbessernden Anwendung 14A integriert sein,
oder als eine separate Anwendung bereitgestellt sein. In einem praktischen
Szenario kann der normale AKA-Befehl bzw. können die normalen AKA-Befehle per Vorgabe
beim Hochfahren gesperrt sein (zum Beispiel durch Steuern der Schaltlogik 11 oder
mittels anderer Einrichtungen), und anfangs wird eine Information
hinsichtlich der Sicherheitsbedingungen des SIM an die Sicherheitsstrategieanwendung 14B transferiert,
die dann eine Sicherheitsstrategieentscheidung für passende weitere Aktionen
vornimmt. Wenn zum Beispiel die Sicherheitsstrategieanwendung 14B informiert wird,
dass das SIM in seiner normalen Umgebung (zum Beispiel das Mobilgerät) platziert
ist, gibt die Sicherheitsstrategieanwendung 14B den normalen
AKA-Befehl bzw.
die normalen AKA-Befehle frei. Wenn die Sicherheitsstrategieanwendung 14B informiert
wird, dass das SIM in einer anderen weniger sicheren Umgebung platziert
ist, wird der normale AKA-Befehl bzw. die normalen AKA-Befehle weiterhin
gesperrt bleiben, und sämtliche
Anforderungen zur AKA-Verarbeitung werden an die sicherheitsverbessernde
Anwendung 14A transferiert, die die AKA-Anforderungen gemäß der anwendbaren
Sicherheitsstrategie abwickelt. Die Sicherheitsbedingungen des SIM
können
intern oder extern des SIM erfasst werden, obwohl ein höherer Grad
einer Autonomie und Sicherheit erhalten werden kann, wenn das SIM
selbst mit einer Funktionalität
zum Erfassen der relevanten Sicherheitsbedingungen versehen ist.
Die Sicherheitsstrategien und die entsprechende Sicherheitsstrategieverarbeitung
können
entweder von einem vertrauenswürdigen
Beteiligten bzw. Teilnehmer, so wie dem Heimoperator, „hart codiert" sein, oder in die
Anwendungsumgebung der SIM heruntergeladen (verschlüsselt/authentifiziert)
sein. Die SAT-Umgebung und der ENVELOPE-Befehl (oder Äquivalentes)
tätigen Downloads
ausgestellter Sicherheitsstrategien als auch praktisch machbarer
Strategieänderungen.
-
Selbst
wenn das SIM in dem normalen Endgerät (Mobilgerät) betrieben wird, kann es
wünschenswert sein,
das AKA-Protokoll über
andere Schnittstellen als die normale (GSM/UMTS) Netzwerkschnittstelle
wieder zu verwenden. Um die Sicherheitsfragen in diesem Fall abzuwickeln,
sind unterschiedliche Lösungen
machbar.
-
In
zum Beispiel einem typischen Bezahlungsszenario wird der Benutzer
einfach eine Bezahlungsanwendung starten, die einem standardisierten
Protokoll folgt, in der eine AKA-Anforderung an eine sicherheitsverbessernde
Anwendung umgeleitet wird, mit Verwenden von zum Beispiel dem ENVELOPE-Befehl
oder einem äquivalenten
Befehl.
-
Außerdem kann
es, in dem obigen Bezahlungsszenario, für den Benutzer wünschenswert
sein, anonym bezüglich
dritter Teilnehmer zu bleiben. Deshalb kann eine ein Benutzerpseudonym
erzeugende privatsphärenverbessernde
Anwendung nach zweckmäßiger und
sicherer Authentifikation aufgerufen werden, wie es später detaillierter
beschrieben werden wird.
-
Darüber hinaus
kann das Endgerät
(Mobilgerät)
konfiguriert sein zum Bestimmen, ob die AKA-Anforderung anfangs über die
normale Netzwerkschnittstelle kommt, oder über eine andere Schnittstelle,
so wie Bluetooth- oder
IRDA-(Infrared Data Association) Schnittstellen. Dieses bedeutet
zum Beispiel, dass das Mobilgerät
selbst fähig
ist zum Erfassen, wenn bzw. wann eine Anforderung für einen
SIM-Zugriff über
weniger sichere Schnittstellen kommt, und demgemäßen passenden Tätigen von
Aktionen. Der Ursprung der Anforderung kann zum Beispiel durch das
Endgerät
basierend auf einer Port-Identifikation
(IR Port, Bluetooth Port, Normal Radio Interface Port usw.) bestimmt
werden. Anstelle eines direkten Transferierens einer Anforderung zur
AKA-Anforderung
an das AKA-Modul, mit Verwenden des normalen residenten Befehls,
wird typischerweise die AKA-Anforderung
an die sicherheitsverbessernde Anwendung durch das Endgerät mit Verwenden
des SAT-Anwendungsumgebungsbefehls
umgeleitet, wenn die Anforderung über die Bluetooth- oder IRDA-Schnittstelle
kommt. Dies ist ein anderes Beispiel einer Sicherheitsstrategie,
die geeignet ist zur Implementierung durch die Erfindung. Hierbei
kann es außerdem
vorteilhaft sein, die Sicherheitsverarbeitung individuell anzupassen
durch Bereitstellen einer Anzahl unterschiedlicher Unteranwendungen
und Auswählen
unter den Unteranwendungen in Abhängigkeit von dem bestimmten
Typ einer durch das Endgerät
verwendeten Schnittstelle.
-
Ein
anderes Beispiel einer zur Implementierung in einer manipulationssicheren
Sicherheitsvorrichtung der Erfindung geeigneten Sicherheitsstrategie
hat Bezug zu den existierenden Vorschlägen zum Verbessern der Sicherheit
der 3GPP-Gb-Schnittstelle [13]. Bei vorhandener Sicherheit gibt
es auch einen Bedarf für
Strategien, die regeln wie/wann eine Sicherheit zu verwenden ist.
Manchmal kann eine niedrige/keine Sicherheit angenommen werden,
manchmal nicht. Während
einer Verhandlung über
die zu verwendenden Sicherheitsalgorithmen kann es, genauer genommen,
ein Problem geben, dass eine Person dazwischen einen so genannten „Runtergebieten-Angriff" (Bidding-Down Attack)
durchführt.
Es sei angenommen, dass das Mobilendgerät an das Netzwerk signalisiert,
dass es fähig
ist zum Verwenden von Sicherheitsalgorithmen „A" und „B", wobei „A" viel stärker als „B" ist. Wenn ein Angreifer nun einfach „A" aus der Liste unterstützter Algorithmen löscht, wird
das Netzwerk glauben, dass das Mobilgerät nur „B" unterstützt, und das Mobilendgerät/Netzwerk werden
ein Verwenden einer suboptimalen Sicherheit beschließen, selbst
wenn beide Teilnehmer auch „A" unterstützen. Aus
diesem Grund gibt es einen Vorschlag zum Hinzufügen einer Form eines Integritätsschutzes der
Verhandlung. Jedoch wird es für
eine gewisse Zeit ein Gemisch von die verbesserte Sicherheitsverhandlung
unterstützenden
Netzwerken als auch mancher Netzwerke geben, die noch nicht aufgewertet
worden sind. Deshalb können
Operatoren eine Strategie an ihre Subskribierer ausstellen, mit
Diktieren, ob das Mobilendgerät
eine unsichere Verhandlung in einem fremden besuchten Netzwerk annehmen
sollte. Offensichtlich ist eine attraktive Platzierung für diese
Strategiesteuerung in der Anwendungsumgebung einer manipulationssicheren
Sicherheitsvorrichtung, so wie einem SIM. Die Entscheidung, ob eine
unsichere Verhandlung angenommen werden sollte, basiert vorzugsweise
auf der Information, die über
AKA integritätsgeschützt ist.
-
Noch
eine andere Variante einer Sicherheitsstrategieverarbeitung ist
ein Identifizieren des Netzwerks/Operators, zum Beispiel durch Untersuchen
eingehender AKA-Parameter, und individuelles Anpassen der nachfolgenden
Sicherheitsverarbeitung in Abhängigkeit
von der Netzwerk/Operator-Identität. Dies nimmt an, dass unterschiedliche
Operatoren basierend auf beispielsweise einkommenden AKA-Parametern
unterschieden werden können.
-
Zur
Veranschaulichung ist ein Beispiel einer Sicherheitsstrategietabelle
zur Implementierung in einer manipulationssicheren Sicherheitsvorrichtung
gemäß der Erfindung
unten dargestellt.
-
-
Modifizierungen für das Benutzerendgerät
-
Es
ist überaus
wünschenswert,
die SIM/ME-Schnittstelle intakt zu halten, ohne Auswirkung auf die Standards
(selbst wenn neue Befehle hinzugefügt werden müssen, können wenigstens die SIMs immer
noch rückwärts kompatibel
zu dem Standard sein). Selbstverständlich ist es auch wichtig,
die Frage zu berücksichtigen,
ob die Endgeräte/Handapparate
durch die Erfindung unbetroffen bleiben. Wenn das SIM extern vom Endgerät/Handapparat
verwendet werden soll, gibt es offensichtlich keinen Bedarf zum Ändern des
Handapparats, da er nicht involviert sein wird. In dem Fall, dass
der zu verwendende Handapparat ein „Authentifikations-Token" ist, wie oben diskutiert,
gibt es üblicherweise
einen Bedarf zur Modifizierung. Jedoch erfordert allein die bloße Tatsache,
dass es möglich
sein sollte, GSM-AKA-Befehle über IRDA
oder Bluetooth laufen zu lassen, Modifizierungen (Verbinden des
SIM mit Bluetooth/IRDA), und unsere Erfindung mit Bezug zu der SIM-Funktionalität macht
es nicht schwieriger, diese Änderungen
einzuführen.
-
Alternativer Ort zur Implementierung
der AKA-Algorithmen
-
Es
ist auch möglich,
obwohl etwas weniger bevorzugt, die AKA-Algorithmen oder wenigstens
Teile davon als eine Anwendung in der Anwendungsumgebung der manipulationssicheren
Vorrichtung zu implementieren mit einem Lesezugriff auf den Sicherheitsschlüssel (oder
möglicherweise
einem davon abgeleiteten Schlüssel),
wie in 8 und 9 veranschaulicht. In 8 sind
die AKA-Zusammenarbeitsanwendung 14 und die AKA-Algorithmen 12 als
separate Anwendungen implementiert, die miteinander zusammenarbeiten. Alternativ
sind jedoch die zwei Funktionen 12, 14, wenigstens
teilweise, in dieselbe Softwareanwendung integriert, wie schematisch
in 9 veranschaulicht.
-
Im
Folgenden wird die Erfindung vorwiegend mit Verweis auf verschiedene
nicht einschränkende
Beispiele einer verbesserten Sicherheitsverarbeitung und Privatsphärenverarbeitung
beschrieben werden, implementiert als Software in einer SAT-Umgebung
eines SIM.
-
Zur
weiteren Information über
grundlegende Details der GSM-SIM-Spezifikation wird auf [9] verwiesen.
-
Beispiel einer verbesserten
Sicherheitsverarbeitung
-
Beispielsweise
zum Erhöhen
der Sicherheit für
ein GSM-SIM, zum
Zweck einer normalen GSM-AKA, könnten
die folgenden Schritte unternommen werden.
-
Eine
SIM-Karte wird hergestellt, die [4, 5 und 9] folgt, aber zusätzlich eine
interne API oder ähnliche Schnittstelle,
von der SAT-Umgebung an die A3/A8-Algorithmen, hat. Man beachte, dass
dieses keinen Einfluss auf existierende SIM-Standardspezifikationen
hat.
-
Wenn
das SIM extern zu dem Telefon verwendet werden soll, eingestöpselt in
eine andere Vorrichtung, ist es außerdem sehr empfehlenswert,
Bereitstellungen zu treffen, so dass der normale RUN_GSM_ALGORITHMS-Befehl
gesperrt werden kann. Zu diesem Zweck sind einige unterschiedliche
Lösungen
möglich,
wie zuvor erläutert.
-
Der
Operator stellt dem SIM (entweder während der Herstellung oder
zu einer späteren
Zeit wie einem authentifizierten Anwendungsdownload) eine Anwendung
zum Durchführen
einer verbesserten Sicherheitsverarbeitung in der SAT-Umgebung bereit.
Die sicherheitsverbessernde Anwendung könnte zum Beispiel konfiguriert
sein zum Einkapseln von AKA-Antworten in einen sichereren Algorithmus,
wie zum Beispiel in dem EAP-SIM-Protokoll vorgeschlagen. Die Abfragen
(RANDs) werden als Eingabedaten an die SAT-Anwendung vielmehr mittels
des ENVELOPE-Befehls gesendet, als einem Verwenden des RUN_GSM_ALGORITHMS-Befehls
auf der SIM-ME-Schnittstelle. Alternativ wird das gesamte Applet
in Echtzeit für
jede Authentifikation heruntergeladen. Dies ergibt den Vorteil,
dass es möglich
gemacht wird, das Netzwerk zu authentifizieren (da das Applet authentifiziert
ist) und sicherzustellen, dass das Endgerät immer die letzte „Version" des Applets hat.
Selbstverständlich
wird diese Authentifikation im Allgemeinen ohnehin ohne Herunterladen
des gesamten Applets erreicht werden, zum Beispiel durch Betreiben
eines Protokolls, in dem die „RAND"-Werte authentifiziert
sind und möglicherweise
auch zur Wiedergabe geprüft
sind und die Authentifikation/Frische in der SAT-Anwendung selbst
jedes Mal verifiziert wird.
-
Ungeachtet
des Endgerättyps,
an den das SIM angefügt
ist, und die Weise, in der auf das SIM zugegriffen wird (durch Bluetooth,
IRDA, im Kartenleser usw.), findet sämtliche AKA-bezogene Verarbeitung
auf dem SIM statt, einschließlich
der sicherheitsverbessernden Schritte. Die verbesserte Sicherheitsverarbeitung kann
eine Manipulation von Ausgabeparametern und/oder Eingabeparametern
des AKA-Prozesses involvieren, wie schematisch für eine allgemeine manipulationssichere
Sicherheitsvorrichtung in 10 veranschaulicht.
-
Zum
Beispiel basiert das EAP-SIM-Protokoll auf einer Einkapselung bzw.
Verkapselung empfindlicher Parameter durch Manipulieren von AKA-Ausgabeparametern.
Mit einer gegeben Anzahl von AKA-Antworten RES(1), ..., RES(n),
resultierend von einer Menge von Anfangs-RAND-Werten, RAND(1), ...
RAND(n), können die
AKA-Antworten in der folgenden Weise zum Produzieren einer resultierenden
Antwort höherer
Sicherheit RES' verkapselt
sein:
h(Schlüssel,
RES(1), ..., (RES(n))
wobei h eine verschlüsselte Funktion bzw. Schlüsselfunktion
ist, zum Beispiel auf SHA-1 basierend. Die n Antworten werden, mit
anderen Worten, in eine einzelne Antwort durch eine Schlüsselfunktion
zusammengefasst. Ähnlich
kann ein längerer
Schlüssel
Kc' erzeugt
werden durch Verketten der Schlüssel
Kc(1), ... Kc(n),
aus der obigen Menge von RAND-Werten resultierend, möglicherweise
durch eine zusätzliche
Verarbeitung gefolgt.
-
Es
wurde kürzlich
entdeckt, dass der Ansatz zum Verwenden einiger RAND-Werte in Folge
zum Ableiten längerer
Schlüssel
Fehler hat [11]. Zum Beispiel kann, durch Ausstellen vielmehr des
n-mal wiederholten selben RAND-Wertes, als n unterschiedlichen RAND-Werten,
die erhaltene effektive Sicherheit immer noch nur äquivalent
zu der von einem einzelnen RAND-Wert Erhaltenen sein. Durch Vergleichen
der relevanten Menge von AKA-Eingabeparametern
zur Frische und/oder Eindeutigkeit kann dieses bestimmte Problem
im Allgemeinen gelöst
werden. Gemäß einer
bestimmten Ausführungsform
der Erfindung enthält
die auf der manipulationssicheren Sicherheitsvorrichtung 10 (zum
Beispiel ein SIM) implementierte sicherheitsverbessernde Anwendung 14 deshalb
einen Komparator 17 zusammen mit einem Einkapselungsmodul 18,
wie schematisch in 11 veranschaulicht. Das Einkapselungsmodul 18 führt zum
Beispiel eine Einkapselung bzw. Verkapselung durch eine Kombination
einer vorbestimmten Anzahl aufeinander folgender AKA-Ausgabeparameter
(Kc, RES) durch, die in Reaktion auf eine
Anzahl entsprechender AKA-Eingabeparameter
(RAND) erzeugt sind. Der Komparator 17 vergleicht die relevante
Menge aufeinander folgender AKA-Eingabeparameter (RAND) zum Verifizieren,
dass sämtliche
dieser AKA-Eingabeparameter eindeutig sind. Typischerweise erwartet
der Komparator 17 ein Empfangen einer Menge, die eine gegebene
Anzahl aufeinander folgender Eingabeparameter (RAND-Werte) für die gesamte
Einkapselung bzw. Verkapselung umfasst, und vergleicht jeden eingehenden
Eingabeparameter gegen jeden der vorherigen Eingabeparameter in
dieser Menge. Auf diese Weise kann sichergestellt werden, dass die
resultierenden „maskierten" AKA-Ausgabeparameter
(Kc',
RES') in Reaktion
auf eine Menge eindeutiger AKA-Eingabeparameter
(RAND-Werte) erzeugt sind. Wenn gewünscht, können die AKA-Eingabeparameter
auch in das Einkapselungsmodul 18 als zusätzliche
Eingabe für
die Einkapselung gespeist werden, wie durch die gestrichelte Linie
in 11 angegeben. Alternativ kann die Frische/Eindeutigkeit
der AKA-Eingabeparameter auf andere Weisen bestimmt werden, zum
Beispiel durch Verwenden zeit-gestempelter AKA-Eingabeparameter
und Prüfen,
dass die Zeitstempel einer gegebenen Menge von Parametern innerhalb
eines vorbestimmten Zeitintervalls sind.
-
Noch
ein anderes Merkmal von dem EAP-SIM-Protokoll, das verallgemeinert
und in einer AKA-Zusammenarbeitsanwendung
implementiert sein kann, ist eine Authentifikation des Netzwerks, über welches
das Benutzerendgerät
kommuniziert. Im normalen GSM-AKA sendet das Netzwerk eine Authentifikationsanforderung
zusammen mit einem RAND, und das SIM erwidert einfach mit einer
Antwort RES. Diese Authentifikation kann erweitert werden, durch
Zulassen, dass das SIM oder die äquivalente
manipulationssichere Sicherheitsvorrichtung einen neuen Zufallswert
RAND' an die Netzwerkseite
in Reaktion auf die Authentifikationsanforderung sendet. Das Netzwerk
berechnet dann einen MAC (Message Authentication Code) oder Ähnliches
basierend auf dem empfangenen RAND' und einem vom RAND und dem SIM-Schlüssel K abgeleiteten
Sitzungsschlüssel,
und sendet den MAC an das SIM zur Verifizierung der Authentizität des Netzwerks
zurück.
Die relevanten Schritte eines solchen erweiterten Protokolls könnten auf
die folgende Weise entworfen sein:
- 1. Netzwerk
sendet Authentifikationsanforderung an SIM.
- 2. SIM sendet RAND' an
Netzwerk.
- 3. Netzwerk erzeugt RAND, berechnet MAC (Schlüssel, RAND,
RAND', ...) und
sendet RAND und MAC an das SIM.
- 4. SIM prüft
MAC, und, wenn in Ordnung, berechnet Schlüssel/Antworten.
-
Die
Einkapselung bzw. Verkapselung von AKA-Schlüssel-Antworten, in dem EAP-SIM-Protokoll
vorgeschlagen, impliziert im Allgemeinen eine Manipulation von AKA-Ausgabeparametern.
Es ist jedoch möglich, die
Eingabeparameter für
den AKA-Prozess zu manipulieren. Zum Beispiel kann eine neue manipulierte
Eingabe berechnet werden als:
h(Schlüssel, RAND),
so dass die
Ausgabeantwort gleicht:
A8(Schlüssel, h(Schlüssel, RAND)),
wobei
h eine verschlüsselte
Funktion bzw. Schlüsselfunktion
ist, zum Beispiel basierend auf SHA-1. Ein Beispiel einer Manipulation
sowohl der Eingabeparameter als auch der Ausgabeparameter ist es,
die abschließende
resultierende Ausgabeantwort zu erzeugen als:
g(Schlüssel, A8(Schlüssel, h(Schlüssel, RAND))),
wobei
g und h verschlüsselte
Funktionen bzw. Schlüsselfunktionen
sind, zum Beispiel auf SHA-1 basierend.
-
Außerhalb
des SIM sind keine empfindlichen Daten verfügbar und die Sicherheitsfunktionalität kann auch
erweitert werden zum Bereitstellen von mehr als einem Schlüssel usw.
-
Eine
entsprechende Manipulation/Einkapselung könnte für UMTS durchgeführt werden,
mit Verwenden von USIMs. Auch für
für 3GPP-IP-Multimedia
verwendete ISIMs gibt es einen Vorschlag zum „Einkapseln" von Authentifikationsnachrichten
in dem HTTP-Digest-Protokoll
[12]. Diese Einkapselung kann durch die aktuelle Erfindung erreicht
werden.
-
Beispiele
einer Vorverarbeitung von AKA-Eingabeparametern
enthalten:
- • Verifizierung
der AKA-Eingabeparameter-Frische;
- • Verifizierung
der AKA-Eingabeparameter-Integrität;
- • AKA-Eingabeparameter-Entschlüsselung;
- • AKA-Eingabeparameter-Kombination;
- • Sicherheitsstrategieentscheidung
basierend auf AKA-Eingabeparameter(n).
-
Beispiele
einer Nachverarbeitung von AKA-Ausgabeparametern
enthalten:
- • Zusammenfassung
einer Anzahl erzeugter AKA-Ausgabeparameter
(Kc und/oder RES) in einen oder mehrere
(möglicherweise
längere)
modifizierte AKA-Ausgabeparameter
(Kc' und/oder
RES');
- • Integritätsschutz
erzeugter AKA-Ausgabeparameter;
- • Verschlüsselung
erzeugter AKA-Ausgabeparameter;
- • Strategieentscheidung
und/oder Durchsetzung von AKA-Ausgabeparameter(n)
basierend auf einer AKA-Eingabeparameter-Untersuchung.
-
Verbesserte Sicherheitsverarbeitung
zum gesetzlichen Abfangen
-
Es
gibt gesetzliche Anforderungen hinsichtlich eines gesetzlichen Abfangens.
Das heißt,
dass Netzwerkoperatoren per gerichtlicher Anordnung fähig sein
müssen
zum Liefern einer Klartextkonversation an Gesetzdurchsetzungsbehörden. In
dem klassischen GSM-Fall ist dieses einfach, da nur die Verbindung
zwischen ME und der RBS (Radio Base Station) verschlüsselt ist
(mit einem Schlüssel,
den der Operator kennt).
-
Es
wird erwartet, dass wir bald eine Ende-zu-Ende-(e2e) Verschlüsselung
zwischen Benutzern sehen werden, d.h., dass bevor die Konversation
startet, eine e2e-Schlüsselübereinstimmung
bzw. Schlüsselvereinbarung
zwischen den zwei Benutzern durchgeführt wird, zum Beispiel mit
Verwenden des wie in [10] spezifizierten Protokolls MIKEY. Dies
erschwert ein gesetzliches Abfangen, da der Operator fähig sein
muss zum Deduzieren desselben Schlüssels, wie die Benutzer ihn
erhalten und gemeinsam untereinander nutzen. Die Erfindung schlägt vor,
dass wenigstens Teile der Operationen und Berechnungen, die in Verbindung
mit der e2e-Schlüsselvereinbarung
erforderlich sind, als eine Anwendung in einer SAT-ähnlichen
Umgebung implementiert sind, durch Aufwerten des SIM mit einer Anwendung,
die, basierend auf dem von dem Operator und Benutzer gemeinsam genutzten
Schlüssel
k, auch Ende-zu-Ende-Schlüssel zwischen
Benutzern A und B ableitet, die „automatisch" dem Operator ebenfalls
bekannt werden.
-
Es
sei zum Beispiel gx eine Potenzierung in
einer geeigneten (sicheren) Gruppe G, zum Beispiel die ganzen Zahlen
Modulo eine Primzahl p, oder die Punkte einer elliptischen Kurve über ein
finites Feld. Das Ergebnis der GSM-(oder UMTS-) AKA für Benutzer
A ist ein Schlüssel
kA. Ähnlich
bekommt Benutzer B einen Schlüssel
kB. Wir führen
nun ein Diffie-Hellman-Protokoll, [14], durch, wo A an B gkA sendet, und B an A gkB sendet.
Der gemeinsam genutzte Schlüssel
ist gkA*kB. Einer der beiden oder jeder
Operator (Heimatoperator von A oder B) kann, durch Kennen von kA
(oder kB) und Beobachten von gkB (oder gkA), denselben Schlüssel berechnen.
-
Man
beachte, dass, wenn das Endgerät,
mit dieser Extrafunktionalität
erweitert werden soll, es wiederum wünschenswert ist, die gkA (und gkB) Berechnung
in dem SIM selbst zu implementieren, da anderenfalls kA (und kB)
die geschützte
Umgebung des SIM verlassen müssen.
Mit der vorliegenden Erfindung kann die gesamte Berechnung tatsächlich in
dem SIM getätigt
werden, vorzugsweise in einer SAT-Anwendung, das einfach mit neuen
Schlüsselaustauschverfahren
aufgewertet werden kann.
-
Zur
Information hinsichtlich einer e2e-Verschlüsselung und einem gesetzlichen
Abfangen verweisen wir hiermit auf unsere frühere Patentanmeldung [15],
die hiermit durch Verweis aufgenommen ist.
-
Immer
noch ein Problem, in [15] diskutiert, ist es, dass nicht nur die
Heimatoperatoren zum „Belauschen" der Kommunikation
zwischen A und B fähig
sein werden, sondern auch der Operator der besuchten Netzwerke,
in denen A und B momentan sind. Dies könnte eine Bedrohung sein, wenn
der Operator des besuchten Netzwerks nicht 100%-vertrauenswürdig ist.
Dieses ist ein Effekt davon, dass kA (und kB) an die besuchten Netzwerke
gesendet wird. Um dieses zu lösen,
kann das in [15] vorgeschlagene Verfahren oder ein ähnliches
Verfahren verwendet werden. Es sei k der zwischen dem Benutzer und
dem Heimatnetz gemeinsam genutzte Schlüssel (auf dem SIM gespeichert).
Anstelle eines Sendens von kA = kdf(k, RAND) an das besuchte Netz,
wobei kdf eine Schlüsselableitungsfunktion
ist, senden wir kA' =
f(kA) (und ähnlich
für kB)
an das besuchte Netz, wobei f eine Einwegfunktion ist. Die Einwegeigenschaft
stellt sicher, dass jemand, der nur kA' kennt, noch nicht weiß, was kA
ist. Der Schlüssel
kA' wird nun (transparent)
zur normalen GSM-UMTS-Sicherheit verwendet, wohingegen es immer
noch kA (und kB) ist, das als eine Basis für die e2e-Schlüsselvereinbarung
zwischen A und B verwendet wird, mit Verwenden von zum Beispiel
dem Diffie-Hellman-Protokoll.
Nun können
nur die Heimatoperatoren ein gesetzliches Abfangen durchführen. Die
Idee gemäß der Erfindung
ist es, die Maskierungsfunktionalität der Funktion f in einer SAT-ähnlichen
Anwendung zu implementieren.
-
Verbesserte Sicherheitsverarbeitung
zum öffentlichen
Zugriff
-
Ein
Problem, das auf den letzten Punkt oben bezogen ist, ist das Folgende.
Es gibt Pläne, öffentliche „Hot-Spots" bereitzustellen,
wo Mobilbenutzer temporär
höhere
Bitraten durch eine andere Zugriffstechnologie bzw. Zugangstechnologie,
zum Beispiel IEEE 802.11 WLAN (Wireless LAN), erlangen können. Ein
Problem hierbei ist, dass die „Basisstation" oder ein AP (Access
Point) in einer nicht vertrauenswürdigen Umgebung sind. Dieses könnte bedeuten,
dass ein physikalisches „Abgreifen" in den AP nach empfindlichen
Daten, so wie Schlüsseln
zum Integritätsschutz
von Verkehr, notwendig für
den Operator zum korrekten Abrechnen des Verkehrs, möglich ist.
Deshalb existieren manche Ideen, in denen der Integritätsschutz
in manch anderem Knoten abgeschlossen ist, ASN (Access Services
Node) genannt, weiter in dem Netzwerk, somit besser geschützt. Es
kann immer noch einen konventionellen 802.11- oder ähnlichen
Integritätsschutz
am Platze zwischen dem Endgerät
und dem AP geben, und somit werden zwei Schlüssel benötigt:
- • ein Schlüssel, k1,
zum Schützen
der ME-AP-Verbindung; und
- • ein
Schlüssel,
k2, zum Schützen
der ME-ASN-Verbindung, der in dem AP nicht verfügbar sein darf.
-
Dies
bedeutet, dass, basierend auf dem Subskribiererschlüssel, der
auf dem SIM gespeichert ist, vielmehr zwei Schlüssel abgeleitet werden müssen, als
nur einer. Darüber
hinaus darf k2 von k1 nicht deduzierbar sein. Dieses kann erreicht
werden durch Ableiten von k2 mit Verwenden des normalen AKA-Protokolls, und dann
von k1 = f(k2) für
eine geeignete Einwegfunktion, wobei nur dieses letztere k1 an den
AP gesendet wird. Wiederum kann wenigstens die Erzeugung des weiteren
Schlüssels
k1 sicher als eine SAT-Anwendung auf dem SIM selbst mit Verwenden
der aktuellen Erfindung implementiert sein.
-
Privatsphärenverbesserungen
-
In
einem anderen Aspekt der Erfindung wird das SIM oder eine ähnliche
Sicherheitsvorrichtung (und im Besonderen das Anwendungs-Toolkit
davon) verwendet zum Verbessern der Privatsphäre des Benutzers auf eine passende
weise, zum Beispiel durch Verwalten von Benutzerpseudonymen.
-
Typischerweise
wird einem Benutzer ein temporärer
Identifizierer oder ein temporäres
Pseudonym während
eines Anhängens
an das Netzwerk zugewiesen, um seine wahre Identität zu schützen. Außerdem kann
das Pseudonym mehrmals aufgefrischt werden, um sogar ein Verbinden
von Transaktionen unmöglich zu
machen. Vorzugsweise ist die temporäre ID, tmpID, nur eine Kette
bzw. ein String, der zufällig
jedes Mal ausgewählt
wird, wenn der Benutzer verbindet. Sie bzw. er könnte durch den Benutzer (zum
Beispiel durch die Kommunikationsvorrichtung des Benutzers) ausgewählt werden
oder an ihn durch das Netzwerk zugewiesen werden. Letzteres hat
den Vorteil, dass es einfach ist, eine Eindeutigkeit für jedes
verwendete Pseudonym sicherzustellen.
-
Es
sollte aber verstanden werden, dass die Zuweisung von Benutzerpseudonymen
sowohl das Netzwerk als auch das Benutzerendgerät involvieren kann. Zum Beispiel
kann die temporäre
ID durch ein erstes Teil von dem Netzwerk und ein zweites Teil,
das zum Beispiel spezifisch für
den Heimatoperator des Benutzers sein kann, von dem Benutzerendgerät definiert
werden. Ein Beispiel solch einer tmpID kann „4711@xyz.com" sein, wobei der
erste Teil „4711" durch das Netzwerk
zugewiesen wird, und der zweite Teil „@xyz.com" in dem Benutzerendgerät zugewiesen
wird.
-
Man
betrachte ein Mehrzugriffsszenario, wobei der Benutzer ab und zu
den Zugriff ändert.
Dem Benutzer wird typischerweise eine neue Identität zugewiesen,
wenn der Zugriff sich ändert.
Jedoch muss die neue Zuweisung normalerweise auf der alten tmpID,
d.h. der für
das vorherige Netzwerk/Vorrichtung verwendeten ID oder der in einer
vorherigen Sitzung mit demselben Netzwerk verwendeten ID basieren.
Dies bedeutet, dass die tmpID irgendwie anfangs über das neue Zugriffsverfahren
bzw. Zugangsverfahren oder den Dienst-Provider getragen werden muss.
Dieses verursacht Synchronisationsprobleme. Zum Beispiel könnte der
Benutzer den GPRS-Endgerätzugriff
zu einem WLAN-Zugriff auf einem Laptop-Computer ändern.
-
Mit
der vorliegenden Erfindung ist es dem SIM, oder einer ähnlichen
Sicherheitsvorrichtung, möglich, die
tmpIDs zu speichern und zu administrieren, vorzugsweise in einer
SAT-Anwendung oder Äquivalentem. Wenn
der Benutzer den Zugriff ändert,
wird das SIM mit dem neuen Endgerät verbunden (zum Beispiel indem es
physikalisch bewegt wird), wodurch die aktuelle tmpID (und möglicherweise
andere existierende Sicherheitsparameter) über die neue Vorrichtung transferiert
wird. Das neue Netzwerk kann, vorzugsweise nach einem Authentifizieren
des Benutzers (das AKA-Modul involvierend), nun ihm eine neue temporäre ID, tmpID', zuweisen. In dem
etwas einfacheren Fall, dass dasselbe Endgerät verwendet wird, aber für eine neue
Sitzung, wird sich das SIM ähnlich
an die zuvor verwendete ID „erinnern" und braucht nicht
physikalisch bewegt zu werden.
-
Wie
in 12 veranschaulicht, werden Berechtigungsnachweise
(einschließlich
von zum Beispiel Authentifikationsantworten und einer bereits existierenden
ID) von dem SIM 10 abgerufen (0), das in einem ersten Benutzerendgerät 20-1 angeordnet
ist, und ein Benutzer/Netzwerkauthentifikationsprotokoll zwischen
dem SIM 10 und einem ersten Zugriffsnetzwerk 40-1 wird
ausgeführt
(1). Diese Authentifikation involviert (2) möglicherweise einen externen
Authentifikationsserver 50. Der Benutzer erhält ein neues
Pseudonym (3), tmpID, das in dem SIM 10-1 gespeichert wird
(4). Schritte (1-4/3-4)
können
optional bei Intervallen wiederholt werden, was in einer erneuten
Authentifikation und/oder neuen Pseudonymen resultiert. Nach einer
gewissen Zeit findet der Benutzer des ersten Benutzerendgerätes 20-1 es
wünschenswert,
den Zugriff zu einem zweiten Benutzerendgerät 20-2 und einem zweiten
Zugriffsnetzwerk 40-2 zu ändern. Das SIM 10 wird
zu dem zweiten Benutzerendgerät 20-2 bewegt
(5). Mit Verwenden der existierenden Berechtigungsnachweise/tmpID
(6) muss sich der Benutzer möglicherweise
erneut bei dem neuen Netzwerk 40-2 authentifizieren (7),
was erneut möglicherweise
den Authentifikationsserver 50 involviert (8). Möglicherweise
wird das Benutzerpseudonym auf einen neuen Wert tmpID' aufgefrischt (9)
und dieser neue Wert wird dann in dem SIM 10 gespeichert.
Wiederum können
die Schritte (7-9/8-9) bei Intervallen wiederholt werden, um die
Privatsphäre
und Sicherheit zu verbessern.
-
Selbstverständlich kann
es der Fall sein, dass zwei Endgeräte 20-1 und 20-2 identisch
sind und die zwei Zugriffe bzw. Zugänge durch unterschiedliche
Zugriffseinrichtungen in demselben Endgerät 20 erhalten werden,
wobei in diesem Fall das SIM 10 niemals das Endgerät verlässt, aber
noch IDs über
Zugriffsänderungen
bzw. Zugangsänderungen
verwaltet.
-
Die
Ausführung
der privatsphärenverbessernden
Anwendung ist typischerweise bedingungsabhängig, abhängig davon, ob oder nicht die
AKA-Authentifikation erfolgreich ist. Die privatsphärenverbessernde
Anwendung wird zum Beispiel nur in Reaktion auf eine erfolgreiche
Authentifikation ausgeführt.
-
Unter
Betrachtung des Falls, wenn der temporäre Identifizierer, wenigstens
teilweise, durch das Benutzerendgerät zugewiesen ist, kann es möglich sein,
die neue tmpID' oder
wenigstens Teile davon durch Verwenden des AKA-Moduls zu erzeugen,
zum Beispiel durch Berechnen der neuen tmpID' als:
neue tmpID' = s(Schlüssel, A8(Schlüssel, alte
tmpID)),
wobei s eine verschlüsselte Funktion bzw. Schlüsselfunktion
ist, zum Beispiel auf SHA-1 basierend. In diesem bestimmten Beispiel
wird die privatsphärenverbessernde
Anwendung in der SAT-Umgebung des SIM die alte tmpID an das AKA-Modul
senden und eine A8-Antwort empfangen, die von der privatsphärenverbessernden Anwendung
zum Berechnen der neuen tmpID' verwendet
wird.
-
Alternativ
weist das Netzwerk ein neues Pseudonym tmpID' für
den Benutzer zu. Das zugewiesene Pseudonym wird dann sicher an das
SIM oder eine äquivalente
manipulationssichere Sicherheitsvorrichtung transferiert (verschlüsselt/authentifiziert),
in dem/der das Pseudonym entschlüsselt
und/oder authentifiziert wird mittels des SIM-Schlüssels, und
in der privatsphärenverbessernden
Anwendung aufgezeichnet und administriert wird. In noch einer anderen
Ausführungsform
rechnet die privatsphärenverbessernde
Anwendung einfach eine neue tmpID' auf eine Zufallszahl um, die von dem
Netzwerk angenommen wird, wenn die AKA-Antwort korrekt ist.
-
Hardware-Implementierungen
-
Es
sollte verstanden werden, dass, obwohl eine Software-Implementierung besonders
vorteilhaft ist, es auch möglich
ist, dass die AKA-Zusammenarbeitsanwendung als Hardware in der manipulationssicheren Sicherheitsvorrichtung
vorgefertigt ist, mit einer mehr oder weniger direkten Schnittstelle
zwischen der Hardware-Anwendung und dem AKA-Modul.
-
13 veranschaulicht
ein Beispiel einer besonders vorteilhaften Hardware-Implementierung,
die die Anwendungsumgebung des SIM und die existierenden Befehle
(zum Beispiel den ENVELOPE-Befehl) zum Transferieren von Eingabedaten
an die Anwendungsumgebung nutzt, und dann die Eingabedaten von der
Anwendungsumgebung über
eine zusätzliche
Schnittstelle an das vorgefertigte Hardware-Anwendungsmodul auf dem SIM leitet.
Die Hardware-Anwendung
ist mehr oder weniger direkt mit dem AKA-Modul zusammengeschaltet,
vorzugsweise durch eine spezielle Schnittstelle, und leitet schließlich die
Ausgabedaten an das Benutzerendgerät über die Anwendungsumgebung
weiter.
-
In
noch einer anderen Implementierung sind das AKA-Modul und die Zusammenarbeitsanwendung, so
wie eine sicherheitsverbessernde Anwendung, in demselben Hardware-Schaltkreis
auf dem SIM integriert. In solch einer integrierten Hardware-Implementierung
sollte es jedoch vorzugsweise immer noch möglich sein, zwischen der normalen
AKA-Verarbeitung und der verbesserten AKA-Verarbeitung in Abhängigkeit von der Betriebsumgebung
des SIM auszuwählen.
-
Eine
Hardware-Implementierung schließt
nicht die Möglichkeit
eines späteren
Herunterladens einer Software-Anwendung aus, die die Hardware-Anwendung
ersetzen kann, oder einer Software-Korrektur, die mit der Hardware-Anwendung
zusammenarbeiten kann.
-
Schließlich verweisen
wir auf unsere frühere
Patentanmeldung [16].
-
Die
oben beschriebenen Ausführungsformen
sind lediglich als Beispiele gegeben, und es sollte verstanden werden,
dass die vorliegende Erfindung nicht darauf beschränkt ist.
Weitere Modifizierungen, Änderungen
und Verbesserungen, die die hier offenbarten und beanspruchten zugrunde
liegenden Prinzipien beibehalten, sind innerhalb des Schutzbereichs
der Erfindung.
-
Referenzen
-
- [1] Haverinen, "EAP SIM Authentication", draft-haverinen-pppext-eap-sim-05.txt,
IETF.
- [2] Federal Information Processing Standard FIPS PUB 180-1,
NIST.
- [3] Arkko und Haverinen: "EAP
AKA Authentication",
draft-arkko-pppext-eap-aka-04.txt, IETF.
- [4] 3GPP TS 11.11 Technical Specification 3rd Generation Partnership
Project; Technical Specification Group Terminals Specification of
the Subscriber Identity Module – Mobile
Equipment (SIM-ME) interface.
- [5] 3GPP TS 11.14 Technical Specification 3rd Generation Partnership
Project; Specification of the SIM Application Toolkit for the Subscriber
Identity Module – Mobile
Equipment (SIM-ME) interface.
- [6] 3GPP TS 31.111 Technical Specification 3rd Generation Partnership
Project; Technical Specification Group Terminals; USIM Application
Toolkit (USAT).
- [7] 3GPP TS 03.19 Technical Specification 3rd Generation Partnership
Project; Technical Specification Group Terminals; Subscriber Identity
Module Application Programming Interface (SIM API) for Java CardTM; Stage 2.
- [8] 3GPP TS03. 48 Technical Specification 3rd Generation Partnership
Project; Technical Specification Group Terminals; Security Mechanisms
for the SIM application toolkit; Stage 2.
- [9] ETSI TS 100 922 Technical Specification Digital cellular
telecommunications system (Phase 2+); Subscriber Identity Modules
(SIM); Functional characteristics.
- [10] Arkko, Carrara, Lindholm, Näslund, und Norrman, "MIKEY: Multimedia
Internet KEYing", draft-ietf-msec-mikey-04.txt, IETF.
- [11] Sarvar Patel, "Analysis
of EAP-SIM Session Key Agreement",
im Internet am 29. Mai 2003 veröffentlicht.
- [12] Niemi, Arkko, Torvinen, IETF RFC 3310, "HTTP Digest Authentication Using", September 2002.
- [13] 3GPP TSG WG3 Security, "Enhanced
Security for A/Gb",
15.–18.
Juli 2003.
- [14] Menezes, van Oorschot, und Vanstone: "Handbook of Applied Cryptography", CRC Press, Seiten 489–541.
- [15] UK Patentanmeldung Nr. 0129339-8, eingereicht am 7. Dezember
2001.
- [16] Internationale Patentanmeldung WO 02/084980, beansprucht
die Priorität
von der schwedischen Patentanmeldung Nr. 0101295-4, eingereicht
am 10. April 2001.