Accueil🇫🇷Chercher

Code tournant

Un code tournant est utilisé dans les systèmes de verrouillage centralisé pour prévenir les tentatives de forçage par ré-émission, dont le principe est d'enregistrer le signal émis et de le rejouer plus tard afin de déclencher le déverrouillage par le récepteur. Ce type de code est notamment mis en œuvre dans les portes automatiques de garage et dans les verrouillages centralisés de voiture.

Technique

  • un gĂ©nĂ©rateur de nombres pseudo-alĂ©atoires, pseudorandom number generator (PRNG) en anglais, — de prĂ©fĂ©rence gĂ©nĂ©rateur de nombres pseudo-alĂ©atoires Ă  sĂ©curitĂ© cryptographique, cryptographically secure pseudorandom number generator (CSPRNG) en anglais — prĂ©sent Ă  la fois dans l'Ă©metteur et dans le rĂ©cepteur.
  • l'Ă©metteur transmet le 'nouveau code'.
  • le rĂ©cepteur compare ce 'nouveau code' Ă  son 'nouveau code' prĂ©-calculĂ©.
  • Une implĂ©mentation standard consiste Ă  le comparer Ă  une liste de 256 futurs codes prĂ©-calculĂ©s au niveau du rĂ©cepteur, afin d'autoriser: plusieurs Ă©ventuelles pertes de transmission entre l'Ă©metteur et le rĂ©cepteur, ou cas le plus courant, un enfant s'amusant Ă  appuyer sur les boutons.

Application dans les télécommandes RF

Un émetteur de code tournant est utilisé dans un système de sécurité à base d'émission de signal radio-fréquence (RF) comprenant un code fixe et un code tournant. Un récepteur démodule le signal RF crypté et en extrait le code fixe et le code tournant. Après comparaison du code fixe et du code tournant avec les codes déjà reçus, et après vérification de la présence du code tournant dans la liste des 256 futurs codes attendus, cet ensemble code fixe + code tournant est reconnu comme valide, et une commande est générée pour, par exemple, actionner un moteur électrique ou bien activer l'ouverture ou la fermeture d'une porte.

Télécommande RF à code tournant ou à code fixe

Lorsque le code émis est identique au code attendu par le récepteur, alors le récepteur va traduire cette commande par l'activation d'un moteur, le dé-verrouillage d'une porte, ou l'ouverture d'une barrière. Les télécommandes à code fixe émettent systématiquement le même code fixe. Les télécommandes à code tournant (ou code hopping) émettent quant à elles un code qui sera toujours différent des précédents.

KeeLoq

Un composant HCS301 implanté sur une télécommande d'Audi A6, mettant en œuvre le principe de transmission à code tournant.

Le composant Microchip HCS301 est un des composants générateurs de codes tournants les plus répandus dans les systèmes de télécommandes de portes de garage et de verrouillage de voiture. Ce composant utilise l'algorithme KeeLoq, basé sur la transmission de 66 bits de données.

  • 34 bits non encodĂ©s : un numĂ©ro de sĂ©rie sur 28 bits, information bouton sur 4 bits, et 2 bits de statut (indicateurs de rĂ©pĂ©tition et de batterie dĂ©chargĂ©e).
  • 32 bits encodĂ©s (constituant le code tournant) : 4 bits d'information bouton, 2 bits OVR (utilisĂ©s pour Ă©tendre la valeur du compteur), 10 bits DISC (valeur discriminĂ©e; souvent les 10 bits de poids faible du numĂ©ro de sĂ©rie), et un compteur de 16 bits[1].
  • Lors d'une resynchronisation, les 32 bits encodĂ©s sont remplacĂ©s par une valeur 32 bits de rĂ©initialisation.

Vulnérabilité

Un code tournant transmis par signal radio peut être intercepté et devenir de ce fait vulnérable au piratage. En 2015, Samy Kamkar a apporté la preuve de cette vulnérabilité en mettant au point un montage électronique bon marché de la taille d'un porte-feuilles, qui peut être dissimulé dans ou près d'un véhicule verrouillé, afin de capturer un code de déverrouillage de ce véhicule. Le boitier de Kamkar transmet un signal brouillant la réception du signal à code tournant provenant de la télécommande du propriétaire du véhicule, tandis qu'il enregistre les signaux de ses deux tentatives de déverrouillage. Le premier code enregistré est transmis au véhicule seulement lorsque le propriétaire effectue sa seconde tentative, tandis que le second est mis de côté pour une tentative ultérieure. Kamkar soutient que cette vulnérabilité concernant de nombreux modèles de voitures était parfaitement connue depuis des années, mais n'avait jamais encore été démontrée[2]. Une démonstration fut réalisée lors du DEF CON 23[3].

Références

  1. Microchip, « HC301 KeeLoq Code Hopping Encoder »,
  2. Cadie Thompson, « A hacker made a $30 gadget that can unlock many cars that have keyless entry », Tech Insider,‎ (lire en ligne, consulté le )
  3. Samy Kamkar, « Drive It Like You Hacked It: New Attacks and Tools to Wirelessly Steal Cars », DEF CON 23, (consulté le )

Voir aussi

Liens externes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.