Table des matières
Le B-A-BA du Bluetooth
Utilisation, fréquences, BT Classique et Bluetooth Low Energy (BLE)
Bluetooth est une norme de télécommunications permettant l'échange bidirectionnel de données à courte distance en utilisant des ondes radio UHF sur la bande de fréquence de 2,4 GHz.
Version actuelle : 5.2 (mise en service en décembre 2019).
Echo du Net - Dossier Bluetooth (Avril 2021)
À partir de ce moment [sortie du BT 4.0 en 2010], les fabricants d’accessoires ont le choix d’implémenter le Bluetooth LE seul (en « single mode ») ou avec le Classic Bluetooth (en « dual mode ») des versions 1.0 à 3.0 et High Speed de la version 3.0, afin de conserver la compatibilité avec les anciennes versions du Bluetooth.
Ellisys Bluetooth Video 1: Intro to Bluetooth Low Energy (vidéo - anglais - 8')
BR/EDR et LE
- LE : Low Energy
- BR/EDR : Basic Rate / Enhance Data Rate = Bluetooth “classique”
Pour le débutant, le Bluetooth classique se compose de Bluetooth 1.0-3.0. Il s'agit notamment de Bluetooth BR (Basic Rate) autour de 1,2 Mbit / sec, Bluetooth EDR (Enhance Data Rate) à 3Mbits / Sec. (source).
Types d'adresses
Selon la norme EUI-48 (Extended Unique Identifier), l'identité d'un objet connecté en BT est définie par une adresse publique et/ou une adresse aléatoire statique. Cependant, cette identité peut-être masquée par une adresse aléatoire privée, ce qui empêche un tiers intrus de tracer l'objet.
Remarque : Cette variété n'est disponible que pour le BT LE. En BR/EDR, l'adresse est obligatoirement de type “publique”.
Le format de l'adresse qui est détectée est le même que celui d'une adresses MAC♦, c'est un code de la forme XX:XX:XX:XX:XX:XX où “X” est un chiffre (0 à 9) ou une lettre (de A à F uniquement) - exemple : 0C:4F:23:12:AD:01.
Le type d'adresse peut être en partie distingué grâce au premier caractère :
- 0, 1, 2, 3 : une telle adresse peut-être soit “publique” soit “aléatoire non résolvable”. Pour le savoir, il faut vérifier dans le registre des adresses publiques ;
- 4, 5, 6, 7 : adresse “aléatoire résolvable” : une adresse de ce type change aléatoirement toutes les 10-15 min mais l'identité de l'appareil peut être reconnue par les dispositifs qui détiennent une clé de décryptage spécifique.
- 8, 9, A, B : adresse nécessairement “publique” : on peut retrouver le nom du fabriquant dans le registre des adresses publiques ;
- C, D, E, F : adresse soit “publique” soit “aléatoire statique”.
♦Tandis qu'une adresse MAC est unique et fixe pour chaque appareil électronique, l'adresse affichée peut-être une “couverture” qui masque l'adresse MAC. Ainsi, en toute rigueur, l'adresse qui s'affiche n'est pas une adresse MAC, même si elle en a l'apparence !
Pour plus d'info sur les adresses BT :
- Spécifications techniques de la norme Bluetooth 4.0 (2010 - pdf - anglais): faire une recherche sur “resolvable” pour trouver les pages qui traitent des types d'adresses
- registre des identifiants des fabricants (Organizationally Unique Identifier - OUI) : http://standards-oui.ieee.org/oui/oui.txt
BLE Beacons
Qu’est-ce qu'un “beacon BLE” (une balise Bluetooth Low Energy) ? : https://blog.pandasuite.com/fr/technologie-beacon/
Principales normes :
- Eddystone (open beacon format from Google)
- iBeacon (Apple) - Détails du format des paquets (wikipedia)
- AltBeacon (open source) : AltBeacon
ManufacturerData Key
C'est une des informations clé émise par une balise : Répertoire des compagnies
Exemples :
- 0x004C : Apple (balise générée par un iPhone)
- 0x027D : Huawei (ex : Huawei Watch)
UUID 16
C'est un autre type d'information contenu dans un paquet et permettant d'identifier le type d'appareil.
* Liste des UUID 16bit spécifiques
Exemples :
- 0xFD64 : INRIA (ce code est un marqueur de l'application Tous Anti-Covid conçue par l'INRIA)
- 0xFD69 : Samsung
- 0xFD6F : Apple (ce code est un marqueur du framework de contact-tracing Exposure Notification Framework conçu par Apple et Google).