Bluetooth: Sicherheitslücken schließen

10.05.2004
Von 
Dr. Klaus Manhart hat an der LMU München Logik/Wissenschaftstheorie studiert. Seit 1999 ist er freier Fachautor für IT und Wissenschaft und seit 2005 Lehrbeauftragter an der Uni München für Computersimulation. Schwerpunkte im Bereich IT-Journalismus sind Internet, Business-Computing, Linux und Mobilanwendungen.

Authentifizierung und Verschlüsselung gehören zum Kern-Sicherheitskonzept von Bluetooth. Dieses ist ausführlich beschrieben im Bluetooth Security White Paper. Beide Teile, sowohl die Authentifizierung als auch die Verschlüsselung sind optional, jedoch setzt die Verschlüsselung die Authentifizierung voraus.

Die Bluetooth-Architektur: Der Link Manager (LMP) beinhaltet die Sicherheitsfunktionen wie Authentifizierung und Verschlüsselung.

Basis der Bluetooth-Kryptografie ist dabei der so genannte Verbindungsschlüssel oder "Link Key". Dieser im Authentifizierungsprozess über eine PIN initiierte Schlüssel wird zur Authentifizierung eingesetzt, und bildet gleichzeitig die Grundlage für die Verschlüsselung des Datenstroms.

Die Algorithmen für Authentifizierung und Verschlüsselung sind in jedem Bluetooth-Gerät implementiert und beruhen auf den folgenden vier Zahlenwerten:

Bluetooth-Addresse (BD ADDR): Jedem Bluetooth-Gerät wird bei der Produktion eine öffentliche 48 Bit Bluetooth-Adresse eingebrannt, die anschließend nicht mehr geändert werden kann. Sie ist weltweit eindeutig.Privat User Key (Authentication): Der Private User Key für die Authentifizierung ist die Basis der Bluetooth-Verschlüsselung und wird auch als Verbindungsschlüssel (Link Key) bezeichnet. Dieser geheime Schlüssel ist immer 128 Bit lang und wird während des Initialisierungsprozesses generiert.Privat User Key (Encryption): Der Private User Key für die Verschlüsselung ist ebenfalls geheim und wird während der Authentifizierung aus dem Verbindungsschlüssel erzeugt. Er hat eine Länge zwischen 8-128 Bit.Random Value (RAND): Der Random Value ist ein 128 Bit langer Wert, den ein interner Zufallszahlengenerator bei Bedarf liefert.