-
Hintergrund der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf das Verschlüsseln von
Drahtloskommunikationssignalen und bezieht sich insbesondere auf
die Kommunikation zwischen Systemen mit unterschiedlichen Verschlüsselungsanforderungen.
Es ist allgemein üblich,
Nachrichten in der Form von digitalen Daten über Drahtloskommunikationssysteme
und/oder das Internet zu senden.
-
Zwei
allgemeine Arten der Kryptografie sind Kryptografie mit geheimen
Schlüssel
und Kryptografie mit öffentlichem
Schlüssel.
In dem Fall der Kryptografie mit geheimen Schlüssel wird eine Nachricht, die
oft als „plaintext" bzw. „nur Text" bezeichnet wird, und
die von einem Sender zu einem beabsichtigten Empfänger übertragen
werden soll, unter Verwendung eines Geheimschlüssels verschlüsselt und
der beabsichtigte Empfänger
entschlüsselt
die verschlüsselte
Nachricht, die oft als „Ciphertext" oder als ein „Kryptogramm" bezeichnet wird,
und zwar unter Verwendung desselben geheimen Schlüssels. Nur der
Geheimschlüssel
kann verwendet werden, um die Nachricht zu verschlüsseln und
zu entschlüsseln und
Versuche, die Nachricht mit anderen Schlüsseln zu entschlüsseln schlagen
fehl. Ein weithin verwendetes System mit geheimem Schlüssel ist
der Datenverschlüsselungsstandard
bzw. Data Encryption Standard (DES), der einen 56-Bit-Schlüssel verwendet
und 8-Nicht-Schlüssel-Paritäts-Bits.
DES wurde als ein U.S. Federal Information Processing Standard in
1977 veröffentlicht.
-
Die
vorliegende Erfindung ist im Wesentlichen auf Kryptografie mit geheimem
Schlüssel
gerichtet.
-
Der
Sicherheitsgrad, der von einem gegebenen Verschlüsselungssystem vorgesehen wird, hängt von
der Stärke
oder dem Arbeitsfaktor des Systems ab, was allgemein mittels der
Anzahl von Bits in dem Schlüssel
gemessen wird.
-
Ein
Arbeitsfaktor ist eine Zahl, ausgedrückt in Bits, die der Logarithmus
zur Basis 2 der maximalen Zahl von Grundentschlüsselungsoperationen ist, die ausgeführt werden
müssen
unter Verwendung von unterschiedlichen Versuchsschlüsseln, um
mit Sicherheit zu bestimmen, welcher Versuchsschlüssel dem
tatsächlichen
Schlüssel
entspricht, der für
die Verschlüsselung
verwendet wurde. Der DES-Algorithmus hat z. B. einen Arbeitsfaktor
von 56 Bits, da er einen Schlüssel
mit 256 möglichen Werten vorsieht. Wie
es auf dem Fachgebiet bekannt ist, kann jeder Versuchsschlüssel der
korrekte Schlüssel
sein. Daher wird der korrekte Schlüssel normalerweise mit weniger
als 256 Versuchen gefunden werden. Durchschnittlich
wird der korrekte Schlüssel
gefunden, nachdem die Hälfte
der möglichen
Versuchsschlüsselwerte
getestet wurde. Es ist jedoch allgemein üblich, den Arbeitsfaktor auf
die maximale Anzahl von möglichen
Schlüsselwerten
zu basieren und dies sieht eine allgemein gültige Basis zum Vergleich von unterschiedlichen
Arbeitsfaktoren vor.
-
Somit
kann z. B. in einem Verschlüsselungssystem
mit geheimem Schlüssel
ein Schlüssel
der drei Bytes lang ist, d. h. aus 24 Bits besteht, relativ leicht
dadurch geknackt bzw. gebrochen werden, dass alle 224 möglichen
Schlüssel
ausprobiert werden, bis ein verständlicher Plaintext erhalten
wird. Diese Technik ist eine Form einer oft mit „Brute Force-Attacke" bzw. „ein Attacke
mit roher Gewalt" oder „Exhaustionsanalyse" („exhaustive
cryptoanalysis")
bezeichnet. Umso größer die
Anzahl von Bits in einem Schlüssel
ist, umso stärker
wird seine Stärke sein.
Es wird momentan angenommen, dass z. B. ein 128 Bit-Schlüssel für einen
Geheimverschlüsselungs-Algorithmus
vollständig
unknackbar sein wird, zumindest gegenüber dem Brute-Force-Verfahren.
-
Der
Arbeitsfaktor eines Verschlüsselungsschlüssels kann
geringer sein als die physikalische Größe des Schlüssels oder auch nicht. Der
Arbeitsfaktor kann jedoch nicht größer sein als die physikalische
Größe des Schlüssels. Der
Grund hierfür
ist, dass der Arbeitsfaktor nur von der Menge der Geheiminformation
in den Schlüsseln
abhängt.
Wenn die physikalische Größe eines
Verschlüsselungsschlüssels durch
Hinzufügen
von Information, die nicht geheim ist, erhöht wird, erhöht sich
dessen Arbeitsfaktor nicht.
-
Eine
andere Art des Angriffs basiert auf Vorwegwissen oder angenommenes
Vorwegwissen hinsichtlich des Plaintexts eines Teils einer Nachricht.
Z. B. kann bekannt sein, dass Email-Nachrichten immer bestimmte
Passagen, wie Z. B. Abschnittsüberschriften
enthalten. Jemand, der danach strebt, solche Nachrichten abzufangen
und sie zu entschlüsseln, könnte die
verschlüsselte
Form von solchen bekannten Passagen im Voraus berechnen, mit jedem
möglichen
Schlüssel
und speichert beides, das Ergebnis für jeden Schlüssel und
den Schlüssel
selber in einer Tabelle. Dann, wenn eine Nachricht abgefangen wird,
wird der verschlüsselte
Teil eines bekannten Textes in der Tabelle gefunden, was den korrekten Schlüssel ergibt.
Diese Technik ist bekannt als Vorausberechnungsangriff (precomputation
attack).
-
Vorausberechnungs-Angriff
erlaubt es, abgefangene Nachrichten relativ schnell und aufwandslos
zu entschlüsseln,
und zwar sogar dann, wenn der Verschlüsselungsschlüssel einen
hohen Arbeitsfaktor besitzt, kann jedoch durch Verwendung eines
so genannten „Salzes" bzw. „Salt" leicht in die Irre
geführt
werden, was im Detail unten beschrieben wird.
-
Andererseits
hängen
die Zeit und die Kosten, die benötigt
werden zum Entschlüsseln
einer abgefangenen Nachricht mittels des Brute-Force-Ansatzes im
Wesentlichen von dem Arbeitsfaktor des Verschlüsselungsschlüssels ab.
In bestimmten Situationen ist es jedoch nötig, Schlüssel mit reduzierten Arbeitsfaktoren
zu verwenden. Z. B. erlaubt es der US-Gesetzgeber kryptographische
Algorithmen oder Produkte mit einer begrenzten Schlüssellänge zu exportieren.
Z. B. können
bestimmte Algorithmen momentan exportiert werden, wenn diese auf
eine 40-Bit-Schlüsselänge begrenzt
sind. Außerdem
beschränken
Gesetze in bestimmten anderen Ländern eine
obere Grenze hinsichtlich der Schlüssellänge.
-
Eine
Basis für
diesen Hintergrund der Erfindung kann in den Dokumenten
WO-A-97/05720 und
US-A-5 764 772 gefunden
werden.
-
Kurze Zusammenfassung der
Erfindung
-
Es
ist ein Ziel der vorliegenden Erfindung, Kommunikation zwischen
Benutzern oder Stationen zu ermöglichen,
die mit Schlüsseln
operieren, die unterschiedlichen Arbeitsfaktoren besitzen.
-
Ein
genaueres Ziel der vorliegenden Erfindung ist es, zwischen zwei
Stationen einen Arbeitsfaktor zu bestimmen, der von zwei Stationen
verwendet werden kann, die jeweilige unterschiedliche Arbeitsfaktorfähigkeiten
besitzen, und zwar, um Kommunikation zwischen solchen Stationen
zu erlauben.
-
Die
obigen und anderen Ziele werden gemäß der vorliegenden Erfindung
erreicht durch ein Verfahren zum Zulassen von verschlüsselten
Kommunikationen zwischen zwei Stationen, die mit Verschlüsselungsalgorithmen
operieren, die Verschlüsselungsschlüssel akzeptieren,
die Arbeitsfaktoren mit jeweiligen unterschiedlichen Werten besitzen,
wobei das Verfahren Folgendes aufweist:
In einem ersten Bestimmungsschritt,
Bestimmen des niedrigeren Arbeitsfaktorwertes, der unterschiedlichen
Arbeitsfaktorwerte;
Vorsehen eines Anfangsverschlüsselungsschlüssels mit
einem ersten Arbeitsfaktorwert;
Vergleichen des ersten Arbeitsfaktorwertes
mit dem niedrigeren der Arbeitsfaktoren, der in dem Bestimmungsschritt
bestimmt wurde;
wenn, in dem Vergleichsschritt, festgestellt
wird, dass der erste Arbeitsfaktorwert größer ist als der niedrigere
der Arbeitsfaktorwerte, der in dem Bestimmungsschritt bestimmt wurde,
Ausführen
der folgenden Schritte:
Ausführen einer Hashing- bzw. Hash-Funktion
auf den anfänglichen
Verschlüsselungsschlüssel, um eine
erste Ausgabe zu erzeugen, und Herleiten von der ersten Ausgabe
eines ersten Zwischenschlüssel mit
einem Arbeitsfaktorwert, der nicht größer ist als der niedrigere
Wert, der unterschiedlichen Arbeitsfaktorwerte, der in dem Bestimmungsschritt
bestimmt wurde;
Ausführen
einer Hash-Funktion auf den ersten Zwischenschlüssel, um eine zweite Ausgabe
zu erzeugen und Ableiten von der zweiten Aus gabe eines Endverschlüsselungsschlüssels mit
einem Arbeitsfaktorwert, der nicht größer ist als der niedrigere
der unterschiedlichen Arbeitsfaktorwerte, der in dem Bestimmungsschritt
bestimmt wurde; und
Verwenden des Endverschlüsselungsschlüssels, um Kommunikationen
zwischen den zwei Stationen zu verschlüsseln; und
wenn in dem
Vergleichsschritt festgestellt wird, dass der erste Arbeitsfaktorwert
nicht größer ist
als der niedrigere der Arbeitsfaktorwerte, der in dem Bestimmungsschritt
bestimmt wurde, Verwenden des anfänglichen Verschlüsselungsschlüssels, um
die Kommunikationen zwischen den zwei Stationen zu verschlüsseln.
-
Ziele
gemäß der Erfindung
werden weiterhin erreicht, und zwar gemäß der Erfindung durch ein Verfahren
zum Gestatten von verschlüsselten
Kommunikationen zwischen zwei Stationen, wobei jede der Stationen
mit einem Verschlüsselungsalgorithmus
betrieben wird, der einen Verschlüsselungsschlüssel mit
einem gegebenen Arbeitsfaktorwert akzeptieren kann, wobei das Verfahren
Folgendes aufweist:
Vorsehen eines Anfangsverschlüsselungsschlüssels mit
einem ersten Arbeitsfaktorwert, der kleiner ist, als der gegebene
Arbeitsfaktorwert des Verschlüsselungsschlüssels, der
von jeder Station akzeptiert werden kann;
Ausführen einer
Hash-Funktion auf einem ersten Wort, das den Anfangsverschlüsselungsschlüssel enthält, um einen
Zwischenschlüssel
zu erzeugen und Ableiten von dem Zwischenschlüssel eines modifizierten Zwischenschlüssels mit
einem Arbeitsfaktorwert, der eine größere Widerstandsfähigkeit
gegenüber
einem Vorausberechnungsangriff besitzt als der erste Arbeitsfaktorwert,
und der nicht größer ist als
der gegebene Arbeitsfaktorwert des Verschlüsselungsschlüssels, der
von jeder Station akzeptiert werden kann;
Ausführen einer
Hash-Funktion auf einem zweiten Wort, das den modifizierten Zwischenschlüssel enthält, um eine
zweite Ausgabe zu erzeugen, und Ableiten von der zweiten Ausgabe
eines Endverschlüsselungsschlüssels mit
einem Arbeitsfaktorwert, der gleich ist zu dem Arbeitsfaktorwert
des ersten Zwischenschlüssels;
und
Verwenden des Endverschlüsselungsschlüssels, um Kommunikationen
zwischen den zwei Stationen zu verschlüsseln.
-
Kurze Beschreibung mehrerer
Ansichten der Zeichnung
-
1 ist
ein Blockdiagramm eines Kommunikationssystems, das gemäß dem Prozess
der vorliegenden Erfindung betrieben werden kann.
-
2 ist
ein Programmablaufdiagramm, das ein Ausführungsbeispiel des Verfahrens
gemäß der Erfindung
darstellt.
-
Detaillierte Beschreibung
der Erfindung
-
1 zeigt
die Grundkomponenten eines Mobilkommunikationssystems, auf das die
Erfindung angewendet werden kann. Das System beinhaltet eine Vielzahl
von Mobilstationen, wobei jede Mobilstation im Wesentlichen aus
einer CPU 2, einem Speicher 4 und einem Drahtlosinterface 6 besteht. Alle
Datenverarbeitung und Signalverarbeitung wird gesteuert durch die
CPU 2, und zwar gemäß herkömmlichen
Prinzipien auf dem Fachgebiet. Speicher 4 speichert Daten,
die von dem Mobilsystem benötigt
werden, und zwar inklusive eines Verschlüsselungsschlüssels, eines
Salts und anderer Daten, die für
den Systembetrieb benötigt
werden. Diese Daten können
dauerhaft in dem Speicher gespeichert sein oder können in
dem Speicher ansprechend auf Signale empfangen durch das Interface 6 geschrieben werden.
-
Interface 6 führt die
Operationen aus, die nötig
sind, um Drahtloskommunikationen zu senden und zu empfangen.
-
Das
System beinhaltet weiterhin eine Basisstation 8, verbunden
mit einem Mobilstationssteuerelement 10. Mobilstationsteuerelement 10 steht
in Kommunikation mit einem Heimnetzwerk 12, das neben anderen
Dingen eine Authentifizierungszentrale 14 enthält. Steuerelement 10 kann
an Netzwerk 12 über
eine Drahtlosverbindung, eine dedizierte Leitung oder ein Kommunikati onsnetzwerk
gekoppelt sein. Alle strukturellen Komponenten, die in 1 dargestellt
sind, sind auf dem Fachgebiet bereits bekannt, wobei der grundlegende
Unterschied der vorliegenden Erfindung zu dem Bekannten in der Art
und Weise liegt, wie Daten für
die Übertragung
verschlüsselt
werden und bei Empfang durch eine autorisierte empfangene Station
entschlüsselt
werden.
-
Ein
Beispiel für
ein Verfahren gemäß der Erfindung
wird im Folgenden dargelegt. Dieses Verfahren kann ausgeführt werden,
wenn Kommunikation zwischen einer Basisstation und einer Mobilstation
in einem zellularen Netzwerk auftreten soll.
-
Die
Ausführung
des Verfahrens gemäß der Erfindung
benötigt
das Eingeben der folgenden fünf Elemente:
ein
Schlüssel
K, mit einem gegebenen Arbeitsfaktor Wk,
der ebenfalls zu stark ist für
bestimmte Verwendung, wie oben angemerkt. Der Mobilstationsschlüssel K ist
ebenfalls gegenüber
der Authentifizierungszentrale bekannt und kann über das Telefonvermittlungsnetzwerk
zu der Basisstation übermittelt
werden, wobei die Übermittlung
als sicher angenommen wird, so dass der Schlüssel bei beiden Stationen bekannt
ist. Dies kann ein Langzeitschlüssel
sein, wie er in dem Nordamerikanischen IS-41 Mobiltelefonsystem
verwendet wird, kann ein Temporär-Schlüssel sein,
der von solch einem Langzeitschlüssel
hergeleitet wird, oder kann ein Temporär-Schlüssel sein, wie solche, die
in dem Europäischen
GSM-System gesendet werden; eine Wortlänge in Bits, Lc,
des Schlüssels,
der durch den darunter liegenden Verschlüsselungsalgorithmus akzeptiert
werden kann; der darunter liegende Verschlüsselungsalgorithmus könnte der
oben erwähnte
DES-Algorithmus sein, für den
Lc 56 Bits ist, oder ein beliebiger anderer
Algorithmus mit geheimem Schlüssel;
ein
Integer bzw. eine ganze Zahl WB, der bzw.
die den maximalen Arbeitsfaktor darstellt, der durch die Ausrüstung bei
einer ausgewählten
Basisstation erlaubt ist. Dieser Integer wird von der ausgewählten Basisstation
zu einer Mobilstation zu einem Zeitpunkt während des Setups bzw. Einrichtung
einer Kommunikation zwischen der Basisstation und der Mobilstation übermittelt
oder er kann von anderen Informationen, wie z. B. einem Protokollidentifi zierer
oder einer Protokollversionsnummer hergeleitet werden, wobei der Identifizierer
oder die Nummer gemäß einer
Prozedur, die auf dem Fachgebiet bekannt ist und verwendet wird,
zuvor von der Basisstation zu der Mobilstation gesendet wurde, wenn
die Mobilstation in das Gebiet eintritt, das von der Basisstattion
abgedeckt wird;
ein Integer Wm, der
den maximalen Arbeitsfaktor darstellt, der von der Mobilstation
erlaubt ist. Dieser Integer kann in der Mobilstation zum Zeitpunkt
der Herstellung abgespeichert werden, oder kann nachfolgend in die
Mobilstation einprogrammiert werden, unter der Einschränkung, dass
eine solche Programmierung zurückgewiesen
werden würde,
wenn es ein Versuch ist, einen Wert von Wm einzustellen,
der größer ist
als ein Wert, der bereits in die Mobilstation einprogrammiert wurde;
und
ein Datenelement, das der Basisstation und der Mobilstation
bekannt ist, das jedoch nicht im Voraus anderen Parteien bekannt
ist, die eine Kommunikation zwischen den Stationen abfangen könnten, und
wobei das Datenelement zeitlich und auf eine Art und Weise, die
nur den autorisierten Parteien bekannt ist, variieren könnte. Dies
wird als "Salz" bzw. "Salt" S bezeichnet, und
es wird verwendet, um die Verwendung von im Voraus berechneten Nachschlagetabellen
um den Schlüssel
zu identifizieren, zu verhindern. Das Salt könnte z. B. die Ausrüstungselektronikseriennummer
der Mobilstation oder der RAND-Wert sein, der während des Authentisierungsprozesses verwendet
wird, oder eine Verknüpfung
hiervon. Um ein Beispiel anzugeben, wird die elektronische Seriennummer
einer Mobilstation momentan zu Beginn eines Anrufs gesendet, und
somit ist diese beiden Parteien bekannt. Für ein bestimmtes Telefon ändert sie
sich nicht über
die Zeit hinweg, jedoch ändert
sie sich aus der Sicht eines Angreifers, der versucht viele Kommunikationen
von unterschiedlichen Personen zu entschlüsseln, so dass der Angreifer
keine Vorausberechnung allgemein durchführen kann. Das Beste was der
Angreifer tun könnte,
wäre ein
Vorausberechnen für
ein oder mehrere bestimmte Telefone und wäre somit nicht in der Lage,
Kommunikation von anderen Telefonen abzufangen; und
eine Einweg-Funktion
H, die die Eigenschaft hat, dass sie nur schwer umgekehrt bzw. invertiert
werden kann. Mit anderen Worten ausgedrückt, be züglich einer beliebigen Ausgabegröße von der
Funktion y = H(x), ist es rechnerisch nicht möglich, den Eingangswert x von
dem Ausgabewert y zu bestimmen oder zwei Eingabewerte zu finden,
die denselben Ausgabewert erzeugen. Der Ausgabewert y ist allgemein
als ein Hash bekannt, und H ist allgemein als eine Hash-Funktion
bekannt. Hash-Funktionen mit variierenden Stärken sind allgemein bekannt
und kommerziell verfügbar.
-
Eine
solche Hash-Funktion, bekannt als CAVE, ist in IS-41 Standardausrüstung vorhanden.
Alternativ spezifiziert der Secure Hash Standard (FIPS 180-1) eine Funktion,
SHA-1, die ebenfalls verwendet werden könnte. Die Eingabe in die Hash-Funktion kann
eine beliebige Länge
besitzen. Von der Ausgabe der Hash-Funktion wird angenommen, dass
sie eine Anzahl von Bits Lh besitzt, die
zumindest so groß ist
wie die Bitzahl, die jeweils Wm, Wb und Lc darstellt.
-
Ein
Ausführungsbeispiel
eines Verfahrens gemäß der Erfindung
würde aus
den folgenden Schritten bestehen, die in dem Flussdiagramm der 2 dargestellt
sind, und jeweils in der Mobilstation und in der Basisstation ausgeführt werden,
bevor ein Datenaustausch auftreten kann.
-
Schritt 1
-
Ein
Zielarbeitsfaktor Wt wird gleich dem Arbeitsfaktor
Wm einer Mobilstation gesetzt;
-
Schritt 2
-
Der
Arbeitsfaktor Wb der Basisstation wird verglichen
mit Wm; wenn der Vergleich anzeigt, dass Wb geringer ist oder gleich ist zu Wm, dann wird Wt gleich
zu Wb gesetzt. Andernfalls behält Wt den Wert, der im Schritt 1 eingestellt
wurde;
-
Schritt 3
-
Wenn
der Zielarbeitsfaktor Wt größer ist
als oder gleich ist zu der Länge
des Schlüssels,
der von dem Verschlüsselungsalgorithmus
Lc akzeptiert wird, werden die niedrigstwertigen
Lc Bits des Schlüssels K direkt verwendet, um Übertragungen
zu verschlüsseln
und die folgenden Schritte werden weggelassen. Wenn Wt geringer
ist als Lc, werden die folgenden Schritte
ausgeführt,
um einen neuen Verschlüsselungsschlüssel zu
generieren.
-
Schritt 4
-
Schlüssel K mit
dem Arbeitsfaktor Wk wird verknüpft mit
dem Salt S, und das resultierende Wort wird als Eingabe in die Einwegfunktion
H verwendet. Die resultierende Ausgabe ist ein Zwischenschlüssel K' mit der Länge Lh, jedoch noch immer nur mit einem Arbeitsfaktor
Wb, da angenommen wird, dass jemand der
versucht eine Nachricht abzufangen und sie ohne Autorisierung zu
entschlüsseln,
das Salt S kennt.
-
Schritt 5
-
K' wird modifiziert,
so dass es nur Wt sinnvolle Bits enthält, und
zwar durch Setzen der (Lh – W) höchstwertigen
Bits von K' auf
0, wobei Wt den Wert besitzt, der in den
Schritten 1 und 2 erzeugt wurde. Der mit K' assoziierte Arbeitsfaktor wurde nun
auf Wt Bits reduziert.
-
Schritt 6
-
Schlüssel K' gemäß Modifikation
im Schritt 5, wird mit dem Salt S verknüpft und das resultierende Wort
wird als Eingabe in die Einwegfunktion H verwendet, um einen Ausgabewert
Kout zu bilden.
-
Schritt 7
-
Die
Lc niedrigstwertigen Bits von Kout werden als
ein Verschlüsselungsschlüssel K'' verwendet.
-
Die
Schritte 4 bis 7 werden gleichzeitig in beiden Stationen ausgeführt.
-
In
der oben beschriebenen Prozedur kann K'' eine
Anzahl von Bits besitzen, die größer ist
als die Anzahl von Bits, die Wt darstellen.
Aufgrund der Modifikation von Schlüssel K' im Schritt 5 jedoch, wird der Schlüssel K'' nur den Arbeitsfaktor Wt besitzen, der
nicht größer ist
als entweder Wk oder Wm.
Aufgrund der Verwendung des Salts S in dieser Berechnung würden Vorausberechnungsangriffe
einen größeren Aufwand
und eine größere Speicherkapazität für die Tabelle,
die vorbereitet werden muss, verlangen. Dieser Aufwand und die Speicherkapazität würde einem
Arbeitsfaktor entsprechen, der der geringere von Lc oder
Wt + Ls ist.
-
In
der oben beschriebenen Prozedur wird ebenfalls angenommen, dass
dieselbe Einwegfunktion H in den Schritten 4 und 6 verwendet wird
und dies wird normalerweise in der Praxis der Fall sein. Es ist jedoch
möglich,
eine erste Einwegfunktion im Schritt 4 und eine zweite Einwegfunktion,
unterschiedlich von der ersten Einwegfunktion, im Schritt 6 zu verwenden.
Gemäß einem
spezifischen Beispiel des oben beschriebenen Verfahrens wird anfänglich ein Schlüssel K auf
eine Art und Weise generiert, wie es im Fachgebiet bekannt ist,
und zwar mit einem Arbeitsfaktor Wk gleich
zu 64 Bits. Ein Salt S mit einer Länge von 32 Bits wird verwendet.
In diesem Beispiel hat Wm einen Wert von
64 Bits und Wb hat einen Wert von 40 Bits.
Daher wird im Schritt 1 Wt auf 64 Bits gesetzt,
und dann wird im Schritt 2 dieser auf 40 Bits gesetzt.
-
In
diesem Beispiel ist der DES der zugrunde liegende Entschlüsselungsalgorithmus,
der eine Schlüssellänge Lc von 56 Bits besitzt, so dass im Schritt
3 festgestellt wird, dass Wt geringer ist
als Lc. Daher wird im Schritt 4 fortgefahren,
was K' mit einer Länge Lh, was hier gleich zu 160 Bits ist, erzeugt.
-
Im
Schritt 5, werden die 120 höchstwertigen Bits
von Schlüssel
K' gleich Null gesetzt,
so dass der resultierende modifizierte Schlüssel K' 40 sinnvolle Bits enthält, und
somit ein Arbeitsfaktor Wt von 40 Bits.
-
Die
Verarbeitung, die im Schritt 6 ausgeführt wird, erzeugt einen Ausgabewert
Kout mit einer Länge von 160 Bits. Da der zugrunde
liegende Verschlüsselungsalgorithmus
Schlüssel
mit einer Länge
von 56 Bits akzeptiert, werden die niedrigstwertigen 56 Bits von
Kout als Verschlüsselungsschlüssel verwendet.
-
Gemäß einem
weiteren Ausführungsbeispiel der
Erfindung kann ein Verschlüsselungsschlüssel in einen
längeren
Schlüssel
konvertiert werden. Die beiden Stationen müssen in der Lage sein, denselben
Verschlüsselungsalgorithmus
zu verwenden, wobei dieselbe Schlüssellänge von dem Algorithmus akzeptiert
wird. Wenn die Schlüssellänge größer ist als
diejenige, die von den Behörden
akzeptiert wird, wird die oben beschriebene Aushandlung sicherstellen,
dass der Arbeitsfaktor passend begrenzt wird. Zum Beispiel kann
es wünschenswert
sein, einen kryptographischen Algorithmus zu verwenden, der in der
Lage ist einen Schlüssel
zu akzeptieren, der länger
ist als der Schlüssel,
der anfänglich
geliefert wurde. In diesem Fall könnte das Verfahren gemäß der Erfindung
verwendet werden um einen Schlüssel
zu erzeugen mit demselben Arbeitsfaktor. Obwohl dieser längere Faktor
durch eine umfassende Suche geknackt werden könnte, die nicht länger ist
als diejenige, die benötigt
wird um den Originalschlüssel
zu knacken, würde
jeder Versuch zum Vorausberechnen von Ergebnissen eine längere Berechnung
und mehr Speicher benötigen,
aufgrund des Einbeziehens des Salts.
-
Ein
Verfahren gemäß diesem
Ausführungsbeispiel
der Erfindung würde
lediglich verlangen, dass Schritte 1 und 2 des zuerst beschriebenen
Ausführungsbeispiels
der Erfindung verändert
werden durch Setzen von Wt auf das Minimum
von Wb, Wm und Wk.
-
Die
oben vorgesehene Beschreibung bezieht sich auf das Aufbauen eines
Verschlüsselungsschlüssels unter
Einbeziehung von zwei Parteien. Es kann jedoch bei ungewöhnlichen
Umständen
auftreten, dass mehr als zwei Parteien in der Berechnung des Verschlüsselungsschlüssels einbezogen
sind, obwohl zu einem beliebigen gegebenen Zeitpunkt in der Prozedur
ein Austausch nur zwischen zwei der Parteien stattfinden würde. Zum
Beispiel könnte
der Fall auftreten, dass eine Basisstation 8 oder ein Mobilstationssteuerelement 10 von
den USA exportiert wird und, als Ergebnis davon, eine Einschränkung auf
ihren Arbeitsfaktor auferlegt bekommen hat. Es kann weiterhin der
Fall auftreten, dass eine Mobilstation 2-6 in
Frankreich verwendet werden soll, was eine größere Einschränkung auf
den Arbeitsfaktor auferlegt. In diesem Fall könnte das Verfahren gemäß der Erfindung
implementiert werden dadurch, dass die Authentifizierungszentrale 14,
während
sie mit Steuerelement 10 kommuniziert, zu der niedrigeren
Grenze, die durch das französische
Gesetz auferlegt ist, gelangt. Dann könnte Mobilstation 2-6 eine Stärkengrenze
auferlegen, zu der sie durch Interaktion mit Steuerelement 10 gelangt.
Insbesondere würden
Schritte 1-3 zwischen den Heimat- und besuchten Netzwerken ausgeführt werden,
um auf einen akzeptablen Wert für
Wb zu gelangen. Dieser Wert würde dann
von der Mobilstation und der Basisstation verwendet werden.
-
Während die
obige Beschreibung sich auf bestimmte Ausführungsbeispiele der vorliegenden Erfindung
bezieht, sei anzumerken, dass viele Modifikationen ausgeführt werden
können.
Die angefügten
Ansprüche
sollten solche Modifikationen, die innerhalb des wahren Umfangs
der vorliegenden Erfindung fallen, abdecken.
-
Die
vorliegenden offenbarten Ausführungsbeispiele
sollten daher in allen Belangen nur als darstellend und nicht einschränkend angesehen
werden, wobei der Schutzumfang durch die angefügten Ansprüche aufgezeigt ist, und nicht
durch die vorgehende Beschreibung und alle Veränderungen, die innerhalb der
Bedeutung und Umfang von Äquivalenten
der Ansprüche
liegen, sollten daher als hiervon umfasst angesehen werden.