• Nenhum resultado encontrado

1.3 Bluetooth aplicado ao AAL

2.1.1 Bluetooth

2.1.1.1 Bluetooth Classic

O Bluetooth Classic opera nas bandas de frequência ISM, mais especificamente a de 2.4 GHz. Utiliza 79 canais, sendo que cada um tem uma largura de banda de 1 MHz e está separado do canal adjacente por 1 MHz. Como já foi referido, utilizando o modo Enhanced Data Rate, isto permite taxas de transmissão até 2.1 Mbps.

De modo a reduzir a interferência resultante do uso destas frequências, que já se encontram ocupadas por outras tecnologias de comunicação sem fios (a mais rele- vante sendo a tecnologia WiFi), é implementado um esquema de Frequency Hopping Spread Spectrum (FHSS), que permite que o canal usado durante um processo de comunicação Bluetooth seja alterado entre a receção ou transmissão de pacotes, fa- zendo com que o efeito de possíveis interferências seja minimizado. Estes saltos entre frequências ocorrem 1600 vezes por segundo. Se alguns canais estiverem demasiado congestionados, o mecanismo de Frequency Hopping não permite a utilização desses canais.

Num processo típico de comunicação entre dispositivos Bluetooth, o canal físico que é utilizado é partilhado uma série de dispositivos sincronizados e que seguem o mesmo padrão de saltos de frequência. Ao dispositivo que fornece os parâmetros de sincronização é dado o nome de Master. Todos os outros dispositivos que se sincro- nizam com o relógio e padrão de saltos de frequência do Master, é dada a designação de Slaves. No Bluetooth Classic, existem no máximo 7 Slaves.

A rede formada por via da conexão entre o Master e os Slaves é designada de Piconet. Numa Piconet pode haver um e um só Master e não existe comunicação direta entre Slaves. Um Slave numa Piconet pode ser o Master noutra Piconet e vice-versa. Quando duas Piconets partilham elementos, é formada uma Scatternet, se bem que este conceito não é adotado na especificação Bluetooth.

Figura 2.4: Estrutura de redes Bluetooth (imagem retirada de [3]).

A identificação de dispositivos Bluetooth é feita por via de um endereço MAC (Medium Access Control) de 48 bits (6 bytes), onde os primeiros 3 bytes identificam a organização que fabrica o dispositivo Bluetooth e os restantes 3 bytes são de livre definição por essa mesma organização.

Para terminar, é importante introduzir algumas das operações típicas num pro- cesso de comunicação Bluetooth como a descoberta e anúncio de dispositivos e o emparelhamento de dispositivos.

Começando pelo processo de descoberta de dispositivos ou, como é designado na especificação Bluetooth, Inquiry Procedure, este processo permite a um dispositivo Bluetooth descobrir outros dispositivos que estejam configurados como estando visí- veis. Ou seja, é possível configurar um dispositivo de modo a que este não responda a pedidos de Inquiry, o que faz com que este esteja invisível do ponto de vista do dispositivo que faz a descoberta de dispositivos.

Em termos dos dados que são recolhidos num processo de descoberta de dispositi- vos Bluetooth, até à versão 2.1 da tecnologia Bluetooth, a única informação recolhida dos dispositivos encontrados era o endereço do dispositivo. Com o desenvolvimento da tecnologia, foi-se tornando evidente que o processo de descoberta poderia ser uti- lizado para que os dispositivos visíveis fornecessem mais informação que apenas o endereço, de modo a permitir ao dispositivo que despoleta o processo de Inquiry ter acesso a informação que permita perceber melhor que tipo de dispositivo é que dete-

tou e quais os serviços que disponibiliza.

Para ultrapassar esta limitação, a partir da versão 2.1 da especificação Bluetooth surgiu o Extended Inquiry Response que permite que um dispositivo anuncie não só o seu endereço mas bastante mais informação:

• Endereço do dispositivo; • Nome do dispositivo; • Classe do dispositivo;

• Lista de serviços disponibilizados; • Potência de transmissão.

Tendo acesso à classe de dispositivo e lista de serviços que o dispositivo descoberto disponibiliza, é possível ao dispositivo que efetua a descoberta decidir se o dispositivo encontrado implementa funcionalidades do seu interesse.

