Protocols - BaseBandProtocol  
El racó del Bluetooh 
   
 
LMP - Link Manager Protocol pàgina 2 de 8[anterior][següent]

  Missatges de resposta general

 

Les PDU LMP_accepted i LMP_not_accepted s'utilitzen entre els gestors d'enllaç com a missatges de resposta a altres PDU's en diversos procediments. La PDU LMP_accepted inclou el codi d'operació del missatge que s'ha acceptat. La PDU LMP_not_accepted inclou, a més del codi d'operació la raó de la denegació. Totes dues són obligatóries.

Tipus
PDU
Contingut
Obligatori LMP_accepted
Codi d'operació
Obligatori LMP_not_accepted

Codi d'operació
Motiu denegació

 

 Autenticació

 

L'autenticació està basada en l'esquema repte-resposta, es un procediment que està inclós en altres funcions del sistema (com . L'iniciador ( qui vol verificar l'autenticitat) el que fa és llençar un repte cap al dispositiu sota estudi (cal dir que tan mestre com esclau poden llençar el repte). Quan aquest rep el repte (un nombre aleatori), el processa amb una funció, la addreça BR del sol.licitant i una clau secreta, i torna la resposta mitjançant LMP_sres a l'emissor, que verifica si és correcta o no amb la clau pública de l'emissor. Si la resposta és correcta, el verificador pot tallar la connexió enviant LMP_detach amb el motiu "Error en el codi d'autentificació", i si el sol.licitant no té una paraula clau assossiaada amb el verificador, envia un LMP_not_accepted amb el motiu "falta la clau" després de rebre el repte LMP_au_rand.

Per tal d'evitar que un intrús trii varies claus ha de transcorre un cert intérval de temps abans que es pugui produir un nou intent d'autenticació i, després de cada fracàs, el temps d'espera es duplicarà respecte a l'anterior.

 

 Emparellament (pairing)

 


El responder envia LMP_accepted quan accepta la petició de pairing.

Procediment que s'inicia quan dos dispositius no tenen clau comuna d'enllaç. La primera acció es crear una clau d'inicialització Kinit basada en el nombre d'identificació personal (PIN) i en un nombre aleatori. Aquesta clau consta de 128 bits i es genera quan el verificador envia LMP_in_ran al dispositiu a autentificar (acció requerida).

El càlcul de la resposta a la petició d'autenticació es basa en la clau d'inicialització, que donarà lloc a una clau d'enllaç diferent quan l'autenticació mútua s'hagi dut a terme correctament. Aquesta clau serà la que s'utilitzarà posteriorment per autenticar els 2 dispositius que componen l'enllaç.

 


El reponder retorna un segon nombre aleatori que serà acceptat en funció de la condició de PIN de l'iniciador

Si el responder té un PIN fixe genera un nou nombre aleatori i tornar-lo a l'iniciador mitjançant un segon LMP_inrand:

  • Si l'iniciador té un PIN variable l'acceptarà i respondrà amb un LMP_accepted (veure figura superior). Els dos dispositius calcularan la Kinit basada en el recent IN_RAND i l'adreça BD_ADDR de l'iniciador. Llavors es procedeix a l'establiment de la clau d'enllaç.

  • Si l'iniciador té un PIN fixe, el segon LMP_inrand es rebutja mitjançant una comanda LMP_not_accepted amb la raó "Pairing not accepted" com a contingut. Llavors el procediment de pairing es dóna per finalitzat.
Tipus
PDU
Contingut
Obligatori
  LMP_in_rand
Nombre aleatori
Obligatori
  LMP_au_rand
Nombre aleatori
Obligatori
  LMP_sres
Resposta d'autentificació
Obligatori
  LMP_comb_key
Nombre aleatori
Obligatori
  LMP_unit_key
Clau

Per evitar que un intrús trii diferents valors de PIN diferents en un temps curt s'incrementa exponencialment el temps d'espera encada error d'autenticació.

La creació de la clau d'enllaç pot ser la combinació de les dues claus de les unitats o bé una de les dues. Això dependrà dels missatges que s'intercanviin :

  • Si una unitat envia LMP_unit_key i l'altre envia LMP_comb_key, la clau d'unitat serà la clau d'enllaç.
  • Si les dues envien LMP_unit_key, la clau d'unitat del mestre serà la clau d'enllaç
  • Si les dues unitats envien LMP_comb_key es requerirà una nova clau d'enllaç combinació de les dues.

 

 Canvi de la clau d'enllaç (change link key)

Procediment entre dos dispositius que tenen una clau d'enllaç. Es pot canviar la clau d'enllaç si aquesta procedeix de la combinació de les dos claus d'unitat. Si la clau d'enllaç bé donada per una de les dues claus d'unitat dels dispositius, cal tornar a realitzar el procés de pairing per tal de canviar la clau d'enllaç. Per tal de garantir confidencialitat, el contingut dels PDU's que intervenen en aquest procés s'enmascaren mitjançant l'aplicació de la clau actual (fent ús d'una XOR bit a bit).

Tipus
PDU
Contingut
Obligatori
  LMP_comb_key
Nombre aleatori

Quan s'ha establert amb éxit una nova clau d'enllaç, s'emmagatzema i es descarta l'anterior, i es mantindrà fins a una nova clau d'enllaç o fins la creació d'una clau temporal. Es realitza una autenticació mútua després de l'establiment de la nova clau d'enllaç per tal de garantir que tots dos dispositius tenen la mateixa clau d'enllaç.

 
 

 
     
 
ft vAlign=top bgcolor="#6699CC">