bluetooth wireless technology · • los dispositivos (radios) se comunican usando time division...
TRANSCRIPT
Introducción
• Bluetooth es una tecnología que ofrece conectividad a corta distancia para equipos personales, portables, PDAs, entre otros.
• Es una tecnología de radio frecuencia (RF).
• Inicialmente pensado para reemplazar los cables que conectan diversos dispositivos.
• Es una tecnología de bajo costo y “amigable”.
Introducción
• Bluetooth se enfoca en lo siguiente: – Reemplazo del cable:
• Substitución de interfaces tradicionales, tales como RS-232.
• Y Conectores propietarios.
– Punto de acceso de voz y data: • Proporciona una interfaz uniforme para acceder servicios de
voz y datos.
• Acceso a una WAN usando un gateway personal tal como un teléfono celular.
– Redes ad hoc: • Comunicación sin infraestructura.
• Soporte a grupos colaborativos (reuniones, conferencias)
Historia
• El desarrollo de Bluetooth se inicia finales del
invierno de 1998.
• Ercisson, IBM, Intel, Nokia y Toshiba formaron
el Bluetooth Special Industry Group (SIG).
• Su intención era desarrollar una tecnología
inalámbrica de corto alcance.
• Ella debía funcionar en la banda de 2.4 GHZ
(ISM).
Historia
• El nombre de Bluetooth viene del Rey
Danes Harald Blatand o Harold Bluetooth
en inglés.
• Bluetooth es conocido por haber unificado
la gente de Scandinavia durante el siglo
10.
• Fue un nombre temporal, aunque nunca
llego uno nuevo.
Historia
• La especificación fue ofrecida sin royalty a quienes la adoptaran.
• En Mayo de 1998 habían aproximadamente 70 adoptadores.
• Ahora mas de 3000.
• En 1999 se libera la primera especificación (1.0A).
• Actualmente se encuentra la versión 2.0.
Historia
• En Dic 1999, se habían incorporado al SIG 3Com, Lucent, Microsoft y Motorola.
• En Marzo de 1999 se creo el grupo IEEE 802.15 para desarrollar estándares para WPAN.
• La especificación de Bluetooth fue elegida como documento base para el estándar IEEE 802.15.1.
Pila de Protocolos
• Una especificación de Bluetooth incluye:
– Especificación Núcleo (Core specification).
– Especificación de perfiles (profile
specification).
Pila de Protocolos
Bluetooth Radio
Baseband
Link Manager Protocol (LMP)
Logical Link Control and Adaptation Prottocol (L2CAP)
RFCOMM Audio Control
PPP IP
UDP/TCP
OBEX
vCard/VCal
WAP
WAE Comandos AT
TCS Bin SDP
Interfaz de Control del Host
Pro
toco
los d
e tra
nsp
ort
e
Pro
toco
los m
idd
lew
are
Protocolos del núcleo
Protocolos de sustitución del cable Protocolos de control de telefonía
Protocolos adoptados
Pila de Protocolos
• Protocolos fundamentales de Bluetooth (protocolos del núcleo):
– son específicos de la tecnología inalámbrica Bluetooth y han sido desarrollados por el SIG Bluetooth.
• Protocolos de sustitución de cable:
– suministran señalización de control que emulan el tipo de señalización que se asocia usualmente con los enlaces de cable
• Protocolos de control de telefonía:
– definen la señalización de control de llamada para establecer llamadas de voz y datos con dispositivos Bluetooth.
– También define un protocolo (Comandos AT) que definen como pueden controlarse un MODEM y un teléfono móvil.
• Protocolos adoptados:
– son protocolos existentes que se utilizan para diversos fines en las capas superiores.
Arquitectura de Bluetooth
• Nucleo
• Perfiles y protocolos de las capas
superiores
Núcleo
• Las cuatro capas de Bluetooth inferiores
• Protocolo de Descubrimiento de Servicio
(SDP)
• Generic Access Profile (GAP)
Controlador Bluetooth
• Tres capas inferiores.
• Se comunica con capas superiores a
través de una interfaz estándar (HCI) que
es opcional.
• Flexibiliza la implementación de Bluetooth
en mucho equipos.
L2CAP: Gestor del canal
• Crear, manejar y destruir canales L2CAP
paar el transporte de senalizacion y data
de las aplicaciones.
L2CAP: Gestor de recursos
• Manejar el orden del envío de fragmentos
PDUs al bandabase.
• Manejar planificación de canales para
asegurar que data con QoS garantizado
no le sea denegado el acceso a los
enlaces físicos debido a que no existan
mas recursos.
Gestor del Dispositivo
• No relacionado directamente con el
transporte de data.
• Búsqueda de equipos cercanos
• Conexión a otros dispositivos
• Hacer un dispositivo descubrible
• Maneja el comportamiento local del
dispositivo
– Maneja el nombre local del equipo
– Manejo de clave almacenadas
Gestor del Enlace
• Creación, modificación y liberación de
enlaces lógicos
• Actualización de parámetros de enlaces
• Usa el Link Manager Protocol (LMP)
Manejador de Recursos Bandabase
• Planificador que garantiza slost de timpo
en los canales fisicos para entidades que
han negociado un contrato de acceso.
• Negociar contratos de acceso con
entidades
Controlador de enlace
• Codifica y decodifica paquetes y
parámetros relacionados al canal físico,
transporte lógico y enlace lógico.
Transporte de Datos
Especificación de Radio (RF)
• Uso de la frecuencia de 2.4 GHz (ISM).
• La banda de frecuencia en la mayoría de países
es de 2.4 – 2.4835 GHZ.
• Definiéndose 79 canales físicos de 1 MHz.
Area Rango regulatorio Canales RF
Estados Unidos, mayoría de
países de Europa y muchos otros países.
2,4 – 2,4835 GHz f = 2,402 + n MHz, n= 0,…,78
Japón 2,471 – 2,497 GHz f = 2,473 + n MHz, n= 0,…,22
España 2,445 – 2,475 GHz f = 2,449 + n MHz, n= 0,…,22
Francia 2,4465 – 2,4835 GHz f = 2,454 + n MHz, n= 0,…,22
Especificación de Radio
• Los radios Bluetooth viene en 3 clases
dependiendo de su potencia de transmisión:
Clase Máxima
Potencia de Salida (Pmax)
Potencia de
salida Nominal
Potencia de
Salida Mínima (Pmin)
Control de
Potencia
1
1000 mW (20 dBm)
N/A 1 mW (0 dBm) Pmin <+4 dBm a Pmax
Opcional: Pmin a Pmax
2 2,5 mW (4 dBm) 1 mW (0 dBm) 0,25 mW (-6 dBm)
Opcional: Pmin a Pmax
3 1 MW (0 dBm) N/A N/A Opcional:
Pamin a Pmax
Especificación de Radio
• La técnica de modulación usada es la Gaussian
Frecuency-Shift-Keying (GPSK).
• La tasa de baudios es 1 Msps.
• Pero ya que el tiempo de bit es 1 ms, la tasa de
transmisión es 1 Mbps.
• Emplea FHSS a 1600 hops/sec.
• Los saltos se producen entre los 79 canales de
1 MHz de forma pseudo-aleatoria.
Arquitectura de transporte
Relación entre los paquetes y los canales
Canales físicos
• Caracterizados por las frecuencias RF y
parámetros temporales.
• Tipos
– Canal de piconet básico
– Canal de piconet adaptativo
– Canal de page scan
– Canal de inquiry scan
Enlaces físicos
• Representan una conexión entre
dispositivos
• Un enlace físico es asociado solo con un
canal físico
• Es un concepto virtual
Enlaces Lógicos y Transporte Lógico
• Enlace lógico asociado con un transporte
lógico
• Transporte lógico se caracteriza por:
– Control de flujo
– Mecanismos de ARQ
– Secuenciamiento
– Planificación
Canales L2CAP
• Canales L2CAP permiten a una aplicación
interactuar con las capas mas bajas de
Bluetooth sobre una aproximación
orientada a conexión.
• Los canales son identificados por un CID
asignado por la entidad L2CAP.
Especificación BaseBand
• Define los procedimientos claves para
permitir la comunicación entre
dispositivos.
Especificación BaseBand: Piconets y
Scatternet
• Piconet:
– Una colección de
dispositivos que
pueden comunicarse.
– Formada de una forma
ad hoc.
– Contiene un
dispositivo maestro.
– Y a lo sumo 7
dispositivos.
Maestro
Esclavo
Especificación BaseBand: Piconets y
Scatternet
• Scatternet:
– Un dispositivo en una
piconet puede ser
parte de otra piconet
(como maestro o
esclavo).
– Esta especie de
solapamiento se
conoce como
scatternet.
Maestro
Esclavo
Especificación BaseBand: Salto de Frecuencia
• El ancho de banda es dividido en 79 canales físicos de 1 MHz.
• El salto ocurre de una frecuencia a otra en forma seudo aleatoria.
• La secuencia de salto es compartida entre todos los dispositivos de una piconet.
• Ya que la tasa de salto es de 1600 saltos / seg cada canal es ocupado por 0,625 ms.
• Este período es llamado slot.
• Están numerados secuencialmente.
Especificación BaseBand: Salto de Frecuencia
• Los dispositivos (radios) se comunican usando Time Division Duplex (TDD).
• La data es transmitida en una dirección a la vez.
• La transmisión se alterna entre las dos direcciones.
• Ya que mas de dos dispositivos usan el medio se esta hablando de TDMA.
• Siendo el acceso a la piconet: FH-TDD-FDMA.
Especificación BaseBand: Salto de Frecuencia
• La transmisión de una paquete se inicia al comienzo de un slot.
• Si un paquete requiere más de un slot, el radio permanece en la misma frecuencia.
• Después retorna a la frecuencia requerida por la secuencia de salto.
Especificación BaseBand: Salto de Frecuencia
• La frecuencia de salto es determinada por el maestro.
• Ya que piconets diferentes en la misma área tienen diferentes maestros, tendrán diferentes frecuencias de salto.
• La mayoría de la veces las transmisiones en diferentes piconets ocurrirá en diferentes frecuencias.
• Ocasionalmente, pueden haber colisiones por dos transmisiones de dos piconets distintas (en la misma área) usando la misma frecuencia.
• Dichas colisiones son tratadas con la técnica de detección/corrección de errores y mecanismos ARQ.
Especificación BaseBand: Tipos de Enlaces
• Dos tipos de enlaces se pueden establecer entre Maestro-Esclavo:
• Sincrono Orientado a Conexión (SCO): – Es orientado al tráfico con restricciones de tiempo (audio).
– Reserva un ancho de banda fijo en una conexión punto-a-punto (M/E) a intervalos regulares de tiempo.
– El maestro reserva slots (en pares, uno por cada dirección).
– Los paquetes SCO no son retransmitidos.
– Pero se pueden usar mecanismos de detección/corrección de errores (FEC).
• Asíncrono No Orientado a Conexión (ACL): – Esta destinado a tráfico best effort.
– La comunicación se realiza en slots no reservados para tráfico SCO.
– Retransmisión de paquetes se puede aplicar.
Especificación BaseBand: Paquetes
Código de
acceso Encabezado Carga Útil
LSB 68/72 54 0-2745 MSB
Preámbulo Sync Word Cola
LSB 4 64 4 MSB
Especificación BaseBand: Paquetes
• Código de Acceso (AC):
– Existe un código corto (68 bits) y otro largo (72 bits).
– El AC corto es usado para sincronismo, compensación del desplazamiento DC e identificación.
– Identifica todos los paquetes en un canal físico.
– Los paquetes enviados por un mismo canal físico deben tener el mismo AC.
Especificación BaseBand: Paquetes
• Hay tres tipos de Código de Acceso (AC): – Código de acceso del canal (CAC):
• identifica un piconet.
• todos los paquetes enviados en la misma piconet tienen el mismo CAC.
– Código de Acceso del Dispositivo (DAC): • usado para búsquedas (paging) y
• subsecuentes respuestas.
– Código de Acceso de Indagación (IAC): • Puede ser general o dedicado.
• El primero se usa para descubrir dispositivos que estén en el alcance.
• El segundo es usado para un grupo dedicado de dispositivos.
Especificación BaseBand: Paquetes
• El AC incluye los siguientes campos:
• Preámbulo:
– Tiene un patrón fijo de 4 símbolos.
– Usado para compensar el DC.
– Su valor depende de el LSB de la palabra de
sincronización (sync word).
Especificación BaseBand: Paquetes
• Cola:
– Tiene un patrón fijo de 4 símbolos.
– Usado para extender compensación del DC
junto con los tres MSB del syncword.
– Su valor depende del MSB de la palabra de
sincronización (syncword).
Especificación BaseBand: Paquetes
• SyncWord: – Cada dispositivo Bluetooth tiene una dirección de 48
bits.
– Los 24 bits menos significativos son llamados parte de la dirección menos significativa (LAP).
– LAP es usado para formar la syncword.
– Para CAC, la dirección LAP del maestro es usada.
– Para GIAC o DIAC, LAPs reservados y dedicados son usados.
– Para DAC, la dir LAP del esclavo es usada.
Especificación BaseBand: Paquetes
• La palabra syncword se forma de la siguiente forma:
1. Sumar bits al LAP.
2. Generar secuencia PN.
3. Hacer XOR de resultante paso 1 y parte secuencia PN.
4. Generar un código de error de 34 bits para el bloque de información anterior y colocarlo al comienzo.
5. Hacer XOR de la PN y la secuencia de 64 bits producida en paso 4.
Especificación BaseBand: Paquetes
Especificación BaseBand: Paquetes
• Encabezado del paquete:
– LT-ADDR: dirección de transporte lógica para el paquete. Es la dir temporal asignada al esclavo en dicha piconet.
– Tipo: identifica el tipo de paquete.
– Flujo: proporciona un mecanismo para el control de flujo de un solo bit para el tráfico ACL.
– ARQN: proporciona un mecanismo de reconocimiento de 1 bit para tráfico ACL protegido por un CRC.
– SEQN: proporciona un esquema de numeración secuencial de 1-bit. Los paquetes transmitidos son etiquetados con 1 o 0.
– HEC: un código de detección de error para proteger el encabezado.
LT_ADDR Tipo Flujo ARQN SEQN HEC
LSB MSB 3 4 1 1 1 8
Especificación BaseBand: Paquetes
• Carga Útil del Paquete:
• Hay dos campos:
– Campo sincrono: paquetes SCO.
– Campo asíncrono: paquetes ACO.
– Un paquete DV tiene ambos.
• Campo Sincrono:
– Cuerpo.
– Campo CRC de 16 bits.
Mecanismos de Corrección de Errores
• 1/3 FEC:
– envía tres copias del mismo bit.
• 2/3 FEC:
– basado en código de Hamming.
• ARQ:
– usa para la detección de errores el CRC/FEC.
– Utiliza ACKs positivos para reconocer tramas recibidas exitosamente y retransmite paquetes después que se ha vencido el correspondiente timeout.
– Adicionalmente, un receptor que recibe un paquete dañado puede enviar un ACK negativo.
– El emisor al recibir este debe retransmitir el paquete.
Mecanismos de Corrección de Errores
Especificación BaseBand:
Canales Lógicos
• Control de Enlace (LC): transporta información de control de enlace de datos tal como ARQ, control de flujo y caracterización de la carga útil.
• Gestión de Enlace (LM): soporta tráfico LMP y es transportado en paquetes SCO y ACL.
• Usuario Asíncrono (UA): transporta data del usuario asíncrona.
• Usuario Isócrono (UI): transporta data de usuario isócrona.
• Usuario Sincrono (US): transporta data del usuario sincrona.
Bluetooth: Establecimiento de la
Conexión
• Estado de Prevenido
(Standby).
• Procedimiento de
Indagación (Inquiry).
• Procedimiento de
Page.
• Estado de Conexión
(Connection).
Procedimiento de Indagación
• Antes de establecer una conexión no están definidos los roles del dispositivo (maestro o esclavo).
• El maestro potencial identifica dispositivos en el rango en el cual puede participar.
• Transmite paquetes ID con un IAC.
• Ocurre en el estado Inquiry.
• El dispositivo que recibe un Inquiry entra en el estado de Inquiry Response.
• El retorna un paquete FHS con la dirección e información de reloj.
• Si el dispositivo lo desea puede entrar al procedimiento de page.
Procedimiento de Page
• Maestro potencial usa la dir del dispositivo para calcular secuencia FH de page.
• El maestro busca usando el paquete ID y el DAC del esclavo específico.
• El esclavo responde con el paquete DAC ID (slave response).
• El maestro responde con un paquete FHS (master response).
• El esclavo confirma la recepción con un DAC ID.
• El esclavo se mueve al estado de Connection.
Bluetooth: Establecimiento de la
Conexión
• Estado de Indagación (inquiry):
– Un dispositivo colecta información acerca de
otros dispositivos cercanos.
– Para obtener información básica tal como
dirección Bluetooth del dispositivo y valores
del reloj.
– Esta compuesto por varios sub estados:
• Inquiry: ejecutado por el potencial maestro.
• Inquiry scan y inquiry response: ejecutados por los
potenciales esclavos.
Bluetooth: Establecimiento de la
Conexión
• Sub estado de inquiry:
– Un potencial maestro transmite paquetes de
indagación los cuales son recibidos por esclavos en
el sub estado de inquiry scan.
• Sub estado de inquiry scan:
– Un dispositivo busca mensaje de inquiry enviados por
un maestro potencial.
• Sub estado de inquiry response:
– Una vez recibido un mensaje de inquiry un potencial
esclavo debe entrar al estado de inquiry response.
Bluetooth: Establecimiento de la
Conexión
• Estado de Page:
– Un dispositivo invita a otro a juntarse a su
piconet.
– Esta compuesto por varios sub estados:
• Page y master response: ejecutado por el
potencial maestro.
• Page scan y slave response: ejecutados por el
potencial esclavo.
Bluetooth: Establecimiento de la
Conexión
• Sub estado de page:
– Usado por un maestro para activar y conectarse a un esclavo en el sub estado de page scan.
• Sub estado de slave response:
– Usado por el esclavo cuando recibe un mensaje de page.
– En este estado el esclavo espera recibir un mensaje de master response.
– Después de recibir este, responde con otro mensaje de slave response y entra al estado de conectado.
• Sub estado de page scan:
– El esclavo escucha por mensajes de page del esclavo.
Bluetooth: Establecimiento de la Conexión
• Sub estado de master response:
– Un maestro entra en este estado una vez recibido un mensaje de page response del esclavo.
– El maestro transmite un paquete conteniendo la información necesaria para que el esclavo pueda entrar en el estado de conectado.
– Una vez que recibe una respuesta de esclavo el maestro puede entrara al estado de conectado.
Estados de la Conexión
Estados de la Conexión
• Active – participa en una piconet.
– Escucha, transmite y recibe paquetes
• Sniff – escucha en slots específicos.
• Hold – no soporta paquetes ACL.
– Estados de potencia reducida.
– Puede aun participar en el intercambio de paquetes SCO.
• Park – no participa en la piconet
– Es retenido como parte de la piconet.
Seguridad: Ataques
• Bluebugging: hace posible que personas con los conocimientos necesarios obtengan acceso a las funciones de dispositivos tales como teléfono móvil o PDA, usando la tecnología inalámbrica Bluetooth, sin que el usuario del dispositivo sea notificado o alertado de ello.
– Esta vulnerabilidad permite al pirata informático iniciar llamadas telefónicas, enviar y leer SMS, leer y escribir datos en la agenda telefónica, escuchar conversaciones telefónicas y conectarse a Internet.
– Para lograrlo, el pirata debe encontrarse en un radio de diez metros del teléfono en cuestión.
Seguridad: Ataques
• Bluejacking: consiste en el envío anónimo por parte de los usuarios de "tarjetas de visita" usando tecnología inalámbrica Bluetooth.
– El "bluejacking" NO implica la supresión o modificación de datos del dispositivo receptor.
– Por lo general, las "tarjetas de visita" enviadas contienen un mensaje de tono ligero o coqueto, en lugar del nombre y el número de teléfono del remitente.
– Los "bluejackers" suelen estar atentos a la señal sonora de recepción del mensaje o a la reacción del usuario.
– Una vez identificado el dispositivo receptor, envían otro mensaje, más personalizado.
– También en este caso, es necesario que los dispositivos emisor y receptor se encuentren situados a menos de diez metros de distancia entre ellos.
– Los receptores de este tipo de mensaje no deben añadir el contacto a la agenda telefónica de su dispositivo.
– Los dispositivos en modo invisible no son susceptibles a este tipo de ataques.
Seguridad: Ataques
• Bluesnarfing: hace posible que los piratas informáticos accedan a los datos almacenados en un teléfono con tecnología Bluetooth usando tecnología inalámbrica Bluetooth, sin alertar al usuario del teléfono de que se ha establecido una conexión con su dispositivo.
– Este tipo de ataque permite acceder a la agenda telefónica y a sus imágenes asociadas, a la agenda y al código de identificación internacional del dispositivo móvil, sin modificar la información encontrada.
– Si se configura el dispositivo en modo invisible, es mucho más difícil de localizar y atacar.
– Sin el equipo apropiado, el pirata informático debe encontrarse a menos de 10 metros de distancia del dispositivo y contar con un computador con un sistema operativo apto para realizar capturas de datos a bajo nivel (Windows, Linux, etc.) y el software apropiado.
Seguridad: Ataques
• Denegación de Servicio (DoS): El famoso ataque de Denegación de Servicio (Denial of Service, o DoS), que hasta el momento ha tenido como blanco a redes y sitios Web de Internet, es ahora una posibilidad para los piratas de dispositivos inalámbricos con tecnología Bluetooth.
– Esta molestia no es ni original ni demasiado ingeniosa. Consiste simplemente en una petición continúa de respuesta, ejecutada por un pirata equipado con un computador con tecnología Bluetooth y dotado de un software específico, a otro dispositivo equipado con Bluetooth de modo que causa una degradación temporal de la batería en el dispositivo receptor.
– Mientras ocupa el enlace Bluetooth con peticiones de comunicación inválidas, el pirata puede desactivar temporalmente los servicios Bluetooth del dispositivo.
Seguridad: Ataques
• Ataque de hombre en el medio: En este tipo de ataque, el pirata informático se coloca en el medio de una conexión válida entre dos dispositivos Bluetooth, interceptando los mensajes enviados entre ellos.
– Para realizar este ataque, el pirata debe contar con un analizador de red, capaz de captar los paquetes Bluetooth enviados.
Seguridad
• La especificación banda base define una facilidad para proporcionar seguridad entre dos dispositivos Bluetooth que están estableciendo una conexión.
• La misma consiste de los siguientes elementos:
– Autenticación:
• tiene como finalidad verificar identidades de las unidades involucradas en el procedimiento.
– Cifrado:
• la información del usuario puede ser protegida cifrando el paquete;
• sin embargo, el código de acceso y el encabezado del paquete nunca se cifran.
– Gestión de claves y usos.
Seguridad: Autenticación
• Para mantener la seguridad a nivel de enlace, se usan cuatro parámetros:
– Dirección del dispositivo Bluetooth (BD_ADDR): es única y tiene una longitud de 48 bits. Es asignada por la IEEE.
– Clave privada de autenticación de usuario: tiene una longitud fija de 128 bits.
– Clave privada de cifrado: esta clave de usuario tiene longitud variable (entre 8 y 128 bits) y se obtiene durante el proceso de autenticación, a partir de la clave de autenticación
– Número aleatorio (RAND): se obtiene de un proceso pseudos aleatorio que se llevará a cabo en el dispositivo Bluetooth. Este número cambiará periódicamente.
Seguridad: Autenticación
• Se usa una rutina convencional de desafío/respuesta.
• Esta se realiza para asegurar que la entidad tratada posee su clave secreta.
• Esta clave de enlace es compartida por los dispositivos que se van a comunicar.
• La clave de enlace (de autenticación) es un número aleatorio de 128 bits que se comparte entre dos o más dispositivos.
• Esta clave se usa en el proceso de autenticación y forma parte de los parámetros usados para crear la clave de cifrado.
Seguridad: Autenticación
• El esquema de desafío-respuesta consiste en lo siguiente:
• El demandante transmite su dirección de 48 bits exigida por el verificador.
• Entonces el verificador retorna al demandante un desafío en la forma de un número aleatorio de 128 bits (AU_RAND),
• Este junto con una clave de enlace secreta compartida de 128 bits y la dirección del demandante (BD_ADDR), forman parte de la entrada a una función Hash, dando como salida una firma de 32 bits (SRES).
• Esta firma es enviada al verificador.
• Este compara ese resultado con su propio Hash (SRES’).
• Sólo si ambos números calculados son los mismos, la autenticación habrá tenido éxito.
• Entonces quien emitió el desafío, procederá con el establecimiento de la conexión.
Seguridad: Autenticación
• El algoritmo E1 también da como resultado el parámetro ACO (Authenticated Ciphering Offset)
• Este será utilizado para generar la clave de cifrado en el proceso de encriptación.
Seguridad: Autenticación
• Si el proceso de autenticación falla, debe pasar un tiempo antes de intentarlo nuevamente.
• Este tiempo se incrementa exponencialmente.
• Por otro lado, el tiempo de espera decrecerá exponencialmente cuando no haya fallos en un determinado período de tiempo.
Seguridad: Cifrado
• El proceso de cifrado usa un algoritmo que se llama E0.
• Para cada transmisión de un paquete se genera una nueva clave de cifrado de la siguiente forma.
• Se combinan en una función RAND compleja, la dirección del dispositivo, un número de 26 bits que representa el reloj maestro y la clave secreta de cifrado.
• Esta clave es usada como una entrada para E0 para producir un flujo continuo de bits llamado z.
• El algoritmo E0 se implementa usando cuatro LFSRs (Linear Feedback Shift Registers), cuyas longitudes son de 25, 31, 33 y 39 sumando en total 128 bits.
• La cadena z es sumada modulo-2 a los datos que se van a cifrar.
• Como el valor del reloj cambia por cada cifrado una cadena de cifrado distinta es usada cada vez mejorando la seguridad.
Seguridad: Cifrado
Seguridad: Cifrado
Link Manager Protocol (LMP)
• Controla y negocia todos los aspectos de una
conexión.
– Set-up
– Control de transportes lógicos y enlaces
lógicos.
• Comunica dos LMs
• Los mensajes son transferidos sobre enlaces
lógicos ACL-C
• Los mensajes no se propagan hacia las capas
superiores
Especificación del Manejador del Enlace
(LMP)
• Gestiona diversos aspectos del enlace de
radio entre M/E.
• Los mensajes son intercambiados en la
forma de LMP PDUs.
• Los mensajes son siempre enviados en un
slot.
• Los mensajes se distribuyen en 24 áreas
funcionales.
Especificación del Manejador del Enlace (LMP):
Funciones Generales
• LMP define dos tipos de PDUs para
responder a otro PDU:
– aceptado (accepted) o
– no aceptado (not_accepted).
LMP: Funciones de Seguridad
• Estos servicios incluyen los siguientes:
– Autenticación.
– Emparejamiento.
– Cambio de la clave de enlace.
– Cambio de la clave de enlace en curso.
– Encriptamiento.
LMP: Funciones de Sincronismo
• LMP proporciona mecanismos de
sincronismo en la diferentes piconets
participantes:
– Requerimiento de desplazamiento de reloj.
– Información de desplazamiento del slot.
– Requerimiento de información de la exactitud
del temporizador.
LMP: Capacidades de la Estación
• LMP incluye información que se
intercambia acerca de los dispositivos que
se están comunicando:
– Versión de LMP.
– Características soportadas.
LMP: Control de Modos
• Bluetooth soporta cierto número de estados y modos los cuales son manejados a través de las siguientes funciones:
– Intercambio del rol de esclavo/maestro.
– Requerimiento de nombre.
– Desconexión.
– Coloca el enlace entre un maestro y un esclavo en modo de hold.
– Entrar en el modo sniff.
– Coloca a un esclavo en modo Park.
– Permite el cambio de un canal entre un modo protegido con un código 2/3 FEC o no protegido con ningún FEC.
LMP: Control de Modos
– Define dos parámetros de QoS.
– Establecimiento de enlaces SCO.
– Arbitra el máximo número máximo de slots de tiempo que un paquete puede cubrir.
– Determina el esquema de paging a ser usado entre dispositivos en la piconet.
– Supervisión de enlace para declararlo como que tiene alguna falla.
Especificación del protocolo L2CAP
• Es un protocolo de la capa de enlace entre entidades con un número de servicios.
• Confía en protocolos de las capas más bajas para control de error y flujo.
• Hace uso de los enlaces ACL pero no soporta enlaces SCO.
• Proporciona los siguientes servicios, los cuales pueden ser usados por los protocolos de las capa superiores: – Servicio orientado a la conexión.
– Servicio no orientado a conexión.
L2CAP: Canales Lógicos
• No orientado a conexión – Soporte un servicio no orientado a la conexión.
– Cada canal es unidireccional.
– Usado para broadcast del maestro a múltiples esclavos.
• Orientado a la Conexión – Soporte un servicio orientado a la conexión.
– Cada canal es bidireccional.
• Señalización – Provee el intercambio de mensajes de señalización
entre entidades L2CAP.
L2CAP: Canales Lógicos
Protocolos Middleware
• Protocolo de Descubrimiento de Servicios
(Service Discovery Protocol, SDP):
– Permite que un dispositivo Bluetooth pregunte acerca
de los servicios que otro dispositivos conectados
pueden tener y como accederlo.
– SDP no proporciona los mecanismos para
accederlos.
– SDP soporta las siguientes indagaciones:
• Búsqueda según clase de servicio.
• Búsqueda según los atributos de los servicios.
• Navegación por los servicios.
Protocolos Middleware
• RFCOMM: – Permite que aplicaciones que han sido diseñadas e
implementadas para operar sobre cables eriales corran sobre Bluetooth sin ser modificadas.
– Este protocolo emula las señales sobre los nueve hilos de un cable de interconexión RS-232.
Protocolos Middleware
• Protocolo de Señalización de Control de Telefonía (Telephony Control Signaling, TCS):
– Soporta funciones de telefonía normales entre las que se encuentran iniciación y terminación de una llamada, reconocer una llamada entrante, aceptar una llamada.
– Soporta comunicación punto a punto y punto a multipunto.
Protocolos Middleware
• Otros protocolos:
– Incluyen protocolos adoptados de otras organizaciones.
– El protocolo PPP (Point-to-Point Protocol) es un estándar del IETF para soportar la comunicaron IP sobre líneas seriales.
– El OBEX (Object Exchange Protocol) desarrollado por IrDA para el transporte de objetos entre dispositivos.
Perfiles Bluetooth
• Definen los protocolos y las características que soporta un modelo de uso.
• Un modelo de uso es un conjunto de protocolos que implementan una aplicación particular basada en Bluetooth.
• Los perfiles se pueden dividir en:
– Generales
– Específicos.
Perfiles Bluetooth: Perfiles Generales
• Perfil de acceso genérico (Generic Access
Profile, GAP).
• Perfil del puerto en serial (Serial Port Profile,
SPP).
• Perfil de aplicación de descubrimiento de
servicios (Service Discovery Application Profile,
SDAP).
• Perfil genérico de intercambio de objetos
(Generic Object Exchange Profile, GOEP).
Perfiles Bluetooth: Perfiles Específicos
• Perfil de transferencia de archivos (File Transfer Profile).
• Perfil de acceso a una LAN (LAN Access Profile).
• Perfil de sincronización (Synchronization Profile).
• Perfil de telefonía inalámbrica (Cordless Telephony Profile)
• Perfil de auriculares (Headset Profile).
• Perfil de fax (Fax profile).
• Perfil de inter comunicación (Intercom Profile).
• Perfil de acceso telefónico a redes (Dial-UP Networking Profile).
• Perfil de carga de objetos (Object Push Profile).
Perfiles Bluetooth
Perfil de Telefonía
Inalámbrica Perfil de
Intercomunicación
Perfil de Acceso
Telefónico a Redes
Perfil de Transferencia
De Archivos
Perfil de Carga
de Objetos
Perfil de Sincronización
Perfil de Fax
Perfil de Auriculares
Perfil de Acceso
a Redes LAN
Perfil de Acceso Genérico
Perfil de Descubrimiento
de Servicios
Perfiles Basados en TCS-Bin
Perfil Genérico de
Intercambio de Objetos
Perfil de Puerto Serial
Perfil de Acceso Genérico
• Define los procedimientos genéricos para descubrir dispositivos Bluetooth
• Define aspectos relacionados a la gestión de enlace para dispositivos que están estableciendo una conexión.
• Describe el uso de las capas inferiores tal como la LC y LMP,
• Describe las alternativas de seguridad incluyendo las de las capas superiores tales como L2CAP, RFCOMM y OBEX.
Perfil del Puerto Serial
• Esta construido sobre el perfil de acceso genérico.
• Establece como deben configurarse los dispositivos Bluetooth para emular una conexión erial usando RFCOMM.
• Las aplicaciones que utilizan este perfil son normalmente aplicaciones heredadas que utilizan la comunicación serial y que no deben estar al tanto que la comunicación se esta realizando sobre el un enlace Bluetooth.
Banda base
L2CAP LMP
RFCOMM SDP
Emulación
del puerto serial
Aplicación A
Banda base
LMP L2CAP
RFCOMM SDP
Emulación
del puerto serial
Aplicación B
Perfil de Aplicación de Descubrimiento de
Servicios
• Describe como un dispositivo puede
descubrir servicios registrados en otros
dispositivos Bluetooth al igual que otra
información acerca de estos servicios.
Perfil de Aplicación de Descubrimiento de
Servicios
Banda base
Capa L2CA
Aplicación de
Descubrimiento de
Servicio
SDP (cliente)
BT-module-Cntrl
LM
ACL
CO
Banda base
Capa L2CA
SDP (cliente)
BT-module-Cntrl
LM
ACL
CO
Base de datos
de requisitos
de servicios
Perfil Genérico de Intercambio de Objetos
• Define como los objetos pueden ser intercambiados usando el protocolo OBEX.
• El perfil indica los requerimientos expresados en términos de las características y procedimientos que son requeridos para la interoperabilidad entre dispositivos Bluetooth en el modelo de uso del intercambio de objetos.
• Dependiendo de este perfil, hay perfiles para sincronizar información de gestión personal (PIM), transferencia de archivos y carga de objetos (como por ejemplo tarjetas de negocios).
Perfil Genérico de Intercambio de Objetos
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación Cliente
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación
Servidora
Lado del cliente Lado del servidor
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación Cliente
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación Cliente
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación
Servidora
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación
Servidora
Lado del cliente Lado del servidor
Perfil de Transferencia de Archivos
• Ofrece la capacidad
de transferir objetos
de datos de un
dispositivo a otro
tales como hoja de
cálculo,
presentaciones,
imágenes.
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación Cliente de
Transferencia de Archivos
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidor
de Transferencia de Archivos
Lado del cliente Lado del servidor
Perfil de Transferencia de Archivos
Perfil de Acceso a una LAN
• Permite a un dispositivo Bluetooth acceder
a una LAN, tal como si estuviera
conectado a la red, usando PPP.
• En este modelo los dispositivos utilizan un
punto de acceso a una LAN como
conexión inalámbrica a la LAN.
Perfil de Acceso a una LAN
Banda base
L2CAP
RFCOMM
TCP / UDP
IP
PPP
SDPM
E
Aplicaciones
LMP
Banda base
L2CAP
SDP
PPP
RFCOMM
LMP
PPP networking
M
ELAN
TCP / UDP
IP
Aplicaciones
LAN
Dispositivo Bluetooth Punto de acceso LAN LAN
Banda base
L2CAP
RFCOMM
TCP / UDP
IP
PPP
SDPM
E
Aplicaciones
LMP
Banda base
L2CAP
SDP
PPP
RFCOMM
LMP
PPP networking
M
ELAN
TCP / UDP
IP
Aplicaciones
LAN
Dispositivo Bluetooth Punto de acceso LAN LAN
Perfil de Sincronización
• Define los
requerimientos de la
aplicación para los
dispositivos Bluetooth
para el soporte del
modelo de uso de
sincronización. Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación IrMC
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidor
IrMC
Lado del cliente Lado del servidor
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación IrMC
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación IrMC
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidor
IrMC
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidor
IrMC
Lado del cliente Lado del servidor
Perfil de Telefonía Inalámbrica
• Define los procedimientos para la realización de llamadas a través de una estación base y la realización de llamadas en forma directa.
• También permite el acceso de servicios complementarios provistos por una red general de conmutación externa.
Perfil de Telefonía Inalámbrica
TCS
Banda base
L2CAP
Control de
Sincronización de
la llamada
Aplicación de telefonía
SDP
Control de
llamadas
Discriminación de protocolos
SCO
CL CO
LMP
ACL
Gestión del Grupo CL
Perfil de Telefonía Inalámbrica
Perfil de Auriculares
• Define los protocolos y procedimientos para soportar el uso de auriculares.
• El auricular debe puede actuar como entrada de audio e interfaz de salida de un dispositivo.
• El mismo debe ser capaz de responder llamadas entrantes y finalizarlas sin uso del teclado del teléfono.
• El control del auricular es responsable por la señalización de control específica de los auriculares esta basado en comandos AT.
• El nivel de emulación del puerto de audio emula el puerto de audio en un teléfono celular o en un PC.
• El controlador de audio es el software en los auriculares.
Perfil de Auriculares
Banda base
L2CAP LMP
RFCOMM SDP
Control del Auricular
Aplicación
(Emulación de
puerto de audio)
Banda base
LMP L2CAP
RFCOMM SDP
Control del Auricular
Aplicación
(Controlador de audio)
Lado del gateway
de audio
Lado del auricular
Perfil de Fax
• Define los protocolos y procedimientos para el soporte del caso de uso del Fax.
• Un teléfono celular o un MODEM con Bluetooth instalado pueden ser usados por una PC como MODEM-fax inalámbrico.
• El nivel de marcación y control define los comandos y procedimientos para la marcación y control automáticos del enlace serie asíncrono proporcionado por los niveles inferiores.
• El nivel de emulación de MODEM es la entidad responsable de emular el MODEM y el controlador del MODEM es el software controlador en el terminal de datos.
Perfil de Fax
Banda base
L2CAP LMP
RFCOMM SDP
Marcación y control
Aplicación
(Emulación del
MODEM)
Banda base
LMP L2CAP
RFCOMM SDP
Marcación y control
Aplicación
(Controlador del MODEM)
Lado del gateway Lado del terminal
de datos
Perfil de Intercomunicación
• Soporta el uso de escenarios que implican
un enlace vocal directo tales como dos
usuarios de teléfonos que establezcan
una comunicación sobre una conexión
Bluetooth.
Perfil de Intercomunicación
TCS
Banda base
L2CAP
Control de
Sincronización de
la llamada
Aplicación de telefonía
SDP
Control de
llamadas
Discriminación de protocolos
SCO
CL CO
LMP
ACL
Perfil de Intercomunicación
Perfil de Acceso Telefónico a Redes
• Define los procedimientos y protocolos usados
por dispositivos tales como MODEM y teléfonos
celulares para implementar el modelo de uso
denominado puente Internet.
• Por ejemplo, el uso de un teléfono celular como
MODEM inalámbrico para conectar una PC o
PDA a una servidor de acceso telefónico a
Internet.
Perfil de Acceso Telefónico a Redes
Banda base
L2CAP LMP
RFCOMM SDP
Marcación y control
Aplicación
(Emulación del
MODEM)
Banda base
LMP L2CAP
RFCOMM SDP
Marcación y control
Aplicación
(Controlador del MODEM)
Lado del gateway Lado del terminal
de datos
Banda base
L2CAP LMP
RFCOMM SDP
Marcación y control
Aplicación
(Emulación del
MODEM)
Banda base
LMP L2CAP
RFCOMM SDP
Marcación y control
Aplicación
(Controlador del MODEM)
Lado del gateway Lado del terminal
de datos
Perfil de Acceso Telefónico a Redes
Perfil de Carga de Objetos
• Define los requisitos de aplicación para soportar el modelo de uso de carga de objetos entre dispositivos Bluetooth.
• Este perfil permite a un dispositivo cargar un objeto (tal como una tarjeta de negocios o una cita) en la carpeta de entrada de otro dispositivo.
• El dispositivo también pude descargarse una tarjeta desde otro dispositivo Bluetooth.
• Dos dispositivos pueden también intercambiar objetos.
Perfil de Carga de Objetos
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación
(Cliente de carga)
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación
(Servidor de carga)
Cliente de carga Servidor de carga
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación
(Cliente de carga)
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación
(Servidor de carga)
Cliente de carga Servidor de carga