Relativamente ao emparelhamento de dispositivos, este processo é talvez o mais associado às tecnologias Bluetooth e surge, geralmente, após um processo de desco- berta de dispositivos. O processo de emparelhamento basicamente serve para garantir que dois dispositivos se reconhecem mutuamente e autorizam a formar conexões entre si. Feito o emparelhamento entre dois dispositivos, o estabelecimento de conexões en- tre esses dois dispositivos não exige que seja repetido o processo de emparelhamento. Geralmente, o processo de emparelhamento envolve interação com o utilizador, na medida em que este tem de selecionar o dispositivo que pretende emparelhar e au- torizar o emparelhamento, com recurso a alguns mecanismos que serão explicado seguidamente.

Tal como a descoberta de dispositivos, o processo de emparelhamento de disposi- tivos tem sofrido alterações ao longo do desenvolvimento da especificação Bluetooth. Até à versão 2.1, existia aquilo a que agora se refere como Legacy Pairing. Com este esquema de emparelhamento, o utilizador era obrigado a inserir um PIN (Per- sonal Identification Number) alfanumérico de 16 bits, sendo esse PIN introduzido em ambos os dispositivos. Dispositivos sem capacidades de input eram obrigados a

definir um PIN fixo, hardcoded na memória do dispositivo. Este esquema de empare- lhamento apresenta-se como inseguro devido ao tamanho limitado do PIN e ao facto deste ser o único fator de entropia.

Portanto, a partir da versão 2.1 da especificação Bluetooth, foi criado o Secure Simple Pairing (SSP). Este mecanismo de emparelhamento utiliza criptografia de chave pública e não obriga à introdução de PIN’s alfanuméricos. O SSP apresenta 4 modelos de associação:

• Just Works

– Este modelo de associação faz com que a interação com o utilizador seja desnecessária, a não ser uma possível confirmação do processo de empa- relhamento. Por ter esta característica, é geralmente utilizado quando os dispositivos tem capacidades de IO limitadas. Apesar de não ser necessá- ria a introdução de um PIN, este modelo de associação é mais seguro que o modelo de Legacy Pairing.

• Numeric Comparison

– Se ambos os dispositivos possuírem um modo de exibir informação e pelo menos um deles tiver um modo de confirmar a operação de emparelha- mento, este é um possível modelo de associação a ser utilizado. Com este modelo, ambos os dispositivos apresentam um código numérico de 6 algarismos, sendo que o utilizador confirma ou cancela a operação de em- parelhamento por verificação da igualdade dos códigos. Este mecanismo garante a proteção contra ataques Man In The Middle (MITM).

• Passkey Entry

– Este método é semelhante ao anterior, no entanto é utilizado quando um dos dispositivos tem apenas capacidade de saída e o outro apenas tem capacidade de entrada. O dispositivo com capacidades de saída apresenta um código numérico de 6 algarismos, que é introduzido pelo utilizador no dispositivo com capacidade de entrada. Se o código coincidir, os dispo- sitivos são emparelhados. Tal como no caso anterior, a proteção contra ataques MITM é assegurada.

• Out of Band

– Este modelo utiliza um meio de comunicação diferente do Bluetooth para trocar alguns dados necessários ao processo de emparelhamento, tal como será melhor explicado na secção 5.1.3.1. Visto que as informações necessá- rias ao emparelhamento são obtidas por outra tecnologia, este modelo de associação elimina a necessidade do processo de descoberta. Em termos de processo de emparelhamento propriamente dito, é utilizado um dos três modelos descritos acima.

De modo resumir a informação apresentada, a figura 2.5 apresenta a relação entre o processos de descoberta, conexão e autenticação.

Figura 2.5: Modelos de emparelhamento usando Secure Simple Pairing (imagem re- tirada de [3]).

Resumidamente, existem dois modos de emparelhar dispositivos: In Band e Out of Band.

O primeiro é um processo exclusivamente Bluetooth, sendo feita a descoberta de dispositivos, criada uma conexão com o dispositivo que se pretende emparelhar, sendo em seguida tratados os aspetos de segurança da comunicação e utilizado um dos modelos de associação descritos anteriormente.

Relativamente ao processo Out of Band, como é possível ver na figura 2.5, este elimina a necessidade de existir o processo de descoberta de dispositivos, sendo que a informação relativa ao dispositivo que se pretende emparelhar é comunicada através de outra tecnologia sem ser Bluetooth. A única diferença que pode existir é a inclu- são de processos de autenticação que permitem a troca de informação que torna o processo de emparelhamento OOB mais seguro. Na figura, isso é representado pelo fluxo mais à direita, enquanto que o resto do processo do fluxo do meio é semelhante ao já apresentado para o modo In Band.

Documentos relacionados