DE60027006T2 - Verfahren und vorrichtung zur sicheren übertragung verteilter authentisierungsabfragewerte (rand) zur anwendung bei der authentifizierung einer mobilstation - Google Patents

Verfahren und vorrichtung zur sicheren übertragung verteilter authentisierungsabfragewerte (rand) zur anwendung bei der authentifizierung einer mobilstation Download PDF

Info

Publication number
DE60027006T2
DE60027006T2 DE60027006T DE60027006T DE60027006T2 DE 60027006 T2 DE60027006 T2 DE 60027006T2 DE 60027006 T DE60027006 T DE 60027006T DE 60027006 T DE60027006 T DE 60027006T DE 60027006 T2 DE60027006 T2 DE 60027006T2
Authority
DE
Germany
Prior art keywords
binary number
algorithm
bits
base station
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60027006T
Other languages
English (en)
Other versions
DE60027006D1 (de
Inventor
G. Gregory Mortlake ROSE
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Application granted granted Critical
Publication of DE60027006D1 publication Critical patent/DE60027006D1/de
Publication of DE60027006T2 publication Critical patent/DE60027006T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S370/00Multiplex communications
    • Y10S370/912Packet communications
    • Y10S370/913Wireless or radio

Description

  • Hintergrund der Erfindung
  • I. Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf digitale Telefontechnologie im allgemeinen und im besonderen auf die Authentifikation von mobilen Stationen in zellularen Telefonsystemen.
  • II. Beschreibung
  • Das Gebiet dar drahtlosen Kommunikationen besitzt viele Anwendungen wie zum Beispiel drahtlose Telefone, Paging, drahtlose Local Loops bzw. lokale Funknetze und Satellitenkommunikationssysteme. Eine besonders wichtige Anwendung sind zellulare Telefonsysteme für mobile Teilnehmer. (Der Ausdruck "zellulare Systeme" beinhaltet, wie er hier verwendet wird, sowohl zellulare als auch PCS-Frequenzen.) Eine Vielzahl von Funkschnittstellen wurden für solche zellulare Telefonsysteme entwickelt, was zum Beispiel Frequenzmultiplexvielfachzugriff (Frequency Division Multiple Access = FDMA), Zeitmultiplexvielfachzugriff (Time Division Multiple Access = TDMA) und Codemultiplexvielfachzugriff (Code Division Multiple Access = CDMA) beinhaltet. In Verbindung damit wurden eine Vielzahl von lokalen und internationalen Standards festgelegt, was zum Beispiel Advanced Mobile Phone Service (AMPS), Global System for Mobile (GSM) und den Interim Standard 95 (IS-95) beinhaltet. Besonders der IS-95 und seine Ableitungen 1S-95A, ANSI J-STD-008 etc. (, auf die hier in ihrer Gesamtheit als IS-95 Bezug genommen wird) werden durch die Telecommunication Industry Association (TIA) und andere bekannte Standardinstitutionen veröffentlicht.
  • Zellulare Telefonsysteme, die gemäß dem IS-95-Standard konfiguriert sind, verwenden CDMA-Signalverarbeitungstechniken. Ein beispielhaftes zellulares Telefonsystem ist, das im Wesentlichen gemäß dem IS-95-Standard konfiguriert ist, wird in dem US-Patent Nummer 5,103,459 beschrieben, welches dem Rechtsnachfolger der vorliegenden Erfindung zugewiesen ist. Das genannte Patent veranschaulicht Sende- oder Vorwärtsverbindungssignalverarbeitung in einer CDMA-Basisstation. In dem US-Patent Anmeldungsnummer 08/987,172, am 9.12.1997 erteilt, mit dem Titel „Multichannel Demodulator", das dem Rechtsnachfolger der vorliegenden Erfindung zugewiesen ist, wird beispielhaft Empfangs- oder Rückwärtsverbindungssignalverarbeitung in einer CDMA-Basisstation beschrieben.
  • Im Allgemeinen müssen in zellularen Telefonsystemen mobile Teilnehmereinheiten oder mobile Stationen durch eine Basisstation authentifiziert werden. Authentifizierung ist der Vorgang, bei dem Information zwischen einer mobilen Stationen und einer Basisstation zu dem Zweck der Bestätigung der Identität der mobilen Station ausgetauscht wird. Zellulare Kommunikationsstandards definieren typischerweise Prozeduren zur Authentifizierung von mobilen Stationen. Zellulare Standards, die von der TIA veröffentlicht wurden, sehen zwei Verfahren zur Authentifizierung von mobilen Stationen vor, das „unique challenge"- bzw. Einzelaufforderungs- oder „broadcast challenge"- bzw. Sammelaufforderungs-Verfahren. Die TIA-Standards, die die genannten Authentifizierungsverfahren verwenden, enthalten zum Beispiel IS-91 (ein AMPS-Standard), IS-54 (ein TDMA-Standard, der analoge Steuerungskanäle definiert), IS-136 (ein TDMA-Standard, der digitale Steuerungskanäle definiert) und IS-95.
  • Das Einzelaufforderungsverfahren ist dem Fachmann gut bekannt. In den Systemen, die diese Methode verwenden, sendet die zellulare Infrastruktur (Basisstation und/oder Basisstationskontroller) einen Aufforderungswert an eine mobile Station und die mobile Station sendet eine Antwort, die errechnet wird aus der Aufforderung, dem Identifizierer für mobile Stationen und den geheimen Daten, die nur der Basisstation und der mobilen Station bekannt sind (angenommen, die Basisstation ist eine rechtmäßige mobile Station). Wenn die Antwort korrekt ist, liefert die zellulare Infrastruktur Zugang zu Diensten wie Telefonverbindungen. Die Einzelaufforderungsmethode hat jedoch den Nachteil, dass die Zeit, die benötigt wird, um den Aufforderung-Antwort-Prozess auszuführen, relativ lang sein kann und den Aufbau des An rufs übermäßig hinauszögern kann. Aus diesem Grund wurde das Sammleraufforderungsverfahren in die zellularen TIA-Standards als ein Mittel integriert, um eine schnelle Authentifizierung von Anforderungen für den Zugang zu zellularen Diensten vorzusehen.
  • In dem Sammleraufforderungsverfahren der Authentifizierung wird ein Aufforderungswert (, auf den im Allgemeinen als "RAND" Bezug genommen wird) über einen zellularen Steuerungskanal an mobile Stationen ausgesendet. Die mobilen Stationen speichern diesen Aufforderungswert, wenn sie ihn empfangen und ihn nachfolgend verwenden, zusammen mit anderen gespeicherten Informationen, wenn sie den Zugang zu zellularen Diensten von der Basisstation anfragen.
  • Authentifizierungsprozeduren werden von zellularen Telefonsystemen in einer Vielzahl von Situationen verwendet. Basisstationen benötigen zum Beispiel oft die Authentifizierung von Registrierungen, Veranlassungen bzw. Originations und Terminierungen durch mobile Stationen. Registrierungen ist der Vorgang, bei dem eine mobile Station ihren Standort identifiziert und bestimmte Parameter an eine Basisstation sendet. Verfahren zur Veranlassung erfolgen, wenn ein Benutzer die mobile Station anweist, einen Anruf einzuleiten. Terminierungsverfahrenverfahren erfolgen, wenn eine andere Seite einen Anruf an eine mobile Station tätigt und die mobile Station auf eine Page-Nachricht antwortet, um einen Anruf anzunehmen.
  • In CDMA-Systemen, die nach IS-95 konfiguriert sind, wird eine mobile Station nur dann authentifiziert werden, wenn die Basisstation feststellt, dass sowohl sie als auch die mobile Station identische Sätze von „Shared Secret Data" (SSD) und einen identischen „Random Challenge Value" bzw. zufälligen Aufforderungswert (= RCV) besitzen. SSD ist ein 28-Bit-Wert, der sowohl der Basisstation als auch der mobilen Station bekannt ist, und wird von der mobilen Station in ihrem halb-permanenten Speicher abgelegt. Die ersten 64 Bit des SSD umfassen den numerischen Wert SSD_A und die verbleibenden 64 Bit umfassen den numerischen Wert SSD_B. SSD_A wird in dem Authentifi zierungsvorgang verwendet, während SSD_B in den Sprachdatenschutz- und Nachrichtenverschlüsselungsvorgängen verwendet werden. Der RCV ist eine 32-Bit-Zahl, die dem Aufforderungswert entspricht, der in dem Sammleraufforderungsverfahren der beschriebenen Authentifizierung verwendet wird und im Folgenden genauer beschrieben wird. Die 8 höchstwertigen Bits des RCV werden manchmal bezeichnet es als RANDC, während die 24 niedrigstwertigen Bits des RCV manchmal bezeichnet werden als RANDL.
  • In dem Kontext einer mobilen Stationsveranlassung in einem zellularen CDMA-Telefonsystem, das nach dem IS-95-Standard konfiguriert ist, wäre folgendes eine typische Mobilstationsauthentifizierung. Ein Benutzer weist die mobile Station an, einen Telefonanruf zu tätigen. Die mobile Station bestimmt, ob der gespeicherte Wert des Authentifizierungsinformationselements (AUTH) auf "01" gesetzt ist, was anzeigt, dass der Standardauthentifizierungsmodus verwendet werden sollte. Wenn dieser auf "01" gesetzt ist, errechnet die mobile Station den Wert des Authentifizierungssignaturinformationselements (AUTH_Signature) in Übereinstimmung mit bestimmten Authentifizierungsalgorithmen, die beschrieben werden in "Common Cryptographic Algorithms", einer Veröffentlichung, die über die Telecommunications Industry Association verfügbar ist, aber einer beschränkten Verbreitung unterworfen ist. Die AUTH_Signature-Eingangsparameter und -Werte, die von der mobilen Station zur Veranlassungsauthentifizierung geliefert werden, wären wie folgend:
    Figure 00040001
    , wobei RANDs = Stored Random Challenge Memory, der gespeicherte Wert des 32 Bit-Random Challenge Memory (RAND); ESNp = Electronic Serial Number bzw. elektronische Seriennummer, ein 32 Bit-Wert, der die mobile Stationen eindeutig identifiziert, die in dem permanenten Speicher der mobi len Station abgespeichert ist und DIGITS = die kodierten letzten sechs Ziffern des CHARi-Feldes in der Veranlassungsnachricht der mobilen Station.
  • Sobald die mobile Station AUTH_Signature berechnet hat, wird das AUTHR-Feld der Veranlassungsnachricht der mobilen Station auf den Wert der AUTH_Signature gesetzt, das RANDC-Feld wird auf die acht höchstwertigen Bits von RANDs gesetzt und die Veranlassungsnachricht wird an die Basisstation gesendet. Die Basisstation errechnet dann den Wert von AUTHR auf dieselbe Weise wie die mobile Station, indem sie seinen intern gespeicherten Wert von SSD_A verwendet, diesen errechneten Wert mit dem Wert eine AUTHR, der von der mobilen Station empfangen wurde, vergleicht und den empfangenen Wert von RANDC mit den acht höchstwertigen Bits seines intern gespeicherten Wertes von RANDC vergleicht. Wenn die Vergleiche, die bei der Basisstation ausgeführt wurden, erfolgreich sind, wird die Basisstation Prozeduren initiieren, die verwendet wurden, um die mobile Station verschiedenen Verkehrskanälen zuzuweisen. Wenn einer der Vergleiche fehlschlägt, kann die Basisstation ihren Dienst verweigern, die eindeutige Aufforderungs-Antwortprozedur bzw. Unique-Challenge-Response-Prozedur einleiten oder die SSD-Update-Prozedur beginnen.
  • In typischen zellularen Telefonsystemen wird das verfügbare Frequenzspektrum in eine Anzahl von Kanälen aufgeteilt, während jeder von ihnen für unterschiedliche Zwecke verwendet wird. In CDMA-Systemen, konfiguriert nach IS-95, ist einer dieser Kanäle der Paging-Kanal. Der Paging-Kanal ist ein codiertes, verschachteltes, gespreiztes und moduliertes Spreizspektrumssignal, das Basisstationen verwenden, um System-Overheadinformation und mobilstationsspezifische Nachrichten an mobile Stationen zu senden, die keinem Verkehrskanal zugewiesen wurden. Eine der Nachrichten, die über den Paging-Kanal gesendet und von den mobilen Stationen überwacht werden, ist die Zugriffsparameternachricht bzw. Access Parameters Message. Die Zugriffsparameternachricht ist eine Nachricht mit variabler Länge, die 27 Felder besitzt, einschließlich dem Authentifikationsmodus bzw. Authentication Mode (AUTH) und den RAND-Feldern. Das AUTH-Feld ist ein 2-Bit-Feld, des sen Wert von einer Basisstation auf "01" gesetzt wird, wenn mobile Stationen Standardauthentifikationsdaten in Zugriffskanalnachrichten einbeziehen sollen, die an diese Basisstation gesendet wurden. Falls mobile Stationen Standardauthentifikationsdaten in Zugriffskanalnachrichten nicht einbeziehen sollten, setzt die Basisstation den Wert des AUTH-Feldes auf "00". Das RANDL-Feld ist ein 0-oder 32-Bit-Feld, dessen Wert auf den 32 Bit-RCV gesetzt wird, den mobile Stationen in den Authentifikationsprozeduren verwenden sollen, wenn das AUTH-Feld auf "01" gesetzt wurde. Basisstationen setzen den Wert von RAND in der CDMA-Zugriffsparameternachricht gleich der Verkettung der 16-Bit-RAND1_A- und RAND1_B-Overhead-Informationswörter, die periodisch an die Systemparameter-Overhead-Nachrichten angehängt werden, die von Basisstationen an die mobilen Stationen auf einem analogen Vorwärtssteuerungskanal gesendet werden.
  • In CDMA-Systemen ist der RCV als eine 32-Bit-Zufallszahl vorgesehen, so dass sich diese in etwa 8000 Jahren nicht wiederholen wird. Diese Eigenschaft bezüglich einer Zeitspanne von 8000 Jahren ohne Wiederholung ist ein wichtiges Sicherheitsmerkmal, was es einem Angreifer im Wesentlichen unmöglich macht, vorauszusagen, was der RCV zu irgendeinem Zeitpunkt in der Zukunft sein wird. Aus mehreren Gründen wurde herausgefunden, dass es von Vorteil ist, den RCV, den man in dem Authentifikationsvorgang verwendet, häufig zu ändern, möglicherweise jede Minute. Den RCV jedoch jede Minute zu ändern, führt zu dem Problem, dass duplizierte Werte des RCV nach etwa 216 Minuten auftreten (etwa 45 Tage), wenn der RCV tatsächlich zufällig erzeugt wird. Es wurde ebenfalls herausgefunden, dass es zu bestimmten Vorteilen kommt, wenn der RCV über zellulare Systeme hinweg synchronisiert wird. Die Mitteilung des RCV über das gesamte Netzwerk von zellularen Systemen jedoch, was nötig wäre, wenn der synchronisierte RCV tatsächlich zufällig wäre, wäre schwierig und teuer.
  • Eine Kombination von auf linearen, rückgekoppelten Schieberegistern maximaler Länge beziehungsweise Maximal-Length Linear Feedback Shift Registers (LFSRs) basierenden Zählern in Basisstationen könnte verwendet werden, um das 32-Bit RCV zu erzeugen. Die Kombination von LFSR maximaler Länge basierten Zählern wird keinen Wiederholungs-RCV für etwa 232 – 224 Minuten (etwa 8000 Jahre) erzeugen, und wird nie einen RCV mit einem 0-Führungsoktett erzeugen. Es ist wichtig, ein nicht 0-Führungsoktett zu haben, weil nur die acht höchstwertigen Bits von RANDs in einer Anzahl von Authentifikationsoperationen verwendet werden. Das Synchronisieren des RCV über zellulare Systeme hinweg ist auch einfach und billig mit einem LFSR-basierten Zähler. Jede Basisstation in dem System könnte den richtigen RCV für jeden bestimmten Zeitpunkt mit einer gegebenen Startposition berechnen, die Anzahl von Minuten, die vergangen sind seit dieser Startposition und einer globalen Zeitreferenz. Wie in dem US-Patent 6,285,873 umfassender diskutiert wird, wird vorzugsweise die GPS-Systemzeit als globale Zeitreferenz verwendet.
  • Es gibt jedoch auch Hindernisse bei der Verwendung eines LFSR-basierten Zählers, um das RCV zu erzeugen. Im Besonderen resultiert die Verwendung eines LFSR-basierten Zählers in dem Verlust der Unvorhersagbarkeit des RCV. Durch das Beobachten der RCVs, die durch eine Basisstation mit einem LFSR-basierten Zähler erzeugt und an die mobilen Stationen in der Zugriffsparameternachricht gesendet werden, für etwa eine Stunde, könnte ein Angreifer die Formel ableiten und verstehen, die von dem LFSR-basierten Zähler verwendet wird. Nach der Ableitung der Formel könnte der Angreifer dann den RCV für jeden gegebenen Zeitpunkt in der Zukunft vorhersagen.
  • US 5825889 A , US 5673319 A und US 5450395 A beinhalten mehrere Beispiele von sicheren Kommunikationen. Das erste beinhaltet ein Verfahren zur Chiffrierung von Verkehr zwischen zellularen Telefonen über einen Satellit, der einen Duplex-Chiffrierungsalgorithmus verwendet. Das zweite Beispiel verwendet ein Chiffrierungsverfahren, dass eine Textzeichenfolge verschlüsselt, wobei die Textnachricht zweimal mit unterschiedlichen Schlüsseln verschlüsselt wird, einmal, um einen Nachrichtauthentifikationscode zu erzeugen und noch einmal, um eine verschlüsselte Zeichenfolge zu erzeugen, wobei beide Verschlüsselungen kombiniert werden, um den Chiffretext zu erschaffen. Schließlich wird ein verbessertes System für Multi-Benutzer-Kommunikation in einem CDMA-System vorgesehen, wobei pseudo-zufällige Erzeuger für Rauschen, Codes maximaler Länge, die unter den Benutzern in der Zeit unterteilt sind und GPS-Satelliten, die eine Zeitreferenz für alle Benutzer vorsehen, verwendet werden.
  • Es besteht jedoch ein Bedarf nach einem sicheren Verfahren zur Erzeugung und Übermittlung des RCV an mobile Stationen, der die Unvorhersagbarkeit einer wahrhaft zufälligen Zahl nicht verliert, aber einfach und wenig kostenintensiv über zellulare Telefonsysteme hinweg synchronisiert werden kann.
  • Zusammenfassung
  • Die vorliegende Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung zur Erzeugung und Kommunikation zufälliger Aufforderungswerte (RCV) an mobile Stationen, die die Unvorhersagbarkeit einer tatsächlichen Zufallszahl nicht verlieren, aber einfach und wenig kostenintensiv über zellulare Telefonsysteme hinweg synchronisiert werden können. Die Erfindung umfasst ein Verfahren gemäß Anspruch 1 und eine Vorrichtung gemäß den unabhängigen Ansprüchen 11, 12 oder 14 zur Aktualisierung einer binären Zahl, die in zellularen Telefonsystem-Authentifikationsprozeduren verwendet wird, die einen ersten Algorithmus auf eine Vielzahl von höchstwertigen Bits einer ersten binären Zahl anwendet, um eine zweite binäre Zahl zu erhalten; operiert auf einer Vielzahl von von niedrigstwertigen Bits der ersten binären Zahl mit einem zweiten Algorithmus, um eine dritte binäre Zahl zu erhalten und wendet eine Blockchiffre auf die Verkettung der ersten und dritten Zahlen an, um die aktualisierte binäre Zahl erhalten. Wenn die höchstwertigen Bits der aktualisierten binären Zahl eine Zahl umfassen, die nur aus Nullen besteht, werden sie ersetzt durch die höchstwertigen Bits der Verkettung der zweiten und dritten Zahlen. In einem speziellen Ausführungsbeispiel der Erfindung umfasst die Blockchiffre eine modifizierte Version der SKIPJACK-Blockchiffre-Verschlüsselungsfunktion.
  • Kurze Beschreibung der Zeichnungen
  • Die Merkmale, Ziele und Vorteile der vorliegenden Erfindung werden aus der folgenden detaillierten Beschreibung in Verbindung mit den Zeichnungen klarer hervorgehen, wobei gleiche Bezugszeichen Entsprechendes durchgängig identifizieren, wobei die Figuren folgendes zeigen:
  • 1 ist ein Diagramm eines zellularen Telefonsystems.
  • 2 ist ein Blockdiagramm eines Galois-Schieberegisters.
  • 3 ist ein Blockdiagramm von zwei Galois-Schieberegistern.
  • 4 zeigt den Berechnungspfad der modifizierten SKIPJACK-Blockchiffre.
  • 5 zeigt die F-Tabelle für die SKIPJACK-Blockchiffre.
  • Detaillierte Beschreibung
  • Gemäß der vorliegenden Erfindung wird das Problem der Erzeugung und Übermittlung eines RCV an eine mobile Station, die die Unvorhersagbarkeit einer wahren Zufallszahl nicht verliert aber einfach und wenig kostenintensiv über zellulare Telefonsysteme hinweg synchronisiert werden kann, gelöst durch die Verwendung von LFSRs und einer Blockchiffre- bzw. Block-Cipher-Verschlüsselungsfunktion. Im besonderen wird eine Blockchiffre-Verschlüsselungsfunktion, deren Schlüssel relativ sicher in den zellularen Telefonbasisstationen aufbewahrt wird, verwendet, um den RCV zu verschlüsseln, der durch einen LFSR-basierten Zähler, eine Kombination von LFSR-basierten Zählern oder sogar einen einfachen Zähler erzeugt wurde, bevor der RCV an eine mobile Station gesendet wird. Weil Blockchiffre- Verschlüsselungsfunktionen Eins-zu-eins-Funktionen sind, wird es für jede bestimmte Eingabe auch eine bestimmte Ausgabe der Blockchiffre-Verschlüsselungsfunktion geben, wobei die Eigenschaft erhalten bleibt, dass sich die RCVs, die mit einem LFSR-basierten Zähler erzeugt wurden, in 8000 Jahren nicht wiederholen.
  • Weiterhin wird ein Angreifer ohne Zugang zu dem Blockchiffre-Verschlüsselungsschlüssel nicht in der Lage sein, den RCV zu einen beliebigen bestimmten Zeitpunkt vorherzusagen, wobei die Fähigkeit, einfach und wenig kostenintensiv den RCV über zellulare Telefonsysteme hinweg zu synchronisieren, erhalten bleibt. Jede beliebige Blockchiffre-Verschlüsselungsfunktion, die auf einem 32-Bit-Block operiert und ausreichend sicher ist, kann verwendet werden. In einem bevorzugten Ausführungsbeispiel der Erfindung wird eine modifizierte Version der SKIPJACK-Blockchiffre als Blockchiffre-Verschlüsselungsfunktion verwendet.
  • Bei einigen Anwendungen zellularer Telefone ist es unakzeptabel, wenn das erste Byte eines Informationselementes einen Wert von null besitzt. Die Verwendung einer Blockchiffre-Verschlüsselungsfunktion, um den RCV zu verschlüsseln, der erzeugt wurde durch eine Basisstation mit einem LFSR-basierten oder einfachen Zähler, wird jedoch in dem verschlüsselten RCV resultieren, der ein erstes Byte mit einem Wert von null besitzt mit einer Wahrscheinlichkeit von etwa 2–8, weil die Ausgabe der Verschlüsselungsfunktion wirklich zufällig erscheinen wird. Deshalb wird in einem anderen Ausführungsbeispiel der vorliegenden Erfindung das erste Byte der verschlüsselten RCV-Ausgabe ersetzt durch das erste Byte der unverschlüsselten RCV-Eingabe, immer wenn das erste Byte der Ausgabe einen Wert von null besitzt. Dies beseitigt das Problem eines verschlüsselten RCV, dessen erstes Byte einen Wert von Null hat. Auch wenn man das erste Byte der verschlüsselten RCV-Ausgabe durch das erste Byte der unverschlüsselten RCV-Eingabe ersetzt, wird dies notwendigerweise bedeuten, dass die verschlüsselte RCV-Ausgabe eine andere verschlüsselte RCV-Ausgabe von irgend einem Zeitpunkt dupliziert, wobei sie dies auf unvorhersehbare Weise tun wird.
  • Für den Fachmann ist es verständlich, dass zahlreiche Verfahren und Vorrichtungen zum Erzeugen und Senden von Zahlen, die dazu bestimmt sind, in Merkmalen der vorliegenden Erfindung zur Umsetzung der Authentifikation von mobilen Stationen verwendet zu werden, sich in jedem beliebigen der zahlreichen zellularen Telefonsysteme befinden können. Solche zellulare Systeme beinhalten übrigens beispielhaft AMPS (analog), IS-54 (North American TDMA), GSM (weltweit TDMA) und IS-95 (North American CDMA). In einem bevorzugten Ausführungsbeispiel ist das zellulare System ein zellulares Spreizspektrum-CDMA-Telefonsystem.
  • In Bezug auf 1 wird ein Blockdiagramm eines typischen zellularen CDMA-Telefonsystems gezeigt. Solche Systeme beinhalten im Allgemeinen eine Vielzahl von mobilen Teilnehmereinheiten 10, eine Vielzahl von Basisstationen 12, einen Basisstationskontroller (BSC) 14 und eine Mobilvermittlungsstelle (MSC) 16. Das MSC 16 ist so konfiguriert, dass es eine Schnittstelle bildet mit einem konventionellen öffentlichen Schalttelefonnetzwerk (PSTN) 18. Das MSC 16 ist auch so konfiguriert, dass es eine Schnittstelle bildet mit den BSC 14. Das BSC 14 ist gekoppelt an jede Basisstation 12. Die Basisstationen 12 können auch bekannt sein als Basisstation-Tranceiver-Subsysteme (BTSs) 12. Alternativ kann "Basisstation" auch kollektiv als BSC 14 oder als eine oder mehrere BTSs 12 bezeichnet werden, wobei BTSs 12 auch als "Zellstandorte" 12 bezeichnet werden können. (Alternativ können Sektoren eines gegebenen BTS 12 bezeichnet werden als Zellstandorte.) Die mobilen Teilnehmereinheiten 10 sind typischerweise zellulare Telefone 10 und das zellulare Telefonsystem ist zum Beispiel ein Spreizspektrum-CDMA-System, das gemäß dem IS-95-Standard konfiguriert ist.
  • Während der typischen Arbeitsweise des zellularen Telefonsystems empfangen die Basisstationen 12 Sätze von Rückwärtsverbindungssignalen von Sätzen von mobilen Einheiten 10. Die mobilen Einheiten 10 führen Telefonanrufe oder andere Kommunikationen durch. Jedes Rückwärtsverbindungssignal, dass von einer gegebenen Basisstation 12 empfangen wird, wird innerhalb dieser Basisstation 12 verarbeitet. Die daraus resultierenden Daten werden an den BSC 14 weitergegeben. Der BSC 14 sieht Anrufsressourcenzuweisung und Mobilitätsmanagementfunktionalität vor, einschließlich der Durchführung von Soft Handoffs zwischen Basisstationen 12. Das BSC 14 leidet die empfangenen Daten an das MSC 16 weiter, das zusätzliche Routingdienste als Schnittstelle mit dem PSTN 18 vorsieht. In ähnlicher Weise arbeitet das PSTN 18 als Schnittstelle zu dem MSC 16 und das MSC 16 arbeitet als Schnittstelle mit dem BSC 14, das wiederum die Sätze von Vorwärtsverbindungssignalen der Basisstationen 12 an Sätze von mobilen Einheiten 10 leitet. In dem CDMA-System von 1 beinhaltet jede Basisstation 12 mindestens einen Sektor (nicht gezeigt), wobei jeder Sektor eine Antenne umfasst, die in eine bestimmte Richtung radial von der Basisstation 12 weg zeigt. Wünschenswerterweise beinhaltet jede Basisstation 12 drei Sektoren, wobei die Achse von jeder Sektorenantenne um circa 120° abweicht.
  • Vorteilhafterweise können LFSRs oder Softwaresimulationen von ihnen von den Basisstationen 12 verwendet werden, um die RCVs zu erzeugen, die schließlich an die mobilen Stationen gesendet werden für die Verwendung in Authentifikationsprozeduren von mobilen Stationen. In CDMA-Systemen, die nach IS-95 konfiguriert sind, werden die RCVs an die mobilen Stationen in dem RAND-Feld der Zugriffsparameternachricht gesendet. In einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung sind die LFSRs Schieberegister maximaler Länge und noch genauer Galois-Schieberegister. Es können jedoch andere Implementierungen von Schieberegister maximaler Länge verwendet werden. Wie nach dem Stand der Technik bekannt wäre, sind Schieberegister maximaler Länge LFSRs, die konfiguriert wurden, um zu gewährleisten, dass ihre charakteristischen Polynome gleichermaßen irreduzibel und primitiv sind, was in einer Folge resultiert, die eine Periode (P) = 2r – 1 besitzt, wobei r die Anzahl der Bit-Positionen in dem LFSR ist.
  • Bezugnehmend auf 2 wird ein 8-Bit-Galois-Schieberegister 20 gezeigt, das Rückkopplungs-„Taps" bzw. Abgriffe nach den Bitpositionen 0, 4 und 5 besitzt. Für den Fachmann ist verständlich, dass ein Galois- Schieberegister jedes Register-Bit eine Position nach links mit jedem Taktpuls verschiebt und bestimmte Register-Bits werden in einer Exklusiv- oder (XOR) Beziehung mit einem Rückkopplungsbit logisch kombiniert. Zum Beispiel empfängt die Bit-Position 1 bei jeder Verschiebung nach links das XOR-Ergebnis von Bit 7 und Bit 0. In ähnlicher Weise empfängt die Bit-Position 5 das XOR-Ergebnis von Bit 7 und Bit 5.
  • Bezugnehmend auf 3 sind ein bevorzugtes Verfahren zur Erzeugung der Zahl gezeigt, das sich nach der vorliegenden Erfindung richtet. Das Verfahren beruht auf erste und zweite Galois-Schieberegister 30, 32. Ein einzelnes Update-Taktsignal 34 verursacht ein Update der beiden Galois-Schieberegister 30, 32. Das erste Register 30 ist ein 8-Bit-Galois-Schieberegister 30, das verwendet wird, die acht höchstwertigen Bits des RCV zu erzeugen. Das zweite Schieberegister 32 ist ein 24-Bit-Galois-Schieberegister 32, das verwendet wird, um die verbleibenden Bits des 32-Bit RCV zu erzeugen. Sowohl das erste als auch das zweite Schieberegister 30, 32 ist an das Taktsignal 34 gekoppelt, sie sind aber auf andere Weise nicht verbunden.
  • Weiterhin gemäß 3 haben das erste und das zweite Schieberegister 30, 32 Rückkopplungs-„Taps" oder elektrische Verbindungen, angewandt auf bestimmte Bit-Positionen. Für den Fachmann wäre verständlich, dass jedes beliebige primitive Polynom achter Ordnung und vierundzwanzigster Ordnung verwendet werden kann, um jeweils die Rückkopplungs-„Taps" des ersten und zweiten Schieberegisters 30, 32 zu bestimmen. Wie in 3 gezeigt haben das erste und zweite Schieberegister jeweils das folgende primitive Polynom x8 + x6 + x5 + x + 1 und x24 + x4 + x3 + x + 1. Vorausgesetzt jedes Schieberegister 30, 32 wird mit einem Wert, der ungleich null ist, initialisiert, werden die Folgen, die jedes Schieberegister 30, 32 erzeugt, auch immer ungleich Null sein. Somit werden die acht höchstwertigen Bits (das heißt jede Zahl, die von Schieberegister 30 erzeugt wird) jeder Zahl in der Folge ungleich Null sein. Diese Anordnung des ersten und zweiten Schieberegisters 30, 32 resultiert jedoch nicht in der 32-Bit-Ausgabefolge, die das maximale P von 232 – 1 besitzt, was mit einem einzelnen LFSR maximaler Länge mit 32 Bit-Positionen möglich wäre, weil das erste und zweite Schieberegister 30, 32 Folgenlängen herstellen, die teilerfremd sind. Das erste Schieberegister 30 erzeugt eine Folge mit einem P von 28 – 1 = 255 = 3·5·17, während das zweite Schieberegister 32 eine Folge erzeugt mit einem P von 224 – 1 = 16777215 = 3·3·5·7·13·17·241. Somit ist das P der Folge, die durch das erste und zweite Schieberegister 30, 32 erzeugt wird, 65793, nur geringfügig größer als das P eines einzelnen 16-Bit-LFSR maximaler Länge. Weil jedoch die Folge, die durch einen LFSR maximaler Länge erzeugt wird, keinen Wert besitzt, der nur aus Nullen besteht und die Voraussetzung, keinen Wert zu haben, der nur aus Nullen besteht, wichtig ist hinsichtlich der acht höchstwertigen Bits nur des RCV, könnte das P der Folge, die durch das erste und zweite Schieberegister 30, 32 erzeugt wird, erweitert werden durch Einfügen eines Wertes, der nur aus Nullen besteht, an jedem Punkt in der Folge, die durch den 24-Bit-Schieberegister 32 erzeugt wird. Dadurch wird das P des zweiten Schieberegisters 32 erhöht von 16777215 auf 16777216, was eine Potenz von zwei ist und ein Teiler von dem P des ersten Schieberegisters 30 (255) ist. Mit dem Wert, der nur aus Nullen besteht, bei irgendeinem Punkt in der Folge, die durch das zweite Schieberegister 32 erzeugt wurde, wird das P der 32-Bit-Folge, die erzeugt wurde durch das erste und zweite Schieberegister 30, 32, die Folge maximaler Länge, wo die acht höchstwertigen Bits verschieden von null sein müssen oder einer Länge haben müssen von 232 – 224.
  • Nachdem die Zahl, die wie oben beschrieben bearbeitet werden soll, erzeugt wurde, wird eine Blockchiffre-Verschlüsselungsfunktionen (eine "Blockchiffre") auf die Zahl angewandt. Eine Blockchiffre ist eine Funktion E, die n-Bit Textblöcke P auf n-Bit Chiffretextblöcke C abbildet, wobei n die Länge des Blocks ist. Sie kann betrachtet werden als eine einfache Ersetzungschiffre mit einer großen Zeichengröße. Die Blockchiffre ist parametrisiert mit einem k-Bit Schlüssel K, der Werte von einem Untersatz Q (typischerweise bezeichnet als Schlüsselraum) von dem Satz aller k-Bit Vektoren Vk annimmt. Für einen n-Bit P-Schlüssel, einen n-Bit C-Schlüssel oder einen festen Schlüssel K ist die Blockchiffre eine Bijektion, die eine Permutation der n-Bit Vektoren definiert. Potentiell definiert jeder Schlüssel eine andere Bijektion. Im allgemeinen nimmt man an, dass der Schlüssel zufällig gewählt wird. Mit anderen Worten ist eine n-Bit Blockchiffre eine Funktion E: Vn × Q → Vn', so dass für jeden Schlüssel K ⊂ Q, E(P, K) eine umkehrbare Abbildung (die Verschlüsselungsfunktion für K) von Vn nach Vn', geschrieben EK(P) ist. Die Umkehrabbildung ist die Entschlüsselungsfunktion, bezeichnet als DK(C) oder EK –1. C = EK(P) ist der Chiffretext, der aus der Verschlüsselung des Textes (Plaintext) P unter dem Schlüssel K resultiert.
  • Es gibt eine Anzahl von bekannten Blockchiffren, die entworfen wurden, um auf Datenblöcke angewandt zu werden, die 64 (oder mehr) Bits besitzen. Die am besten bekannte dieser Blockchiffren ist der Data Encryption Standard (DES), definiert durch den amerikanischen Standard FIPS 46-2. Der Codebuch-Verschlüsselungs-/Entschlüsselungs-Algorithmus (SKIPJACK) ist eine andere Blockchiffre mit symmetrischem Schlüssel, der entworfen wurde, um mit einer Blockgröße von 64 Bits zu arbeiten und wird definiert durch den amerikanischen Standard FIPS 185. FIPS 185 kann bezogen werden bei http://www.itl.nist.gov/fipspubs/fip185.htm und die Spezifikation für SKIPJACK kann gesichtet werden bei http://csrc.nidt.qov/encryption/skipjack-1.pdf und http://csrc.nidt.gov/encryption/skipjack-2.pdf, wobei beide hier vollständig unter Bezug aufgenommen werden. Die SKIPJACK-Blockchiffre, wie die DES, ist eine Feistel-Chiffre, die Textblöcke mit n = 64 Bits verarbeitet und 64-Bit-Chiffretextblöcke erzeugt. Die effektive Größe des geheimen Schlüssels K ist 80 Bits und die 280 Schlüssel implementieren maximal 280 der 264! möglichen Bijektionen auf die 64-Bit-Textblöcke.
  • SKIPJACK kann jedoch verändert werden, um mit 32-Bit-Blöcken zu arbeiten, wobei es dieselbe schlüsselabhängige Permutation G und F-Table als die volle SKIPJACK Blockchiffre und die Feistel-Struktur der DES-Blockchiffre anstatt der 4-Komponenten-Struktur der unveränderten SKIPJACK-Blockchiffre verwendet. Der Berechnungspfad des veränderten SKIPJACK wird in 4 gezeigt. Zuerst wird der 32-Bit-Eingabeblock 401 auf gespalten in zwei gleiche Hälften L0 402 und R0 403, wobei jede 16 Bits besitzt. Nachdem der 32-Bit-Eingabeblock in zwei Hälften aufgespalten wurde, geht nun die Verschlüsselung in 24 Runden vor sich. In der ersten oder nullten Runde 404 wird die schlüsselabhängige Permutation G 405 auf R0 403 angewandt, wobei die daraus resultierende Ausgabe dann kombiniert wird mit der Kundenzahl (in diesem Fall null) und L0 402 in einer XOR-Operation 406. Die beiden Hälften werden dann vertauscht 407, was die erste Runde beendet und dieselbe Operation wird weitere 23 Runden wiederholt. In Anschluss an die vierundzwanzigste und letzte Runde werden die Hälften wieder vertauscht 408. Die Ausgabe 409 ist der RCV, der in den Authentifikationsprozeduren verwendet wird, die oben beschrieben wurden, es sei denn die höchstwertigen Bits der Ausgabe 409 umfassen einen Wert, die nur aus Nullen besteht. In diesem Fall werden in einem bevorzugten Ausführungsbeispiel der Erfindung die höchstwertigen Bits der Eingabe 401 ersetzt durch die höchstwertigen Bits der Ausgabe 409, bevor die Ausgabe 409 als RCV verwendet wird.
  • Die schlüsselabhängige Permutation G 405 ist eine 4-Runden-Feistel-Struktur, die 16-Bit-Werte (das heißt Wörter) auf V16, dem Satz aller 16-Bit-Werte, permutiert. Die Rundenfunktion ist eine fixierte Byte-Ersetzungstabelle (das heißt eine Permutation auf V8, dem Satz aller 8-Bit-Werte), genannt die F-Tabelle und dargestellt in 5 als 501. Jeder Eintrag in der Tabelle ist gegeben in hexadezimaler Schreibweise. Die vier Bits hoher Ordnung der Eingabe kennzeichnen die Zeile 502 und die vier Bits niedriger Ordnung der Eingabe kennzeichnen die Spalte 503. Eine Eingabe von 7a wurde zum Beispiel permutieren zu d6 504. Jede Runde von G 405 fünf beinhaltet auch ein Byte von Schlüssel K. Die Pro-Runden-Funktionen von G 405 können charakterisiert werden als: Gk .(w = g1 || g2) = g5 || g6,wobei gi = F(gi-1 ⊕ cv4k+i-3) ⊕ gi-2, k ist die Schrittzahl, F ist die SKIPJACK F-Tabelle 501 und vc4k+i-3 ist das (4k + i – 3)-te Byte in der Einteilung von Schlüssel K. Somit ist g3 = F(g2 ⊕ cv4k) ⊕ g1 g4 = F(g3 ⊕ cv4k+1) ⊕ g2 g5 = F(g4 ⊕ cv4k+2) ⊕ g3 g6 = F(g5 ⊕ cv4k+2) ⊕ g4.
  • Die Einteilung von Schlüssel K ist 10 Byte lang (d.h. 80 Bits), gekennzeichnet mit 0 bis 9 und wird in ihrer natürlichen Reihenfolge verwendet. Die oben erwähnten Einteilungsindexierungen werden deshalb als mod 10 interpretiert.
  • Eine Pseudo-Code-Version des modifizierten SKIPJACK-Blockchiffreverschlüsselungsvorgangs wird unten in Tabelle 1 gezeigt.
  • Table 1
    Figure 00180001
  • Figure 00190001
  • Figure 00200001
  • Figure 00210001
  • Die Erzeugung eines RCV wie oben beschrieben kann mit jedem beliebigen konventionellen Quellcode implementiert werden, zum Beispiel C, C++, wie es für den Fachmann leicht einsichtig ist. Zellulare Standorte beinhalten typischerweise integrierte Schaltkreise, die vorteilhafterweise Application Specific Integrated Circuits (ASICs) sind mit Mikroprozessoren, die Software betreiben. Deshalb ist es zu erkennen, dass die Erfindung einfach genug ist, um an jedem beliebigen Ort in der Infrastruktur eines zellularen Systems ausgeführt zu werden. In einem speziellen Ausführungsbeispiel kann die Erfindung in Zellstandorten (nicht gezeigt) des zellularen CDMA-Systems von 1 implementiert werden, wobei die Notwendigkeit beseitigt wird, neue RCVs zentral zu erzeugen und sie an Zellstandorte über das System hinweg zur Aussendung zu verteilen.
  • Der Fachmann wird erkennen, dass jede Form von pseudo-zufälligem Generator von Rauschen in den hier beschriebenen Ausführungsbeispielen ersetzt werden kann durch Schieberegister maximaler Länge. Während die hier beschriebenen Ausführungsbeispiele sich auf zellulare Telefonsysteme beziehen, einschließlich CDMA-Systemen, in denen die acht höchstwertigen Bits des RCV, RANDC beschränkt sind, nicht Null sein zu dürfen, sollte weiterhin verstanden werden, dass RANDC nicht ungleich null sein muss, es sei denn das spezielle System legt es so fest. Dementsprechend könnten, abhängig von den Beschränkungen des Systems, entweder RANDC oder RANDL oder beide einen Wert besitzen, der nur aus Nullen besteht und der eingefügt wird, um die Periode einer oder beider Folgen zu erweitern. Weiterhin könnte der Sendeaufforderungswert des zellularen Systems der hier beschriebenen Ausführungsbeispiele genauso gut eine beliebige binäre Zahl sein, die periodische Updates erfordert, so dass die Korrelation zwischen aufeinander folgenden Updates minimiert wird und die Anzahl von Updates, vor denen ein Wiederholungswert auftritt, maximiert wird.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung wurden somit gezeigt und beschrieben. Für den Fachmann wird jedoch offensichtlich sein, dass zahlreiche Änderungen an den hier enthaltenen Ausführungsbei spielen vorgenommen werden können, ohne sich von dem Schutzumfang der Erfindung zu entfernen. Somit soll die vorliegende Erfindung nicht eingeschränkt werden, mit Ausnahme der Übereinstimmung mit den folgenden Ansprüchen.

Claims (23)

  1. Verfahren zum Aktualisieren einer Binärzahl, die in Authentisierungsverfahren eines Zelltelefonsystems zu Verwenden ist, wobei die folgenden Schritte vorgesehen sind: (A) Anwenden eines ersten Algorithmus auf ein Vielzahl von höchstwertigen Bits einer ersten Binärzahl, um eine zweite Binärzahl zu erhalten; (B) Verarbeiten einer Vielzahl von niedrigstwertigen Bits, der erwähnten ersten Binärzahl mit einem zweiten Algorithmus um eine dritte Binärzahl zu erhalten; und (C) Anwenden einer Blockchiffre (Block Cipher) auf die Verkettung der zweiten und dritten Binärzahl, um eine aktualisierte Binärzahl zu erhalten, wobei der Schritt (C) ferner die folgenden Schritte aufweist: (1) Anwenden einer Blockchiffre (bzw. eines Blockschlüssels) auf die Verkettung um eine verschlüsselte Binärzahl zu erhalten; (2) Bestimmen, ob die höchstwertigen Bits der verschlüsselten Binärzahl einen Wert von Nur-Nullen (all-zeroes value) besitzt; und (3) Ersetzen, ansprechend auf den erwähnten Nur-Nullen-Wert, der erwähnten höchstwertigen Bits der verschlüsselten Binärzahl mit den erwähnten höchstwertigen Bits, der erwähnten Verkettung, um die erwähnte aktualisierte Binärzahl zu erhalten.
  2. Verfahren nach Anspruch 1, wobei der Schritt (A) die Anwendung eines ersten, eine maximale Länge besitzenden Schieberegisteralgorithmus (20, 30) aufweist.
  3. Verfahren nach Anspruch 1, wobei der Schritt (A), die Anwendung eines ersten Pseudo-Zufalls-Rauscherzeugungs-Algorithmus (pseudorandom noise generation algorithm) aufweist.
  4. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Schritt (B) die Anwendung eines zweiten maximale Länge besitzenden Pseudo-Zufalls-Rausch-Erzeugungs-Algorithmus (32) auf die erwähnte Vielzahl von niedrigstwertigen Bits aufweist.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Schritt (B) die Anwendung eines zweiten Pseudo-Zufalls-Rausch-Erzeugungs-Algorithmus auf die erwähnte Vielzahl von niedrigstwertigen Bits aufweist.
  6. Verfahren nach einem der Ansprüche 1 bis 3, wobei der Schritt (B) die Verarbeitung der erwähnten Vielzahl von niedrigstwertigen Bits mit einem zweiten Algorithmus aufweist, der einen Nur-Nullen-Wert für die erwähnte Vielzahl von niedrigstwertigen Bits einsetzt und zwar einmal während der Zeitperiode, die notwendig ist für die Sequenz von Aktualisierungen um einen Wiederholungswert (repeat value) für die erwähnte Vielzahl von niedrigstwertigen Bits zu erzeugen.
  7. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Ausgangsgröße des ersten Algorithmus niemals ein Nur-Nullen-Wert ist.
  8. Verfahren nach einem vorhergehenden Anspruch, wobei die erwähnten höchstwertigten Bits der erwähnten ersten Binärzahl, die ersten acht Bits, die ersten Binärzahl umfassen.
  9. Verfahren nach einem vorhergehenden Anspruch, wobei die aktualisierte Binärzahl eine 32-Bit-Binärzahl ist.
  10. Verfahren nach einem vorhergehenden Anspruch, wobei die Blockchiffre eine modifizierte SKIPJACK Blockchiffre (4014094; 5015) ist.
  11. Eine zellulare oder Zellenbasisstation, die folgendes aufweist: eine integrierte Schaltung, die in der Lage ist, Software zu verwenden; und einen Satz von Softwarebefehlen, die dann, wenn sie durch die integrierte Schaltung ausgeführt werden, bewirken, dass die integrierte Schaltung das Verfahren nach irgendeinem der Ansprüche 1 bis 10 ausführt.
  12. Ein Zellen- oder Zellularsystem, welches folgendes aufweist: eine Vielzahl von zellularen oder Zellenbasisstation (12) konfiguriert zur drahtlosen Kommunikation mit einer Vielzahl von mobilen Teilnehmereinheiten (10); wobei jede der erwähnten Vielzahl von zellularen Basisstationen (12) gemäß Anspruch 11 ausgebildet ist; und wobei die aktualisierte Binärzahl dazu dient, irgendeine der erwähnten Vielzahl von mobilen Teilnehmereinheiten (10) zu authentisieren, die eine Kommunikation mit irgendeinem der Vielzahl von Zellenbasisstationen (12) anfordert.
  13. Ein Zellensystem nach Anspruch 12, wobei ein systemweites Zeitreferenzsignal zu jeder der Vielzahl von Basisstationen (12) ein Maß der GPS-Zeit überträgt.
  14. Eine Zellenbasisstation, die folgendes aufweist: Mittel zum Anwenden eines ersten Algorithmus auf eine Vielzahl von am höchstwertigen Bits einer ersten Binärzahl zum Erhalt einer zweiten Binärzahl; Mittel zur Bearbeitung einer Vielzahl von niedrigstwertigen Bits der erwähnten ersten Binärzahl mit einem zweiten Algorithmus zum Erhalt einer dritten Binärzahl; und Mittel zum Anwenden einer Blockverschlüsselung, auf die Verkettung der zweiten und dritten Binärzahl zum Erhalt einer vierten Binärzahl; wobei die Basisstation ferner Mittel aufweist zum Ersetzen der höchstwertigen Bits der vierten Binärzahl mit den höchstwertigen Bits der Verkettung dann, wenn die höchstwertigen Bits der vierten Binärzahl einen nur Nullen besitzenden Wert haben.
  15. Zellenbasisstation nach Anspruch 14, wobei der erste Algorithmus ein erstes simuliertes maximal Längen-Schiebe-Register (20, 30) aufweist.
  16. Zellenbasisstation nach Anspruch 14, wobei der erste Algorithmus einen ersten Pseudo-Zufalls-Rauscherzeugungs-Algorithmus aufweist.
  17. Zellenbasisstation nach einem der Ansprüche 14 bis 16, wobei der zweite Algorithmus einen zweiten simulierten maximalen Längen-Schiebe-Register-Algorithmus (32) aufweist.
  18. Zellenbasisstation nach einem der Ansprüche 14 bis 16, wobei der zweite Algorithmus einen zweiten Pseudo-Zufalls-Rauscherzeugungs-Algorithmus aufweist.
  19. Eine zelluläre Basisstation nach einem der Ansprüche 14 bis 16, wobei der zweite Algorithmus einen nur Nullen aufweisenden Wert einsetzt und zwar für die erwähnte Vielzahl von niedrigstwertigen Bits, und zwar einmal während der Zeitperiode, die notwendig ist für die Sequenz von Aktualisierungen, um einen Wiederholungswert für die erwähnte Vielzahl von niedrigstwertigen Bits zu erzeugen.
  20. Zellenbasisstation nach einem der Ansprüche 14 bis 19, wobei die Ausgangsgröße des ersten Algorithmus niemals ein nur Nullen aufweisender Wert ist.
  21. Zellenbasisstation nach einem der Ansprüche 14 bis 20, wobei die höchstwertigen Bits der ersten Binärzahl die ersten 8 Bits der ersten Binärzahl sind.
  22. Zellenbasisstation nach einem der Ansprüche 14 bis 21, wobei die vierte Binärzahl eine 32-Bit-Binärzahl ist.
  23. Zellenbasisstation nach einem der Ansprüche 14 bis 22, wobei die Blockchiffre eine modifizierte SKIPJACK Blockchiffre (401409 4; 5015) ist.
DE60027006T 1999-07-09 2000-07-07 Verfahren und vorrichtung zur sicheren übertragung verteilter authentisierungsabfragewerte (rand) zur anwendung bei der authentifizierung einer mobilstation Expired - Lifetime DE60027006T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US350213 1999-07-09
US09/350,213 US6529487B1 (en) 1999-07-09 1999-07-09 Method and apparatus for securely transmitting distributed RAND for use in mobile station authentication
PCT/US2000/018687 WO2001005091A1 (en) 1999-07-09 2000-07-07 Method and apparatus for securely transmitting distributed rand signals for use in mobile station authentication

Publications (2)

Publication Number Publication Date
DE60027006D1 DE60027006D1 (de) 2006-05-18
DE60027006T2 true DE60027006T2 (de) 2007-01-11

Family

ID=23375712

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60027006T Expired - Lifetime DE60027006T2 (de) 1999-07-09 2000-07-07 Verfahren und vorrichtung zur sicheren übertragung verteilter authentisierungsabfragewerte (rand) zur anwendung bei der authentifizierung einer mobilstation

Country Status (14)

Country Link
US (2) US6529487B1 (de)
EP (1) EP1197035B1 (de)
JP (1) JP2003504959A (de)
KR (1) KR20020026529A (de)
CN (1) CN1360773A (de)
AT (1) ATE322113T1 (de)
AU (1) AU5923800A (de)
BR (1) BR0012231A (de)
DE (1) DE60027006T2 (de)
DK (1) DK1197035T3 (de)
ES (1) ES2263479T3 (de)
HK (1) HK1045420A1 (de)
PT (1) PT1197035E (de)
WO (1) WO2001005091A1 (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6816968B1 (en) 1998-07-10 2004-11-09 Silverbrook Research Pty Ltd Consumable authentication protocol and system
US7197639B1 (en) * 1999-02-05 2007-03-27 Rsa Security Inc. Cryptographic countermeasures against connection depletion attacks
US6529487B1 (en) * 1999-07-09 2003-03-04 Qualcomm Incorporated Method and apparatus for securely transmitting distributed RAND for use in mobile station authentication
US7197642B2 (en) * 2000-02-15 2007-03-27 Silverbrook Research Pty Ltd Consumable authentication protocol and system
US20020021801A1 (en) * 2000-07-13 2002-02-21 Takeshi Shimoyama Computing apparatus using an SPN structure in an F function and a computation method thereof
WO2003036857A1 (en) 2001-10-24 2003-05-01 Nokia Corporation Ciphering as a part of the multicast cencept
US7177864B2 (en) * 2002-05-09 2007-02-13 Gibraltar Analytics, Inc. Method and system for data processing for pattern detection
US7499548B2 (en) * 2003-06-24 2009-03-03 Intel Corporation Terminal authentication in a wireless network
MY142175A (en) * 2003-08-01 2010-10-15 Multimedia Glory Sdn Bhd Process of storage of biometric features
US7860149B2 (en) * 2004-12-22 2010-12-28 Qualcomm Incorporated Methods and apparatus for flexible hopping in a multiple-access communication network
US8798183B2 (en) * 2007-08-13 2014-08-05 Qualcomm Incorporated Feedback and rate adaptation for MIMO transmission in a time division duplexed (TDD) communication system
US10084593B2 (en) * 2015-01-20 2018-09-25 Ternarylogic Llc Apparatus for unconventional non-linear feedback shift registers (NLFSRs)
CN106130717B (zh) * 2016-06-23 2019-05-28 浪潮(北京)电子信息产业有限公司 一种文件存储解密方法及装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5103459B1 (en) 1990-06-25 1999-07-06 Qualcomm Inc System and method for generating signal waveforms in a cdma cellular telephone system
US5313457A (en) * 1992-04-14 1994-05-17 Trimble Navigation Limited Code position modulation system and method for multiple user satellite communications
JP2942913B2 (ja) * 1993-06-10 1999-08-30 ケイディディ株式会社 相手認証/暗号鍵配送方式
US5363448A (en) 1993-06-30 1994-11-08 United Technologies Automotive, Inc. Pseudorandom number generation and cryptographic authentication
US5673319A (en) * 1995-02-06 1997-09-30 International Business Machines Corporation Block cipher mode of operation for secure, length-preserving encryption
US5872874A (en) * 1995-04-26 1999-02-16 Hewlett-Packard Company Method and apparatus for scaling down images that are provided in a compressed data format
GB2301734B (en) * 1995-05-31 1999-10-20 Motorola Ltd Communications system and method of operation
US5717830A (en) * 1995-09-19 1998-02-10 Amsc Subsidiary Corporation Satellite trunked radio service system
JP3541522B2 (ja) 1995-10-09 2004-07-14 松下電器産業株式会社 機器間通信保護システムおよび機器
US5835599A (en) * 1996-04-15 1998-11-10 Vlsi Technology, Inc. Muti-cycle non-parallel data encryption engine
US5872847A (en) * 1996-07-30 1999-02-16 Itt Industries, Inc. Using trusted associations to establish trust in a computer network
US5825889A (en) * 1996-10-15 1998-10-20 Ericsson Inc. Use of duplex cipher algorithms for satellite channels with delay
AUPO799197A0 (en) * 1997-07-15 1997-08-07 Silverbrook Research Pty Ltd Image processing method and apparatus (ART01)
US6028933A (en) * 1997-04-17 2000-02-22 Lucent Technologies Inc. Encrypting method and apparatus enabling multiple access for multiple services and multiple transmission modes over a broadband communication network
US6639906B1 (en) 1997-12-09 2003-10-28 Jeffrey A. Levin Multichannel demodulator
US6285873B1 (en) * 1998-03-09 2001-09-04 Qualcomm Incorporated Method for generating a broadcast challenge value
US6529487B1 (en) * 1999-07-09 2003-03-04 Qualcomm Incorporated Method and apparatus for securely transmitting distributed RAND for use in mobile station authentication

Also Published As

Publication number Publication date
AU5923800A (en) 2001-01-30
US7773553B2 (en) 2010-08-10
JP2003504959A (ja) 2003-02-04
US20030142644A1 (en) 2003-07-31
HK1045420A1 (zh) 2002-11-22
EP1197035A1 (de) 2002-04-17
PT1197035E (pt) 2006-06-30
BR0012231A (pt) 2004-08-03
ES2263479T3 (es) 2006-12-16
KR20020026529A (ko) 2002-04-10
CN1360773A (zh) 2002-07-24
US6529487B1 (en) 2003-03-04
ATE322113T1 (de) 2006-04-15
DK1197035T3 (da) 2006-07-31
EP1197035B1 (de) 2006-03-29
DE60027006D1 (de) 2006-05-18
WO2001005091A1 (en) 2001-01-18

Similar Documents

Publication Publication Date Title
DE69921039T2 (de) Verfahren zur Erstellung eines Schlüssels unter Verwendung einer Funkkommunikation und eines Kennwortprotokolls
US7007050B2 (en) Method and apparatus for improved pseudo-random number generation
DE69727641T2 (de) Verfahren zum Senden einer sicheren Botschaft in einem Telekommunikationssystem
CN101156348B (zh) 使用配对函数在各方之间的通信中确保保密的方法和设备
DE69635071T2 (de) Kryptographische Einrichtung zur Funkkommunikation
DE60310437T2 (de) Sichere kommunikation
DE60027006T2 (de) Verfahren und vorrichtung zur sicheren übertragung verteilter authentisierungsabfragewerte (rand) zur anwendung bei der authentifizierung einer mobilstation
DE69823834T2 (de) Sicherheitsverfahren und -system für übertragungen in fernmeldenetzen
DE69736471T2 (de) Verfahren und vorrichtung zur auf kanaleigenschaften basierenden sicheren kommunikation
EP0872076B1 (de) Verfahren zum rechnergestützten austausch kryptographischer schlüssel zwischen einer ersten computereinheit und einer zweiten computereinheit
DE69916160T2 (de) Vorrichtung und Verfahren zur kryptographischen Verarbeitung sowie Aufzeichnungsmedium zum Aufzeichnen eines kryptographischen Verarbeitungsprogramms zur Ausführung einer schnellen kryptographischen Verarbeitung ohne Preisgabe der Sicherheit
Pareek Design and analysis of a novel digital image encryption scheme
DE10129285C2 (de) Verschlüsselungsverfahren mit beliebig wählbaren Einmalschlüsseln
DE60111746T2 (de) Lineartransformation für symmetrische verschlüsselungssysteme
DE69937007T2 (de) Verfahren und vorrichtung zur verschlüsselung und entschlüsselung von daten
EP1080557B1 (de) Verfahren und anordnung zum rechnergestützten austausch kryptographischer schlüssel zwischen einer ersten computereinheit und einer zweiten computereinheit
EP1298834A1 (de) Verfahren und Vorrichtung zum Verschlüsseln und Entschlüsseln von Daten
DE60020953T2 (de) Verfahren und vorrichtung zur effizienten längensteuerung eines schlüssels
US6560337B1 (en) Systems, methods and computer program products for reducing effective key length of ciphers using one-way cryptographic functions and an initial key
DE69729297T2 (de) Verschlüsselungsvorrichtung für binärkodierte nachrichten
EP0923826B1 (de) Anordnung und verfahren zur kryptographischen bearbeitung eines digitalen datenstroms, der eine beliebige anzahl von daten aufweist
US7688977B2 (en) Method for encrypting video data
DE60133140T2 (de) System und verfahren für symmetrische kryptographie
US11711364B2 (en) Fast unbreakable cipher
DE69830646T2 (de) Verfahren und vorrichtung zur verbesserung des cmea algorithmus unter verwendung von verbesserten transformationen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition