DE102004004799B4 - Hardware/Software-Partitionierung für verschlüsselte WLAN-Verbindungen - Google Patents

Hardware/Software-Partitionierung für verschlüsselte WLAN-Verbindungen Download PDF

Info

Publication number
DE102004004799B4
DE102004004799B4 DE102004004799A DE102004004799A DE102004004799B4 DE 102004004799 B4 DE102004004799 B4 DE 102004004799B4 DE 102004004799 A DE102004004799 A DE 102004004799A DE 102004004799 A DE102004004799 A DE 102004004799A DE 102004004799 B4 DE102004004799 B4 DE 102004004799B4
Authority
DE
Germany
Prior art keywords
data frame
extraction
wlan
encryption
encrypted
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
DE102004004799A
Other languages
English (en)
Other versions
DE102004004799A1 (de
Inventor
Uwe Eckhardt
Matthias Bär
Ralf Flemming
Steffen Hofmann
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices 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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Priority to DE102004004799A priority Critical patent/DE102004004799B4/de
Priority to US10/816,687 priority patent/US7627747B2/en
Publication of DE102004004799A1 publication Critical patent/DE102004004799A1/de
Application granted granted Critical
Publication of DE102004004799B4 publication Critical patent/DE102004004799B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04KSECRET COMMUNICATION; JAMMING OF COMMUNICATION
    • H04K1/00Secret communication
    • H04K1/02Secret communication by adding a second signal to make the desired signal unintelligible
    • 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/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

Verfahren zum Durchführen einer verschlüsselten WLAN-(drahtloses Nahbereichsnetzwerk) Kommunikation, mit den Schritten:
Durchführen einer Verbindungsinitialisierung der verschlüsselten WLAN-Kommunikation; und
Durchführen einer Datenrahmeneinkapselung (760) und/oder Extraktion (860) während der verschlüsselten WLAN-Kommunikation;
wobei die Verbindungsinitialisierung durch Ausführen Software-implementierter Anweisungen ausgeführt wird; und
wobei die Datenrahmeneinkapselung und/oder Extraktion durch Betreiben einer zweckgebundenen Hardware (420, 440, 520, 535, 540, 545) ausgeführt wird; und
wobei der Schritt des Ausführens der Datenrahmeneinkapselung und/oder Extraktion das Erzeugen (725, 815) kryptographischer Daten umfasst, die zum Verschlüsseln oder Entschlüsseln eines Datenrahmens geeignet sind.

Description

  • HINTERGRUND DER ERFINDUNG
  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft verschlüsselte WLAN-(drahtloses Nahbereichsnetzwerk) Kommunikationsverfahren und entsprechende Einrichtungen, integrierte Schaltungschips, Computerprogrammprodukte und Computersysteme und betrifft insbesondere deren Hard/Software-Implementierungen.
  • BESCHREIBUNG DES STANDS DER TECHNIK
  • Ein drahtloses Nahbereichsnetzwerk ist ein flexibles Datenkommunikationssystem, das als eine Erweiterung oder als eine Alternative für ein verdrahtetes LAN implementiert ist. Durch Anwendung von Radiofrequenz- oder Infrarottechnologie übertragen und empfangen WLAN-Systeme Daten in drahtloser Weise, wobei die Notwendigkeit für verkabelte Verbindungen minimiert wird. Somit vereinigen WLAN-Systeme Datenverbund mit Anwendermobilität.
  • Heutzutage wird in den meisten WLAN-Systemen die aufgespreizte Spektrumstechnologie angewendet, d. h. eine Breitbandradiofrequenztechnik, die zur Verwendung in zuverlässigen und sicheren Kommunikationssystemen entwickelt wurde. Die Technik mit aufgespreiztem Spektrum ist so gestaltet, um einen Kompromiss zwischen der Bandbreiteneffizienz und der Zuverlässigkeit, Integrität und Sicherheit zu bieten. Es werden zwei Arten von Radiosystemen mit aufgespreiztem Spektrum häufig verwendet: Systeme mit einem Frequenzsprungverfahren und Systeme mit direkter Sequenz.
  • Der Standard, der drahtlose Nahbereichsnetzwerke definiert und regelt, die im 2.4 GHz-Spektrum arbeiten, ist der IEEE 802.11 Standard. Um höhere Datenübertragungsraten zuzulassen, wurde der Standard zum 802.11b erweitert, der Datenraten von 5.5 und 11 Mbps im 2.4 GHz-Spektrum zulässt. Es gibt auch noch zusätzliche Erweiterungen.
  • Um bestehende Sicherheitslücken in der inhärenten Sicherheit des 802.11 Standards zu beheben, d. h. des WEP-(Sicherheit äquivalent zur verdrahteten Kommunikation) Protokolls, wurde der 802.11i Sicherheitsstandard entwickelt. Dieser verbesserte Sicherheitsstandard beruht auf dem 802.1x Standard für eine portbasierte Zugriffssteuerung, auf dem TKIP-(temporäres Schlüsselintegritätsprotokoll) und dem CCMP-(dem Zählermoduscodierungsprotokoll für die Verschlüsselung und Blockaneinanderreihung von Nachrichtenauthentisierungen) Protokoll für die Datenrahmeneinbettung und das Herauslösen der Datenrahmen. Der 802.1x Standard liefert die Bedingungen für eine WLAN-Stationsauthentisierung und eine Chiffrierschlüsselverteilung, wobei diese beiden Merkmale ursprünglich in dem 802.11 Standard fehlen. Die TKIP und CCMP-Protokolle sind Verschlüsselungsprotokolle, die eine verbesserte Kommunikationssicherheit gegenüber dem ursprünglichen WEP-Protokoll bieten, wobei das TKIP-Protokoll sich an bestehende Anlagen richtet, während das CCMP-Protokoll für künftige WLAN-Einrichtungen bestimmt ist.
  • In beiden Verschlüsselungsprotokollen wird eine individuelle Zeichenkette für jeden Datenrahmen erzeugt, die zum Verschlüsseln des Datenrahmens verwendet wird. Diese Verschlüsselungszeichenkette basiert auf einer Paketnummer oder Sequenznummer, die in den Datenrahmen eingefügt ist und die Reihenfolge der Datenrahmen kennzeichnet. Datenrahmen außerhalb der Reihenfolge werden verworfen. Ferner hängt die Verschlüsselungszeichenkette von den MAC-(Mediumzugriffssteuerung)Adressen der miteinander kommunizierenden WLAN-Partner ab, beispielsweise einer WLAN-Station und einem WLAN-Zugriffspunkt. In dem sendenden WLAN-Partner wird ein Integritätswert aus dem ursprünglichen reinen Datenrahmen berechnet und wird in den Datenrahmen während des Einbettens eingefügt, um es damit dem empfangenden WLAN-Partner zu ermöglichen, zu erkennen, ob die extrahierten Daten identisch zu den ursprünglichen reinen Daten sind. Entsprechend den TKIP- und CCMP-Protokollen ist dieser Integritätswert nicht nur eine einfache CRC (zyklische Redundanzprüf) Summe, sondern dieser Wert wird unter Anwendung einer kryptographischen MIC(Nachrichtenintegritätscodierungs-)Berechnung, erzeugt.
  • Gemäß 1a, die einen Einbettungsprozess entsprechend dem TKIP-Protokoll darstellt, wird ein für den Datenrahmen spezifischer Schlüssel 118 aus einem temporären Schlüssel 102, der Senderadresse 104 und der Sequenzzahl 106 erzeugt. Der für den Datenrahmen spezifische Schlüssel 118 wird in einen für den Datenrahmen spezifischen Initialisierungsvektor (IV) 122 und in einen allgemeinen, vom Datenrahmen unabhängigen RC4 (Ri vestverschlüsselung 4) Schlüssel 120 aufgeteilt. Sowohl der IV 122 als auch der RC4 Schlüssel 120 werden in den RC4-Einbettungsprozess 132 eingeführt, um einen eingespeisten Reindatenrahmen 130 einzubetten. Der eingespeiste Reindatenrahmen 130 kann durch Fragmentierung 128 eines vorhergehenden nicht fragmentierten Reindatenrahmens 126 erzeugt werden. Der Reindatenrahmen 126 enthält einen Integritätswert, der durch MIC-Berechnung 124 aus der Quellenadresse 110, der Zieladresse 112 und dem ursprünglichen Reindatenrahmen 114 unter Anwendung eines MIC-Schlüssels 108 und der Sequenzzahl 106 berechnet wird.
  • 1b zeigt den RC4-Einbettungsprozess 132, der entsprechend dem WEP-Protokoll des ursprünglichen 802.11-Standards ausgeführt wird. Der Initialisierungsvektor 122 und der RC4-Schlüssel 120 werden bei 136 verknüpft und dann in die RC4-Pseudozufallsverschlüsselungserzeugung 138 eingespeist. Der Reindatenrahmen 130 wird verwendet, um eine CRC-Prüfsumme in 140 zu berechnen und wird dann mit der CRC-Prüfsumme in 142 verknüpft. Die verschlüsselten Daten 146 werden durch eine bitweise XOR-(exklusive oder) Verknüpfungsfunktion 144 mit dem verknüpften Reindatenrahmen und der CRC-Prüfsumme erzeugt, die sich aus der Verknüpfung 142 mit dem in 138 erzeugten RC4-Pseudozufallsschlüssel ergibt. Das Ergebnis des RC-Verschlüsselungsprozesses 132 ist ein verschlüsselter Datenrahmen 134, der den Initialisierungsvektor 122 und die verschlüsselten Daten 146 enthält.
  • Gemäß 2a, die den Einbettungsprozess entsprechend dem CCMP-Protokoll darstellt, werden ”zusätzliche Authentisierungsdaten” (AAD) 212 bei 210 erzeugt, wobei die MAC-Adressen verwendet werden, die in dem Datenrahmenvorspann 208 des Reindatenrahmens 202 enthalten sind. Bei 214 wird ein Initialisierungsvektor 216 aus der Paketzahl (PN) 218, die in dem Reindatenrahmen 202 enthalten ist, und aus Daten von dem Datenrahmenvorspann 208 erzeugt. Der Datenrahmenvorspann 208, die zusätzlichen Authentisierungsdaten 212, der Initialisierungsvektor 216, die Paketzahl 218 und die Reindaten 220, die in dem Reindatenrahmen 202 enthalten sind, werden zusammen mit einem AES-(fortschrittlicher Verschlüsselungsstandard) Schlüssel 204 dem CCMP-Verschlüsselungsprozess 224 eingespeist. Der aus der CCMP-Verschlüsselung 224 resultierende verschlüsselte Datenrahmen 226 wird bei 230 mit einem CCMP-Vorspann, der bei 222 aus der Paketzahl 218 und einer AES-Schlüssel ID 206 erzeugt wurde, verknüpft, um den endgültigen verschlüsselten Datenrahmen 232 zu erzeugen.
  • Die CCMP-Verschlüsselung 224 ist in 2b dargestellt. Die Datenverschlüsselung 242 und die MIC-Berechnung 254 werden parallel durchgeführt. Sowohl die Datenverschlüsselung 252 als auch die MIC-Berechnung 254 weisen die AES-Verschlüsselung 234 auf. Für jede AES-Verschlüsselung 234 wird der AES-Schlüssel 204 eingegeben. Der Einfachheit halber ist der AES-Schlüssel 204 in 2b nicht gezeigt. Während der Datenverschlüsselung 252 werden die Reindaten 220, die in dem eingespeisten Reindatenrahmen 202 enthalten sind, blockweise verschlüsselt durch Anwenden einer bitweisen XOR-Funktion 236 auf Datenblöcke 256 mit einer Größe von 128 Bits und dem Ergebnis einer AES-Verschlüsselung 234 eines Zählervorwertes (PL) 240, 242, 244, 246. Jeder Zählvorwert hängt von den zusätzlichen Authentisierungsdaten 212, die der Einfachheit halber nicht dargestellt sind, und einem nachfolgenden Zählerwert ab.
  • Die MIC-Berechnung 254 wird mit dem Initialisierungsvektor 216 gestartet. Der Initialisierungsvektor 216 wird in eine AES-Verschlüsselung 234 eingespeist und deren Ausgabe wird bitweise durch eine XOR-Verknüpfung 236 mit ausgewählten Elementen aus dem Datenrahmenvorspann 208 verknüpft und wird dann wiederum in eine AES-Verschlüsselung 234 eingespeist. Dieser Prozess wird für den Rest des Datenrahmenvorspanns 208 und weiter bis über die gesamte Länge der Reindaten 220 ausgeführt, um einen endgültigen CBC-MAC-(Verschlüsselungsblock-Verkettungsnachrichtenauthentisierungscodierungs-)-Wert von beispielsweise einer Größe mit 128 Bit zu berechnen. Der obere Teil, beispielsweise 64 Bits, des CBC-MAC werden extrahiert und in der endgültigen MIC benutzt. Der resultierende verschlüsselte Datenrahmen 236 enthält den Reinrahmenvorspann 208, eine Paketzahl 218, die verschlüsselten Daten 258 und das verschlüsselte MIC 250.
  • 2c zeigt eine reguläre Verschlüsselungssequenz des AES-Verschlüsselungsprozesses 234, der eine Sequenz aus vier Verschlüsselungsschritten ist. Ein Block 252 aus eingegebenen Reindaten wird in eine Matrix mit vier Zeilen und einer variablen Anzahl von Spalten – abhängig von der Blockgröße – geschrieben. Jedes Matrixelement ai,j entspricht einem Byte des eingespeisten Reindatenblocks 252, wobei i = 0, ..., 3 die Zeile und j = 0, ..., n die Spalte bezeichnet. In dem in 2c dargestellten Beispiel ist n = 3. In dem ersten Verschlüsselungsschritt wird mittels der Ersetzung 254 jedes Byte ai,j durch ein anderes Byte si,j entsprechend den Substitutionsregeln, die in einer kryptographischen Substitutionsbox implementiert sind, ersetzt. In dem Spaltenverschiebeschritt 256 werden die Elemente in jeder Matrixzeile zyklisch permutiert. Der Spaltenmischschritt 258 enthält das spaltenweise Multiplizieren der Matrixelemente mit einer Konstanten und dann das XOR-verknüpfen der Matrixelemente miteinander. Schließlich werden im Schlüsseladditionsschritt 260 die Ergebnisse des Spaltenmischschrittes 258 mit einem AES-Rundungsschlüssel 264 XOR-verknüpft, der aus dem AES-Schlüssel 204 berechnet wurde. Der reguläre Ablauf der AES-Verschlüsselung 234 wird einige Male wiederholt, indem die verschlüsselten Daten 262 erneut in den Byte-Substituierungsschritt 254 eingegeben werden. Zusätzlich zu den regulären Durchläufen enthält die AES-Verschlüsselung 234 einen Anfangsschlüsselerweiterungsdurchlauf zum Erzeugen des AES-Durchlaufschlüssels 264 aus dem AES-Schlüssel 204, und enthält einen letzten Durchlauf, wobei der Spaltenmischschritt 258 weggelassen wird.
  • Um die zuvor beschriebenen Kommunikationssicherheitstechniken oder ähnliche Vorgehensweisen, die im Stand der Technik bekannt sind, zu implementieren, werden bestehende verschlüsselte WLAN-Kommunikationsverfahren durchgeführt, indem sowohl Softwareimplementierte Anweisungen ausgeführt werden als auch Hardware-Einrichtungen betrieben werden, die in der Lage sind, spezielle Funktionen auszuführen, für die sie entworfen sind. Dies kann zu einer Reihe von Nachteilen führen.
  • Es sei nun auf 3 verwiesen; die Schritte für die Kommunikationssicherheit werden durchgeführt, in dem Software-implementierte Anweisungen einer Verbindungsinitialisierungsfunktion 330 und einer Einbettungs/Extraktions-Funktion 340 einer Treibersoftware 310, die beispielsweise auf einer Host- bzw. Haupt-CPU läuft, ausgeführt werden, und indem eine Verbindungsinitialisierungsschaltung 350 und eine Einkapselungs-/Extraktionsschaltung 360 auf einem WLAN-Chip 320 betrieben werden. Daher weisen konventionelle WLAN-Chips für gewöhnlich ein hohes Maß an Hardwarekomplexität und damit hohe Herstellungskosten auf.
  • Des weiteren zeigen konventionelle WLAN-Kommunikationssysteme häufig den Nachteil, dass diese einen Datentransfer zwischen einzelnen Komponenten erzeugen. Die Schritte zum Ausführen Software-implementierter Anweisungen und zum Betreiben der WLAN-Chip-Komponenten 350 und 360 werden abwechselnd ausgeführt. Somit führen konventionelle Verfahren häufig zu einem dichten Datenstrom zwischen der Treibersoftware 310 und dem WLAN-Chip 320, wodurch große Datenstromkapazitäten und Bandbreiten erforderlich sind, die auch ein ernstes Problem hinsichtlich von Datenfehlern darstellen können.
  • Des weiteren besteht oft ein Sicherheitsproblem in konventionellen Systemen, da der Datenverkehr einen Austausch von Zwischendaten 390 erfordert, die für dazwischenliegende Teilschritte der Verbindungsinitialisierung der Datenrahmeneinkapselung oder Extraktion beabsichtigt sind oder aus diesen resultieren. Zu den Zwischendaten 390 können beispielsweise der für den Datenrahmen spezifische Schlüssel 118, die zusätzlichen Authentisierungsdaten 212 oder der Initialisierungsvektor 216 gehören. Da die Zwischendaten 390 Informationen hinsichtlich Sicherheitsgeheimnissen enthalten können, beispielsweise über die angewendeten Verschlüsselungen, kann deren Austausch zu einer beträchtlichen Sicherheitslücke führen.
  • Des weiteren können konventionelle Systeme nachteiligerweise Wartezeiten aufweisen, die in der Schnittstelle auftreten können, die die auf der Haupt-CPU laufenden Treibersoftware 310 mit dem WLAN-Chip 320 verbindet. Derartige Wartezeiten führen für gewöhnlich zu einer unnötigen Verlangsamung der Kommunikations und können daher zu weiteren Problemen im Hinblick auf das Erreichen effizienter Datenübertragungsraten führen.
  • US 2001/00 55 283 A1 betrifft ein WLAN-Netzwerk, welches mit einem vereinfachten RF-Port ausgestattet ist. Die RF-Ports sind ausgebildet, Funktionen des 802.11-Protokolls auszuführen, die zwar zeitkritisch sind, aber einen niedrigeren Grad an Prozessorressourcen und Software-Komplexität besitzen. Prozessorintensive, aber zeitunkritische Funktionen werden von einer Zellensteuereinheit (cell controller) ausgeführt.
  • WP 2003/06 74 53 A1 beschreibt eine MAC-Architektur für WLAN-Stationen, die Funktionalität zwischen einer Software-basierten MAC-Komponente und einer Hardware-basierten MAC-Komponente aufteilt.
  • ÜBERBLICK ÜBER DIE ERFINDUNG
  • Es werden ein verbessertes verschlüsseltes WLAN-Kommunikationsverfahren und eine entsprechende Hardware-Einrichtung, ein integrierter Schaltungschip, ein Computerprogrammprodukt und ein Computersystem bereitgestellt, die die Nachteile der konventionellen Lösungen überwinden können.
  • Diese Aufgabe wird erfindungsgemäß durch den Gegenstand der unabhängigen Patentansprüche gelöst. Bevorzugte Ausführungsformen werden durch die abhängigen Patentansprüche definiert.
  • In einer Ausführungsform wird ein Verfahren zum Ausführen einer verschlüsselten WLAN-Kommunikation bereitgestellt, das die Schritte umfasst: Ausführen einer Verbindungsinitialisierung für die verschlüsselte WLAN-Kommunikation und Ausführen einer Datenrahmeneinbettung und/oder Extraktion während der verschlüsselten WLAN-Kommunikation. Die Verbindungsinitialisierung wird ausgeführt, indem Software-implementierte Anweisungen ausgeführt werden, und die Datenrahmeneinbettung und/oder Extraktion wird ausgeführt, indem eine zweckgebundene Hardware betrieben wird.
  • In einer weiteren Ausführungsform wird eine zweckgebundene Hardwareeinrichtung zum Ausführen einer Datenrahmeneinbettung und/oder Extraktion während einer verschlüsselten WLAN-Kommunikation bereitgestellt, die interne Hardwarekomponenten und eine Schnittstelle zum Kommunizieren mit einer externen Hardwarekomponente aufweist, die ausgebildet ist, eine Verbindungsinitialisierung für die verschlüsselte WLAN-Kommunikation auszuführen, indem Software-implementierte Anweisungen ausgeführt werden. Die internen Hardwarekomponenten umfassen interne zweckgebundene Hardwarekomponenten zum Ausführen der Datenrahmeneinkapselung und/oder der Extraktion, sobald die Verbindungsinitialisierung abgeschlossen ist.
  • In einer weiteren Ausführungsform wird ein integrierter Schaltungschip zum Ausführen einer Datenrahmeneinkapselung und/oder Extraktion während einer verschlüsselten WLAN-Kommunikation bereitgestellt, der interne integrierte Schaltungen und mindestens einen Datenbus zur Kommunikation mit einer externen CPU (zentrale Recheneinheit) aufweist, die ausgebildet ist, eine Verbindungsinitialisierung für die verschlüsselte WLAN-Kommunikation durch Ausführen Software-implementierter Anweisungen auszuführen. Die internen integrierten Schaltungen umfassen interne zweckgebundene integrierte Schaltungen zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion, sobald die Verbindungsinitialisierung abgeschlossen ist.
  • In einer noch weiteren Ausführungsform wird ein Computerprogrammprodukt zum Ausführen einer verschlüsselten WLAN-Kommunikation bereitgestellt, das Computerprogrammmittel zum Ausführen einer Verbindungsinitialisierung für die verschlüsselte WLAN-Kommunikation und Computerprogrammmittel zur Kommunikation über eine Schnittstelle mit einer zweckgebundenen Hardwareeinrichtung aufweist, die in der Lage ist, eine Datenrahmeneinkapselung und/oder Extraktion während der verschlüsselten WLAN-Kommunikation auszuführen. Die Verbindungsinitialisierung wird ausgeführt, indem Software-implementierte Anweisungen ausgeführt werden.
  • In einer noch weiteren Ausführungsform wird ein Computersystem zum Ausführen einer verschlüsselten WLAN-Kommunikation bereitgestellt, das eine erste Einrichtung zum Ausführen einer Verbindungsinitialisierung für die verschlüsselte WLAN-Kommunikation und eine zweite Einrichtung zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion während der verschlüsselten WLAN-Kommunikation aufweist. Die erste Einrichtung dient zum Ausführen der Verbindungsinitialisierung durch Ausführen Software-implementierter Anweisungen, und die zweite Einrichtung umfasst eine zweckgebundene Hardwareeinrichtung.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die begleitenden Zeichnungen sind in die Beschreibung mit eingebunden und bilden einen Teil davon, um die Prinzipien der Erfindung zu erläutern. Die Zeichnungen sollen die Erfindung nicht auf die dargestellten und beschriebenen Beispiele, wie die Erfindung zu realisieren und anzuwenden ist, einschränken. Weitere Merkmale und Vorteile gehen aus der folgenden und detaillierteren Beschreibung der Erfindung hervor, wie sie auch in den begleitenden Zeichnungen dargestellt ist, wobei:
  • 1a eine Datenrahmeneinkapselung gemäß dem TKIP-Protokoll darstellt;
  • 1b eine RC4-Einkapselung zeigt, die ein Teil der TKIP-Datenrahmeneinkapselung aus 1a ist;
  • 2a eine Datenrahmeneinkapselung gemäß dem CCMP-Protokoll zeigt;
  • 2b eine CCMP-Verschlüsselung zeigt, die ein Teil der CCMP-Datenrahmeneinkapselung aus 2a ist;
  • 2c einen regulären Verschlüsselungsdurchlauf einer AES-Verschlüsselung zeigt, die ein Teil der CCMP-Verschlüsselung aus 2b ist;
  • 3 ein Blockdiagramm repräsentiert, das den Datenaustausch zwischen einer Treibersoftware und einem WLAN-Chip gemäß dem Stand der Technik zeigt;
  • 4 eine Blockansicht ist, die den Datenaustausch zwischen einer Treibersoftware und einem WLAN-Chip gemäß einer Ausführungsform darstellt;
  • 5 eine Blockansicht ist, die die Komponenten eines WLAN-kompatiblen Computersystems gemäß einer Ausführungsform zeigt;
  • 6 ein Flussdiagramm ist, das eine Verbindungsinitialisierung für eine verschlüsselte WLAN-Kommunikation gemäß einer Ausführungsform darstellt;
  • 7 ein Flussdiagramm ist, das Übertragungsschritte für die verschlüsselte WLAN-Kommunikation gemäß einer Ausführungsform zeigt; und
  • 8 ein Flussdiagramm ist, das die Empfangsschritte einer verschlüsselten WLAN-Kommunikation gemäß einer Ausführungsform darstellt.
  • DETAILLIERTE BESCHREIBUNG
  • Es werden nun die anschaulichen Ausführungsformen der vorliegenden Erfindung mit Bezug zu den Zeichnungen beschrieben.
  • Es sei nun auf die Zeichnungen verwiesen und insbesondere auf 4, die den Datenaustausch zwischen einer Treibersoftware 410, die auf einer Haupt-CPU läuft, und einem WLAN-Chip 420 gemäß einer Ausführungsform darstellt, wobei die Treibersoftware 410 eine Verbindungsinitialisierungsfunktion 430 enthält. Im Vergleich zu 3, die den Datenaustausch zwischen einer Treibersoftware 310 und einem WLAN-Chip 320 gemäß dem Stand der Technik darstellt, enthält der WLAN-Chip 420 nicht die Verbindungsinitialisierungsschaltung 350. Alle Schritte der Verbindungsinitialisierung werden durch Ausführen Software-implementierter Anweisungen der Verbindungsinitialisierungsfunktion 430 der Treibersoftware 410 ausgeführt, ohne dass Zwischendaten 390 mit dem WLAN-Chip 420 ausgetauscht werden.
  • Die Einkapselungs-/Extraktionsschaltung 440 ist eine (einzel) zweckgebundene (oder zugeordnete) Hardwareeinrichtung, d. h. eine für den Zweck aufgebaute Hardwareeinrichtung, die in der Lage ist die Funktion, für die sie entworfen ist, auszuführen, ohne dass Softwareimplementierte Anweisungen ausgeführt werden. In der vorliegenden Ausführungsform ist der Datenaustausch zwischen der Treibersoftware 410 und der Einkapselungs-/Extraktionsschaltung 440 auf die Übertragung von Reindaten 450, die zur Einkapselung in den Datenrahmen vorgesehen sind, von der Treibersoftware 410 zu der Einkapselungs-/Extraktionsschaltung 440 und die Übertragung von extrahierten Daten 460 in der entge gengesetzten Richtung beschränkt, wenn die Datenrahmenextraktion abgeschlossen ist. Im Vergleich zu der in 3 dargestellten konventionellen Technik, wird die Datenrahmeneinkapselung/Extraktion ausgeführt, ohne dass Software-implementierte Anweisungen einer entsprechenden Einkapselungs-/Extraktionsfunktion der Treibersoftware 410 ausgeführt werden. Ferner tritt kein Austausch von Zwischendaten 390 zwischen der Einkapselungs-/Extraktionsschaltung 440 und der Treibersoftware 410 auf.
  • In 5 sind ein WLAN-kompatibles Computersystem und Datenwege darin gemäß einer Ausführungsform gezeigt. Das Computersystem kann so ausgebildet sein, um eine verschlüsselte WLAN-Kommunikation auf der Grundlage der 802.11i Sicherheitserweiterung durchzuführen.
  • Der WLAN-Chip 520 kann eine zugeordnete 802.11 Hardware aufweisen. Insbesondere kann er eine OCM (chipinterner Speicher) Schaltung 525, eine Radiosender/Empfänger-Schaltung 530 und eine Einkapselungs-/Extraktionsschaltung 535 zur Verwirklichung von Verschlüsselungsalgorithmen aufweisen. In der vorliegenden Ausführungsform sind alle durch die Hardware abgebildeten Verschlüsselungsfunktionen Datenrahmeneinkapselungs- und Extraktionsaufgaben. Die Einkapselung/Extraktionsschaltung 535 kann eine MAC-Hardwarepartition mit 802.11i-Erweiterung, die eine Verschlüsselungsschaltung 540 und eine MAC-Schaltung (MAC-Hardwarepartition) 545 aufweist, enthalten, und kann periodisch bei 11 MHz zur Verschlüsselung in einem 802.11b-WLAN betrieben werden. Die Verschlüsselungsschaltung 540 ist mit der OCM-Schaltung 525 und der MAC-Schaltung 545 verbunden, so dass diese Daten von der OCM-Schaltung 525 und der MAC-Schaltung 545 empfangen und Daten über die MUX-(Multiplexer)Gatter 550 zu der OCM-Schaltung 525 und der MAC-Schaltung 545 senden kann. Die MAC-Schaltung 545 ist ferner mit der Radiosender/Empfänger-Schaltung 530 und der OCM-Schaltung 525 verbunden, so dass diese in der Lage ist, Daten zu der OCM-Schaltung 525 zu senden und von dieser Daten über die MUX-Gatter 550 zu empfangen, und um Daten zu der Radiosender/Empfänger-Schaltung 530 zu senden oder von dieser zu empfangen.
  • Der WLAN-Chip 520 kann in einem Zentralcomputersystem installiert sein mit einer CPU 505, die in Verbindung mit einer Treibersoftware (MAC-Softwarepartition) 510, die auf der CPU 505 läuft, dem Computersystem eine WLAN-Kompatibilität verleiht. Die OCM- Schaltung 525 der vorliegenden Ausführungsform ist mit der CPU 505 über die Schnittstelle 515 verbunden, so dass diese in der Lage ist, mit der CPU 505 zu kommunizieren.
  • Die Einkapselungs-/Extraktionsschaltung 535 ist eine zweckgebundene Hardwareeinrichtung, die so gestaltet ist, um eine Datenrahmeneinkapselung und/oder Extraktion auszuführen, ohne dass Software-implementierte Anweisungen auszuführen sind.
  • In der vorliegenden Ausführungsform kann die 802.11i Sicherheitserweiterung auf einer MAC-Softwarepartition der Treibersoftware 510 und eine MAC-Hardwarepartition in der Einkapselung/Extraktionsschaltung 535 aufgeteilt werden.
  • Im Allgemeinen kann die Kommunikationssicherheit für WLAN-Kommunikation so gesehen werden, dass diese zwei wesentliche Phasen aufweist: eine Verbindungsinitialisierungsphase zum Errichten einer sicheren Kommunikationsverbindung zwischen einer WLAN-Station und einer weiteren WLAN-Station und/oder einem WLAN-Zugriffspunkt, und eine tatsächliche verschlüsselte WLAN-Kommunikationsphase. Sobald die Verbindungsinitialisierungsphase abgeschlossen ist, kann die verschlüsselte WLAN-Kommunikation stattfinden, während welcher verschlüsselte Datenrahmen zwischen einer WLAN-Station und einer weiteren WLAN-Station und/oder einem WLAN-Zugriffspunkt ausgetauscht werden. Die verschlüsselte WLAN-Kommunikation kann für eine erneute Verbindungsinitialisierung unterbrochen werden, wann immer dies angemessen ist, beispielsweise zum Übergeben der WLAN-Station von einem WLAN-Zugriffspunkt zu einem anderen.
  • 6 zeigt das Ausführen einer Verbindungsinitialisierung mittels einer WLAN-Station gemäß einer Ausführungsform. Die WLAN-Station kann die in 4 oder 5 gezeigten Komponenten aufweisen. Die Verbindungsinitialisierung umfasst das Authentisieren der WLAN-Station als einen authorisierten WLAN-Teilnehmer durch eine weitere WLAN-Station und/oder einen WLAN-Authentisierungsserver im Schritt 610. Wenn der Authentisierungsschritt 610 abgeschlossen ist, ist die WLAN-Station mit einer weiteren WLAN-Station und/oder einem WLAN-Zugriffspunkt als Kommunikationspartner im Schritt 620 verbunden. Die verbundenen Kommunikationspartner können dann kryptographische Schlüssel im Schritt 630 austauschen, die für die spätere Datenrahmeneinkapselung und/oder Extraktion vorgesehen sind. In der vorliegenden Ausführungsform werden alle Authentisierungs-, Verbindungs- und Schlüsselverteilungsfunktionen ausgeführt, indem Software-implementierte Anweisungen einer Verbindungsinitialisierungsfunktion 430 einer Treibersoftware 410, 510 ausgeführt werden, ohne dass eine Verbindungsinitialisierungshardware auf dem WLAN-Chip beteiligt ist. Dies kann durch die MAC-Software auf der Zentral-CPU 505 verwirklicht werden.
  • 7 zeigt einen Prozess zum Übertragen von Datenrahmen, der mittels einer WLAN-Station während einer verschlüsselten WLAN-Kommunikation gemäß einer Ausführungsform ausgeführt wird. Die WLAN-Station kann die in 4 oder 5 dargestellten Komponenten aufweisen. Eine Treibersoftware 410, 510 schreibt Datenrahmen, die für eine Datenrahmeneinkapselung vorgesehen sind, in eine OCM-Schaltung 525 auf einem WLAN-Chip 420, 520 im Schritt 705 und startet den Übertragungsvorgang auf der MAC-Hardwarepartition des WLAN-Chips 420, 520. Jeder Datenrahmen kann einen zusätzlichen Vorspann mit Verschlüsselungsinformation enthalten, die wesentliche Faktoren zum Durchführen der Datenrahmeneinkapselung kennzeichnet, beispielsweise das Verschlüsselungsprotokoll und den anzuwendenden kryptographischen Schlüssel und Informationen hinsichtlich der Datenrahmenfragmentierung.
  • Im Schritt 710 wählt ein prioritätensetzender Algorithmus innerhalb der MAC-Hardware auf dem WLAN-Chip 420, 520 einen drahtlos zu übermittelnden Datenrahmen aus und der ausgewählte Datenrahmen wird im Schritt 715 aus der OCM-Schaltung 525 ausgelesen. Die folgende Datenrahmeneinkapselung 760 umfasst das Einfügen einer Paketzahl und/oder einer Sequenzzahl in den ausgewählten Datenrahmen im Schritt 720. Die Paketzahl und/oder die Sequenzzahl kann unmittelbar zu dem Zeitpunkt in den Datenrahmen eingefügt werden, an dem der Datenrahmen durch den prioritätensetzenden Algorithmus ausgewählt wird. Dies kann eine außer der Reihe liegende Nummerierung der Datenrahmen verhindern, was bei einer konventionellen verschlüsselten WLAN-Kommunikation auf Grund der Permutation der Ordnung der Rahmen durch die Prioritätszuweisung auftreten kann, die innerhalb der MAC-Hardware im Vergleich zu der Ordnung ausgeführt wird, in der die Software die Rahmen in die OCM-Schaltung 525 geschrieben hat.
  • Im Schritt 725 können weitere Verschlüsselungsdaten, die für das Verschlüsseln des Datenrahmens erforderlich sind, mittels einer Verschlüsselungsschaltung 540 erzeugt werden. Die zusätzlichen Verschlüsselungsdaten können beispielsweise einen datenrahmenspezifischen Schlüssel 118, einen RC4-Pseudozufallsschlüssel 138, zusätzliche Authentisie rungsdaten 212, einen Initialisierungsvektor 216 oder einen Zählervorwert 240, 242, 244 oder 246 aufweisen. Dies ermöglicht ein Einfügen aktualisierter Paketzahlen.
  • Ferner kann das Merkmal des Erzeugens der zusätzlichen Verschlüsselungsdaten mittels des WLAN-Chips 420, 520 eine Symmetrie zwischen den Sende- und Empfangsprozessen erzeugen, die im Stand der Technik häufig asymmetrisch sind: während des Sendevorganges werden die zusätzlichen Verschlüsselungsdaten für gewöhnlich von der Software erzeugt und den Datenrahmen vorgeschaltet, bevor diese zu dem WLAN-Chip 320 gesendet werden, wohingegen während des Empfangsvorganges, die zusätzlichen Verschlüsselungsdaten von dem WLAN-Chip 220 vor der Entschlüsselung erzeugt werden müssen.
  • Wenn die erforderlichen zusätzlichen Verschlüsselungsdaten verfügbar gemacht sind, wird zumindest ein Teil des Datenrahmens, beispielsweise der Hauptbereich des Datenrahmens von der Verschlüsselungsschaltung 540 im Schritt 730 verschlüsselt. Im Schritt 735 wird ein Integritätswert berechnet, der einem späteren Empfänger des verschlüsselten Datenrahmens die Möglichkeit gibt, zu verifizieren, ob das Ergebnis der Extraktion des verschlüsselten Datenrahmens identisch zu dem ursprünglichen Datenrahmen ist, der von dem Sender eingekapselt wurde. Der Integritätswert kann ein MIC auf Basis eines CCMP aufweisen, wenn die Datenrahmeneinkapselung 760 gemäß dem CCMP-Protokoll ausgeführt wird, oder er kann ein MIC auf TKIP-Basis und/oder eine CRC 32 (32-bit CRC) aufweisen, wenn die Datenrahmeneinkapselung 760 entsprechend dem TKIP-Protokoll ausgeführt wird. Zu beachten ist, dass andere Verschlüsselungsprotokolle und Integritätsmechanismen ebenso angewendet werden können.
  • Die Berechnung 735 des Integritätswertes der vorliegenden Ausführungsform wird durch die zweckgebundene Einkapselungs-/Extraktionsschaltung 535 ausgeführt. Für den Empfang partionierter Datenrahmen kann die Berechnung eines MIC (Michael MIC) auf TKIP-Basis auf die Software übertragen werden.
  • Der berechnete Integritätswert wird im Schritt 740 von der Verschlüsselungsschaltung 540 verschlüsselt und wird dann im Schritt 745 in den verschlüsselten Datenrahmen eingefügt. Der Ausdruck ”verschlüsselter Datenrahmen” bezeichnet einen Datenrahmen, der verschlüsselte Daten enthält, wobei nicht notwendigerweise gemeint ist, dass alle in dem Datenrahmen enthaltenen Daten verschlüsselt sind. Wenn die Datenrahmeneinkapselung 760 abgeschlossen ist, wird der verschlüsselte Datenrahmen im Schritt 750 in die OCM-Schaltung 525 geschrieben.
  • Schließlich wird im Schritt 755 der verschlüsselte Datenrahmen von der Radiosender/Empfänger-Schaltung 530 übertragen. Wie aus 7 deutlich wird, werden alle Aufgaben, die strengen zeitlichen Rahmenbedingungen unterliegen, d. h. alle Schritte der Datenrahmeneinkapselung 760, von der zweckgebundenen Einkapselungs-/Extraktionsschaltung 535 auf dem WLAN-Chip ausgeführt, ohne dass eine Wechselwirkung mit der Treibersoftware 410, 510 stattfindet.
  • 8 zeigt einen Empfangsvorgang für einen Datenrahmen, der von einer WLAN-Station während der verschlüsselten WLAN-Kommunikation ausgeführt wird, wobei die WLAN-Station wiederum die in 4 oder 5 dargestellten Komponenten aufweist. Im Schritt 805 wird ein empfangener verschlüsselter Datenrahmen aus der OCM-Schaltung 525 ausgelesen. Im Schritt 810 wird die zum Entschlüsseln des empfangenen Datenrahmens benötigte Verschlüsselungsinformation aus der OCM-Schaltung 525 ausgelesen. Die Verschlüsselungsinformation kann der Verschlüsselungsinformation entsprechen, die mit Bezug zu 7 erläutert ist und kann in einem Hash-Speicher innerhalb der OCM-Schaltung 525 enthalten sein. Der Hash-Speicher kann durch die MAC-Software für das Abrufen von Verschlüsselungsinformation beim Empfang eingerichtet und bewahrt werden. Dieser kann Verschlüsselungsinformation für jedes Empfänger/Sender-Paar aufweisen. Seine Kapazität kann dynamisch und nach Bedarf durch die MAC-Software eingestellt werden.
  • Im Schritt 815 werden zusätzliche Verschlüsselungsdaten erstellt, die wiederum den zusätzlichen Verschlüsselungsdaten und deren Erzeugung entsprechen, wie dies mit Bezug zu 7 erläutert sind.
  • Sobald die Verschlüsselungsinformation und die zusätzlichen Verschlüsselungsdaten verfügbar sind, werden die in dem verschlüsselten Datenrahmen enthaltenen verschlüsselten Daten mittels der Verschlüsselungsschaltung 540 im Schritt 820 entschlüsselt. Der Entschlüsselungsschritt 820 kann das Entschlüsseln eines verschlüsselten Integritätswerts umfassen, der in dem verschlüsselten Datenrahmen enthalten ist. Im Schrift 825 wird der Integritätswert erneut aus den in dem Datenrahmen enthaltenen Daten mit Ausnahme des verschlüsselten Integritätswertes berechnet. Der Integritätswert und dessen Berechnung 825 kann der in Bezug auf 7 aufgeführten Erläuterung entsprechen.
  • In der vorliegenden Ausführungsform bestimmt die zweckgebundene Einkapselungs-/Extraktionsschaltung 535 im Schritt 830, ob es Unterschiede zwischen dem aus dem Schritt 820 resultierenden entschlüsselten Integritätswert und dem im Schritt 825 berechneten Integritätswert gibt und berechnet einen Wert, der die festgestellten Unterschiede kennzeichnet. Im Schritt 835 wird der Differenzwert in den entschlüsselten Datenrahmen eingefügt.
  • Wenn die Datenrahmenextraktion 860 mit den Schritten 810 bis 835 abgeschlossen ist, wird der entschlüsselte Datenrahmen im Schritt 840 in die OCM-Schaltung 525 geschrieben. Zu einem beliebigen späteren Zeitpunkt wird im Schritt 845 der entschlüsselte Datenrahmen von der OCM-Schaltung 525 zu der Zentral-CPU/Speicher gesendet. Dies kann die Entschlüsselung unabhängig von Wartezeiten bei Interruptreaktionen machen und kann einen vielfachen Datentransfer zwischen dem Zentralrechner und einer zugeordneten Entschlüsselungsbeschleunigungshardware über entsprechende Busse vermeiden. Die festgestellten Unterschiede zwischen dem erneut berechneten und entschlüsselten Integritätswert werden zu der MAC-Software auf der CPU 505 durch die Verschlüsselungsschaltung 540 gesendet.
  • Die Treibersoftware 410, 510 bestimmt im Schritt 850, ob es Unterschiede zwischen dem entschlüsselten Integritätswert und dem berechneten Integritätswert gibt. Wenn dies der Fall ist, kann die Treibersoftware 410, 510 eine erforderliche Reaktion durchführen, beispielsweise (Michael) Gegenmaßnahmen ergreifen zum Begrenzen der Informationsmenge, die für einen möglichen nicht befugten WLAN-Eindringling verfügbar ist, indem Software-implementierte Anweisungen im Schritt 855 auf der Grundlage der empfangenen Unterschiede ausgeführt werden.
  • Wie aus 8 ersichtlich ist, können alle Aufgaben mit strengen zeitlichen Randbedingungen, d. h. alle Schritte der Datenrahmenextraktion 860, durch die einzelzweckgebundene bzw. zweckgebundene Einkapselungs-/Extraktionsschaltung 535 auf dem WLAN-Chip 520, 520 ohne eine Wechselwirkung mit der Treibersoftware 410, 510 ausgeführt werden.
  • Die Datenrahmeneinkapselung und/oder Extraktion kann unter Anwendung verschiedener Verschlüsselungsprotokolle ausgeführt werden. In einer Ausführungsform kann das TKIP-Protokoll angewendet werden. In dieser Ausführungsform können die Aufgaben für die Datenrahmeneinkapselung und/oder Extraktion RC4, CRC-32 und Michael MIC umfassen. Die RC4-Verschlüsselung kann in der zweckgebundenen Einkapselungs-/Extraktionsschaltung 535 implementiert sein, wobei dieser Teil eine effiziente leistungsberücksichtigende Baumarchitektur aufweist, ohne dass ein Bedarf für einen SRAM (statischer Speicher mit wahlfreiem Zugriff) Verwendung besteht. Alle Datenzugriffe, die zum Verschlüsseln oder Entschlüsseln eines Bytes eines Datenrahmens erforderlich sind, können über drei Arbeitsperioden der zweckgebundenen Einkapselungs-/Extraktionsschaltung 535 aufgeteilt werden. Es sind nur die notwendigen Baumsegmente aktiviert, beispielsweise geladen und/oder eingeschaltet, die die Baumsegmente zwischen der Wurzel und den beiden Blättern zum Verschlüsseln oder Entschlüsseln eines Bytes eines Datenrahmens repräsentieren. Die verbleibenden Leitungen und/oder Gatter bleiben auf niedrigrem Pegel.
  • In einer weiteren Ausführungsform kann die Datenrahmeneinkapselung und/oder Extraktion in Übereinstimmung mit dem CCMP-Protokoll erreicht werden. In dieser Ausführungsform können die Datenrahmeneinkapselungs- und/oder Extraktionsaufgaben eine CCMP-AES-Verschlüsselung und/oder Entschlüsselung und eine MIC-Berechnung auf CCMP-AES-Basis aufweisen. Ein Durchlauf der AES-Verschlüsselung 234 kann in vier Arbeitsperioden der zweckgebundenen Einkapselungs-/Extraktionsschaltung 535 realisiert werden. In der vorliegenden Ausführungsform können 20 kryptographische Substitutionszuordnungen erforderlich sein, die der Reihe nach mittels einer zweckgebundenen CCMP-AES-Schaltung realisiert werden können, die in der zweckgebundenen Einkapselungs-/Extraktionsschaltung 535 enthalten ist. Dies kann zu einer geringeren Anzahl an Gattern im Vergleich zum Stand der Technik führen. Die zweckgebundene CCMP-AES-Schaltung kann mit nur lediglich 5 kryptographischen Substitutionsbereichen arbeiten.
  • Wie aus der vorhergehenden Beschreibung der Ausführungsformen ersichtlich wird, kann die vorliegende Erfindung zum Implementieren der 802.11i Sicherheitserweiterung in einer Hardware/Software geteilten bzw. partitionierten MAC-Architektur angewendet werden. Es wird damit eine neue Funktionalität bereitgestellt. Die zum Realisieren der 802.11i Sicherheitserweiterung erforderlichen Funktionen können in eine Teilmenge aufgeteilt werden, die innerhalb einer Treibersoftware 410, 510 realisiert ist, die auf einer zentralen CPU 505 läuft, und ferner in eine komplementäre Teilmenge, die durch eine zweckgebundene bzw. zugeordnete Hardware realisiert wird. Lediglich Aufgaben mit strenger zeitlicher Vorgabe werden der zweckgebundenen Hardware zugeordnet und die stets verfügbaren Zentral-CPU 505 kann für alle anderen Aufgaben verwendet werden, um somit Hardwareaufwand einzusparen. In einer Ausführungsform werden alle mit der Authentisierung verknüpften Aufgaben des 802.11i der Software zugewiesen. Diese werden lediglich ein mal bei der Authentisierung durchgeführt. Alle Einkapselungs- und Extraktionsaufgaben von Datenrahmen können auf einer zugeordneten Hardware, die bei 11 MHz Taktfrequenz betrieben wird, verwirklicht werden.
  • Die vorliegende Hardware/Software-partionierte Architektur für die 802.11i Sicherheitserweiterung kann in Verbindung mit dem Am 1772 WLAN-Produkt von AMD angewendet werden.
  • Wie zuvor erläutert ist, kann die Hardware/Software-Aufteilung so gewählt werden, dass eine Einkapselung und eine Extraktion mit aktualisierten Paket-Sequenzzahlen möglich ist. Empfangene Datenrahmen mit kleinerer Paketzahl im Vergleich zu bereits empfangenen Datenrahmen werden verworfen.
  • Ferner kann die Hardware/Software-partionierte Verschlüsselungsarchitektur zu einer Unabhängigkeit von Wartezeiten, d. h. von Verzögerungen in Verbindung mit Interrupt-Abarbeitungen, an der Schnittstelle 515 zwischen der zugeordneten WLAN-Hardware 520 und dem Softwaretreiber führen, der in dem Zentralprozessor 505 des Systems installiert ist. Bei Empfang kann das Entschlüsseln und die MIC-Berechnung innerhalb der Hardwarepartition begonnen werden, ohne dass eine Wechselwirkung mit der Softwarepartition stattfindet.
  • Obwohl die Erfindung mit Bezug zu den physikalischen Ausführungsformen, die in Übereinstimmung damit aufgebaut sind, beschrieben ist, erkennt der Fachmann, dass diverse Modifizierungen, Variationen und Verbesserungen der vorliegenden Erfindung in Anbetracht der obigen Lehre und im Bereich der angefügten Patentansprüche durchgeführt werden können, ohne von dem Grundgedanken und dem beabsichtigten Schutzbereich der Erfindung abzuweichen. Ferner sind jene Bereiche, von denen angenommen wird, dass der Fachmann mit ihnen vertraut ist, hierin nicht beschrieben, um die Erfindung nicht unnötig zu verdunkeln. Selbstverständlich ist somit die Erfindung nicht als durch die speziellen anschaulichen Ausführungsformen eingeschränkt zu sehen, sondern diese ist lediglich durch den Bereich der angefügten Patentansprüche definiert.

Claims (74)

  1. Verfahren zum Durchführen einer verschlüsselten WLAN-(drahtloses Nahbereichsnetzwerk) Kommunikation, mit den Schritten: Durchführen einer Verbindungsinitialisierung der verschlüsselten WLAN-Kommunikation; und Durchführen einer Datenrahmeneinkapselung (760) und/oder Extraktion (860) während der verschlüsselten WLAN-Kommunikation; wobei die Verbindungsinitialisierung durch Ausführen Software-implementierter Anweisungen ausgeführt wird; und wobei die Datenrahmeneinkapselung und/oder Extraktion durch Betreiben einer zweckgebundenen Hardware (420, 440, 520, 535, 540, 545) ausgeführt wird; und wobei der Schritt des Ausführens der Datenrahmeneinkapselung und/oder Extraktion das Erzeugen (725, 815) kryptographischer Daten umfasst, die zum Verschlüsseln oder Entschlüsseln eines Datenrahmens geeignet sind.
  2. Das Verfahren nach Anspruch 1, wobei der Schritt des Ausführens der Verbindungsinitialisierung das Authentisieren (610) einer WLAN-Station durch eine weitere WLAN-Station und/oder einen WLAN-Authentisierungsserver umfasst.
  3. Das Verfahren nach Anspruch 1 oder 2, wobei der Schritt des Ausführens der Verbindungsinitialisierung das Verbinden (620) einer WLAN-Station mit einer weiteren WLAN-Station und/oder einem WLAN-Zugriffspunkt als WLAN-Kommunikationspartner umfasst.
  4. Das Verfahren eines der Ansprüche 1 bis 3, wobei der Schritt des Ausführens der Verbindungsinitialisierung das Austauschen (630) kryptographischer Schlüssel zwi schen einer WLAN-Station und einer weiteren WLAN-Station und/oder einem WLAN-Zugriffspunkt umfasst.
  5. Das Verfahren eines der Ansprüche 1 bis 4, wobei das Durchführen der verschlüsselten WLAN-Kommunikation ferner das Erhalten (705) mehrerer Datenrahmen, die für die Datenrahmeneinkapselung vorgesehen sind, von einer Treibersoftware umfasst.
  6. Das Verfahren nach Anspruch 5, wobei das Durchführen der verschlüsselten WLAN-Kommunikation ferner das Auswählen (710) eines der mehreren Datenrahmen für die Datenrahmeneinkapselung umfasst, indem ein prioritätenerzeugender Algorithmus, der in der zweckgebundenen Hardware implementiert ist, ausgeführt wird.
  7. Das Verfahren nach Anspruch 5 oder 6, wobei der Schritt des Durchführens der Datenrahmeneinkapselung das Einfügen (720) einer Paketzahl und/oder einer Sequenzzahl in einen der mehreren Datenrahmen umfasst.
  8. Das Verfahren eines der Ansprüche 5 bis 7, wobei der Schritt des Durchführens der Datenrahmeneinkapselung das Verschlüsseln (730) mindestens eines Teils eines der mehreren Datenrahmen umfasst.
  9. Das Verfahren eines der Ansprüche 5 bis 8, wobei der Schritt des Durchführens der Datenrahmeneinkapselung das Berechnen (735) eines Integritätswertes umfasst, der zum Verifizieren des Integrität eines der mehreren Datenrahmen geeignet ist, sobald die Datenrahmenextraktion abgeschlossen ist.
  10. Das Verfahren nach Anspruch 9, wobei der Schritt des Durchführens der Datenrahmeneinkapselung das Verschlüsseln (740) des Integritätswertes umfasst.
  11. Das Verfahren nach Anspruch 10, wobei der Schritt des Durchführens der Datenrahmeneinkapselung das Einfügen (745) des verschlüsselten Integritätswertes in einen der mehreren Datenrahmen umfasst.
  12. Das Verfahren eines der Ansprüche 1 bis 11, wobei das Durchführens der verschlüsselten WLAN-Kommunikation ferner das Empfangen eines Datenrahmens, der für die Datenrahmenextraktion vorgesehen ist, von einer WLAN-Station und/oder einem WLAN-Zugriffspunkt umfasst.
  13. Das Verfahren nach Anspruch 12, wobei der Schritt des Durchführens der Datenrahmenextraktion das Entschlüsseln (820) zumindest eines Teils des Datenrahmens umfasst.
  14. Das Verfahren nach Anspruch 13, wobei der Datenrahmen einen verschlüsselten Integritätswert aufweist, der zum Verifizieren der Integrität des Datenrahmens geeignet ist, sobald die Datenrahmenextraktion abgeschlossen ist, und wobei der Schritt des Entschlüsselns zumindest eines Teils des Datenrahmens das Entschlüsseln des verschlüsselten Integritätswerts umfasst.
  15. Das Verfahren nach Anspruch 14, wobei der Schritt des Durchführens der Datenrahmenextraktion ferner das Berechnen (825) des Integritätswerts aus zumindest einem Teil des Datenrahmens mit Ausnahme des verschlüsselten Integritätswertes umfasst.
  16. Das Verfahren nach Anspruch 15, wobei der Schritt des Durchführens der Datenrahmenextraktion ferner das Berechnen (830) eines Integritätsverifizierungswertes umfasst, der eine Differenz zwischen dem entschlüsselten Integritätswert und den berechneten Integritätswert kennzeichnet.
  17. Das Verfahren nach Anspruch 16, wobei der Schritt des Durchführens der Datenrahmenextraktion ferner das Einfügen (835) des Integritätsverifizierungswertes in den Datenrahmen umfasst.
  18. Das Verfahren nach Anspruch 17, wobei das Durchführen der verschlüsselten WLAN-Kommunikation ferner das Ausführen (855) von Gegenmaßnahmen entsprechend dem Integritätsverifizierungswerts umfasst, indem Software-implementierte Anweisungen ausgeführt werden, wobei die Gegenmaßnahmen geeignet sind, die für einen nicht berechtigten WLAN-Eindringling verfügbare Informationsmenge zu begrenzen.
  19. Das Verfahren eines der Ansprüche 5 bis 11, wobei der Schritt des Erhaltens der mehreren Datenrahmen das Erhalten mehrerer Datenrahmen mit Verschlüsselungsinformation, die einen bestimmenden Faktor zum Durchführen der Datenrahmeneinkapselung und/oder Extraktion kennzeichnet, umfasst.
  20. Das Verfahren eines der Ansprüche 1 bis 19, wobei der Schritt des Durchführens der Datenrahmenextraktion das Erhalten (810) von Verschlüsselungsinformation, die einen bestimmenden Faktor zur Durchführung der Datenrahmeneinkapselung und/oder Extraktion kennzeichnet, aus einer Speichereinheit (525) innerhalb der zweckgebundenen Hardware umfasst.
  21. Das Verfahren nach Anspruch 19, wobei der bestimmende Faktor eine Möglichkeit beinhaltet, mit der ein für die Datenrahmeneinkapselung vorgesehener Datenrahmen fragmentierbar ist.
  22. Das Verfahren nach einem der Ansprüche 19 bis 21, wobei der bestimmende Faktor ein Verschlüsselungsprotokoll umfasst, das zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion geeignet ist.
  23. Das Verfahren eines der Ansprüche 19 bis 22, wobei der bestimmende Faktor einen kryptographischen Schlüssel aufweist, der zum Verschlüsseln oder Entschlüsseln eines Datenrahmens geeignet ist.
  24. Das Verfahren nach einem der Ansprüche 1 bis 23, wobei der Schritt des Erzeugens kryptographischer Daten das Erzeugen von Authentisierungsdaten umfasst, die zum Verschlüsseln eines Datenrahmens in einer für eine WLAN-Station spezifischen Weise geeignet sind, oder zum Entschlüsseln eines Datenrahmens geeignet sind, der in einer für eine WLAN-Station spezifischen Weise verschlüsselt ist.
  25. Das Verfahren eines der Ansprüche 1 bis 24, wobei die verschlüsselte WLAN-Kommunikation auf der Grundlage des IEEE 802.11i Sicherheitsstandards ausgeführt wird.
  26. Das Verfahren eines der Ansprüche 1 bis 25, wobei die verschlüsselte WLAN-Kommunikation in einem WLAN auf Grundlage des IEEE 802.11b Standards ausgeführt wird.
  27. Das Verfahren eines der Ansprüche 1 bis 26, wobei die Software-implementierten Anweisungen in einer Hardware (505) für allgemeine Zwecke mittels Treibersoftware (410, 510) ausgeführt werden.
  28. Das Verfahren eines der Ansprüche 1 bis 27, wobei die zweckgebundene Hardware periodisch betrieben wird.
  29. Das Verfahren nach Anspruch 28, wobei die zweckgebundene Hardware periodisch bei 11 MHz betrieben wird.
  30. Das Verfahren nach Anspruch 28 oder 29, wobei die Datenrahmeneinkapselung und/oder Extraktion entsprechend dem TKIP-(Integritätsprotokoll mit temporären Schlüssel) Protokoll ausgeführt wird.
  31. Das Verfahren nach Anspruch 30, wobei der Schritt des Durchführens der Datenrahmeneinkapselung und/oder Extraktion das Ausführen einer RC4-(Rivestverschlüsselung 4) Verschlüsselung und/oder Entschlüsselung umfasst.
  32. Das Verfahren nach Anspruch 31, wobei die RC4-Verschlüsselung und/oder Entschlüsselung durch Betreiben mindestens eines Teils der zweckgebundenen Hardware ausgeführt wird.
  33. Das Verfahren nach Anspruch 32, wobei der Teil der zweckgebundenen Hardware eine Baumarchitektur aufweist.
  34. Das Verfahren nach Anspruch 33, wobei die RC4-Verschlüsselung und/oder Entschlüsselung ausgeführt wird, indem lediglich ein Teilbereich der zweckgebundenen Hardware entsprechend der Baumwurzel ausgeführt wird, wobei ein Teil der Baumblätter und die Baumkomponenten die Baumwurzel mit dem Teil der Baumblätter verbinden.
  35. Das Verfahren nach Anspruch 34, wobei der Teilbereich der zweckgebundenen Hardware der Baumwurzel entspricht, wobei zwei der Baumblätter und die Baumkomponenten die Baumwurzel mit den zwei Baumblättern verbinden.
  36. Das Verfahren eines der Ansprüche 31 bis 35, wobei der Schritt des Ausführens der RC4-Verschlüsselung und/oder Entschlüsselung das Verschlüsseln oder Entschlüsseln zumindest eines Teils eines Datenrahmens mit Bytes umfasst, und wobei die RC4-Verschlüsselung und/oder Entschlüsselung über zumindest zwei Betriebsperioden der zweckgebundenen Hardware aufgeteilt wird, um ein Byte des Datenrahmens zu verschlüsseln oder zu entschlüsseln.
  37. Das Verfahren nach Anspruch 28 oder 29, wobei die Datenrahmeneinkapselung und/oder Extraktion entsprechend dem CCM-(Zählermodusverschlüsselung für verkettete Nachrichtenblock-Authentisierungscodierungsprotokoll) Protokoll ausgeführt wird.
  38. Das Verfahren nach Anspruch 37, wobei der Schritt des Durchführens der Datenrahmeneinkapselung und/oder Extraktion das Ausführen einer CCMP-AES-(fortschrittlicher Verschlüsselungsstandard) Verschlüsselung (234) und/oder Entschlüsselung umfasst.
  39. Das Verfahren nach Anspruch 38, wobei der Schritt des Ausführens der CCMP-AES-Verschlüsselung und/oder Entschlüsselung das Verschlüsseln oder Entschlüsseln zumindest eines Teils eines Datenrahmens mit Bytes umfasst, und wobei die CCMP-AES-Verschlüsselung und/oder Entschlüsselung ausgeführt wird, indem eine Sequenz aus Verschlüsselungs- oder Entschlüsselungs-Schritten (254, 256, 258, 260) an dem Teil des Datenrahmens wiederholt ausgeführt wird.
  40. Das Verfahren nach Anspruch 39, wobei der Schritt des Ausführens der Sequenz aus Verschlüsselungs- oder Entschlüsselungsschritten das Ausführen einer Bytessubstitution (254) umfasst, wobei mehrere krytographische Substitutionsfelder verwendet werden.
  41. Das Verfahren nach Anspruch 40, wobei der Schritt des Ausführens der Bytesubstitution an dem Teil des Datenrahmens das sequenzielle Ausführen der Bytesubstitution an mehreren Unterbereichen des Teiles des Datenrahmens umfasst.
  42. Das Verfahren eines der Ansprüche 39 bis 41, wobei der Schritt des Ausführens der Sequenz der Verschlüsselungs- oder Entschlüsselungsschritte über mindestens zwei Betriebsperioden der zweckgebundenen Hardware aufgeteilt wird.
  43. Zweckgebundene Hardwareeinrichtung (420, 520) zum Ausführen einer Datenrahmeneinkapselung (760) und/oder Extraktion (860) während einer WLAN-(drahtloses Nahbereichsnetzwerk) Kommunikation, mit: internen Hardwarekomponenten (440, 525, 530, 535, 540, 545, 550); und einer Schnittstelle (515) zur Kommunikation mit einer externen Hardwarekomponente (505), die ausgebildet ist, eine Verbindungsinitialisierung für die verschlüsselte WLAN-Kommunikation durch Ausführen Software-implementierter Anweisungen auszuführen; wobei die internen Hardwarekomponenten interne zweckgebundene Hardwarekomponenten (440, 535, 540, 545) zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion nach Abschluss der Verbindungsinitialisierung aufweist; und wobei die Internen Hardwarekomponenten ausgebildet sind, kryptographische Daten zu erzeugen, die zum Verschlüsseln oder Entschlüsseln eines Datenrahmens geeignet sind.
  44. Die zweckgebundene Hardwareeinrichtung nach Anspruch 43, die ausgebildet ist, das Verfahren eines der Ansprüche 5 bis 42 auszuführen.
  45. Die zweckgebundene Hardwareeinrichtung nach Anspruch 43 oder 44, wobei die internen Hardwarekomponenten ferner einen internen Speicher (525) aufweist, um Datenrahmen zu speichern, die für die Datenrahmeneinkapselung oder Extraktion vorgesehen sind oder daraus resultieren.
  46. Die zweckgebundene Hardwareeinrichtung nach Anspruch 45, wobei der interne Speicher eine Arbitrierungseinheit zum Ausführen einer Speicherzugriffssteuerung umfasst.
  47. Die zweckgebundene Hardwareeinrichtung nach Anspruch 45 oder 46, wobei der interne Speicher einen Hash-Speicher zum Speichern von Verschlüsselungsinformation aufwiest, die einen bestimmenden Faktor zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion kennzeichnet.
  48. Die zweckgebundene Hardwareeinrichtung nach Anspruch 47, wobei der bestimmende Faktor ein Verschlüsselungsprotokoll aufweist, das zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion geeignet ist.
  49. Die zweckgebundene Hardwareeinrichtung nach Anspruch 47 oder 48, wobei der bestimmende Faktor einen kryptographischen Schlüssel aufweist, der zum Verschlüsseln oder Entschlüsseln eines Datenrahmens geeignet ist.
  50. Die zweckgebundene Hardwareeinrichtung nach einem der Ansprüche 45 bis 49, wobei die internen Hardwarekomponenten ferner eine Radio-Sender-Empfänger-Einrichtung (530) zum Empfangen von Datenrahmen von und/oder zum Senden (755) von Datenrahmen zu einer WLAN-Station und/oder einem WLAN-Zugriffspunkt aufweisen.
  51. Die zweckgebundene Hardwareeinrichtung nach Anspruch 50, wobei die internen zweckgebundenen Hardwarekomponenten eine kryptographische Komponente (540) zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion und eine MAC-(Mediumszugriffssteuerung) Komponente (545) zur Kommunikation mit der Radio-Sender-Empfänger-Einrichtung aufweisen.
  52. Die zweckgebundene Hardwareeinrichtung nach Anspruch 51, wobei die kryptographische Komponente und der interne Speicher so ausgebildet sind, um miteinander kommunizieren zu können.
  53. Die zweckgebundene Hardwareeinrichtung nach Anspruch 51 oder 52, wobei die kryptographische Komponente und die MAC-Komponente ausgebildet sind, miteinander kommunizieren zu können.
  54. Die zweckgebundene Hardwareeinrichtung nach einem der Ansprüche 51 bis 53, wobei die MAC-Komponente und der interne Speicher ausgebildet sind, um miteinander kommunizieren zu können.
  55. Die zweckgebundene Hardwareeinrichtung nach einem der Ansprüche 51 bis 54, wobei der interne Speicher ausgebildet ist, um über die Schnittstelle mit der externen Hardwarekomponente zu kommunizieren.
  56. Integrierter Schaltungschip (420, 520) zum Ausführen einer Datenrahmeneinkapselung (760) und/oder Extraktion (860) während einer verschlüsselten WLAN-(drahtloses Nahbereichsnetzwerk) Kommunikation, mit: internen integrierten Schaltungen (440, 525, 530, 535, 540, 545, 550); und mindestens einem Datenbus (515) zur Kommunikation mit einer externen CPU (zentrale Recheneinheit) (505), die ausgebildet ist, eine Verbindungsinitialisierung für die verschlüsselte WLAN-Kommunikation durch Ausführen Software-implementierter Anweisungen auszuführen; wobei die internen integrierten Schaltungen interne zweckgebundene integrierte Schaltungen (440, 535, 540, 545) zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion nach Abschluss der Verbindungsinitialisierung umfassen; und wobei die internen integrierten Schaltungen ausgebildet sind, kryptographische Daten zu erzeugen, die zum Verschlüsseln oder Entschlüsseln eines Datenrahmens geeignet sind.
  57. Der integrierte Schaltungschip nach Anspruch 56, der ausgebildet ist, das Verfahren nach einem der Ansprüche 5 bis 42 auszuführen.
  58. Der integrierte Schaltungschip nach Anspruch 56 oder 57, wobei die internen integrierten Schaltungen ferner eine OCM-(chipinterner Speicher) Schaltung (525) zum Speichern von Datenrahmen aufweisen, die für die Datenrahmeneinkapselung oder Extraktion vorgesehen sind oder aus dieser resultieren.
  59. Der integrierte Schaltungschip nach Anspruch 58, wobei die OCM-Schaltung eine Arbitrierungsschaltung zum Ausführen einer Speicherzugriffssteuerung umfasst.
  60. Der integrierte Schaltungschip nach Anspruch 58 oder 59, wobei die OCM-Schaltung eine Hash-Speicherschaltung zum Speichern von Verschlüsselungsinformationen umfasst, die einen bestimmenden Faktor zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion kennzeichnet.
  61. Der integrierte Schaltungschip nach Anspruch 60, wobei der bestimmende Faktor ein Einkapselungs- und/oder Extraktionsprotokoll aufweist, das zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion geeignet ist.
  62. Der integrierte Schaltungschip nach Anspruch 60 oder 61, wobei der bestimmende Faktor einen krypotgraphischen Schlüssel aufweist, der zum Verschlüsseln oder Entschlüsseln eines Datenrahmens geeignet ist.
  63. Der integrierte Schaltungschip eines der Ansprüche 60 bis 62, wobei die internen integrierten Schaltungen ferner eine Radio-Sender-Empfänger-Schaltung (530) zum Empfangen von Datenrahmen von und/oder Senden (755) von Datenrahmen zu einer WLAN-Station und/oder einem WLAN-Zugriffspunkt aufweisen.
  64. Der integrierte Schaltungschip nach Anspruch 63, wobei die internen zweckgebundenen integrierten Schaltungen eine Verschlüsselungsschaltung (540) zum Ausführen der Datenrahmeneinkapselung und/oder Extraktion und eine MAC-(Mediumzugriffssteuerung) Schaltung (545) zur Kommunikation mit der Radio-Sender-Empfänger-Schaltung umfassen.
  65. Der integrierte Schaltungschip nach Anspruch 64, wobei die Verschlüsselungsschaltung und die OCM-Schaltung ausgebildet sind, um miteinander kommunizieren zu können.
  66. Der integrierte Schaltungschip nach Anspruch 64 oder 65, wobei die Verschlüsselungsschaltung und die MAC-Schaltung ausgebildet sind, miteinander kommunizieren zu können.
  67. Der integrierte Schaltungschip nach einem der Ansprüche 64 bis 66, wobei die MAC-Schaltung und die OCM-Schaltung ausgebildet sind, miteinander kommunizieren zu können.
  68. Der integrierte Schaltungschip nach einem der Ansprüche 64 bis 67, wobei die OCM-Schaltung ausgebildet ist, über den mindestens einen Datenbus mit der externen CPU zu kommunizieren.
  69. Computerprogrammprodukt (410, 510) zum Ausführen einer verschlüsselten WLAN-(drahtloses Nahbereichsnetzwerk) Kommunikation mit: einer Computerprogrammeinrichtung (430) zum Ausführen einer Verbindungsinitialisierung für die verschlüsselte WLAN-Kommunikation; und einer Computerprogrammeinrichtung zur Kommunikation über eine Schnittstelle (515) mit einer zweckgebundenen Hardwareeinrichtung (420, 520), die ausgebildet ist, eine Datenrahmeneinkapselung (760) und/oder Extraktion (860) während der verschlüsselten WLAN-Kommunikation auszuführen; wobei die Verbindungsinitialisierung durch Ausführen Software-implementierter Anweisungen durchgeführt wird; und wobei die zweckgebundene Hardwareeinrichtung ausgebildet ist, kryptographische Daten zu erzeugen, die zum Verschlüsseln oder Entschlüsseln eines Datenrahmens geeignet sind.
  70. Das Computerprogrammprodukt nach Anspruch 69, das ausgebildet ist, das Verfahren eines der Ansprüche 1 bis 42 auszuführen.
  71. Computersystem zum Ausführen einer verschlüsselten WLAN-(drahtloses Nahbereichsnetzwerk) Kommunikation, mit: einer ersten Einrichtung (505) zum Ausführen einer Verbindungsinitialisierung für die verschlüsselte WLAN-Kommunikation; und einer zweiten Einrichtung (420, 520) zum Ausführen einer Datenrahmeneinkapselung (760) und/oder Extraktion (860) während der verschlüsselten WLAN-Kommunikation; wobei die erste Einrichtung zum Ausführen der Verbindungsinitialisierung durch Ausführen Software-implementierter Anweisungen dient; und wobei die zweite Einrichtung eine zweckgebundene Hardwareeinrichtung (420, 440, 520, 535, 540, 545) umfasst, die ausgebildet ist, kryptographische Daten zu erzeugen, die zum Verschlüsseln oder Entschlüsseln eines Datenrahmens geeignet sind.
  72. Das Computersystem nach Anspruch 71, wobei das Computersystem ausgebildet ist, das Verfahren eines der Ansprüche 1 bis 42 auszuführen.
  73. Das Computersystem nach Anspruch 71 oder 72, wobei die erste Einrichtung das Computerprogrammprodukt nach Anspruch 69 oder 70 umfasst.
  74. Das Computersystem nach einem der Ansprüche 71 bis 73, wobei die zweite Einrichtung eine zweckgebundene Hardwareeinrichtung eines der Ansprüche 43 bis 55 enthält.
DE102004004799A 2004-01-30 2004-01-30 Hardware/Software-Partitionierung für verschlüsselte WLAN-Verbindungen Expired - Lifetime DE102004004799B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102004004799A DE102004004799B4 (de) 2004-01-30 2004-01-30 Hardware/Software-Partitionierung für verschlüsselte WLAN-Verbindungen
US10/816,687 US7627747B2 (en) 2004-01-30 2004-04-02 Hardware/software partitioning for encrypted WLAN communications

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102004004799A DE102004004799B4 (de) 2004-01-30 2004-01-30 Hardware/Software-Partitionierung für verschlüsselte WLAN-Verbindungen

Publications (2)

Publication Number Publication Date
DE102004004799A1 DE102004004799A1 (de) 2005-08-25
DE102004004799B4 true DE102004004799B4 (de) 2010-02-18

Family

ID=34801321

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004004799A Expired - Lifetime DE102004004799B4 (de) 2004-01-30 2004-01-30 Hardware/Software-Partitionierung für verschlüsselte WLAN-Verbindungen

Country Status (2)

Country Link
US (1) US7627747B2 (de)
DE (1) DE102004004799B4 (de)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7697688B1 (en) 2004-10-27 2010-04-13 Marvell International Ltd. Pipelined packet encapsulation and decapsulation for temporal key integrity protocol employing arcfour algorithm
US7742594B1 (en) * 2004-10-27 2010-06-22 Marvell International Ltd. Pipelined packet encryption and decryption using counter mode with cipher-block chaining message authentication code protocol
US7921463B2 (en) * 2005-09-30 2011-04-05 Intel Corporation Methods and apparatus for providing an insertion and integrity protection system associated with a wireless communication platform
US20070081673A1 (en) * 2005-10-07 2007-04-12 Texas Instruments Incorporated CCM encryption/decryption engine
US20070110225A1 (en) * 2005-11-16 2007-05-17 Sub-Crypto Systems, Llc Method and apparatus for efficient encryption
JP4759373B2 (ja) 2005-11-21 2011-08-31 キヤノン株式会社 通信装置及び通信方法、並びにコンピュータプログラム
US7752449B1 (en) * 2006-02-22 2010-07-06 Avaya, Inc. System and method for generating a non-repudiatable record of a data stream
EP1841125A1 (de) * 2006-03-31 2007-10-03 Tzou, May Kommunikationssystem und -verfahren
US8233619B2 (en) * 2006-06-07 2012-07-31 Stmicroelectronics S.R.L. Implementation of AES encryption circuitry with CCM
US7831039B2 (en) * 2006-06-07 2010-11-09 Stmicroelectronics S.R.L. AES encryption circuitry with CCM
EP2255472B1 (de) * 2008-03-17 2016-11-23 Broadcom Corporation Verfahren und system für sichere blockbestätigung mit geschützter mac-sequenznummer
JP2011176582A (ja) * 2010-02-24 2011-09-08 Buffalo Inc 無線lan装置、無線lanシステム及びそのプログラム
US8494154B2 (en) * 2011-06-20 2013-07-23 Bae Systems Information And Electronic Systems Integration Inc. Cryptographic ignition key system
US8842828B2 (en) * 2012-08-01 2014-09-23 Qualcomm Incorporated System and method for hybrid multiple source decryption
RU2585988C1 (ru) * 2015-03-04 2016-06-10 Открытое Акционерное Общество "Байкал Электроникс" Устройство шифрования данных (варианты), система на кристалле с его использованием (варианты)
TWI631507B (zh) * 2016-03-04 2018-08-01 德凡特未來股份有限公司 動作判識裝置及其控制方法
US10783279B2 (en) * 2016-09-01 2020-09-22 Atmel Corporation Low cost cryptographic accelerator
US10642963B2 (en) 2016-12-08 2020-05-05 Ati Technologies Ulc Digital rights management for a GPU
US20200145392A1 (en) * 2018-11-07 2020-05-07 Qualcomm Incorporated Apparatus and methods for real time soft combining of decrypted data
WO2024148616A1 (zh) * 2023-01-13 2024-07-18 北京小米移动软件有限公司 无线通信方法和无线通信设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010055283A1 (en) * 2000-03-17 2001-12-27 Robert Beach Multiple wireless local area networks occupying overlapping physical spaces
WO2003067453A1 (en) * 2002-02-08 2003-08-14 Bermai, Inc. Medium access control in a wireless network

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7336783B2 (en) * 2003-01-24 2008-02-26 Samsung Electronics, C., Ltd. Cryptographic systems and methods supporting multiple modes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010055283A1 (en) * 2000-03-17 2001-12-27 Robert Beach Multiple wireless local area networks occupying overlapping physical spaces
WO2003067453A1 (en) * 2002-02-08 2003-08-14 Bermai, Inc. Medium access control in a wireless network

Also Published As

Publication number Publication date
DE102004004799A1 (de) 2005-08-25
US7627747B2 (en) 2009-12-01
US20050172119A1 (en) 2005-08-04

Similar Documents

Publication Publication Date Title
DE102004004799B4 (de) Hardware/Software-Partitionierung für verschlüsselte WLAN-Verbindungen
DE112005000523B4 (de) Zwei parallele Maschinen für Hochgeschwindigkeitssende-IPSEC-Verarbeitung
DE60121393T2 (de) Schlüsselverwaltungsverfahren für drahtlose lokale Netze
DE69028254T2 (de) Verfahren zur Verwendung eines verschlüsselten Schlüssels als Schlüsselidentifizierer in einem Datenpaket eines Rechnernetzes
DE102009024604B4 (de) Erzeugung eines Session-Schlüssels zur Authentisierung und sicheren Datenübertragung
DE60316222T2 (de) Chipkarte und Methode zur kryptographischen Kommunikation zwischen Chipkarten
DE60314060T2 (de) Verfahren und Vorrichtung zur Schlüsselverwaltung für gesicherte Datenübertragung
DE60206809T2 (de) Verfahren und Systeme zum Erzeugen von Chiffrierschlüsseln unter Verwendung von Zufallsbitfolgen
DE60302276T2 (de) Verfahren zur ferngesteuerten Änderung eines Kommunikationspasswortes
DE202015009800U1 (de) Sicherheits-Plug-In für eine System-on-a-Chip-Plattform
DE112020006159T5 (de) Protokoll zur gegenseitigen authentifizierung für systeme mit kommunikationsverbindungen mit niedrigem durchsatz und vorrichtungen zum durchführen desselben
DE102008046563A1 (de) Verfahren zur Datenübertragung zwischen Netzwerkknoten
DE102019113026A1 (de) Automobile nonce-missbrauchs-widerstandsfähige authentifizierte verschlüsselung
DE60203277T2 (de) Verfahren und system zur authentifizierung eines personal security device gegenüber mindestens einem fernrechnersystem
EP3304802B1 (de) Verfahren zur sicherstellung der informationssicherheit von über einen datenbus übertragenen daten sowie datenbussystem
DE19822795A1 (de) Verfahren und Anordnung zum rechnergestützten Austausch kryptographischer Schlüssel zwischen einer ersten Computereinheit und einer zweiten Computereinheit
DE112019001021T5 (de) Verschlüsseln von nutzlast und präambel in 10spe mit synchroner und selbst-synchroner verschlüsselung
EP3506144A1 (de) Verfahren und system zum überprüfen einer integrität einer kommunikation
EP3206154B1 (de) Verfahren und vorrichtungen zum sicheren übermitteln von nutzdaten
DE112006001707T5 (de) Verfahren und Vorrichtung zur Bereitstellung von Authentifizierungscode
DE60307719T2 (de) Austauschdaten unter Verwendung einer Verschlüsselung mit öffentlichem Schlüssel
DE102004009518A1 (de) Direktverschlüsselung/Entschlüsselung für WLAN-Kommunikation
DE602005000716T2 (de) Sicherung einer Kommunikationsverbindung zwischen Geräten.
DE102004004800B4 (de) Schnelle Chiffrierschlüsselsuche für WLAN-Empfänger
EP3520351B1 (de) Vorrichtung und verfahren zur durchgängigen und medienübergreifenden übertragung von kommunikationsprotokollen ohne protokollumsetzung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R071 Expiry of right