Académique Documents
Professionnel Documents
Culture Documents
1.bluetooth Aug
1.bluetooth Aug
Date: 07/04/02
Sujet: Bluetooth
Apple a annonc l'implmentation de la technologie Bluetooth lors de la dernire MacWorld. Bluetooth a pour vocation de
relier tous nos priphriques sans fil, clavier, souris, PDA , tlphones mobiles etc...L'AUG vous propose aujourd'hui un
article de fond qui vous permettra de comprendre au mieux les enjeux de Bluetooth et ses finalits.
Vous pouvez galement tlchrager le dossier au format pdf:
Dossier Bluetooth
1 - Introduction
Qu'est ce que Bluetooth ?
Bluetooth est une nouvelle technologie de transmission sans fil. Son but est de
permettre la communication courte distance entre plusieurs appareils, et sans le moindre
cble, en utilisant les ondes radio.
Pourquoi Bluetooth ?
Aujourd'hui, l'instalation de composants (tels que des imprimantes) et leur mise en rseau
n'est pas une chose simple : cela ncessite une configuration parfois complique et un
cablage souvent difficile mettre en oeuvre. Bluetooth se propose de simplifier ces
problmes : cette technologie permet de mettre en liaison un ensemble de priphriques
simplement en les rapprochant ( moins de 10 mtres les uns des autres) et de s'en
service immdiatement : aucune configuration n'est ncessaire.
Mais Bluetooth va bien plus loin : outre la communication entre appareils informatiques, il
permet de relier n'importe quel appareil lectronique grce une puce de 9 mm de ct. Il
devient donc possible de relier son ordinateur son imprimante, mais galement son
tlphone portable, son agenda lectronique, sa voiture ...
Quels sont les partenaires du projet ?
Ericsson, l'initiateur du projet, fut rapidement rejoint en 1998 par IBM, Intel, Nokia et
Toshiba. Ils dvelopprent ensemble cette nouvelle technologie de communication sans fil.
Devant le formidable march s'ouvrant cette technologie, de nombreuses socits ont
rejoint le Bluetooth Special Interest Group (SIG) qui est aujourd'hui compos de plus de
2400 constructeurs, dont 3 Com, Motorola et Microsoft. Il mne aujourd'hui une vritable
croisade pour imposer cette nouvelle norme comme le standard des sytme de
3 - Principe de fonctionnement
Caractristiques
Pour pouvoir utiliser la technologie bluetooth, les appareils lectroniques doivent possder
la puce bluetooth. Celle-ci est trs petite (9mm * 9mm) et peut cher : 20$ aujourdhui, mais
Intel prvoit que son prix atteindra 5$ sous peu.
Les appareils compatible Bluetooth communiquent en utilisant les ondes radio sur les
frquences comprises entre 2400 et 2483.5 MHz.
Le dbit thorique est de 1 Mb/s. Tout comme le protocole IP, l'envoie des informations
s'effectue par paquets de donnes entoures de blocs de contrle. Ces blocs de contrle
permettent la mise en rseau des appareils distance suffisante, le bon acheminement
des donnes et la correction d'ventuelles erreurs de transmission.
Pour pouvoir communiquer entre eux, les appareils doivent se trouver une distance
maximum de 10 mtres.
Il peut y avoir jusqu' 8 appareils chains pour former un petit rseau (nomm
picorseau ou piconet). Il est cependant possible de connecter entres-eux ces piconets
pour former des rseaux plus grands nomms scatternets. Certains appareils bluetooth
pourront donc servir de passerelle.
Schmas de connexion
Le plus simple des schmas de connexion est tablie lors de la communication entre 2
priphriques bluetooth. Un des deux appareils jouera le rle de Matre (Master) et l'autre
d'esclave (Slave). Le matre est charg de grer la communication entre les deux
priphriques : c'est lui qui initialise la connection.
Comme il a t indiqu plus haut, plusieurs piconets peuvent se runir pour former un
scatternet. Dans ce cas, le matre d'un piconet deviendra l'esclave du matre d'un autre
piconet. Un priphrique pourra galement devenir l'esclave de plusieurs matres de
diffrents piconets, comme le montre le scma ci-dessus.
Modes de communication
Il existe plusieurs sortes de liaisons entre 2 priphriques bluetooth qui sont autant de
mode de communications. Ceux-ci sont au nombre de 3 :
La liaison synchrone dbit lev
la liaison asynchrone
La laisison "canal voix/donn"
Les liaisons synchrones dbit lev
Ces liaisons sont utilises lorsque le dbit montant (de l'esclave au matre) est du mme
ordre que le dbut descendant (du matre l'esclave). Ces liaisons se partagent donc la
bande passante : elle possde un dbit bidirectionnel de 432 Kb/s. Ces liaisons sont
celles qui seront par exemple utiliser pour relier 2 ordinateurs voulant faire de l'change de
fichiers. Un matre peut supporter jusqu' 3 liaisons de ce type avec ses esclaves.
Dans le cas d'erreur de transmission, un paquet spcial signalant l'erreur sera envoy
l'emmeteur qui renverra l'information. Ce mode de fonctionnement n'est donc pas adapt
une utilisation temps relle tel que la diffusion de la voix ...
Les liaisons asynchrones (ACL)
Ce mode de communication permet de privilgier un sens de transmission : du matre vers
l'esclave. Le matre peut donc envoyer 721 Kb/s l'esclave, et l'escalve peut envoyer 57,6
Kb/s au matre. Ce type de liason est particulirement adapt dans le cas d'un accs
internet par Bluetooth : en effet, lors d'une consultation internet, le taux de download
(tlchargement des pages, des images) est bien plus important que le taux d'upload
(envoi des requetes). C'est galement cette solution qui sera utilise pour le connexion
vers une imprimante.
Les liaisons "canal voix/donnes" (SCO)
Enfin, bluetooth propose un mode "vocal" synchrone. Il possde un dbit de 64 Kb/s
simultanment en rception et en emission. Ce dbit est un dbit assur, et donc
mme avec ceux dj impliqus dans une connection de type SCO. Ce mode
permet donc la commutation de paquet. La retransmission peut tre utilise avec ce
type de paquet.
4.4) Les paquets Bluetooth
Le format standard des paquets est le suivant :
72 bits
Code
d'accs
54 bits
[0 - 2745 bits]
Entte
Corps du message
Les 72 premiers bits servent la synchronisation entre les composants Bluetooth. L'entte
quant elle permet :
De numroter les paquets (r ordonnancement).
D'indiquer de quel membre d'un pico rseau mane ce message (0 => 7).
De prciser le type du paquet que l'on est en train de consulter.
De dire si oui ou non un rcpiss est attendu en retour ce message.
De contrler sa propre cohrence (CRC).
Le corps sert lui stocker les donnes transporter. Il contient gnralement un CRC de 8
ou 16 bits. Son utilisation peu varier, comme nous le verrons par la suite. L'envoie d'un
paquet ncessite un "slot ".
Lorsqu'un appareil Bluetooth met un paquet, celui-ci peut appartenir une des trois
grandes familles de paquets existants, son type tant prcis dans le header :
Les paquets standards : Ils sont utiliss dans les oprations "administrative ". On
entend par-l que le contenu de ces paquets est ddi la gestion des connections
entre les appareils.
Les paquets SCO : Comme son nom l'indique, ce type de paquet est utilis pour
les communications de donnes de type SCO.
Les paquets ACL : Il existe galement des paquets spcifiques au mode de
transmission de donnes ACL.
Pour chacun de ces types, plusieurs sous catgories existent. Les diffrents types de
paquets qui en dcoulent se sont vus attribuer une nomenclature. On distingue dans cette
nomenclature les paquets suivants :
Les paquets DV : Pour " Data Voice packet ". Ce type htroclite permet de
transporter la fois des donnes et de la voie.
Les paquets DM x : Pour "Medium Data rate packet". Ce type de paquet n'est
disponible qu'en mode ACL. Cette dnomination est due au fait que le corps de ce
type de paquet est toujours encod afin d'obtenir de la redondance (prvention
d'erreur).
Les paquets DH x : Pour " High Data rate packet". Ce type de paquet n'est
galement disponible qu'en mode ACL. Son nom vient du fait qu'aucun encodage de
prvention d'erreur n'est employ, d'o un meilleur taux de transfre.
Les paquets HV y : Pour " High quality Voice packet ". Ce type de paquet n'est
disponible qu'en mode SCO. Ces paquets n'utilisent pas de CRC dans leur corps.
Le x dans les notations " DM x " et " DH x " remplace un des chiffres suivants : 1,3 ou 5.
Ce chiffre reprsente le nombre de slots sur lesquels ce paquet s'tend. Par exemple les
Au dbut du processus, le matre M doit se trouver dans le sous tat " Inquiry " et l'esclave
E dans l'tat " Inquiry scan " :
1. Etant dans l'tat " Inquiry ", M envoies un signale pour prvenir E qu'il souhaite
initialiser une connexion. E se trouve alors dans l'tat "inquiry scan".
2. Si E se trouve porte et qu'il est dans l'tat " Inquiry scan ", il passe alors
dans le sous tat " Inquiry responce " puis rpond effectivement au matre. La
rponse de E comporte entre autre son adresse ainsi que des informations sur
son horloge.
3. Une fois que E a envoy sa rponse, il passe dans l'tat " Page Scan ". Il se
met ensuite en attente d'un message comportant sa propre adresse sur un des
80 canaux existants. Lorsque M reoit le message rponse de E, celui-ci
passe dans l'tat " page ". C'est dire que M stocke les informations reus
(pagination). Ces informations permettent M d'avoir conscience de la
prsence de E. Lorsque M souhaite poursuivre le processus de connexion,
celui-ci renvois un message rponse en y plaant l'adresse de E. Ce message
est renvoy plusieurs fois sur tous les canaux.
4. Lorsque E voit une rponse son nom arriver, il se place dans le sous tat "
Slave responce " puis renvoie un message - rponse M en y joignant son
code d'accs.
5. De son cot, M une fois ce code d'accs rcupr, se place alors dans un tat
" Master responce " et renvoie un paquet de type FHS E. Ce paquet de type
FHS (Frequency Hopping Syncronisation) permet E de se synchroniser avec
M.
6. Une fois ce dernier message envoy, M passe dans l'tat " connect". De
mme, lorsque E reoit ce message il passe aussi dans l'tat "connect".
Ici l'tat "connect" n'est pas un sous tat. Pour vrifier que la connexion s'est bien passe,
le matre envois un paquet de type POLL et attend en retour n'importe quel type de paquet.
Si une connexion s'est effectivement bien passe, l'esclave est synchronis avec son
matre et se trouve sur le bon canal de communication.
Une fois qu'un esclave est dans un tat "connect", celui-ci peut nouveau se trouver dans
plusieurs sous tats :
Sous tat actif : en mode actif, le matre comme l'esclave participent activement
la communication sur le canal (coute, envois de paquets, rception).
Sous tat suspendu (hold) : dans un tat suspendu, un esclave ne peut plus
recevoir que des messages de type SCO. Cet tat dure pendant N slots. Ce dernier
coefficient est fix par le matre. Les messages de type SCO arrivants intervalles
rguliers, l'esclave peu s'endormir lorsqu'il n'est pas susceptible d'en recevoir. Ceci
permet d'conomiser de l'nergie.
Sous tat parqu (park) : Un esclave dans cet tat est trs peu actif (conomie
d'nergie). Lorsqu'un esclave est dans l'tat parqu celui-ci ne reois plus du tout de
messages ni n'en envois. Sa seule activit est de se rveiller de temps en temps
pour se synchroniser avec le matre grce des "balises" que celui-ci envois
rgulirement. Cet tat passif permet de librer une des 7 places disponibles dans
un pico rseau. Plus de 7 priphriques Bluetooth peuvent ainsi cohabiter au sein
d'un mme pico rseau en jouant avec cette possibilit.
Sous tat ttonnage (sniff) : Dans le sous tat ttonnage, un esclave peut alterner
N slots d'tat endormis (conomie d'nergie), et K slots d'tats actifs.
6 - Scurit
Diffrantes politiques de scurits sont misent en place dans Bluetooth. Il existe 3 niveaux
de scurit.
Niveau 1 : pas de gestion de la scurit.
Niveau 2 : gestion de la scurit au niveau service.
Niveau 3 : gestion de la scurit au niveau tablissement de la liaison.
Le niveau 2 de scurit fait intervenir un processus d'identification lors de l'accs aux
services. Le niveau 3 est plus stricte, il fait intervenir le processus d'authentification
pendant l'tablissement d'une connexion. Ceci complique un peu le schma de connexion
vu prcdemment. A la suite d'une authentification russie, des clefs sont cres de part et
d'autre afin de pouvoir tablir une communication scurise (cryptage / dcryptage) entre
les protagonistes.
6.1) Techniques d'authentification et de codage mises en oeuvre
Afin de maintenir la scurit, plusieurs paramtres sont utiliss dans Bluetooth :
Le No de srie de l'appareil, unique, fournis par l'IEEE, cod sur 48 bits, appel
BD_ADDR.
La clef prive d'authentification, un nombre alatoire code sur 128 bits.
Une clef prive de codage allant de 8 128 bits.
Un nombre alatoire de 128 bits qui doit changer frquemment fournit par le
composant Bluetooth lui-mme.
Toutes les transactions scurises entre un ou plusieurs composant Bluetooth ncessitent
une clef de liaison. Cette clef est un nombre de 128 bits alatoire. La clef de liaison est
utilise dans le mcanisme de d'authentification et comme paramtre pour la production
de la clef de cryptage.
Il y a plusieurs moyens d'obtenir cette clef. Elle peut tre reprsente par une des 4 clefs
dfinies dans la norme Bluetooth :
La clef unit (unit key). Celle ci est cre dans un seul composant quand il est
install.
La clef de combinaison. Elle est cre grce la mise en commun de donnes
provenant de deux composants Bluetooth.
La clef matre. Cette clef est temporaire. Elle n'est utilise que lorsque le matre
souhaite transmettre des informations plus d'un esclave.
La clef d'initialisation. Elle est utilise lorsqu'il n'y a pas encore de clef unit ou de
clef de combinaison. Celle-ci est cre lors de l'initialisation.
De plus un code PIN (Personal Identification Number) est ncessaire pour scuriser
l'utilisation d'un appareil Bluetooth.
Nous ne prsenterons pas ici comment ces clefs sont cres. Notre but tant d'expliquer le
fonctionnement global du mcanisme d'authentification et de cryptage/dcryptage. On
supposera par la suite que nous disposons de ces clefs. Pour avoir plus d'informations,
reportez-vous aux pages suivantes qui expliquent quels algorithmes standards sont
employs pour les obtenir :
http://www.niksula.cs.hut.fi/~jiitv/bluesec.html
6.2) L'authentification
L'authentification est ralise grce la clef de liaison. Celle-ci est suppose tre en
possession des deux parties. Lorsque par exemple A souhaite authentifier B, le
mcanisme suivant est utilis :
6.3) Le cryptage
Le mcanisme de cryptage/dcryptage est assez proche de celui prsent
prcdemment. La diffrence se situe au niveau des paramtres et de l'algorithme utilis.
Dans le schma suivant, on voit que l'algorithme permet de produire une clef de cryptage /
dcryptage (Kstr) :
Le but n'est plus de vrifier que cette clef produite chez A est la mme que chez B, mais
simplement de s'en servir pour pouvoir dchiffrer les donnes envoyes. Les paramtres
employs ici sont : un nombre alatoire RAND cr par A, le No de srie de A
(BD_ADDR), l'horloge de A (clock) ainsi qu'une clef (Kc). La clef Kc elle est cre du cot
de A et du cot de B grce aux valeurs suivantes : le chiffre RAND, le chiffre
prcdemment calcul lors d'une authentification, l'ACO et la clef de lien.
Certains problmes de scurit ont t relevs dans les mcanismes que nous vous avons
prsents ici. En voici quelques un :
Des attaques en rapport avec la consommation nergtique des batteries semblable
aux " time attaques " ne sont pas prvues par les spcifications.
Baser la cration de la clef d'initialisation sur le code PIN, gnralement compos de
4 digits est discutable.
Enfin l'utilisation du No de srie dans les mcanismes de scurit pourrais rendent le
systme non confidentiel.
Si vous souhaitez avoir plus d'information ce sujet nous vous conseillons de consulter les
sites suivants :
http://www.niksula.cs.hut.fi/~jiitv/bluesec.html#chap6
7 - Conclusion
Il est indniable qu'un systme de communication sans fil sera largement utilis dans un
futur proche. Son utilisation touche tous les domaines et sera rpendu trs grande
chelle. Bluetooth a tous les atouts lui permettant de devenir la norme de communication
sans fil du futur : en plus d'tre robuste, fiable et peu chre, la technologie bluetooth a
runi de nombreux partenaires importants. La plupart prparent pour l'anne 2001 et 2002
des appareils bluetooth. Les deux annes venir seront dterminantes.
De plus, bluetooth ne souffre pas de trop grande concurence : la seule solution rellement
concurente est Airport (la norme 802.11b ou Wi-Fi). Airport offre une meilleur bande
passante (10Mb/s) mais il est surtout prvu pour une utilisation en LAN (Rseaux locaux),
contrairement blutooth qui possde un domaine d'application nettement plus grand !
Malgrs tout, les dbits que bluetooth offre pour le moment ne sont pas suffisant
pour les applications de demain (relier le lecteur de DVD la tlvision, ...) et cette
norme doit voluer pour suivre une demande qui deviendra de plus en plus exigente.
La norme Bluetooth 2.0 est dj en cours d'laboration. Elle repoussera les distances
de communication une centaine de mtres et devrait encore tendre le nombre de
priphriques communicants au sein des rseaux Bluetooth. Le dbit autoris devrait
galement passer 10 Mb/s.
Est ce que bluetooth russira son pari et deviendra la norme de connexion sans fil ? seul
l'avenir nous le dira.