Brevet FR3125190A1 — publié le 20230113

L’invention concerne un procédé pour prévenir l’usurpation d’identité d’une unité de commande électronique particulière d’un véhicule automobile, lorsque l’unité de commande électronique particulière envoie un message en clair (M), qui contient des données de mesure, à une unité de commande électronique centrale du véhicule automobile. Dans l’invention, on : - génère (110) un identifiant de sélection d’un algorithme de hachage (hi), - obtient (120) au moins un paramètre commun (K) à l’unité de commande électronique centrale et l’unité de commande électronique particulière, - générer (130) une première empreinte numérique de hachage (E) de la combinaison du message en clair (M) et du paramètre commun (K), à partir de l’identifiant de sélection d’un algorithme de hachage (hi), - forme (140) une trame de données (T) qui inclut le message en clair (M), l’identifiant de sélection d’un algorithme de hachage (hi) et la première empreinte numérique de hachage (E), et - envoie (150) la trame de données (T) à l’unité de commande électronique centrale. Figure pour l’abrégé : Fig ure 1 PROCÉDÉ POUR PRÉVENIR L’USURPATION D’IDENTITÉ D’UNE UNITÉ DE COMMANDE ÉLECTRONIQUE PARTICULIÈRE D’UN VÉHICULE AUTOMOBILE L’invention concerne les techniques de prévention de l’usurpation d’identité dans les systèmes automobiles. Plus particulièrement, l’invention concerne un procédé pour prévenir l’usurpation d’identité d’une unité de commande électronique particulière d’un véhicule automobile, lorsque l’unité de commande électronique particulière envoie un message en clair, qui contient des données de mesure, à une unité de commande électronique centrale du véhicule automobile. Les capteurs de pression de pneu agencés sur la jante d'un véhicule automobile, dits capteurs TPMS (pour tire pressure monitoring system, en anglais) transmettent régulièrement des données de mesure à une unité centrale du véhicule automobile par un lien radiofréquence sur une porteuse de fréquence déterminée (par ex. 433 MHz ou 2.4 GHz). Ces données sont envoyées dans un message en clair, et il n’est pas possible de vérifier l’authenticité de l’émetteur, c’est-à-dire l’origine du message. Ainsi, un tiers malveillant (ou attaquant) pourrait se faire passer pour un tel capteur et envoyer de faux messages que l’unité centrale du véhicule automobile interprèterait comme valides et compréhensibles. Or, une telle possibilité peut être dangereuse pour les passagers du véhicule automobile. En effet, ces faux messages permettraient de simuler une anomalie de pression pour forcer l’arrêt du véhicule automobile et déboucher, par exemple, sur un méfait de type « car jacking ». Par ailleurs, ces faux messages peuvent masquer une réelle anomalie de pression et ainsi porter atteinte à la sécurité des passagers du véhicule automobile. On a proposé des solutions qui consistent à crypter les données de mesure grâce à une clé privée ou symétrique fournie par l’unité centrale du véhicule automobile au capteur, lors de l’appairage par exemple, en sorte que le cryptage des données est possible uniquement par le capteur autorisé. Dans ce cas, des données de mesures ainsi cryptées sont décodables par toute entité les recevant qui possède la clé publique ou symétrique. Toutefois, cette solution présente l’inconvénient de nécessiter un rafraichissement périodique de la clé pour éviter que l’information éventuellement apprise pendant les périodes passées n’aide un attaquant pendant les périodes ultérieures. En résumé, il est nécessaire de s’assurer de l’authenticité des messages émis. Il est également nécessaire de vérifier l’intégrité des messages émis. Enfin, il est aussi nécessaire d’empêcher l’usurpation d’identité d’un capteur d’un véhicule automobile. L’invention vise à pallier ces inconvénients. A cet effet, il est proposé un procédé pour prévenir l’usurpation d’identité d’une unité de commande électronique particulière d’un véhicule automobile, lorsque l’unité de commande électronique particulière envoie un message en clair, qui contient des données de mesure, à une unité de commande électronique centrale du véhicule automobile, l’unité de commande électronique centrale comprenant au moins une base de données qui stocke au moins un tuple de valeurs, formé d’un identifiant de sélection d’un algorithme de hachage et d’un algorithme de hachage. Le procédé comprend les étapes suivantes, mises en œuvre au niveau de l’unité de commande électronique particulière : - générer un identifiant de sélection d’un algorithme de hachage, - obtenir au moins un paramètre évolutif commun à l’unité de commande électronique centrale et l’unité de commande électronique particulière, - générer une première empreinte numérique de hachage de la combinaison du message en clair et du paramètre commun, à partir de l’identifiant de sélection d’un algorithme de hachage, - former une trame de données qui inclut le message en clair, l’identifiant de sélection d’un algorithme de hachage (hi) et la première empreinte numérique de hachage, et - envoyer la trame de données à l’unité de commande électronique centrale. Dans un mode de mise en œuvre, le procédé peut comprendre en outre les étapes suivantes, mises en œuvre au niveau de l’unité de commande électronique centrale, en réponse à la réception de la trame de données : - extraire le message en clair et l’identifiant de sélection d’un algorithme de hachage de la trame de données, - obtenir le paramètre évolutif commun à l’unité de commande électronique centrale et l’unité de commande électronique particulière, - générer une deuxième empreinte numérique de hachage de la combinaison du message en clair et du paramètre commun, à partir de l’identifiant de sélection d’un algorithme de hachage, - comparer la première empreinte numérique et la deuxième empreinte numérique, et - utiliser les données de mesure du message en clair en fonction de la comparaison. Dans une mise en œuvre, le procédé peut comprendre en outre les étapes suivantes : - crypter, par l’unité de commande électronique particulière, la première empreinte numérique de hachage avec une clé privée secrète l’unité de commande électronique particulière, avant de former la trame de données, et - décrypter, par l’unité de commande électronique particulière, la première empreinte numérique de hachage avec une clé publique de l’unité de commande électronique particulière qui est associée à la clé privée secrète l’unité de commande électronique particulière, avant de comparer la première empreinte numérique et la deuxième empreinte numérique. Par exemple : - on utilise la clé privée secrète d’une paire clé publique/clé privée secrète, en fonction d’un paramètre de sélection de clé asymétrique de cryptage que l’on insère dans la trame de données, et - on utilise la clé publique de la paire clé publique/clé privée secrète, en fonction du paramètre de sélection de clé asymétrique de cryptage que l’on extrait de la trame de données. Dans un exemple, le procédé peut comprendre en outre l’étape suivante : - supprimer, par l’unité de commande électronique particulière, un champ CRC du message en clair qui contient une séquence CRC, avant de former la trame de données. Le procédé peut aussi comprendre, en outre, l’étape suivante : - chercher, par l’unité de commande électronique centrale, dans la base de données, l’algorithme de hachage associé à l’identifiant de sélection d’un algorithme de hachage, avant de générer la deuxième empreinte numérique de hachage. Dans un mode de mise en œuvre, on peut prévoir que, au niveau de l’unité de commande électronique particulière, l’identifiant de sélection d’un algorithme de hachage est un index aléatoire qui est associé à une position spécifique dans une liste prédéterminée d’algorithmes de hachage, la liste étant stockée dans une mémoire de l’unité de commande électronique particulière. Par exemple on peut générer l’index aléatoire avant l’envoi de chaque trame de données. Dans un mode de mise en œuvre, on choisit le paramètre commun parmi : un compteur, un générateur pseudo-aléatoire et une horloge. Par exemple, au niveau l’unité de commande électronique particulière et au niveau de l’unité de commande électronique centrale, on renouvelle la valeur du paramètre commun selon une périodicité prédéterminée. [Description des dessins] D’autres caractéristiques et avantages de l’invention apparaîtront encore à la lecture de la description qui va suivre. Celle-ci est purement illustrative et doit être lue en regard des dessins annexés sur lesquels : La représente un procédé selon l’invention lorsqu’il est mis en œuvre au niveau d’une unité de commande électronique particulière. La représente un procédé selon l’invention lorsqu’il est mis en œuvre au niveau d’une unité de commande électronique centrale. La représente une trame de données selon l’invention. Les figures ne respectent pas nécessairement les échelles, notamment en épaisseur, et ce à des fins d’illustration. Procédé (100) pour prévenir l’usurpation d’identité d’une unité de commande électronique particulière d’un véhicule automobile, lorsque l’unité de commande électronique particulière envoie un message en clair (M), qui contient des données de mesure, à une unité de commande électronique centrale du véhicule automobile, l’unité de commande électronique centrale comprenant au moins une base de données qui stocke au moins un tuple de valeurs, formé d’un identifiant de sélection d’un algorithme de hachage (hi) et d’un algorithme de hachage, le procédé comprenant les étapes suivantes, mises en œuvre au niveau de l’unité de commande électronique particulière : - générer (110) un identifiant de sélection d’un algorithme de hachage (hi), - obtenir (120) au moins un paramètre évolutif (K) commun à l’unité de commande électronique centrale et l’unité de commande électronique particulière, - générer (130) une première empreinte numérique de hachage (E) de la combinaison du message en clair (M) et du paramètre commun (K), à partir de l’identifiant de sélection d’un algorithme de hachage (hi), - former (140) une trame de données (T) qui inclut le message en clair (M), l’identifiant de sélection d’un algorithme de hachage (hi) et la première empreinte numérique de hachage (E), et - envoyer (150) la trame de données (T) à l’unité de commande électronique centrale. Procédé selon la revendication 1, comprenant en outre les étapes suivantes, mises en œuvre au niveau de l’unité de commande électronique centrale, en réponse à la réception de la trame de données (T) : - extraire (160) le message en clair (M) et l’identifiant de sélection d’un algorithme de hachage (hi) de la trame de données (T), - obtenir (170) le paramètre évolutif (K) commun à l’unité de commande électronique centrale et l’unité de commande électronique particulière, - générer (180) une deuxième empreinte numérique de hachage (E’) de la combinaison du message en clair (M) et du paramètre commun (K), à partir de l’identifiant de sélection d’un algorithme de hachage (hi), - comparer (190) la première empreinte numérique et la deuxième empreinte numérique, et - utiliser (200) les données de mesure du message en clair (M) en fonction de la comparaison. Procédé selon l’une quelconque des revendications 1 à 2, comprenant en outre les étapes suivantes : - crypter, par l’unité de commande électronique particulière, la première empreinte numérique de hachage (E) avec une clé privée secrète l’unité de commande électronique particulière, avant de former la trame de données (T), et - décrypter, par l’unité de commande électronique particulière, la première empreinte numérique de hachage (E) avec une clé publique de l’unité de commande électronique particulière qui est associée à la clé privée secrète l’unité de commande électronique particulière, avant de comparer la première empreinte numérique et la deuxième empreinte numérique. Procédé selon la revendication 3, dans lequel : - on utilise la clé privée secrète d’une paire clé publique/clé privée secrète, en fonction d’un paramètre de sélection de clé asymétrique de cryptage que l’on insère dans la trame de données (T), et - on utilise la clé publique de la paire clé publique/clé privée secrète, en fonction du paramètre de sélection de clé asymétrique de cryptage que l’on extrait de la trame de données (T). Procédé selon l’une quelconque des revendications 1 à 4, comprenant en outre l’étape suivante : - supprimer, par l’unité de commande électronique particulière, un champ CRC du message en clair (M) qui contient une séquence CRC, avant de former la trame de données (T). Procédé selon l’une quelconque des revendications 1 à 5, comprenant en outre l’étape suivante : - chercher, par l’unité de commande électronique centrale, dans la base de données, l’algorithme de hachage associé à l’identifiant de sélection d’un algorithme de hachage (hi), avant de générer la deuxième empreinte numérique de hachage (E). Procédé selon l’une quelconque des revendications 1 à 6, dans lequel, au niveau de l’unité de commande électronique particulière, l’identifiant de sélection d’un algorithme de hachage (hi) est un index aléatoire qui est associé à une position spécifique dans une liste prédéterminée d’algorithmes de hachage, la liste étant stockée dans une mémoire de l’unité de commande électronique particulière. Procédé selon la revendication 7, dans lequel on génère l’index aléatoire avant l’envoi de chaque trame de données (T). Procédé selon l’une quelconque des revendications 1 à 8, dans lequel on choisit le paramètre commun (K) parmi : un compteur, un générateur pseudo-aléatoire et une horloge. Procédé selon la revendication 9, dans lequel, au niveau l’unité de commande électronique particulière et au niveau de l’unité de commande électronique centrale, on renouvelle la valeur du paramètre commun (K) selon une périodicité prédéterminée.