Información del paquete
Cada paquete contiene información sobre:
Origen.
Destino.
La frecuencia que está utilizando.
Cómo se han comprimido los datos.
El orden en que los paquetes fueron transmitidos.
Información para verificar la efectividad de la transmisión.
Seguridad
Hay diferentes perfiles que condicionan la seguridad en una comunicación bluetooth.
El Perfil de Acceso Genérico Bluetooth, que es un marco en el cual se centran todos los demás perfiles, define tres modos de seguridad:
No seguro: no inicia ningún tipo de seguridad
Seguridad impuesta a nivel de servicio: inicia el procedimiento de seguridad después de que el canal haya sido establecido (capas altas de la pila de protocolos).
Seguridad impuesta a nivel de enlace: inicia el procedimiento de seguridad antes de que el canal haya sido establecido (capas bajas de la pila de protocolos).
Seguridad
Existe la posibilidad de acceder a un servicio con diferentes accesos de dispositivo:
dispositivo de confianza: tienen acceso sin restricción a los servicios.
Dispositivos de no confianza: tienen un acceso limitado
Catalogados a tres niveles de seguridad
Servicios abiertos: a los cuales puede acceder cualquier dispositivo.
Servicios que requieren sólo autenticación: a los cuales puede acceder cualquier dispositivo que se haya autenticado, puesto que habra demostrado que comparte una clave de enlace con el proveedor del servicio
Seguridad
Servicios que requieren autenticación y autorización: a los cuales sólo tendrán acceso aquellos dispositivos que sean de confianza (y así estarán marcados en la base de datos del servidor).
Para conseguir seguridad, tanto en el acceso a otros dispositivos Bluetooth como en la transmisión de la información entre ellos, es necesario un complejo entramado de seguridad que afiance estos dos aspectos.
Seguridad a nivel de enlace
La dirección del dispositivo Bluetooth (BD_ADDR). La BD_ADDR tiene una longitud fija de 48 bits y es única para cada dispositivo Bluetooth, siendo asignada por el IEEE.
La clave de usuario privado de autenticación. La clave de autenticación tiene una longitud fija de 128 bits durante el proceso de autenticación, tiene una longitud variable, entre 1 y 16 octetos, es decir entre 8 y 128 bits.
Seguridad a nivel de enlace
La clave de usuario privado de cifrado. Esta se obtiene a partir de la clave de autentificación.
Un número aleatorio(RAND). El número aleatorio vendrá derivado de un proceso aleatorio o pseudo-aleatorio que tendrá lugar en la unidad Bluetooth. Este parámetro cambiará frecuentemente.
Gestión de claves
hay diferentes tipos de claves
La clave de autenticación, llamada comúnmente clave de enlace, es un número aleatorio de 128 bits que es compartido entre dos a más dispositivos siendo la base de todas las transacciones entre ellos, ya que además de ser usada en la rutina de autenticación, también es usada como uno de los parámetros de la generación de la clave de cifrado.
Gestión de claves
Las claves de enlace son semi-permanentes o temporales. Las primeras son almacenadas en memoria no volátil y pueden ser usadas después de que la sesión actual ha finalizado. Téngase en cuenta que sesión se define como el intervalo de tiempo en el cual una unidad Bluetooth es miembro de una determinada piconet, y por lo tanto, la sesión finaliza cuando la unidad se desconecta de la misma. Por consiguiente, una vez que se ha definido una clave semi-permanente, puede continuar siendo usada como clave de enlace en siguientes sesiones entre las unidades involucradas, es decir entre las unidades que la utilizaron en un primer momento. La designación semi-permanente viene dada por la posibilidad que existe de cambiarla. La clave temporal por otra parte está caracterizada porque su periodo de vida expira cuando finaliza la sesión actual.
claves de enlace
La clave unitaria KA es generada en cada dispositivo Bluetooth y en consecuencia sólo depende de una única unidad A
La clave de combinación KAB deriva de información de las dos unidades involucradas en al comunicación A y B, y en consecuencia dependerá de ellas dos. Esta clave por lo tanto se genera de cada nueva combinación de dos dispositivos Bluetooth.
claves de enlace
La clave temporal Kmaster se utilizará solamente durante la sesión en curso, suplantando a la clave original sólo temporalmente. Este tipo de clave se suele utilizar cuando una unidad Bluetooth actuando como maestro desea contactar simultáneamente con varios esclavos utilizando la misma clave de encriptación.
La clave de inicialización Kinit se usa como clave de enlace durante el proceso de inicialización, cuando todavía no se han creado ni intercambiado claves unitarias ni clave de combinación, o han sido perdidas. Esta clave protege la transferencia de parámetros de inicialización, y es generada a partir de un número aleatorio
Generación de Claves
Proceso de inicialización
Generación de una clave de inicialización.
Autenticación.
Generación de una clave de enlace.
Intercambio de clave de enlace.
Generación de la clave de encriptación.
Generación de Claves
Generación de una clave de inicialización Kinit.
Es la salida del algoritmo E22
BD_ADDR : Dirección Bluetooth
PIN : codigo de encriptación
L’ : longitud en octetos de este PIN
IN_RAND : codigo aleatorio
Generación de Claves
Generación de una clave de inicialización Kinit.
Generación de Claves
Generación de una clave de enlace.
modo 1:usado para claves unitaria y de combinación
modo 2: usado para claves de inicialización y temporal
Generación de Claves
Generación de clave unitaria
La generación de la clave unitaria tiene lugar en el algoritmo E21 durante el primer intento de operación, pero no durante cada inicialización. Una vez que se ha creado la clave unitaria es almacenada en memoria no volátil y casi nunca es cambiada.
Generación de Claves
Autenticación
utiliza un esquema de desafío-respuesta en el cual es comprobado el conocimiento de una clave secreta por parte del solicitante.
Si el proceso se hace con éxito se obtiene el ACO (Authenticated Ciphering Offset), utilizado en la clave de cifrado.
La clave secreta K compartida por ambas unidades A y B es la actual clave de enlace
Generación de Claves
Autenticación
Generación de Claves
Generación de la clave de encriptación
Clave de enlace actual
Numero aleatorio de 128 bits
96-bit Ciphering Offset number (COF)
Si clave de enlace es temporal: COF será la concatenación de la dirección del maestro: BD_ADDR U BD_ADDR
Si la clave no es temporal: COF será el ACO.
Generación de Claves
Generación de la clave de encriptación
Generación de Claves
Encriptación
Algoritmo de cifrado E0
Página anterior | Volver al principio del trabajo | Página siguiente |