-
GEBIET DER
ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich auf ein Verfahren zum Prüfen der
Integrität
von Kommunikationen zwischen einem ersten Knoten und einem zweiten
Knoten. Insbesondere, aber nicht ausschließlich, bezieht sich die Erfindung
auf ein Verfahren zum Prüfen
der Integrität
von Kommunikationen zwischen einer Mobilstation und einem zellularen Netzwerk.
-
HINTERGRUND
DER ERFINDUNG
-
Viele
verschiedene Telekommunikationsnetzwerke sind bekannt. Ein Telekommunikationsnetzwerk
ist ein zellulares Telekommunikationsnetzwerk, wobei der durch das
Netzwerk abgedeckte Bereich in eine Vielzahl von Zellen unterteilt
ist. Jede Zelle ist mit einer Basisstation versehen, die die Mobilstationen
in der mit der Basisstation assoziierten Zelle bedient. Dadurch
empfangen Teilnehmereinrichtungen, wie Mobilstationen, Signale von
und übertragen
Signale zu der Basisstation, wodurch sie durch die Basisstationen
kommunizieren können. Das
zellulare System umfasst typischerweise auch eine Basisstationssteuereinrichtung,
die den Betrieb einer oder mehrerer Basisstationen steuert. Zumindest
einige der Teilnehmereinrichtungen in dem System können in
der Lage sein, auf einem oder mehreren Kommunikationskanälen gleichzeitig
zu kommunizieren.
-
Telekommunikationen
unterliegen dem Problem des Sicherstellens, dass die empfangenen
Informationen von einem autorisierten Sender gesendet werden, und
nicht durch eine nicht-autorisierte Partei, die versucht, sich als
der Sender auszugeben. Das Problem ist besonders bei zellularen
Telekommunikationssystemen relevant, in denen die Luftschnittstelle
eine potentielle Möglichkeit
für eine nicht-autorisierte
Partei darstellt, die Inhalte einer Übertragung abzuhorchen und
zu ersetzen. Die
US 4,393,269 behandelt
ein Verfahren und eine Vorrichtung, die eine Ein-Weg-Sequenz für eine Transaktion und
für eine
Identitätsverifikation
enthalten.
-
Eine
Lösung
für dieses
Problem ist eine Authentifizierung der kommunizierenden Parteien.
Ein Authentifizierungsvorgang zielt auf die Aufdeckung und die Überprüfung der
Identität
beider kommunizierenden Parteien ab, so dass jede Partei Informationen
bezüglich
der Identität
der anderen Partei empfängt,
und der Identität
vertrauen kann. Eine Authentifizierung wird typischerweise in einer
speziellen Prozedur zu Beginn einer Verbindung durchgeführt. Diese
Prozedur lässt
jedoch Raum für
die nicht-autorisierte Manipulation, Einfügung und Löschung nachfolgender Nachrichten.
Es gibt einen Bedarf an einer separaten Authentifizierung einer
jeden übertragenen
Nachricht. Dies kann durch Beifügen
eines Nachrichtenauthentifizierungscodes (MAC-I, „message
authentication code")
zu der Nachricht bei der Übertragungsseite
und durch Überprüfen des
Nachrichtenauthentifizierungscode-MAC-I-Werts bei der Empfangsseite
erreicht werden.
-
Ein
Nachrichtenauthentifizierungscode MAC-I ist typischerweise eine
relativ kurze Bitfolge, die von der Nachricht, die sie schützt, und
einem geheimen Schlüssel
abhängig
ist, der sowohl dem Sender als auch dem Empfänger der Nachricht bekannt ist.
Der geheime Schlüssel
wird während
des Authentifizierungsverfahrens zu Beginn der Verbindung erzeugt
und beidseitig bestätigt.
In einigen Fällen
ist der Algorithmus (der zum Berechnen des Nachrichtenauthentifizierungscodes
MAC-I auf der Grundlage des geheimen Schlüssels und der Nachricht verwendet
wird) auch geheim, dies ist aber üblicherweise nicht der Fall.
-
Der
Authentifizierungsvorgang einzelner Nachrichten wird oft Integritätsschutz
genannt. Zum Schutz der Integrität
einer Nachricht berechnet die übertragende
Partei einen Nachrichtenauthentifizierungswert auf der Grundlage
der zu sendenden Nachricht und des den spezifizierten Algorithmus verwendenden,
geheimen Schlüssels,
und sendet die Nachricht mit dem Nachrichtenauthentifizierungscode-MAC-I-Wert. Die empfangende
Partei berechnet wieder einen Nachrichtenauthentifizierungscode-MAC-I-Wert
auf der Grundlage der Nachricht und des geheimen Schlüssels gemäß dem spezifizierten
Algorithmus, und vergleicht den empfangenen Nachrichtenauthentifizierungscode
MAC-I und den berechneten Nachrichtenauthentifizierungscode MAC-I.
Stimmen die beiden Nachrichtenauthentifizierungscode-MAC-I-Werte überein,
dann kann der Empfänger
darauf vertrauen, dass die Nachricht intakt ist und von der angenommenen
Partei gesendet wurde.
-
Integritätsschutzsysteme
können
angegriffen werden. Es gibt zwei Verfahren, die eine nicht-autorisierte
Partei zum Anfertigen eines Nachrichtenauthentifizierungscode-MAC-I-Werts für eine modifizierte
oder eine neue Nachricht verwenden kann. Das erste Verfahren beinhaltet
das Beschaffen des geheimen Schlüssels
und das zweite Verfahren beinhaltet das Bereitstellen modifizierter
oder neuer Nachrichten ohne Kenntnis des geheimen Schlüssels.
-
Der
geheime Schlüssel
kann durch eine dritte Partei auf zwei Weisen beschafft werden:
- – durch
Berechnen aller denkbaren Schlüssel,
bis ein Schlüssel
gefunden ist, der mit den Daten von beobachteten Nachrichtenauthentifizierungscode-MAC-I-Paaren übereinstimmt,
oder durch anderweitiges Knacken des Algorithmus zum Erzeugen von
Nachrichtenauthentifizierungscode-MAC-I-Werten, oder
- – durch
direktes Erbeuten eines gespeicherten oder übertragenen geheimen Schlüssels.
-
Die
ursprünglich
kommunizierenden Parteien können
eine dritte Partei vom Beschaffen des geheimen Schlüssels durch
Verwendung eines Algorithmus, der kryptografisch stark ist, unter
Verwendung eines geheimen Schlüssels
von genügend
großer
Länge zum
Verhindern der erschöpfenden
Suche aller Schlüssel,
und unter Verwendung eines sicheren Verfahrens zum Übertragen
und Speichern von geheimen Schlüsseln
abhalten.
-
Eine
dritte Partei kann versuchen, einen Nachrichtenaustausch zwischen
den zwei Parteien ohne einen geheimen Schlüssel durch Erraten des korrekten
Nachrichtenauthentifizierungscode-MAC-I-Werts, oder durch Wiederabspielen
einiger früher
zwischen den beiden Parteien übertragener
Nachrichten zu stören.
In letzterem Fall ist der korrekte Nachrichtenauthentifizierungscode
MAC-I für
die Nachricht aus der ursprünglichen Übertragung bekannt.
Dieser Angriff kann für
eine nicht-autorisierte
dritte Partei sehr nützlich
sein. Beispielsweise kann sie die Anzahl weiterer Maßnahmen vervielfältigen,
die für
den Eindringling günstig
sind. Selbst Geldtransaktionen können
auf diese Weise wiederholt werden.
-
Ein
korrektes Erraten des Nachrichtenauthentifizierungscode-MAC-I-Werts
kann durch Verwenden langer Nachrichtenauthentifizierungscode-MAC-I-Werte verhindert
werden. Der Nachrichtenauthentifizierungs-MAC-I-Wert sollte lang
genug sein, um die Wahrscheinlichkeit eines richtigen Erratens auf
ein hinreichend niedriges Niveau verglichen mit dem aus einer erfolgreichen
Erstellung gewonnen Nutzen zu reduzieren. Eine Verwendung eines 32-Bit-Nachrichtenauthentifizierungscode-MAC-I-Werts
beispielsweise verringert die Wahrscheinlichkeit eines korrekten
Erratens auf 1 zu 4294967296. Dies ist für die meisten Anwendungen klein
genug.
-
Ein
Beschaffen eines korrekten Nachrichtenauthentifizierungscode-MAC-I-Werts
unter Verwendung des Replay-Angriffs, d. h. durch Wiederabspielen
einer früheren
Nachricht, kann durch Einführen
eines zeitvarianten Parameters in die Berechnung der Nachrichtenauthentifizierungs-MAC-I-Werte
verhindert werden. Beispielsweise kann ein Zeitstempelwert oder
eine Sequenznummer als eine weitere Eingabe in den Nachrichtenauthentifizierungscode-MAC-I-Algorithmus zusätzlich zu
dem geheimen Integritätsschlüssel und
der Nachricht verwendet werden.
-
In
demjenigen Fall, in dem eine Zahlensequenz als zeitvarianter Parameter
verwendet wird, wird ein Mechanismus verwendet, der die Möglichkeit
einer mehr als einmaligen Verwendung der gleichen Sequenznummer
zusammen mit dem gleichen geheimen Schlüssel verhindert.
-
Typischerweise
führen
beide kommunizierenden Parteien Buch über die verwendeten Sequenznummern.
-
Sind
mehrere Kommunikationskanäle
in Verwendung, die alle den gleichen geheimen Schlüssel verwenden,
ergibt sich folgendes Problem. Eine mit einer gegebenen Sequenznummer
assoziierte Nachricht in einem Kommunikationskanal, beispielsweise n,
kann auf einem anderen kommunizierenden Kanal zu passender Zeit
wiederholt werden, was immer dann der Fall ist, wenn die Sequenznummer
n auf dem anderen Kanal akzeptabel ist.
-
Es
wurde die Anwendung einer Chiffrierung und eines Integritätsschutzes
in dem UMTS-System für
den Standard der dritten Generation vorgeschlagen. Das vorgeschlagene
Verfahren erlaubt jedoch das Senden der identischen Nachricht auf
zwei verschiedenen Signalisierungsfunkträgern zu verschiedenen Zeiten.
Dies macht das System für „man-in-the-middle"-Angriffe verwundbar.
Insbesondere kann ein derartiges System für den vorstehend beschriebenen „Replay"-Angriff verwundbar
sein.
-
Typischerweise
ergibt eine einzelne wiederholte Signalisierungsnachricht keinen
bedeutsamen Vorteil für
die nicht-autorisierte dritte Partei, aber es ist möglich, dass
die dritte Partei eine Wiederholung eines längeren Dialogs versuchen könnte, um
beispielsweise einen zusätzlichen
Ruf aufzubauen und dadurch Teile einer Verbindung zu stehlen.
-
Eine
technische Spezifikation des „3rd
Generation Partnership Project",
Group Services and System Aspects, 3G Security, Security Architecture (3G
TS 33.102 Version 3.3.1 Release 1999) offenbart eine Sicherheitsarchitektur,
in der die vorstehend beschriebenen Probleme auftreten können.
-
KURZFASSUNG
DER ERFINDUNG
-
Es
ist eine Aufgabe von Ausführungsbeispielen
der Erfindung, eines oder mehrere der vorstehend beschriebenen Probleme
zu behandeln.
-
Gemäß einem
Aspekt der Erfindung wird Verfahren zum Ausführen einer Integritätsprüfung in einem
System bereitgestellt, das einen ersten Knoten und einen zweiten
Knoten umfasst, wobei eine Vielzahl von Kommunikationskanälen zwischen
dem ersten Knoten und dem zweiten Knoten bereitgestellt ist, wobei
jeder Kommunikationskanal eine unterschiedliche Identität aufweist,
wobei das Verfahren die Schritte umfasst Berechnen eines Authentifizierungscodes
unter Verwendung einer Vielzahl von Werten, wobei einige der Werte
für die
verschiedenen Kommunikationskanäle
gleich sind, und Übertragen
von sich auf den Authentifizierungscode beziehenden Informationen
von einem der Knoten zu dem anderen, wobei zumindest einer der Werte
so ausgelegt ist, dass er Informationen enthält, die sich auf die Identität eines
Kommunikationskanals aus der Vielzahl von Kommunikationskanälen beziehen.
-
Eine
separate Eingabe kann für
die Informationen bereitgestellt sein, die sich auf die Identität des Kommunikationskanals
beziehen. Die Informationen, die sich auf die Identität des Kommunikationskanals beziehen,
können
mit zumindest einem weiteren Eingabewert kombiniert werden. Die
Werte können
einen oder mehrere der folgenden Werte umfassen: einen Integritätsschlüssel, einen
Richtungswert, einen frischen Wert, einen Nachrichtenwert und einen
Zählwert.
Die Ausgabe des Integritätsalgorithmus
kann von einem Knoten zu einem anderen gesendet werden. Die Kommunikationskanäle können einen
Funkträger
umfassen. Die Eingabewerte können
einem Algorithmus zur Berechnung der Ausgabe eingegeben werden.
-
Gemäß einem
weiteren Aspekt der Erfindung wird Knoten zur Verwendung in einem
System bereitgestellt, das den Knoten und einen weiteren Knoten
umfasst, wobei eine Vielzahl von verschiedenen Kommunikationskanälen zwischen
den Knoten bereitgestellt wird, wobei jeder Kommunikationskanal eine
unterschiedliche Identität
aufweist, wobei der Knoten umfasst eine Einrichtung zur Berechnung
eines Authentifizierungscodes aus einer Vielzahl von Werten, wobei
einige der Werte für
die verschiedenen Kommunikationskanäle gleich sind, und eine Einrichtung
zur Übertragung
von sich auf den Authentifizierungscode beziehenden Informationen
von dem Knoten zu dem weiteren Knoten, wobei zumindest einer der
Werte so ausgelegt ist, dass er Informationen enthält, die
sich auf die Identität
eines Kommunikationskanals (RB ID) aus der Vielzahl von Kommunikationskanälen beziehen.
-
Mehrere
Vorteile können
durch die Ausführungsbeispiele
der Erfindung erreicht werden. Bei der Lösung der Erfindung kann der
Replay-Angriff auch in demjenigen Fall verhindert werden, wenn mehrere parallele
Kommunikationskanäle
verwendet werden. Ein Vorteil liegt darin, dass die Ausführungsbeispiele flexibel
mit jedwedem System verwendet werden können, das parallele Kommunikationskanäle innerhalb
einer Verbindung verwendet. Das Ausführungsbeispiel der Erfindung
kann die Benutzersicherheit in Kommunikationssystemen steigern,
besonders in drahtlosen Kommunikationssystemen. Die Ausführungsbeispiele
können
sicherstellen, dass parallele Kommunikationskanäle innerhalb einer Verbindung nie
den gleichen Satz an Eingabeparametern zur Berechnung des Nachrichtenauthentifizierungscodes MAC-I
verwenden.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
Zum
besseren Verständnis
der Erfindung und wie selbige ausgeführt werden kann, wird nachstehend
beispielhaft auf die beiliegenden Zeichnungen bezug genommen. Es
zeigen:
-
1 Elemente
eines zellularen Netzwerks, mit dem Ausführungsbeispiele der Erfindung
verwendet werden können,
-
2 die
Funkschnittstellen-Uu-Protokollarchitektur zwischen der Teilnehmereinrichtung
UE („user
equipment") und
einem B-Knoten („Node
B") und zwischen
der Teilnehmereinrichtung UE und einer Funknetzwerksteuereinrichtung
RNC („radio
network controller")
gemäß 1,
-
3 ein
Schema der Integritätsschutzfunktion,
-
4 die
Integritätsschutzfunktion,
wie sie gemäß Ausführungsbeispielen
der Erfindung modifiziert ist,
-
5 die
Integritätsschutzfunktion,
wie sie gemäß einem
weiteren Ausführungsbeispiel
der Erfindung modifiziert ist,
-
6 ein
weiteres Ausführungsbeispiel
der Erfindung,
-
7 eine
Authentifizierung und eine Schlüsselvereinbarungsprozedur,
-
8 ein
Erzeugen von Authentifizierungsvektoren, und
-
9 ein
Beispiel einer Benutzerauthentifizierungsfunktion im USIM gemäß einem
Ausführungsbeispiel
der Erfindung.
-
AUSFÜHRLICHE
BESCHREIBUNG VON AUSFÜHRUNGSBEISPIELEN
DER ERFINDUNG
-
Unter
Bezugnahme auf 1 wird eine typische Mobiltelefonsystemstruktur
beschrieben. Die Hauptteile des Mobiltelefonsystems sind: ein Kernnetzwerk
CN 2 („core
network"), ein terrestrisches UMTS-Funkzugangsnetzwerk
UTRAN 4 („UMTS
terrestrial radio access network"),
und eine Teilnehmereinrichtung UE 6. Das Kernnetzwerk CN 2 kann
mit externen Netzwerken 8 verbunden werden, die entweder
leitungsvermittelte (CS, „circuit
switched") Netzwerke 81 (z.B.
PLMN, PSTN, ISDN) oder paketvermittelte (PS, „packet switched") Netzwerke 82 (z.B.
das Internet) sein können.
Die Schnittstelle zwischen dem Kernnetzwerk CN 2 und dem
terrestrischen UMTS-Funkzugangsnetzwerk UTRAN 4 wird die
Iu-Schnittstelle
genannt, und die Schnittstelle zwischen dem terrestrischen UMTS-Funkzugangsnetzwerk
UTRAN 4 und der Teilnehmereinrichtung UE 6 wird
die Uu-Schnittstelle genannt. Wie in 1 gezeigt,
ist die RNC mit zwei CN-Knoten
verbunden (MSC/VLR und SGSN). In einigen Netzwerktopologien kann
es möglich
sein, dass eine RNC mit einem CN-Knoten oder mit mehr als zwei CN-Knoten
verbunden ist.
-
Das
Kernnetzwerk CN 2 besteht aus einem Heimatregister HLR 10 („Home Location
Register"), einem
Mobildienstvermittlungszentrum/Besucherregister MSC/VLR 12 („Mobile
Services Switching Centre/Visitor Location Register"), einem Gateway-MSC GMSC 14,
einem Dienst-GPRS („General
Packet Radio Service")-Unterstützungsknoten
SGSN 16 („Serving
GPRS Support Node")
und einem Gateway-GPRS-Unterstützungsknoten
GGSN 18 („Gateway
GPRS Support Node").
-
Das
UTRAN 4 ist aus Funknetzwerksubsystemen RNS 20 und 22 zusammengesetzt.
Die Schnittstelle zwischen zwei Funknetzwerksubsystemen RNSs wird
die Iur-Schnittstelle genannt. Die Funknetzwerksubsysteme RNS 20 und 22 sind
aus einer Funknetzwerksteuereinrichtung RNC 24 und einem
oder mehreren B-Knoten 26 zusammengesetzt. Die Schnittstelle
zwischen der Funknetzwerksteuereinrichtung RNC 24 und dem
B-Knoten 26 wird die Iub-Schnittstelle genannt.
-
Die
Funknetzwerksteuereinrichtung RNC 24 ist dasjenige Netzwerkelement,
das für
die Steuerung der Funkressourcen des UTRAN 4 verantwortlich
ist. Die RNC 24 weist eine Schnittstelle mit dem Kernnetzwerk
CN 2 auf (üblicherweise
mit einer MSC 12 und einem SGSN 16) und beendet
auch das Funkressourcensteuerprotokoll RRC („Radio Resource Control"), das die Nachrichten
und Prozeduren zwischen der Teilnehmereinrichtung UE 6 und dem
UTRAN 4 definiert. Die RNC 24 entspricht logisch
gesehen der Basisstationssteuereinrichtung des GSM-(global system for
mobile communications)-Standards.
-
Die
Hauptfunktion des B-Knotens 26 ist die Durchführung der
Luftschnittstellen-L1-Verarbeitung (Kanalcodierung und Verschachtelung,
Ratenanpassung, Spreizung, usw.). Er führt auch einen Teil des grundlegenden
Funkressourcenverwaltungsbetriebs durch, wie die Leistungssteuerung
der inneren Schleife. Er entspricht logisch gesehen der Basissendeempfängerstation
(„Base
Transceiver Station")
gemäß dem GSM-Standard.
-
Die
Teilnehmereinrichtung UE 6 besteht aus zwei Teilen: der
Mobileinrichtung ME 30 („Mobile Equipment") und dem UMTS-Teilnehmeridentitätsmodul
USIM 32 („UMTS
Subscriber Identity Module").
Die Mobileinrichtung ME ist dasjenige Funkendgerät, das für eine Funkkommunikation über die Uu-Schnittstelle zwischen
der Teilnehmereinrichtung UE 6 und dem UTRAN 4 verwendet
wird. Das USIM 32 ist eine Smartcard, die die Teilnehmeridentität enthält, Authentifizierungsalgorithmen
durchführt,
und die Authentifizierung und Verschlüsselungsschlüssel und
einige Teilnahmeinformationen speichert, die bei dem Endgerät erforderlich
sind.
-
Unter
Bezugnahme auf 2 wird die Funkschnittstellenprotokollarchitektur
gemäß den 3GPP-Spezifikationen beschrieben.
Die beschriebenen Protokollfunktionseinheiten funktionieren zwischen:
- – der
Teilnehmereinrichtung UE 6 und dem B-Knoten 26 und/oder
- – der
Teilnehmereinrichtung UE 6 und der RNC 24.
-
Die
Teilung von Protokollschichten zwischen einem B-Knoten 26 und einer RNC 24 ist
hier nicht weiter beschrieben.
-
Die
Funkschnittstellenprotokolle können
in eine Steuerebene 50 und eine Benutzerebene 52 unterteilt
werden. Die Steuerebene 50 wird für jedwede Signalisierung zwischen
der UE 6 und der RNC 24 verwendet, und ebenso
zwischen der Teilnehmereinrichtung UE 6 und dem Kernnetzwerk
CN 2. Die Benutzerebene trägt die eigentlichen Benutzerdaten. Einige
der Funknetzwerkprotokolle laufen nur auf einer Ebene, während einige
Protokolle auf beiden Ebenen laufen.
-
Die
Funkschnittstellenprotokolle können
in Schichten unterteilt werden, diese sind Schicht L1 54 (auch
physikalische Schicht genannt), Schicht 2 L2 56 (auch
Datenanbindungsschicht genannt) und Schicht 3 L3 58 (auch
Netzwerksschicht genannt). Einige Schichten enthalten lediglich
ein Protokoll, während
einige andere Schichten mehrere verschiedene Protokolle enthalten.
-
Die
physikalische Schicht L1 54 stellt der Medienzugangssteuerschicht 60 (MAC, „Medium
Access Control") über Transportkanäle Dienste
bereit, die dadurch gekennzeichnet sind, wie und mit welchen Merkmalen
die Daten übertragen
werden.
-
Die
Medienzugangssteuer-(MAC)-Schicht 60 stellt der Funkanbindungssteuer-RLC-Schicht 62 wiederum
Dienste mittels logischer Kanäle
bereit. Die logischen Kanäle
sind durch die Art des übertragenen
Datentyps gekennzeichnet. In der Medienzugangssteuer-MAC-Schicht 60 werden
die logischen Kanäle
auf die Transportkanäle
abgebildet.
-
Die
Funkanbindungssteuer-RLC-Schicht 62 stellt höheren Schichten
Dienste über
Dienstzugangspunkte SAP („Service
Access Points")
bereit, die beschreiben, wie die Funkanbindungssteuer-RLC-Schicht 62 die
Datenpakete verwaltet, und ob beispielsweise eine automatische Wiederholungsanforderungs-(ARQ, „Automatic
Repeat Request")-Funktion
verwendet wird. Auf der Steuerebene 50 werden die Funkanbindungssteuer-RLC-Dienste
durch die Funkressourcensteuer-RRC-Schicht 64 zum Signalisierungstransport verwendet. Üblicherweise
sind minimal drei Funkanbindungssteuer-RLC-62-Funktionseinheiten
bei einem Signalisierungstransport beteiligt – eine Transparent-, eine Nicht-Bestätigte- und
eine Bestätigte-Modus-Funktionseinheit.
Auf der Benutzerebene 52 werden die RLC-Dienste entweder
durch die dienstspezifischen Protokollschichten – Paketdatenkonvergenzprotokoll
PDCP 66 („Packet
Data Convergence Protocol")
oder eine Rundsendungsmulticaststeuerung BMC 68 („broadcast
multicast control" – oder durch
andere Benutzerebenenfunktionen höherer Schichten (z.B. Sprachcodec).
Die RLC-Dienste werden Signalisierungsfunkträger in der Steuerebene und
Funkträger
in der Benutzerebene für
Dienste genannt, die nicht das PDCP- oder das BMC-Protokoll verwenden.
-
Das
Paketdatenkonvergenzprotokoll (PDCP) existiert lediglich für die paketvermittelten
PS-Bereichsdienste (über
den SGSN gelenkte Dienste), und seine Hauptfunktion ist die Headerkomprimierung,
was eine Komprimierung von redundanten Protokollsteuerinformationen
(beispielsweise TCP/IP und RTP/UDP/IP-Header) bei der übertragenden Funktionseinheit
und eine Dekomprimierung bei der empfangenden Funktionseinheit bedeutet.
Die durch PDCP bereitgestellten Dienste werden als Funkträger bezeichnet.
-
Das
Rundsendungsmulticaststeuerprotokoll (BMC) existiert lediglich für den Kurznachrichtendienst
SMS des Zellrundsendungsdienstes, der vom GSM abgeleitet ist. Der
durch das BMC-Protokoll bereitgestellte Dienst wird auch Funkträger genannt.
-
Die
RRC-Schicht 64 stellt höheren
Schichten (der Nicht-Zugangsschicht, „Non Access
Stratum") Dienste über Dienstzugangspunkte
bereit. Alle Signalisierungen höherer
Schichten zwischen der Teilnehmereinrichtung UE 6 und dem
Kernnetzwerk CN 2 (Mobilitätsverwaltung, Rufsteuerung,
Sitzungsverwaltung, usw.) werden für eine Übertragung über die Funkschnittstelle in
RRC-Nachrichten gekapselt.
-
Die
Steuerschnittstellen zwischen der RRC 64 und all den niedrigeren
Schichtprotokollen werden durch die RRC-Schicht 64 zur Konfiguration
von Merkmalen der Protokollfunktionseinheiten tieferer Schichten
einschließlich
Parametern für
die physikalischen, Transport- und logischen Kanäle verwendet. Die gleichen
Steuerschnittstellen werden durch die RRC-Schicht 64 beispielsweise
zur Anweisung der niedrigeren Schichten zum Durchführen bestimmter Messungsarten,
und durch die niedrigeren Schichten zum Melden von Messungsergebnissen
und Fehlern zu der RRC verwendet.
-
Das
Ausführungsbeispiel
der Erfindung ist in Zusammenhang mit einem UMTS (universelles Mobiltelekommunikationssystem, „Universal
Mobile Telecommunications System")
beschrieben. Die Erfindung ist bei alle Kommunikationsarten, beispielsweise
Signalisierung, Realzeitdienste und Nicht-Realzeitdienste anwendbar.
Es sei jedoch darauf hingewiesen, dass Ausführungsbeispiele der Erfindung
bei jedwedem anderen System anwendbar sind.
-
In
dem Vorschlag für
den UMTS-Standard für die
dritte Generation weisen der SGSN 16 und die Teilnehmereinrichtung
UE 6, beispielsweise eine Mobilstation, eine höhere Schicht
L3 auf, die Mobilitätsverwaltung
MM („Mobility
Management") (manchmal als
GMM bezeichnet) und Sitzungsverwaltung SM unterstützt. Diese
höhere
Schicht unterstützt
auch den Kurznachrichtendienst SMS. Diese L3-Protokolle höherer Schicht
werden aus dem GPRS-System zweiter Generation hergeleitet. Der SMS
unterstützt den
mobil gesendeten und mobil empfangenen Kurznachrichtendienst, der
in der Spezifikation dritter Generation 3GPP TS 23.040 beschrieben
ist. Die Mobilitätsverwaltungsfunktion
verwaltet den Ort der Mobilstation, das heißt die Anbindung der Mobilstation
zu dem Netzwerk und eine Authentifizierung. Dadurch unterstützt MM eine
Mobilitätsverwaltungsfunktionalität, wie Anbinden,
Lösen,
Sicherheit (beispielsweise Authentifizierung) und Lenkungsaktualisierungen. Gemäß einem
Ausführungsbeispiel
können
Integritätsschlüssel während der
Authentifizierungsprozedur der MM berechnet werden. Ein beispielhaftes Ausführungsbeispiel
dieses Aspekts der Erfindung wird später ausführlicher beschrieben.
-
Der
SGSN 16 und die RSN 20 weisen eine Funkzugangsnetzwerkanwendungsprotokoll-(RANAP, „radio
access network application protocol")-Schicht auf. Dieses Protokoll wird
zur Steuerung der Iu-Schnittstellenträger verwendet,
aber es kapselt und trägt
ebenso die Signalisierung höherer Schicht.
RANAP verwaltet die Signalisierung zwischen dem SGSN 16 und
der RNS 20. RANAP ist in der Spezifikation dritter Generation
3GPP TS 25.413 spezifiziert. Die Mobilstation 6 und die
RNS 20 weisen beide ein Funkressourcensteuerprotokoll RRC auf,
das eine Funkträgersteuerung über die
Funkschnittstelle bereitstellt, beispielsweise für die Übertragung von Signalisierungsnachrichten
höherer Schicht
und SMS-Nachrichten. Diese Schicht verwaltet einen Großteil der
Kommunikation zwischen der Mobilstation 6 und der RNC 24.
Eine RRC ist beispielsweise in der Spezifikation dritter Generation 3GPP
TS 25.331 spezifiziert.
-
MM-,
SM- und SMS-Nachrichten werden von dem SGSN 16 zu der RNS 20 in
einer RANAP-Protokollnachricht gekapselt gesendet (die Nachricht
wird in den 3GPP-Spezifikationen Direkttransfer genannt). Das Paket
wird durch die RANAP-Schicht
der RNC 24 zu der RRC-Schicht der RNC 24 weitergeleitet.
Die Weiterleitungsfunktion in der RNS 24 entfernt effektiv
RANAP-Header, und leitet die Nutzlast in das RRC-Protokoll unter
Verwendung einer passenden Primitive weiter, so dass die RRC-Schicht
weiß,
dass dies eine Nachricht höherer
Schicht ist, die zu der Mobilstation 6 weitergeleitet werden
muss. Die RNC 24 fügt
eine Integritätsprüfsumme in
die (RRC-)Nachricht ein, die die Nachricht höherer Schicht in der Nutzlast
trägt (die
RRC-Nachricht wird in der 3GPP-Spezifikation Direkttransfer genannt). Die
RNC 24 kann die Nachricht auch chiffrieren. Dies wird nachstehend
ausführlicher
beschrieben. Die RNS 20 leitet das Paket über die
Luftschnittstelle zu der Mobilstation 6 weiter.
-
In
der mobil sendenden Richtung empfängt die RRC-Schicht der Mobilstation 6 die
Nachricht höherer
Schicht, kapselt sie in eine RRC-Direkttransfernachricht und fügt einen
Nachrichtenauthentifizierungscode zu ihr hinzu, bevor sie sie zu
der RNS 20 sendet. Die Nachricht wird von der RRC-Schicht zu der RANAP-Schicht
der RNS 20 weitergeleitet. Die RNS 20 überprüft assoziierte
Informationen mit der Nachricht, um zu sehen, ob das Paket integritätsgeprüft wurde.
-
Die
Integritätsprüfungsprozedur
wird nun beschrieben. Die meisten Funkressourcensteuer-RRC, Mobilitätsverwaltungs-MM und Sitzungsverwaltungs-SM
(wie auch höhere
Schicht-3-Protokoll-)-Informationselemente
werden als empfindlich betrachtet und müssen integritätsgeschützt werden.
Aufgrund dessen kann eine Integritätsfunktion bei den meisten
RRC-Signalisierungsnachrichten angewendet werden, die zwischen der
Mobilstation und der RNS 20 übertragen werden. Diese RRC-Nachrichten,
die vor Kenntnis des Integritätsschlüssels gesendet
werden, können
jedoch ignoriert werden. Diese Integritätsfunktion verwendet einen
Integritätsalgorithmus
mit dem Integritätsschlüssel IK
(„integrity key") zur Berechnung
eines Nachrichtenauthentifizierungscodes für eine gegebene Nachricht.
Dies wird in der Mobilstation und der RNS ausgeführt, die beide einen Integritätsschlüssel IK
und den Integritätsalgorithmus
aufweisen.
-
Unter
Bezugnahme auf 3 wird die Verwendung des Integritätsalgorithmus
zur Berechnung des Nachrichtenauthentifizierungscodes MAC-I gezeigt.
-
Die
Eingabeparameter in den Algorithmus sind der Integritätsschlüssel IK,
eine zeit- oder nachrichtennummerabhängige Eingabe COUNT-I, ein durch
das Netzwerk erzeugter Zufallswert FRESH, das Richtungsbit DIRECTION
und die Signalisierungsdaten MESSAGE. Die letztere Eingabe ist die Nachricht
oder das Datenpaket. Auf der Grundlage dieser Eingabeparameter wird
ein Nachrichtenauthentifizierungscode für Datenintegrität (MAC-I) durch
den Integritätsalgorithmus
UIA berechnet. Dieser Code MAC-I wird dann an die Nachricht angehängt, bevor
sie entweder zu oder von der Mobilstation über die Luftschnittstelle gesendet
wird.
-
Der
Empfänger
jenes Codes und jener Nachricht berechnet auch einen Nachrichtenauthentifizierungscode
für Datenintegrität XMAC-I
bei der empfangenen Nachricht unter Verwendung des gleichen Algorithmus
UIA. Der Algorithmus UIA weist die gleichen Eingaben wie auf der sendenden
Seite der Nachricht auf. Die durch den Algorithmus berechneten Codes
auf der sendenden Seite (MAC-I) und auf der empfangenden Seite (XMAC-I)
sollten gleich sein, wenn die Datenintegrität der Nachricht verifiziert
werden soll.
-
Der
Eingabeparameter COUNT-I ist ein Wert, der für jede integritätsgeschützte Nachricht
um eins erhöht
wird. COUNT-I besteht aus zwei Teilen: die Hyperrahmennummer (HFN, „hyperframe
number") als höchstwertiger
Teil und eine Nachrichtensequenznummer als der niederstwertige Teil.
Der Startwert der Hyperrahmennummer wird durch die Mobilstation
während
eines Verbindungsaufbaus zu dem Netzwerk gesendet. Beim Lösen der
Verbindung speichert die Mobilstation die größte verwendete Hyperrahmennummer
aus der Verbindung und erhöht sie
um eins. Dieser Wert wird dann als der Start-HFN-Wert für eine nächste Verbindung
verwendet. Auf diese Weise kann der Benutzer sicher sein, dass kein
COUNT-I-Wert (durch das Netzwerk) wieder mit demselben Integritätsschlüssel für verschiedene
Verbindungen verwendet wird. Nach einer (Wieder-)Authentifizierungsprozedur
kann, wenn ein neuer IK erzeugt und in Gebrauch genommen wird, der
HFN-Wert auf Null rückgesetzt
werden.
-
Der
Eingabeparameter FRESH schützt
das Netzwerk gegen Wiederabspielen von Signalisierungsnachrichten
durch die Mobilstation. Bei Verbindungsaufbau erzeugt das Netzwerk
einen Zufallswert FRESH und sendet ihn zu dem Benutzer. Der Wert FRESH
wird nachfolgend durch sowohl das Netzwerk als auch die Mobilstation
während
der Dauer einer einzelnen Verbindung verwendet. Dieser Mechanismus
lässt das
Netzwerk sichergehen, dass die Mobilstation keinen alten Nachrichtenauthentifizierungscode
MAC-I aus einer früheren
Verbindung wieder abspielt.
-
Die
Einstellung des Integritätsschlüssels IK erfolgt,
wie hierin beschrieben. Der Schlüssel
kann so oft verändert
werden, wie es der Netzwerkoperator möchte. Eine Schlüsseleinstellung
kann auftreten, sobald die Identität des Mobilteilnehmers bekannt
ist. Der Schlüssel
IK wird im Besucherregister gespeichert und bei Bedarf zu der RNC übertragen.
Der Schlüssel
IK wird ebenso in der Mobilstation gespeichert, bis er bei der nächsten Authentifizierung
aktualisiert wird.
-
Eine
Schlüsselsatzkennung
KSI („key
set identifier")
ist eine Zahl, die mit der Chiffrierung und Integritätsschlüsseln assoziiert
ist, die während
des Authentifizierungsvorgangs abgeleitet werden. Sie wird zusammen
mit der Chiffrierung und den Integritätsschlüsseln in der MS und in dem
Netzwerk gespeichert. Die Schlüsselsatzkennung
wird zur Zulassung einer Schlüsselwiederverwendung
während nachfolgender
Verbindungsaufbauvorgängen
verwendet. Die KSI wird verwendet, um zu verifizieren, ob die MS
und das Netzwerk denselben Chiffrierschlüssel und Integritätsschlüssel verwenden
sollen.
-
Ein
Mechanismus ist bereitgestellt, um sicherzustellen, dass ein bestimmter
Integritätsschlüssel nicht
für eine
unbegrenzte Zeitspanne verwendet wird, um Angriffe unter Verwendung
von kompromittierten Schlüsseln
zu vermeiden. Eine Authentifizierung, die Integritätsschlüssel erzeugt,
ist bei Verbindungsaufbau nicht zwingend erforderlich.
-
Die
Mobilstation ist zum Auslösen
der Erzeugung eines neuen Chiffrierschlüssels und eines Integritätsschlüssel eingerichtet,
wenn der Zähler
einen Maximalwert erreicht, der durch den Operator eingestellt und
in der Mobilstation bei der nächsten
ausgesendeten RRC-Verbindungsanforderungsnachricht gespeichert
wird. Dieser Mechanismus stellt sicher, dass ein Integritätsschlüssel und
ein Chiffrierschlüssel
nicht öfter
als die durch den Operator eingestellte Grenze wieder verwendet
werden können.
-
Es
sei darauf hingewiesen, dass es mehr als einen Integritätsalgorithmus
geben könnte,
und dass Informationen zwischen der Mobilfunkstation und den Funknetzwerksteuereinrichtungen
ausgetauscht werden, die den Algorithmus definieren. Es sei auch darauf
hingewiesen, dass der gleiche Algorithmus durch den Sender und den
Empfänger
von Nachrichten verwendet werden sollte.
-
Möchte eine
Mobilstation eine Verbindung mit dem Netzwerk einrichten, dann sollte
die Mobilstation dem Netzwerk anzeigen, welche Version oder Versionen
des Algorithmus die MS unterstützt.
Diese Nachricht selbst muss integritätsgeschützt werden und wird zu der
RNC übertragen,
nachdem die Authentifizierungsprozedur abgeschlossen ist.
-
Das
Netzwerk vergleicht seine Integritätsschutzfähigkeiten und Voreinstellungen,
und jedwede besondere Teilnahmeerfordernisse der Mobilstation mit
jenen durch die Mobilstation angezeigten, und agiert gemäß den folgenden
Regeln:
- 1) Weisen die Mobilstation und das
Netzwerk keine gemeinsamen Versionen des Algorithmus auf, dann wird
die Verbindung gelöst.
- 2) Weisen die Mobilstation und das Netzwerk zumindest eine gemeinsame
Version des Algorithmus auf, dann wählt das Netzwerk eine der gegenseitig
akzeptablen Versionen des Algorithmus zur Verwendung bei jener Verbindung
aus.
-
Ein
Integritätsschutz
wird durch Anhängen des
Nachrichtenauthentifizierungscodes MAC-I an die Nachricht durchgeführt, die
integritätsgeschützt werden
soll. Die Mobilstation kann den MAC-I an Nachrichten anhängen, sobald
sie einen verbindungsspezifischen FRESH-Wert von der RNC empfangen
hat.
-
Ist
der Wert der Hyperrahmennummer HFN größer oder gleich dem in der
Mobilstation gespeicherten Maximalwert, dann zeigt die Mobilstation dem
Netzwerk bei dem RRC-Verbindungsaufbau
an, dass eine Initialisierung einer neuen Authentifizierung und
Schlüsselvereinbarung
erforderlich ist.
-
Die
RNC kann eingerichtet werden, um zu erfassen, dass neue Sicherheitsparameter
erforderlich sind. Dies kann durch (wiederholtes) Fehlschlagen von
Integritätsprüfungen (beispielsweise COUNT-I
verlor die Synchronisation), oder durch einen Handover zu einer
neuen RNC, der einen durch die alte RNC ausgewählten Algorithmus nicht unterstützt, usw.,
ausgelöst
werden.
-
Ein
neuer Chiffrierschlüssel
CK („cipher key") wird jedes Mal
dann erstellt, wenn eine Authentifizierungsprozedur zwischen der
Mobilstation und dem SGSN ausgeführt
wird.
-
Der
Integritätsschlüssel IK
kann verändert werden,
wenn es eine Übergabe
der Mobilstation von einer Basisstation an eine verschiedenen Basisstation
gibt.
-
Es
sei darauf hingewiesen, dass Ausführungsbeispiele der Erfindung
bzw. die Integritätsprüfung lediglich
zu irgendeinem Zeitpunkt begonnen werden können, nachdem die Verbindung
sowohl aufgebaut als auch angebunden worden ist.
-
Es
sei darauf hingewiesen, dass bei Datenverbindungen die Verbindung
für vergleichsweise lange
Zeitspannen offen sein kann, oder sogar ständig offen sein kann.
-
Man
ist überein
gekommen, dass mehr als ein Signalisierungsfunkträger, das
heißt
ein Funkträger
auf der Steuerebene, die ein durch eine RLC angebotener Dienst ist,
zwischen einer Mobilstation oder einer weiteren Teilnehmereinrichtung 6 und
der RNS 20 eingerichtet werden kann. Die gegenwärtige 3GPP-Spezifikation schlägt vor,
dass bis zu vier Signalisierungsfunkträger bereitgestellt werden können.
-
Bei
der gegenwärtigen
3GPP-Spezifikation können
zwei oder mehrere der Signalisierungsfunkträger SRB („signalling radio bearer") die gleichen Eingabeparameter
in den in 3 gezeigten Integritätsalgorithmus
aufweisen. Sind alle Eingabeparameter in den Integritätsalgorithmus
die gleichen, dann ist auch die Ausgabe die gleiche.
-
Dieser
gegenwärtige
Vorschlag, wie vorstehend beschrieben, lässt für einen Eindringling oder einen „man-in-the-middle" die Möglichkeit
zur Wiederholung einer Signalisierungsnachricht aus einem Signalisierungsfunkträger auf
einem anderen Signalisierungsfunkträger offen. Der COUNT-I-Wert
ist für jeden
Signalisierungsfunkträger
spezifisch und kann auf verschiedenen Signalisierungsfunkträgern verschieden
sein. Es sei das folgende Szenario betrachtet. Eine Nachricht ist
auf einem ersten Signalisierungsfunkträger SRB1 mit einem COUNT-Wert
von 77 gesendet worden. Erreicht der Zählwert für einen zweiten Signalisierungsfunkträger SRB2 77,
dann kann die nicht-autorisierte
Partei einfach die früher auf
SRB1 gesendete Nachricht unter Verwendung von SRB2 wiederholen.
-
Typischerweise
stellt eine Signalisierungsnachricht aus einem Signalisierungsfunkträger, die
in dem zweiten Signalisierungsfunkträger wiederholt wird, keinen
bedeutsamen Vorteil für
den „man-in-the-middle" bereit, aber für die nicht-autorisierte
Partei kann auch eine Wiederholung eines längeren Dialogs möglich sein,
um beispielsweise einen zusätzlichen
Ruf aufzubauen, den der „man-in-the-middle" nutzen und dadurch
Teile der Verbindung stehlen kann. Ein einfacherer „Repeat"-Angriffsfall läge darin, dass die nicht-autorisierte
Partei beispielsweise einen über
SMS geführten Dialog
wiederholen könnte,
wobei der Dialog beispielsweise eine Geldtransaktion ist.
-
Bei
den gegenwärtigen
Vorschlägen
dritter Generation kann dieses Problem lediglich bei einer begrenzten
Anzahl von Umständen
auftreten. Dies ist durch die Tatsache begründet, dass die Verwendung der
vier Signalisierungsfunkträger
(SRB) eingeschränkt
ist. Lediglich bestimmte RRC-Nachrichten können auf bestimmten Signalisierungsfunkträgern gesendet
werden. Das „Repeat"-Angriffsszenario wäre bei einer Nicht-Zugangsschicht-(NAS)-Nachricht (CM/MM/SMS-
usw. -Nachrichten, die in einem RRC-Direkttransfer geführt werden)
oder bei einem NAS-Nachrichtendialog zwischen einer UE und einem/einer
SGSN/MSC möglich.
Ein RRC-Direkttransfer ist eine RRC-Nachricht, die in ihrer Nutzlast all
die NAS-Nachrichten über
die Luftschnittstelle trägt.
Dieses Problem könnte jedoch
einen Mobilbenutzer schädigen,
da beispielsweise SMS-Nachrichten nachteilig beeinflusst werden
könnten.
-
Es
gibt zwei grundlegende Lösungen
für das „Replay"-Angriffsproblem. Erstens können verschiedene,
den gleichen geheimen Schlüssel
verwendende Kommunikationskanäle
die Verwendung von Sequenznummern COUNT-I derart koordinieren, dass jede
Sequenznummer höchstens
einmal in jedem der Kanäle
verwendet wird. Diese Koordination kann in einigen Situationen überaus beschwerlich
oder sogar unmöglich
sein. Es sei darauf hingewiesen, dass dann, wenn die Ausführungsbeispiele
bei der Funkschnittstelle des zellularen Netzwerks UMTS dritter Generation
angewendet werden, die Kommunikationskanäle als Funkträger bezeichnet
werden können.
-
Wie
nachstehend ausführlicher
beschrieben, verwenden Ausführungsbeispiele
der Erfindung eine Lösung,
bei der ein zusätzlicher
Parameter als eine Eingabe in die Berechnung des Nachrichtenauthentifizierungscodes
MAC-I verwendet wird. Der Wert dieses Parameters ist zumindest bei
jedem Kommunikationskanal eindeutig, der den gleichen geheimen Schlüssel verwendet.
Der Wert kann auch für
alle Kommunikationskanäle
innerhalb einer Verbindung zwischen der Teilnehmereinrichtung UE 6 und
der RNS 20 eindeutig sein.
-
In
einem weiteren Ausführungsbeispiel
der Erfindung wird das Problem dadurch vermieden, dass sichergestellt
wird, dass der gleiche Integritätsschlüssel nie
für verschiedene
parallele Kommunikationskanäle
verwendet wird.
-
Unter
Bezugnahme auf 4 werden die Modifikationen
an der bekannten Integritätsschutzfunktion,
die ein Ausführungsbeispiel
der Erfindung ist, beschrieben. Diese Modifikationen verursachen keine Änderungen
an dem eigentlichen Integritätsalgorithmus
UIA.
-
Ein
kommunikationskanalspezifischer Parameter wird als Eingabe in den
Integritätsschutzalgorithmus
hinzugefügt.
In den 3GPP-Spezifikationen ist dieser kommunikationskanalspezifische
Parameter die Funkträgerkennung
(RB ID, „radio
bearer identification").
Bei einem Anwendungsbeispiel der Erfindung stellt die Funkträgerkennung
die Identität
des Signalisierungsfunkträgers
in dem vorgeschlagenen WCDMA-System
dritter Generation dar, und kann eine Zahl zwischen 0 und 3 sein.
Es sei darauf hingewiesen, dass der verwendete kommunikationskanalspezifische
Parameter von der Protokollschicht abhängt, in der der Nachrichtenauthentifizierungscode berechnet
wird. Unter weiterer Verwendung der 3GPP-Spezifikation als Beispiel
wäre der
Parameter eine logische Kanalidentität (siehe 2),
wenn der Nachrichtenauthentifizierungscode zu dem RLC-Protokoll
hinzugefügt
würde.
Als weiteres mögliches
Beispiel wäre
der zusätzliche
Parameter eine Identität des
Funkträgers
(siehe 2), wenn der Integritätsschutz in der PDCP-Protokollschicht
oder in der RRC-Protokollschicht durchgeführt würde. Es sei darauf hingewiesen,
dass bei Bezugnahme auf den Steuerebenenteil des Protokollstapels
die Ausdrücke Signalisierungsfunkträgeridentität und Funkträgeridentität gleichwertig
sind.
-
Da
die Identität
des Signalisierungsfunkträgers
sowohl dem Sender als auch dem Empfänger bekannt ist, das heißt der Teilnehmereinrichtung
UE 6 und der RNS 20, ist ein explizites Senden
der Identitätsinformationen über die
Funkschnittstelle nicht erforderlich.
-
4 zeigt
die möglichen
Stellen, an denen der neue Parameter ohne Modifikation des Integritätsalgorithmus
UIA eingesetzt werden kann. Da der Sender und der Empfänger einander
vom Standpunkt des Eingabeparameters aus ähnlich sind (siehe 3),
ist in 4 lediglich eine Seite gezeigt. Es sei darauf
hingewiesen, dass der Empfangs- und der Übertragungsteil den gleichen
Algorithmus ausführen
werden. Wie aus 4 ersichtlich, fügen die
bevorzugten Ausführungsbeispiele
den neuen Parameter durch dessen Anhängen (als eine Bitkette) an
einen oder mehrere der existierenden Algorithmuseingabeparameter
hinzu.
-
In
einem Ausführungsbeispiel
wird die Signalisierungsfunkträgerkennung
RB IB ein Teil der Eingabeparameter FRESH oder COUNT-I. Dies ist mit
Bezugszeichen ,1' bzw.
,2' in 4 gezeigt.
In der Praxis würden
die FRESH- und COUNT-I-Parameter sowohl FRESH- und COUNT-I-Informationen
als auch die Identifizierungsinformationen enthalten. Weise beispielsweise
der FRESH-Wert n Bits auf, dann würden die FRESH-Informationen
durch a Bits und die Kennungsinformationen durch b Bits dargestellt,
wobei a + b = n. Dies bedeutete effektiv eine Verkürzung des
FRESH-Parameters.
Die gleiche Modifikation kann bei dem COUNT-I-Parameter durchgeführt werden. Bei einer Modifikation
kann ein Teil der Signalisierungsfunkträgerkennung durch den COUNT-I-Parameter
und ein Teil durch den FRESH-Parameter
bereitgestellt sein. Wird jedoch der COUNT-I verkürzt, dann
kann sein „Umschlagen" weniger Zeit erfordern,
d. h. das Erreichen des Maximalwerts und das Rücksetzen auf Null. Wird der FRESH-Parameter
verkürzt, könnte es
sein, dass sich die Wahrscheinlichkeit einer zufälligen Wiederholung des Werts
(er wird zufällig
gewählt)
erhöht.
-
In
einem weiteren Ausführungsbeispiel
wird die Signalisierungsfunkträgerkennung
ein Teil des Integritätsschlüssels IK.
Dies ist durch Bezugszeichen ,4' in 4 gezeigt.
Weist der IK-Wert beispielsweise n Bits auf, dann würden die
IK-Informationen durch a Bits und die Kennungsinformationen durch
b Bits dargestellt, wobei a + b = n. Ist der Schlüssel IK
jedoch kürzer,
ist die Wahrscheinlichkeit eines einfachen Erratens des Schlüssels erhöht.
-
In
einem weiteren Ausführungsbeispiel
der Erfindung könnten
die Identität
des Signalisierungsfunkträgers
in der MESSAGE enthalten sein, die dem Integritätsalgorithmus zugeführt wird.
Dies ist durch Bezugszeichen ,3' in 4 gezeigt.
Da die Identität des
Signalisierungsfunkträgers
sowohl dem Sender als auch dem Empfänger bekannt ist, das heißt der Mobilstation
und der RNS 20, ist das Senden von Identitätsinformationen über die
Funkschnittstelle mit der eigentlichen MESSAGE nicht erforderlich.
Weise beispielsweise die MESSAGE n Bits und die Identität RB ID
i Bits auf, dann weist die dem Integritätsalgorithmus zugeführte, eigentliche
MESSAGE n + i Bits auf. Dadurch würde anstelle der alleinigen
Eingabe der MESSAGE in den Integritätsalgorithmus die dem Integritätsalgorithmus
zugeführte
Bitkette zur Signalisierungsfunkträgeridentität und die MESSAGE werden. Diese
Lösung
weist keine Auswirkung auf Sicherheitsfragen auf (beispielsweise
Zählerlängen), die
sich auf den Integritätsalgorithmus
beziehen. Dies bedeutet, dass kein dem Algorithmus zugeführter Parameter
verkürzt
wird.
-
In
einigen Ausführungsbeispielen
ist ein Aufteilen der Kennungsinformationen zwischen mehr als einer
Eingabe möglich.
-
5 zeigt
ein weiteres Ausführungsbeispiel der
Erfindung, wobei dieses Ausführungsbeispiel
den eigentlichen Integritätsalgorithmus
UIA beeinflusst. In diesem Ausführungsbeispiel
wird dem Integritätsalgorithmus
ein zusätzlicher
Parameter bereitgestellt, wie in 5 gezeigt.
Wird in diesem Beispiel ein Integritätsschutz in der RRC-Protokollschicht
durchgeführt,
dann ist der zusätzliche
Parameter eine (Signalisierungs-)Funkträgerkennung RB ID, die für den (Signalisierungs-)Funkträger eindeutig
ist. Dieser Parameter wird separat eingegeben und bei der Berechnung
verwendet, die durch den Integritätsalgorithmus UIA durchgeführt wird.
-
6 zeigt
ein weiteres Ausführungsbeispiel der
Erfindung, wobei dieses Ausführungsbeispiel
den eigentlichen Integritätsalgorithmus
UIA beeinflusst. In diesem Ausführungsbeispiel
wird der neue Parameter Trägerkennung
(RB ID) mit dem Parameter DIRECTION kombiniert. Dieses Ausführungsbeispiel würde den
existierenden, d.h. „alten" DIRECTION Parameter
verlängern,
wodurch es den gegenwärtigen
Integritätsalgorithmus
UIA beeinflussen würde.
-
In
einem alternativen Ausführungsbeispiel wird
ein eindeutiger Integritätsschlüssel IK
für jeden Funkträger erzeugt.
Dies kann durch Modifikation der Authentifizierungsprozedur einer
höheren
Schicht L3 erreicht werden, die Mobilitätsverwaltung MM und Sitzungsverwaltung
SM in den vorgeschlagenen UMTS- Spezifikationen
unterstützt.
Wie vorstehend kurz beschrieben, verwaltet die Mobilitätsverwaltungsfunktion
den Ort der Mobilstation, das heißt die Anbindung der Mobilstation
an das Netzwerk und eine Authentifizierung. Der Integritätsalgorithmus, der
in jedem Signalisierungsfunkträger
während
einer modifizierten Authentifizierungsprozedur durchgeführt wird,
kann einzigartige Ergebnisse erzielen, wie ein Verhindern der zuvor
erwähnten
Angriffsart.
-
Unter
Bezugnahme auf die 7 bis 9 sind mögliche Authentifizierungs-
und Schlüsselvereinbarungsprozeduren
gezeigt. Die beschriebenen Mechanismen erreichen dadurch gegenseitige
Authentifizierung, dass der Benutzer und das Netzwerk Kenntnis eines
geheimen Schlüssels
K zeigen, der gemeinsam ist zwischen und lediglich verfügbar ist für das Benutzerdienstidentitätsmodul
USIM und dem und für
das Authentifizierungszentrum AuC („Authentication Centre") in der Heimatumgebung
HE („Home
Environment") des
Benutzers. Das USIM und die HE führen
zusätzlich
zur Unterstützung
einer Netzwerkauthentifizierung über
die Zähler
SEQMS bzw. SEQHE Buch.
-
Die
Prozedur kann derart entworfen werden, dass sie beispielsweise mit
der gegenwärtigen GSM-Sicherheitsarchitektur
kompatibel ist, und einen Übergang
von dem GSM in das UMTS erleichtert. Das Verfahren besteht aus einem
Frage-Antwort-Protokoll, das mit der GSM-Teilnehmerauthentifizierung
identisch ist, und einem Schlüsselerstellungsprotokoll
in Kombination mit einem sequenznummerbasierten Einwegeprotokoll
zur Netzwerkauthentifizierung, die aus dem ISO-Standard ISO/IEC 9798-4
hergeleitet ist. Vor der Beschreibung der Bildung der Integritätsschlüssel werden
ein Authentifizierungs- und ein Schlüsselvereinbarungsmechanismus
beschrieben. Ein Überblick über mögliche Authentifizierungs-
und Schlüsselvereinbarungsmechanismen
ist in 7 gezeigt. 8 zeigt
eine mögliche
Prozedur zum Erzeugen von Authentifizierungsvektoren.
-
Bei
Empfang einer Anforderung von dem VLR/SGSN sendet die/das HE/AuC
ein geordnetes Array von n Authentifizierungsvektoren (das Äquivalent
eines GSM-„triplets") zu dem VLR/SGSN.
Jeder Authentifizierungsvektor besteht aus den folgenden Komponenten:
einer Zufallszahl RAND, einer erwarteten Antwort XRES, einem Chiffrierschlüssel CK,
einem Integritätsschlüssel IK
und einer Authentifizierungsmarke AUTN. Jeder Authentifizierungsvektor genügt für eine Authentifizierung
und eine Schlüsselvereinbarung
zwischen dem VLR/SGSN und dem USIM.
-
Startet
das/der VLR/SGSN eine Authentifizierung und eine Schlüsselvereinbarung,
dann wählt es/er
den nächsten
Authentifizierungsvektor aus dem Array aus, und sendet die Parameter
RAND und AUTN zu dem Benutzer. Das USIM überprüft, ob die AUTN akzeptiert
werden kann, und wenn dem so ist, dann erzeugt es eine Antwort RES,
die zu dem VLR/SGSN zurückgesendet
wird. Das USIM berechnet auch CK und IK. Das/Der VLR/SGSN vergleicht die
empfangene RES mit XRES. Stimmen sie überein, dann betrachtet das/der
VLR/SGSN die Authentifizierung und den Schlüsselvereinbarungsaustausch
als erfolgreich abgeschlossen. Die erstellten Schlüssel CK
und IK werden dann durch das USIM und das/den VLR/SGSN zu den Funktionseinheiten übertragen,
die Chiffrierung und Integritätsfunktionen durchführen. In
dem vorgeschlagenen UMTS-System können diese Funktionseinheiten
vorzugsweise einige der in 2 beschriebenen Funkschnittstellenprotokolle
sein. Die Funktionseinheiten befinden sich vorzugsweise in der Teilnehmereinrichtung
UE und in der Funknetzwerksteuereinrichtung RNC.
-
VLR/SGSNs
können
selbst dann einen sicheren Dienst bereitstellen, wenn HE/AuC-Anbindungen
durch deren Zulassung der Verwendung zuvor hergeleiteter Chiffrier- und Integritätsschlüssel für einen
Benutzer nicht verfügbar
sind, so dass trotzdem eine sichere Verbindung ohne das Erfordernis einer
Authentifizierung und einer Schlüsselvereinbarung
aufgebaut werden kann. Eine Authentifizierung erfolgt in jenem Fall
auf der Grundlage eines gemeinsamen Integritätsschlüssels mittels eines Datenintegritätsschutzes
von Signalisierungsnachrichten.
-
Die
authentifizierenden Parteien seien das AuC der Benutzer-HE (HE/AuC)
und das USIM in der Benutzermobilstation. Der Mechanismus kann aus den
folgenden Prozeduren bestehen:
- – Austeilung
von Authentifizierungsinformationen von der/dem HE/AuC zu dem VLR/SGSN. Das/Der
VLR/SGSN wird durch die Benutzer-HE als vertrauenswürdig für die sichere
Authentifizierungsinformationsverwaltung angenommen. Es sei auch
angenommen, dass die systeminternen Anbindungen zwischen dem VLR/SGSN
zu der/dem HE/AuC angemessen sicher sind. Es sei ferner angenommen,
dass der Benutzer der HE vertraut.
- – Gegenseitige
Authentifizierung und Erstellen von neuen Chiffrier- und Integritätsschlüsseln zwischen
dem VLR/SGSN und der MS.
- – Austeilung
von Authentifizierungsdaten von einem zuvor besuchten VLR an das
neu besuchte VLR. Es sei angenommen, dass die Anbindungen zwischen
VLR/SGSNs angemessen sicher sind.
-
Der
Zweck der Austeilung von Authentifizierungsdaten von der HE zum
SN ist eine Bereitstellung eines Arrays von frischen Authentifizierungsvektoren
von der Benutzer-HE für
das/den VLR/SGSN zur Durchführung
einer Anzahl von Benutzer-authentifizierungen. Das/Der VLR/SGSN
ruft die Prozeduren durch Anfordern von Authentifizierungsvektoren von
der/dem HE/AuC auf. Die Authentifizierungsdatenanforderung enthalte
eine Benutzerkennung. Ist der Benutzer in dem VLR/SGSN mittels der
IMUI bekannt, dann enthalte die Authentifizierungsdatenanforderung
die IMUI. Wird der Benutzer mittels einer verschlüsselten
ständigen
Identität
identifiziert, dann kann statt dessen die HLR-Nachricht eingefügt werden, aus der die HE die
IMUI herleiten kann. In jenem Fall sind diese Prozedur und die Prozedur
Benutzeridentitätsanforderung
an das HLR vorzugsweise integriert.
-
Bei
Empfang der Authentifizierungsdatenanforderung von dem VLR/SGSN
kann die HE die erforderliche Anzahl an Authentifizierungsvektoren
bereits vorberechnet haben, und sie aus der HLR-Datenbank holen,
oder sie auf Anfrage berechnen. Die/Das HE/AuC sendet eine Authentifizierungsantwort
zu dem VLR/SGSN zurück,
das/der ein geordnetes Array von n Authentifizierungsvektoren AV(1...n)
enthält.
Die/Das HE/AuC erzeugt eine frische Sequenznummer SQN und eine nicht
vorherzusagende Frage RAND. Für
jeden Benutzer führt die/das
HE/AuC ebenso über
einen Zähler
Buch, das heißt
SQNHE.
-
Die
Mechanismen zur Verifizierung der Frische der Sequenznummern in
dem USIM erlauben bis zu einem gewissen Ausmaß die außerreguläre Verwendung von Sequenznummern.
Dies dient zum Sicherstellen, dass die Authentifizierungsfehlschlagrate
aufgrund von Synchronisierungsfehlschlägen hinreichend niedrig ist.
Dies erfordert die Fähigkeit des
USIM zur Speicherung von Informationen bezüglich vergangener erfolgreicher
Authentifizierungsereignisse (beispielsweise Sequenznummern oder relevante
Teile davon). Der Mechanismus stelle sicher, dass eine Sequenznummer
immer noch akzeptiert werden kann, wenn sie sich unter den letzten
x = 50 erzeugten Sequenznummern befindet. Dies schließe nicht
aus, dass eine Sequenznummer aus anderen Gründen abgewiesen wird, wie einer
Altersbegrenzung für
zeitbasierte Sequenznummern.
-
Die
gleiche Minimalanzahl x muss über
das System hinweg verwendet werden, um zu garantieren, dass die
Synchronisierungsfehlschlagrate in verschiedenen Verwendungsszenarien
hinreichend niedrig ist, insbesondere bei gleichzeitiger Registrierung
in den CS- und den
PS-Dienstbereichen, bei Benutzerbewegung zwischen VLRs/SGSNs, die
keine Authentifizierungsinformationen austauschen, und bei überlasteten
Netzwerken.
-
Das
Verwenden von SEQHE kann für das Verfahren
zum Erzeugen von Sequenznummern spezifisch sein. Ein Authentifizierungs-
und Schlüsselverwaltungsfeld
AMF („authentication
and key management field")
kann in die Authentifizierungsmarke eines jeden Authentifizierungsvektors
eingefügt
werden.
-
Nachfolgend
können
die folgenden Werte berechnet werden:
- – ein Nachrichtenauthentifizierungscode
MAC = f1K(SQN||RAND||AMF), wobei f1 eine
Nachrichtenauthentifizierungsfunktion ist,
- – eine
erwartete Antwort XRES = f2K(RAND), wobei
f2 eine (möglicherweise
ganzzahlig abgeschnittene) Nachrichtenauthentifizierungsfunktion ist,
- – ein
Chiffrierschlüssel
CK = f3K(RAND), wobei f3 eine schlüsselerzeugende
Funktion ist,
- – ein
Integritätsschlüssel IK
= f4K(RAND), wobei f4 eine schlüsselerzeugende
Funktion ist,
- – ein
Anonymitätsschlüssel AK
= f5K(RAND), wobei f5 eine schlüsselerzeugende
Funktion ist oder f5 ≡ 0.
-
Gemäß den Ausführungsbeispielen
der Erfindung wird mehr als ein IK erzeugt. Dies kann beispielsweise
durch Modifizieren der f4-Funktion derart erreicht werden, dass
sie die gewünschte
Anzahl von IKs erzeugt (beispielsweise 4: siehe 9).
Eine Möglichkeit
besteht in der Spezifizierung, dass die f4-Funktion mehrere Male
während
der Erzeugung eines Authentifizierungsvektors ausgelöst werden muss.
Dies kann beispielsweise durch Zuführen des ersten erzeugten IK[1]
in dem zweiten Durchlauf als Eingabe in die f4-Funktion anstelle
eines neuen RAND implementiert werden. Im dritten „Durchlauf" würde der
in dem zweiten Durchlauf erzeugte IK[2] der f4-Funktion zum Erhalt
eines dritten Integritätsschlüssels IK[3]
zugeführt
werden. Eine Möglichkeit liegt
auch in der Eingabe einer gewünschten
Anzahl von RANDs in die Funktion f4. Dadurch ist das Erzeugen von
so vielen IKs für
das fragliche System wie nötig
möglich.
In dem UMTS-System
gemäß den 3GPP-Spezifikationen
Ausgabe '99 wären beispielsweise
vier Integritätsschlüssel erforderlich.
-
Die
Authentifizierungsmarke AUTN = SQN ⊕ AK || AMF || MAC kann dann
aufgebaut werden. Der AK ist ein Anonymitätsschlüssel, der zum Verbergen der
Sequenznummer verwendet wird, da letztere die Identität und den
Ort des Benutzers preisgeben kann. Das Verbergen der Sequenznummer
erfolgt lediglich zum Schutz gegen passive Angriffe. Ist kein Verbergen
erforderlich, dann f5 = 0.
-
Der
Zweck der Authentifizierungs- und Schlüsselvereinbarungsprozedur ist
ein Authentifizieren des Benutzers und ein Erstellen eines neuen Paars
von Chiffrier- und Integritätsschlüsseln zwischen
dem VLR/SGSN und der MS. Während
der Authentifizierung verifiziert der Benutzer die Frische des verwendeten
Authentifizierungsvektors. Das/Der VLR/SGSN ruft die Prozedur durch
Auswählen
des nächsten,
nicht verwendeten Authentifizierungsvektors aus dem geordneten Array
von Authentifizierungsvektoren in der VLR-Datenbank auf. Das/Der VLR/SGSN
sendet die Zufallsfrage RAND und eine Authentifizierungsmarke zur
Netzwerkauthentifizierung AUTN aus dem ausgewählten Authentifizierungsvektor
zu dem Benutzer. Bei Empfang geht der Benutzer wie in 9 gezeigt
weiter vor.
-
Bei
Empfang des RAND und der AUTN berechnet der Benutzer zuerst den
Anonymitätsschlüssel AK
= f5K(RAND) und ermittelt die Sequenznummer
SQN = (SQN ⊕ AK) ⊕ AK. Als
nächstes
berechnet der Benutzer XMAC = f1K(SQN ||
RAND || AMF) und vergleicht dies mit dem MAC, der in der AUTN enthalten
ist. Sind sie verschieden, dann sendet der Benutzer Benutzerauthentifizierungszurückweisung zu
dem VLR/SGSN mit einer Anzeige des Grunds zurück, und der Benutzer verlässt die
Prozedur. Als nächstes
verifiziert das USIM, dass die empfangene Sequenznummer SQN im korrekten
Bereich liegt.
-
Gemäß einem
Ausführungsbeispiel
der Erfindung erzeugt das USIM mehr als einen IK anstelle des Erzeugens
lediglich eines IKs, wie vorstehend beschrieben. Dies kann beispielsweise
durch Modifikation der f4-Funktion durch Spezifizieren erreicht werden,
dass die f4-Funktion mehrere Male während des Erzeugens eines Authentifizierungsvektors
ausgelöst
werden muss oder durch Eingabe einer gewünschten Anzahl an RANDs in
die f4-Funktion. Dies kann erfordern, dass das Netzwerk (SN/VLR)
die erforderliche Anzahl an RANDs und AUTNs zu der UE sendet, und
dass die UE womöglich
auch eine RES für
jeden RAND erzeugen muss, und alle erzeugten RESs zu dem Netzwerk
zurückgeben
muss, wie vorstehend für
den Fall von einem RAND+AUTN beschrieben.
-
Ausführungsbeispiele
der Erfindung können in
jedwedem System verwendet werden, das nicht-chiffrierte Signalisierung
zulässt
und Integritätsprüfsummen
in zumindest zwei parallelen Funkträgern verwendet.
-
Die
Ausführungsbeispiele
der Erfindung sind in Zusammenhang mit einem drahtlosen zellularen Telekommunikationsnetzwerk
beschrieben worden. Es können
jedoch alternative Ausführungsbeispiele der
Erfindung mit jedweder weiteren Art von Kommunikationsnetzwerken
drahtlos oder anderweitig verwendet werden. Ausführungsbeispiele der Erfindung können in
jedweder Form oder bei Kommunikationen verwendet werden, bei denen
Integritätsprüfungen oder
dergleichen bei einer Vielzahl von Funkträgern oder dergleichen parallel
bereitgestellt sind.