560 likes | 800 Views
Referat von Eno Vaso April / 2002. Überblick : Geschichte und Entwicklung Einleitung und Eckdaten Netzwerk-Definition / Topologien Die Technik Verbindungsarten Paketaufbau Die Kontaktaufnahme Bluetooth Physical Layer und Protokoll Layer Die Sicherheit
E N D
Überblick: • Geschichte und Entwicklung • Einleitung und Eckdaten • Netzwerk-Definition / Topologien • Die Technik • Verbindungsarten • Paketaufbau • Die Kontaktaufnahme • Bluetooth Physical Layer undProtokoll Layer • Die Sicherheit • Einsatzgebietevon Bluetooth • Bluetooth im Vergleich zu anderen Technologien • Zukunftsvisionen
Geschichte und Entwicklung • nach dem dänischen Wikingerkönig Blaatand (Blauzahn) benannte • 1984 entwickelten bereits zwei Telefonmittarbeiter von ERICSSONdas Verfahren • 1994 ERICSSON startet Studie mit dem Ziel eines low-power, low.cost Radio Interfaces zwischen Mobiltelefonen und dem Zubehör ohne Kabeln. • großes und viel versprechendes Segment mit hohem wachstumspotential • Mai 1998 gründeten ERICSSON, IBM, NOKIA, INTEL und TOSHIBA die Bluetooth Special Interest Group SIG mit dem Ziel der Entwicklung eines weltweiten Standards ohne Lizenzgebühren für Hersteller. • im Juli 1999 wurde der Bluetooth 1.0 Standard veröffentlicht • Die SIG hat heute über 2000 Mitglieder, • Aktueller Standard 1.1 wurde im April 2001 veröffentlicht, demnächst V2.0 • zur Zeit über 600 verschiedene Bluetooth Geräte am Markt
Einleitung • Bluetooth ist ein rechtlich geschützter Begriff • Kurzstreckenfunkbetriebene Netzwerk-Technologie • für Sprach- und Datenübertragung • Aufbau kleiner und flexibler ad-hoc- Funknetze • Preiswerte Technik ( 5 € pro BT-Modul ) • Kleine Technik, auf einem Chip zur Integration auf Kleinstgeräten • Geringer Strombedarf • Stabile und leistungsfähige Verbindungen • sehr universell einsetzbar • einheitliche Schnittstelle und offene Spezifikation • Die Bluetooth-Technologie ist Betriebssystemtunabhängig.
Eckdaten • operiert im freien 2.4GHz ISM Band. • 79 Kanäle von 2402-2480 MHz im Abstand 1 MHz, GFSK • 1600 Hops/s mit 625 µs/Hop • Reichweite 0-dBm-Versionen bis 10 m und 20- dBm-Versionen bis 100 m • 3 Leistungsklassen: (1): 100 mW mit power control, (2): 2,5 mW, (3):1 mW • Datenübertragungsrate derzeit maximal 721 Kbps / 57,6 Kbps asymetrisch sowie 434 kbps symetrisch ( 7 CH prp piconet) • 3 synchrone Sprachkanäle mit je 64 Kbps ( 3 CH pro piconet ) • Point-to-Point, Point-to-Multipoint- Verbindungen • Authentifizierung und Verschlüsselung auf Hardwareebene implementiert • Symmetrische und asymmetrische Übertragungsmodi • Jedem Gerät ist eine eindeutige 48-bit Adresse zugeordnet
Netzwerk-Definition • Piconet: bis zu 8 Geräte bilden ein gemeinsames örtlich begrenztes Netzwerk • pro Netz 1 Master, der rest Slaves ( können auch Master anderer Netze sein ) • Scatternet: Mehrere unabhängige Piconet´s bilden ein Scatternet Unterscheidung der Piconet‘s anhand ihrer Frequenz-hopping Sequenz • Master: Die Einheit im Piconet deren Takt und hopping Sequenzen zur Synchronisierung aller anderen Einheiten im Piconet dient • - Slave Einheit: Alle Einheiten im Piconet die kein Master sind
ISM-Band • Industrial-Scientific-Medical-Frequenzband • 2,4-GHz-ISM-Band ( 2,4 Ghz – 2,4835 Ghz ) • Bandbreite von B= 83,5 MHz ( USA / EUROPA) • Länderunterschiede • 79 RF-Kanäle • Kanalabstand von 1 MHz • lower Guard-band 2Mhz upper Guard-band 3,5Mhz
GFSK-Modulation • Sendefrequenz muss auf +/- 75 KHz genau sein • zur Reduktion der Bandbreite wird Datensignal vor der FM gefiltert • binäre 1 = positiver Frequenzhub und eine binäre 0 = negativer Fh. • Frequenzabweichung muss zwischen 140 kHz und 175 kHz liegen • BT=0,5 ; Schrittgeschwindigkeit vs = 1 Ms/s ; Modulationsindex 0,28 – 0,35
Frequenzhopping • Pseudo-Zufalls-Sprungfolge durch 79 Kanäle • Sprungfolge ist für jedes Piconet einzigartig • Kanal wird in Time-Slots geteilt ( jeder Slot eine hopfrequenz ) • Sprungrate beträgt 1600 hops/s • 1 Slot ist 625 µs lang
Frequenzhopping • Zeitschlitze werden durch den BT-Clock des Piconet Masters nummeriert • zyklische Nummerierung von 0 bis 2 hoch 27 • im Zeitschlitz können Master und Slave Pakete übermitteln • Time-Division-Duplex-Schema (TDD) wird genutzt • Master beginnt in gerade nummerierten Zeitschlitzen der Slave in ungeraden • Alle Bluethooth-Einheiten in einem Piconet, sind kanal-, zeit- und sprungsynchron
Multislotpakete • ein Paket kann sich über bis zu 5 Zeitschlitzen erstrecken • Die Sprungfrequenz bleibt für die Dauer des Paketes erhalten
Verbindungsarten • Synchronous-Connection-Oriented-Link (SCO) • Punkt-zu-Punkt-Verbindung zwischen Master und einem einzelnen Slave • reservierte Slots in regelmäßigen Abständen werden verwendet • Asynchronous-Connection-Less-Link (ACL) • Punkt-zu-Mehrpunkt Verbindung zwischen dem Master und Slaves im Piconet • nichtreservierte Slots ( SCO-Verbindung) können für eine ACL-Verbindung genutzt werden
SCO-Link • SCO-Link wird durch den Master hergestellt • symmetrische Punkt-zu-Punkt-Verbindung • für zeitgebundene Informationen, wie z.B. Sprache, geeignet • Master / Slave unterstützen dabei bis zu 3 gleiche Verbindungen • keine Paketwiederholung • reservierte Master-to-Slave-Slots haben einen ebenmäßigen Abstand • SCO-Slave antwortet mit SCO-Paket im folgenden Slave- to-Master-Slot ACL-Link • ACL-Verbindung unterstützt paketvermittelte Verbindung zwischen Master und allen aktiven Slaves in einem Piconet • Zwischen Master und Slave kann nur eine ACL-Verbindung existieren • Paketwiederholung angewandt wegen Datenvollständigkeit • Wenn es keine zu sendenden Daten gibt und kein Polling angefordert wurde, findet keine Übertragung statt
senden empfangen
Ablauf der Kommunikation • Standby Mode: alle 1,28 sek. auf 32 hopfrequenzen prüfen, ob Nachrichten anliegenes ist jetzt noch kein Netz aufgebaut ! • Verbindungsaufbau durch das Senden einer Page ( MAC bekannt ) oder Inquiry + Page(MAC unbekannt). Initiator=Master der Rest Slave ( jedes Gerät kann Initiator sein! ) - Page : Master sendet 16 identische PAGE Nachrichten auf 16 verschiedenen hopfreq. keine Antwort vom Slave: senden von Wake-up Sequenz auf restl. 16 hopfreq. • Verzögerung des Verbindungsaufbaus: max 2,56 s. ( 2x Wakeuptime ) ; normal 0.64 s. • - Inquiry : ähnl. der Page-Sequenz benötigt aber 1 Zykl. länger ( erhalten der Antworten ) gesendet wenn die Adressen der Geräte sind unbekannt sind ( Gerätefindung )
Die Verbindung steht jetzt Energieverbrauch+ SNIFFHOLDPARK - • Sromsparmodi(wenn keine Daten gesendet werden!) • SNIFF-mode : Slave Gerät fragt mit geringer Häufigkeit nach ob ein anderes Gerät mit ihm kommunizieren möchte. SNIFF Intervall ist programmierbar u. Application- abhängig • HOLD-mode : Master versetzt Slaves in Hold-mode Slaves können auch Holdmode beim Master anfordern ( nur ein interner Timer läuft jetzt noch in den Slaves ) • PARK-mode : SLAVE Gerät weiterhin im Piconot synchronisiert, aber kein Datenaustausch. Slave gibt ab und zu MAC ab (Resynchronisation)
Radio: Senden und Empfangen der modulierten Bitströme ( analoge Einheit ) • Baseband: im Zusammenspiel mit dem Link Manager Verbindungsaufbau / Erhaltung auf der physikalischen Ebene. • Inquiry- und Paging-Prozeduren • Packen der Pakete • Flußkontrolle • ’base level’ – Verschlüsselung • managen der SCO und ACL -Verbindung
Link Manager: • verantwortlich für Aufbau einer Verbindung ( incl. Sicherheitsaspekte ) • - Kontrolliert Arbeitszyklen der Radioeinheit, Verbindungszustände des Piconetzes und Energiespar-Modi ( SNIFF / HOLD / PARK -Mode) • Logical Link-Control and Adaption Protocol (L2CAP): • Adaption der Protokolle höherer Schichten • Segmentierung und reassembling der Pakete • Audio: • - Optional und einfach gehalten
Bluetooth Datensicherheit Inhaltsverzeichnis für Nachrichtenübermittlung29.11.2000 1. Sicherheit in Bluetooth 1.1 Anpassung der Funkreichweite 1.2 Frequenzy Hopping 2 Sicherheitsmechanismen 2.1 Schlüsselmanagements 2.2 Schlüsseltypen 3 Bluetooth Authentikation / Pairing 3.1 Schlüsselgenerierung und Initialisierung 3.2 Authentifizierung 3.3 Verschlüsselung 3.4 Punkt-zu-Multipunkt Verbindungen 3.5 Scatternet 4 Sicherheitsprofile 4.1 Sicherheitmodus 5 Probleme bei der Sicherheit von Bluetooth 5.1 Einschränkungen 5.2 Privatsphäre 6 Zusammenfassung und Ausblick
1. Sicherheit in Bluetooth Sicherheitskomponenten .Frequency Hopping . Authentikation . Payload encryption (Datenverschlüsselung) . Key handling (Schlüssel Behandlung) • 1.1 Anpassung der Funkreichweite • ständige Anpassung der Funkleistung • Einem passiven Lauscher wird das Abhören erschwert • Signalverrauschung mit zunehmender Entfernung 1m
1.2 Frequenzy Hopping Abbildung 1: Frequenzstufen - Frequenzberich 2,402 bis 2,48 GHz - Frequence Hopping - 1600 Frequenzsprünge (Hops) in der Sekunde. - ISM-Frequenzband mit 79 Frequenzstufen im 1MHz Abstand - GFSK (Gaussian Frequecy Shift Keying) mit Index von 0,28 bis 0,35
2. Sicherheitmechanismen • • Bluetooth enthält • – Adresse • • 48 Bit, weltweit einmalig, IEEE 802 Standard • – Payload Verschlüsselung • • 8-128 Bit Schlüsselstärke • – Authentikation • • 128 Bit Authentikationsschlüssel • – Payload Verschlüsselung • • 8-128 Bit Schlüsselstärke • 2.1 Schlüsselmanagement • - Bluetooth Address (BD ADDR) • - Privat User Key, Authentication (Link Key) • - Privat User Key, Encryption • Random Value (RAND) • Link Management (LM) Schlüssel Bitlänge BD_ADDR (Bluetooth-Adresse) 48 Private User Key (Authentication) 128 Private User Key (Encryption) 8-128
2.2 Schlüsseltypen • Encryption Key – Die Schlüsselstärke darf nicht verändert werden können – Stärke wird während der Herstellung des Gerätes festgelegt • Link Key – 128 Bit Zufallszahl die zwischen zwei Geräten geteilt wird (Shared Secret) – ist Parameter für die Encryption Key Generierung – Semipermanent / Temporär • wenn Temporär, dann nur solange wie das Gerät am Piconet teilnimmt • Semipermanente Schlüssel können mehrmals zur Authentikation benutzt werden
2.2 Schlüsseltypen 1 Initialisation Key (128 Bit) – wird erzeugt, wenn weder Unit Key noch Combination Key zur Verfügung stehen – Zur Generierung benutzte Daten sind • Bluetooth Adresse (BD_ADDR) • die Bluetooth PIN (Shared Secret) • Eine Zufallszahl (RAND) – Erzeugendes Verfahren ist E22
2.2 Schlüsseltypen 2. Unit Key / Combination Key (128 Bit) – unterscheiden sich nur in der Art der Generierung • Unit Key – Wird nur von einem einzelnen Gerät erzeugt – Wenn er bekannt wird, kann das Gerät imitiert werden – Wird innerhalb des Geräts erzeugt • Combination Key – Wird von zwei Geräten erzeugt – Wenn er bekannt wird, kann nur innerhalb dieser einen Verbindung ein Gerät imitiert werden
2.2 Schlüsseltypen 3 Master Key (128 Bit) – zwischen mehreren Geräten geteilter Schlüssel – für Gruppenkommunikation – gilt immer nur für eine Session • Encryption Key (128 Bit) – Wird aus dem jeweiligen Link Key abgeleitet – für die Payload Verschlüsselung – Als Startvektor für ein lineares, rückgekoppeltes Schieberegister
3. Bluetooth Authentikation / Pairing 3.1 Schlüsselgenerierung und Initialisierung PIN max.16 Octets Abbildung 3: Pairing zweier Bluetooth Einheiten • Generierung eines Initialisierungsschlüssels (Init Key) • - Authentifizierung • - Generierung eines Verbindungsschlüssels (Link Key: Unit-, Combination-, Master Key ) • Austausch desVerbindungsschlüssels • - Generierung eines Schlüssels für die Verschlüsselung (Encryption Key)
3.2 Authentifizierung: Abbildung 4: Challenge-Response Schema zur Authentifikation Algorithm E1: Input: RAND (128 bit), Claimant addr. (48 bit), link key (128) Output: SRES (32 bit), ACO (96 bit) One-sided or mutual authentication (einseitig oder gegenseitig) ACO = Authenticated Ciphering Offset SRES= signed response
PIN Random # Link key generation KLINK A (Verifier) B (Claimant) BD_ADDRB AU_RAND E1 (SAFER+) E1 (SAFER+) BD_ADDRB KLINK AU_RAND BD_ADDRB KLINK AU_RAND ACO ACO’ SRES SRES’ Encryption key generation KCryption SRES’ Bluetooth Authentication CHECK SRES = SRES’ SRES = signed response ACO = Authenticated Ciphering Offset
3.3 Verschlüsselung Abbildung 5: Ablauf der Verfahren Algorithmen • Schlüsselgenerierung – Aus den Eingabewerten wird mit Hilfe einer Hashfunktion (SAFER+) ein 128 Bit Wert gebildet • Verschlüsselung – E0 Algorithmus – lineares, rückgekoppeltes Schieberegister (LFSR). – Um die Schlüssellänge zu reduzieren, wird eine Anzahl von n Bit vorbelegt
Bluetooth Encryption Ist alles ok?? Ja, aber.. A B E0 E0 BD_ADDRAclockA KCryption’ BD_ADDRAclockA K’Cryption’ = Kcipher K’cipher Kcipher K’cipher dataA-B dataA-B LSFR LSFR data Kcipher K’cipher dataB-A dataB-A LFSR Linear Feedback Shift Registers clockA aktuelle Uhrenstand
3.4 Punkt-zu-Multipunkt Verbindungen Abbildung 6: Verschlüsselung in Bluetooth Stream ciphering Algorithm E0: Input: RAND (128 bit), Master Addr./Clock, Kc (128 bit) Output: Cipher stream . LFSR (Linear Feedback Shift Registers ) restart for every slot . Encrytion of payload only . Point-to-point or point-to-multipoint
3.5 Scatternet Abbildung 7: Scatternet - Keine Verschlüsselung in Echtzeit möglich, wenn eine mobile Einheit den Sendebereich verlässt und nur noch via Scatternet zu erreichen ist.
4. Sicherheitsprofile4.1 Sicherheitsmodus - Modus 1: (keine Sicherheit) Modus 1 wird benutzt, wenn Geräte keine kritischen Applikationen besitzen. Er eignet sich zum Beispiel für den Austausch von Visitenkarten oder für den Zugriff auf nicht sensible Datenbanken. In diesem Modus umgeht das Gerät alle Sicherheitsprozesse auf der Verbindungsebene. - Modus 2: (Sicherheit auf Dienstebene) Sicherheitsmodus 2 bietet ein Rahmenwerk, mit dessen Hilfe Geräte in zwei unterschiedliche Vertrauensklassen eingeteilt, und angebotenen lokalen Diensten verschiedene Sicherheitsstufen zugewiesen werden können. Im Mittelpunkt steht dabei ein zentraler Sicherheitsmanager, der die einzelnen Informationen in Datenbanken speichert und vor jedem Verbindungsaufbau gefragt wird, wie und ob überhaupt einem Gerät Zugriff auf lokale Dienste gewährt werden darf. Geräte werden in Kategorien eingeteilt. - Modus 3: (Sicherheit auf Verbindungsebene) Das Gerät initiiert in diesem Modus ausgewählte Sicherheitsprozeduren vor dem eigentlichen Aufbau der Verbindung, unabhängig von der aufbauenden Applikation im Hintergrund. Obwohl dieser Modus weniger flexibel ist als Modus 2, ist er doch geeignet, eine gewisse Grundsicherheit für alle Dienste eines Gerätes zu garantieren.
KategorieneinteilungderGeräte im Modus 2 Abbildung 8:
Verbindungsaufbau eines vertrauenswürdigen Geräts Abbildung 9: L2CAP Logical Link Control and Adaptation Protocol HCI Host Controller Interface
5. Probleme bei der Sicherheit von Bluetooth • 5.1 Einschränkungen :- E0-Stromverschlüsselung • - Geräteschlüssel • DoS auf Batterie • - Luftschnittstelle • – Shared Secret (Bluetooth PIN hängt vom Benutzer ab) • – Resourcenschwache Geräte können „0000“ als Shared Secret haben (Geräte ohne Key Pad) • – Resourcenschwache Geräte können den „Unit Key“ als Link Key benutzen, und im Zusammenhang mit einer schwachen PIN imitiert werden. • – Benutzer hat keinen Einfluß auf die eingesetzte Verschlüsselungsstärke • – Semipermanente Link Keys liegen ungeschützt in den Geräten Abbildung 10: Sicherheitsprobleme durch Geräteschlüssel KA
5.2 Schutz der Privatsphäre • Device-Modes – Discoverable Mode • Gerät antwortet auf alle Anfragen • ideal zur Erstellung von Benutzerprofilen (Supermarkt) – Non-Discoverable Mode • Geräte antworten nur auf direkt an sie adressierte Anfragen • unkomfortableres Pairing
Anwendungsmodelle • Allgemeine Anwendungsbeispiele: • Drahtlose Netzwerke unter Verwendung von Bluetooth fähigen Geräten • - Sprachsteuerung von Anwendungen unter Verwendung von Bluetooth fähigen Mobiltelefonen • - Austausch von Visitenkarten, Telefoneinträgen, etc. zwischen Notebook, Organizer und Telefon • Synchronisierung zwischen Notebook, Organizer und Telefon • Betriebssystemunabhängig Nutze ein und das selbe Telefon wo auch immer Du Dich befindest
Im Internet surfen, überall Schnelle Verbindung zum sofortigen Datenaustausch
Das drahtlose Headset lässt die Hände frei Das Notebook als Telekommunikationsschnittstelle
E-Mails im Flugzeug verfassen, die sich nach der Landung autom. versenden E-Mail nutzen, selbst wenn sich das Notebook noch im Koffer befindet
Bilder und Videos verschicken Verbinden aller Peripheriegeräte mit PC oder LAN