Brevet FR3098614A1 — publié le 20210115

Description Titre de l'invention : Procédé de contrôle de commandes propres à être traitées par un périphérique tel qu'un actionneur Domaine technique [0001] La présente invention concerne un procédé de contrôle de commandes propres à être traitées par un périphérique, tel qu'un actionneur. Elle concerne également un circuit de contrôle adapté pour la mise en oeuvre de ce procédé. [0002] L'invention trouve avantageusement application au sein d'objets connectés comprenant un tel périphérique. Technique antérieure [0003] Un objet connecté conventionnel comprend un périphérique configuré pour accomplir des actions, sur la base d'ordres passés par un serveur de confiance distant. [0004] L'objet connecté comprend généralement un circuit de commande configuré pour transmettre au périphérique une commande correspondant à un ordre reçu. Par exemple, le périphérique est un actionneur, et les commandes émises par le circuit de commande ont vocation à déclencher des actions chez l'actionneur. [0005] Le circuit de commande et le périphérique communiquent entre eux par un bus de communication. [0006] Il se peut toutefois que des ordres inauthentiques, c'est-à-dire ne provenant pas du serveur de confiance mais d'une entité malicieuse, soient reçus par le circuit de commande. Ces ordres inauthentiques sont susceptibles d'entraîner la transmission vers le périphérique de commandes indésirables. [0007] Pour protéger l'objet connecté contre de telles attaques, le serveur distant transmet à l'objet connecté des ordres ayant été signés électroniquement ou chiffrés à l'aide d'une première clé. De son côté, le circuit de commande vérifie si un ordre qu'il reçoit est authentique, c'est à dire si l'ordre reçu provient bien du serveur distant, par déchiffrement ou vérification de signature appliquée à l'ordre reçu, à l'aide d'une deuxième clé formant une paire de clés cryptographiques avec la première clé. Si un ordre reçu n'est pas considéré authentique, le circuit de commande ne transmet pas via le bus de communication de commande correspondant à cet ordre au périphérique. [0008] Or, dans beaucoup d'objets connectés, le circuit de commande peut lui-même ne pas être sécurisé. Ceci implique notamment que le circuit de commande est susceptible de faire l'objet d'attaques à distance provenant de l'extérieur de l'objet connecté, et altérant son fonctionnement. Un circuit de commande attaqué de cette manière peut ainsi se permettre de transmettre au périphérique des commandes se fondant sur des ordres inauthentiques ou inexistants. 2 Exposé de l'invention [0009] Un but de l'invention est de détecter des tentatives de commande d'un périphérique non autorisées, même dans le cas où le fonctionnement du circuit de commande associé à ce périphérique est altéré. [0010] 11 est à cet effet proposé, selon un premier aspect, un procédé de contrôle de commandes propres à être traitées par un périphérique tel qu'un actionneur, le procédé comprenant les étapes suivantes mises en oeuvre par un circuit de contrôle de commandes relié à un bus de communication, un circuit de commande et le périphérique (3) étant également reliés au bus de communication : - accorder ou non une autorisation au circuit de commande de transmettre un signal de commande du périphérique via le bus de communication, - détecter la transmission éventuelle du signal dc commande du périphérique par le circuit de commande via le bus dc communication, - mettre en oeuvre des mesures de protection lorsque le circuit de contrôle détecte que : le signal de commande a été transmis par le circuit de commande via le bus de communication alors que le circuit de contrôle n'a pas accordé l'autorisation, ou que le signal dc commande n'a pas été transmis par le circuit de commande sur le bus de communication alors que le circuit de contrôle a accordé l'autorisation. [0011] Le procédé selon le premier aspect peut comprendre les caractéristiques optionnelles suivantes, prises seules ou combinées entre elles lorsque cela est techniquement possible. [0012] De préférence, l'autorisation n'est pas accordée par le circuit de contrôle lorsque le circuit de contrôle détecte que le signal dc commande du périphérique ne se fonde pas sur un ordre authentiquement émis par un serveur prédéterminé. [0013] De préférence, le circuit de contrôle de commande est configure pour vérifier si l'ordre a été signé électroniquement par le serveur et/ou si l'ordre est accompagné d'un code d'authentification généré par le serveur. [0014] De préférence, le circuit de contrôle met également en oeuvre les étapes suivantes : - mémoriser une donnée d'intégrité relative à l'ordre avant que le circuit de contrôle n'accorde ou non l'autorisation, - si le signal de commande a été transmis par le circuit de commande, mettre en oeuvre un contrôle d'intégrité du signal de commande à l'aide de la donnée d'intégrité mémorisée, les mesures de protection étant mises en oeuvre si le contrôle d'intégrité révèle que le signal de commande n'est pas intègre. [0015] De préférence, les mesures de protection comprennent un signalement au serveur d'un message d'erreur de commande du périphérique. [0016] De préférence, le procédé selon le premier aspect comprend un signalement au 3 serveur d'un message indiquant que la transmission du signal de commande a été autorisée puis est survenue, le message étant de préférence signé électroniquement ou chiffré. [0017] De préférence, l'autorisation n'est pas accordée par le circuit de contrôle lorsque le circuit de contrôle détecte qu'une période de validité d'un ordre sur lequel se fonde le signal de commande du périphérique a expiré. [0018] De préférence, les mesures de protection comprennent un blocage empêchant le signal de commande, voire tout signal de commande du périphérique ultérieurement émis par le circuit de commande sur le bus de communication, d'être traité par le périphérique. [0019] De préférence, le blocage comprend au moins une des étapes suivantes : - positionner un signal d'horloge contrôlant le cadencer-rient de l'envoi de données sur le bus de communication à un niveau adapté pour interrompre la transmission du signal de commande du périphérique détecté, avant que la commande détectée ne parvienne au périphérique ; - remplacer une adresse désignant le périphérique comme destinataire du signal de commande détecté par une adresse différente, - émettre sur le bus de communication un signal de désactivation adapté pour placer le périphérique dans une configuration désactivée impropre au traitement de la commande détectée, le signal de désactivation étant par exemple un signal de réinitialisation ou de rupture d'alimentation du périphérique. [0020] De préférence, les mesures de protection comprennent l'émission par le dispositif de contrôle d'un signal de commande de sécurité adapté pour placer le périphérique dans une configuration de sécurité prédéterminée, par exemple une position de sécurité prédéterminée lorsque le périphérique est un actionneur. [0021] Il est également proposé, selon un deuxième aspect, un circuit de contrôle de commandes propres à être traitées par un périphérique tel qu'un actionneur, le circuit de contrôle de commandes étant configuré pour : - être relié à un bus de communication relié à un circuit de commande et au périphérique, - accorder ou non une autorisation au circuit de commande de transmettre un signal de commande du périphérique via le bus de communication, - vérifier la transmission éventuelle du signal de commande du périphérique par le circuit de commande via le bus de communication, - mettre en oeuvre des mesures de protection lorsque le circuit de contrôle détecte au cours de la vérification que le signal de commande a été transmis par le circuit de commande via le bus de communication alors que le circuit de contrôle n'a pas accordé l'autorisation, ou que le signal de commande n'a pas été transmis par le circuit de commande sur le bus de communication alors que le circuit de contrôle a accordé l'autorisation. [0022] TI est également proposé, selon un troisième aspect, un système comprenant un péri- phérique un circuit de commande, un circuit de contrôle de commandes selon le deuxième aspect, et un bus de communication, dans lequel le périphérique, le circuit de commande et le circuit de contrôle sont tous reliés au bus de communication. [0023] TI est également proposé, selon un troisième aspect, un objet connecté comprenant un système selon le deuxième aspect. Brève description des dessins [0024] D'autres caractéristiques, buts et avantages de l'invention ressortiront de la des- cription qui suit, qui est purement illustrative et non limitative, et qui doit être lue en regard des dessins annexés sur lesquels : [0025] [fig.1 J La figure 1 illustre de façon schématique dispositif selon un premier mode de réalisation de l'invention. [0026] [fig.2] La figure 2 est un organigramme d'étapes d'un procédé selon un mode de réa- lisation de l'invention, ces étapes étant mises en oeuvre par un circuit de commande. [0027] [fig.3] La figure 3 est un organigramme d'étapes d'un procédé selon un mode de réa- lisation de l'invention, ces étapes étant mises en oeuvre par un circuit de contrôle de commande. [0028] [fig.4] La figure 4 illustre certaines des étapes figurant sur les figures 2 et 3, ainsi que des étapes mises en oeuvre par un actionneur et certaines données transmises entre différents composants. [0029] Sur l'ensemble des figures, les éléments similaires portent des références identiques. Description des modes de réalisation a) Objet connecté et circuit de contrôle 100301 En référence à la figure 1, un objet connecté 1 comprend un circuit de commande 4, un périphérique 2, un circuit de contrôle 6, un bus 8 de communication et une interface de communication 10 avec un server de confiance distant 3. 100311 Le serveur 3 distant est configuré pour transmettre des ordres à l'objet connecté 1, dans le but de faire faire des actions prédéterminées au périphérique 2 de l'objet connecté 1. Dans le présent texte, on considère que le terme « ordre » désigne des données représentatives d'un ordre d'accomplissement d'une action par le périphérique 2. 100321 Le serveur 3 est confieuré pour signer électroniquement un ordre, ou le chiffer, avant envoi à l'objet connecté 1. Le serveur 3 dispose pour cela d'une première clé. 100331 L'interface de communication 10 est apte à établir un canal de communication avec le serveur 3 distant, par exemple un canal de type radio sans fil (Wi-Fi, ou cellulaire ty- piquement). [0034] Le circuit de commande 4, le périphérique 2 et le circuit de contrôle 6 sont tous relié au bus 8 de communication. [0035] Le circuit de commande 4 a pour fonction de transmettre des signaux de commande au périphérique 2 sur le bus 8 de communication, sur réception d'ordre. [0036] Ces signaux de commandes présentent un format interprétable par le périphérique 2. [0037] Par convention, dans le présent texte, le terme « commande » désigne la forme d'un signal de commande transitant sur le bus 8 de communication et qui soit interprétable par le périphérique 2. Comme indiqué précédemment, le terme « ordre » désigne quant à lui des données qui sont fournies par le serveur 3 distant, le circuit de commande 4 étant capable de générer une commande à partir d'un tel ordre. [0038] Le circuit de commande 4 est connecté à l'interface de communication 10 via une liaison indépendante du bus 8 de communication. En variante, le circuit de commande 4 inclut l'interface de communication 10. [0039] Le périphérique 2 est configure pour réaliser des actions prédéterminées lorsqu'il reçoit des commandes prédéterminées via le bus 8 de communication. De façon générale, le périphérique 2 est susceptible de prendre plusieurs configurations. Une action conduit typiquement le périphérique 2 à changer de configuration. [0040] Par exemple, le périphérique 2 est un actionneur. Dans ce cas, une action de l'actionneur peut consister à se déplacer et/ou déplacer un autre élément. Par exemple, l'actionneur contrôle une vanne, c'est-à-dire qu'il ouvre et ferme la vanne. En variante, l'actionneur éclaire un feu de signalisation. [0041] Le circuit de contrôle 6 est relié au même bus 8 de communication que le circuit de commande 4 et que le périphérique 2. A ce titre, le circuit de contrôle 6 communique directement avec l'un et l'autre de ces composants. [0042] Le circuit de contrôle 6 ne peut communiquer avec le serveur 3 de distant que via le circuit de commande 4. [0043] Le circuit de contrôle 6 comprend une mémoire 12 et une unité de traitement de données 14. [0044] Une deuxième clé est mémorisée dans la mémoire 12. La deuxième clé forme avec la première clé une paire de clés cryptographiques. Les deux clés peuvent être symétriques dans le sens où ces deux clés permettent la mise en oeuvre de cryptographie symétrique, ou bien asymétriques dans le sens où ces deux clés permettent la mise en oeuvre de cryptographie asymétrique. [0045] L'unité de traitement 14 est configurée pour appliquer à des données reçues via le bus 8 un traitement visant à authentifier l'origine de ces données. Comme cela sera détaillé dans la suite, ces données sont en fait censées être des ordres générés par le serveur 3 distant. 6 [0046] Par ailleurs, une liaison 16 peut relier le circuit de contrôle 6 au périphérique 2 indé- pendamment du bus de communication 8. Le rôle de cette liaison 16 sera explicité dans la suite. [0047] b) Procédé de contrôle de commandes pour périphérique [0048] En référence aux figures 2 à 4, un procédé mis en oeuvre par l'objet connecté 1 comprend les étapes suivantes. [0049] L'objet reçoit un ordre émanant de l'extérieur via son interface de communication 10. Si cet ordre est authentique, il provient du serveur 3 distant, et cet ordre a été chiffré ou signé par le serveur 3 distant à l'aide de la première clé. [0050] L'ordre reçu est transmis au circuit de commande 4. [0051] Le circuit de commande 4 émet sur le bus 8 de communication un premier signal, qui est un signal de requête de contrôle de l'ordre reçu (étape 400). Le premier signal transporte l'ordre reçu, et est adressé au circuit de contrôle 6. Le premier signal n'est pas adressé au périphérique 2. Sur la figure 4, ce premier signal est appelé « RQ ». [0052] A cc stade, le circuit de commande 4 se met en attente d'un retour de la part du circuit de contrôle 6. [0053] Le circuit de contrôle 6 détecte le premier signal, et en extrait l'ordre reçu (étape 602). [0054] L'unité de traitement 14 du circuit de contrôle 6 met en oeuvre un contrôle d'authenticité de l'ordre reçu (étape 604). [0055] Le contrôle d'authenticité 604 utilise typiquement la deuxième clé mémorisée dans la mémoire 12. Lorsque le serveur 3 distant est configuré pour signer électroniquement les ordres qu'il envoie, le contrôle d'authenticité mis en oeuvre par le circuit de contrôle 6 comprend une vérification de la signature électronique apposée sur l'ordre, à l'aide de la deuxième clé. [0056] Le contrôle d'authenticité 604 peut également comprendre un contrôle de la validité temporelle de l'ordre reçu. L'objectif de ce contrôle de validité temporelle est d'éviter une éventuelle attaque consistant à retarder la mise en application d'un ordre authentique, permettant à l'attaquant de procéder à une commande du périphérique 2 à un moment ultérieur non désiré par le serveur 3. Le principe général de ce contrôle de validité temporelle consiste à assigner à un ordre une période de temps durant laquelle cet ordre a le droit d'être passé au périphérique 2 via un signal de commande. Une fois que cette période a expiré, ce droit cesse. Le circuit de commande 4 est donc configuré pour examiner si la période de temps assignée à l'ordre à contrôle a expiré. Si oui, l'ordre est considéré authentique. Sinon, l'ordre n'est pas considéré authentique. [0057] En pratique, le contrôle de validité temporelle peut être implémenté de plusieurs façons. [0058] Dans un premier mode de réalisation, le circuit de contrôle 6 et le serveur 3 distants 7 échangent - par le biais du circuit de commande 4 et de l'interface de communication 10- trois messages avec deux défis/réponses chronométrés : Le serveur 3 distant et le circuit de contrôle 6 comptent le temps entre les émissions et arrivées des messages. Le serveur 3 envoie au circuit de contrôle 6 un premier message comprenant un ordre et une première donnée de défi (« challenge ») signés. Le circuit de commande 4 répond par un deuxième message comprenant une donnée représentative d'un acquiescement de l'ordre, la première donnée de défi, et une deuxième donnée de défi, les trois étant chacun signés avec la clé de l'émetteur. Ensuite, le serveur 3 signe à nouveau le tout dans un troisième message renvoyé au circuit de contrôle 6. Si les délais vus par le circuit de contrôle 6 ou le serveur 3 sont supérieurs à un seuil prédéterminé, il leur appartient de ne pas finaliser cette transaction et donc empêcher l'exécution de l'ordre qui serait retardé. [0059] Dans un deuxième mode de réalisation du contrôle de validité temporelle, le circuit de contrôle 6 synchronise un chronomètre interne avec le serveur 3 au début d'une session d'échange sécurisé, puis l'utilise pour soit savoir exactement quand déclencher l'ordre, ou soit juste pour vérifier qu'il n'est pas exécuté trop tard. Cc chronomètre peut-être, mais n'est pas forcément, une RTC, afin de limiter le nombre de resynchronisations, et de garder celle-ci même quand le circuit de contrôle 6 entre en veille profonde. [0060] La synchronisation ou l'évaluation du décalage entre cc chronomètre et un chronomètre interne du serveur 3 est de préférence sécurisée, par exemple avec un échange similaire à celui fait dans le premier mode de réalisation ci-dessus. Ce cas a le désavantage de nécessiter un matériel spécifique dans le cas de la RTC, mais permet de ne pas avoir à exécuter la synchronisation sécurisée systématiquement à chaque ordre, et d'obtenir pour les exécutions d'ordres un délai plus précis entre les ordres (soumis à la précision de la RTC). Par exemple si on doit démarrer une séquence d'actions avec une tolérance de ls par rapport à l'envoi d'ordre du serveur 3, mais qu'ensuite cette séquence d'action doit se faire avec une précision relative de lms par rapport au début de cette séquence, cette méthode est particulièrement adaptée. [0061] Quelle que soit le type de contrôle d'authenticité mis en oeuvre, ce contrôle produit deux résultats possibles : un résultat positif lorsque l'ordre est estimé authentique par le dispositif de contrôle, et un résultat négatif dans le cas contraire. [0062] Le circuit de contrôle 6 mémorise dans sa mémoire 12 le résultat de contrôle obtenu (qu'il soit négatif ou positif) d'une manière adaptée pour lier logiquement le résultat de contrôle et l'ordre ayant été contrôlé. Par exemple, sont mémorisées dans la mémoire 12 du circuit de contrôle 6 une donnée d'intégrité relative à l'ordre contrôlé et une donnée représentative du résultat de contrôle associée à la donnée d'intégrité. La donnée d'intégrité peut être par exemple une empreinte numérique (« hash » en 8 anglais) de l'ordre, calculée par le circuit de contrôle à l'aide d'une fonction de hachage prédéterminée. En variante, la donnée d'intégrité est l'ordre lui-même ou une portion de l'ordre permettant d'identifier ce dernier. [0063] Dans le cas d'un résultat positif, le circuit de contrôle 6 autorise le circuit de commande 4 à commander le périphérique 2 d'après l'ordre reçu (étape 606). Pour cela, le circuit de contrôle 6 transmet au circuit de commande 4 un deuxième signal sur le bus 8 de communication, ce deuxième signal transportant des données représentatives d'une telle autorisation (ces données sont appelées « GO » sur la figure 4). [0064] Le circuit de contrôle démarre par ailleurs un chronomètre associé à l'ordre reçu en cas de résultat positif de contrôle. [0065] Dans le cas d'un résultat négatif, le circuit de contrôle 6 n'autorise pas le circuit de commande 4 à commander le périphérique 2 d'après l'ordre reçu (étape 608, visible sur la figure 3). Dans ce cas, le deuxième signal transporte des données représentatives d'une telle non-autorisation. En variante, le deuxième signal n'est dans ce cas pas transmis par le circuit de contrôle 6 au circuit de commande 4. [0066] Lorsque le circuit de commande 4 détecte sur le bus de communication 8 un deuxième signal porteur d'une autorisation émanant du circuit de contrôle 6, le circuit de commande 4 émet sur le bus 8 de communication un troisième signal (étape 404). Le troisième signal est un signal de commande du périphérique 2 correspondant à l'ordre reçu ; il est appelé « CMD » sur la figure 4. [0067] Le circuit de contrôle 6 détecte ce troisième signal (étape 610). On suppose dans un premier temps que la détection de ce troisième signal est survenue avant l'expiration d'un délai prédéterminé à compter du démarrage du compteur. [0068] Dans un mode de réalisation, le troisième signal est directement adressé au péri- phérique 2, c'est-à-dire que le troisième signal utilise comme adresse de destination une adresse propre au périphérique 2 sur le bus 8 de communication. Dans ce cas, le circuit de contrôle 6 est configuré pour intercepter le troisième signal en dépit du fait qu'il n'en est pas le destinataire ; pour cela, l'adresse du périphérique 2 peut être mémorisée dans la mémoire du circuit de contrôle 6, en sus de la propre adresse du circuit de contrôle 6. Dans un autre mode de réalisation, le troisième signal est adressé directement au circuit de contrôle 6. [0069] Le circuit de contrôle 6 met en oeuvre une contre-vérification de ce troisième signal, cette contre-vérification consistant à vérifier si le circuit de contrôle 6 a préalablement autorisé le circuit de commande 4 à émettre ce troisième signal ou non (étape 612). Autrement dit, le circuit de contrôle 6 vérifie si l'ordre que représente le troisième signal a bien été contrôlé préalablement par lui au cours d'une mise en oeuvre de l'étape 604, et que ce contrôle a abouti à un résultat positif. [0070] La vérification 612 opérée par le circuit de contrôle 6 comprend typiquement une 9 comparaison entre des données transportées par le troisième signal et le contenu de sa mémoire. Par exemple, le troisième signal transporte un identifiant d'ordre, et le circuit de contrôle 6 recherche cet identifiant dans sa mémoire. Si l'identifiant d'ordre est présent en mémoire, cela signifie au moins que l'ordre en question a fait l'objet d'un contrôle d'authenticité préalable par le circuit de contrôle 6. Reste à présent à savoir ce qu'a donné ce contrôle d'authenticité préalable. Pour cela, le circuit de contrôle 6 inspecte la valeur du résultat de contrôle mémorisé dans la mémoire en association avec l'identifiant trouvé. Si ce résultat de contrôle mémorisé est positif, cela signifie que le circuit de commande 4 a bel et bien autorisé le circuit de commande 4 à émettre le troisième signal. Si ce résultat de contrôle est négatif, cette autorisation n'a pas été donnée par le circuit de contrôle 6. [0071] En variante, la vérification 612 compare une donnée d'intégrité relative au contenu du troisième signal avec le contenu de la mémoire 12. Cette donnée d'intégrité est obtenue de la même manière que celle utilisé au cours de l'étape de contrôle. Lorsque le circuit de contrôle 6 utilise une fonction de hachage pour calculer une donnée d'intégrité relative à un ordre au cours du contrôle 604, cette même fonction est utilisée pour calculer une deuxième empreinte numérique relative au troisième signal. S'il existe dans la mémoire 12 une donnée d'intégrité identique à la donnée d'intégrité relative au troisième signal, cela signifie qu'il y a eu autorisation préalable du circuit de commande de transmettre le troisième signal. S'il n'est pas trouvé au cours de la vérification 612 de donnée d'intégrité dans la mémoire 612 qui est égale à la donnée d'intégrité relative au troisième signal, il est considéré que le troisième signal n'a pas fait l'objet d'une autorisation préalable par le circuit de contrôle 6. [0072] Si la contre-vérification 612 révèle que le circuit de contrôle 6 a préalablement autorisé le circuit de commande 4 à émettre le troisième signal, le circuit de contrôle 6 peut rester passif. Le périphérique 2 détecte le troisième signal et exécute l'action impartie par l'ordre reçu et ayant été estimé authentique par le circuit de contrôle 6. [0073] Le circuit de contrôle 6 peut également avertir le serveur 3 du résultat positif de la contre-vérification. Pour cela, le circuit de contrôle 6 génère un message qui indique que le circuit de commande 4 a tenté de commander le périphérique 2 d'après un ordre authentique (ce qui constitue un comportement normal). Le circuit de contrôle 6 émet sur le bus 8 de communication un signal transportant ce message, à destination du circuit de commande 4. Le circuit de commande 4 relaie ensuite le message au serveur 3 distant via l'interface de communication 10. L'envoi de ce message peut être immédiat ou différé. Le message peut en particulier comprendre une donnée signée, par exemple à l'aide de la deuxième clé, confirmant que la commande au périphérique 2 passée par le circuit de commande 4 a été passée avec des données qui étaient dans l'ordre authentique reçu avant (confirmation authentique d'exécution (d'ordre au- thentique)). [0074] Si la contre-vérification révèle au contraire que le circuit de contrôle 6 n'a pas autorisé préalablement le circuit de commande 4 à émettre le troisième signal (soit parce que l'ordre véhiculé par le troisième signal n'a pas fait l'objet d'un contrôle d'authenticité, soit parce qu'un tel contrôle s'est soldé par un résultat négatif), alors le circuit de commande 4 met en oeuvre des mesures de protection (étape 614). [0075] Il a été supposé jusqu'ici que le circuit de commande 4 recevant une autorisation de la part du circuit de contrôle 6 émet le troisième signal de commande. Toutefois, il se peut que le circuit de commande 4 ne fonctionne pas de manière normale, par exemple à la suite d'une attaque, et que pour cette raison l'étape 404 d'émission du troisième signal soit retardée, voire ne soit pas mise en oeuvre du tout en dépit de l'autorisation reçue. Dans ces cas, le délai prédéterminé associé au chronomètre expire avant que le circuit de contrôle ne détecte le troisième signal. Le circuit de contrôle déclenche alors les mesures de protection de l'étape 614. [0076] Différents types de mesures de protection mises en oeuvre au cours de l'étape 614 peuvent être envisagés. [0077] Une première mesure de protection consiste à avertir le serveur 3 du résultat négatif de la contre-vérification. Pour cela, le circuit de contrôle 6 génère un message d'erreur qui indique que le circuit de commande 4 a tenté de commander le périphérique 2 d'après un ordre inauthentique. Le circuit de contrôle 6 émet sur le bus 8 de communication un signal transportant ce message, à destination du circuit de commande 4. Le circuit de commande 4 relaie ensuite le message au serveur 3 distant via l'interface de communication 10. L'envoi du message peut être immédiat ou différé. [0078] Le circuit de contrôle 6 peut par exemple mémoriser dans sa mémoire plusieurs résultats se rapportant à des ordres différents émis par le serveur 3, et envoyer de manière différée un rapport d'anomalies comprenant tous ces résultats. De son côté, si le serveur 3 de confiance ne reçoit pas de confirmation authentique d'exécution, il peut alors mettre à jour un indicateur de confiance interne, donnant un indice indiquant si l'objet connecté 1 a été compromis. Un système de rapport régulier peut être mis en place pour assurer le serveur 3 que des ordres supplémentaires malicieux n'ont pas été insérés par le circuit de commande 4 sur le bus 8. [0079] Bien qu'avantageuse, cette première mesure de protection a comme limitation de ne pas maitriser ce qu'un objet potentiellement compromis fait jusqu'à ce qu'il soit désactivé ou remplacé (de manière physique ou « software »). [0080] Une deuxième mesure de protection réduisant l'impact de cette limitation est un blocage empêchant le signal de commande détecté, voire toute signal de commande ultérieurement émis par le circuit de commande 4, d'être traitée par le périphérique 2. [0081] Un tel blocage peut être réalisé de diverses manières. 11 Méthode 1 : Sur un bus 8 de communication qui possède une horloge qui cadence l'envoi de données, il est possible de stopper cette horloge artificiellement. Par exemple sur le bus 8 12C, cela revient à tirer au niveau bas le signal d'horloge et ne le relâcher que lorsque le circuit de contrôle 6 décide. Sur cet exemple, certains composants 12C sont capables d'attendre le relâchement du signal d'horloge avant de communiquer, et il est donc possible au circuit de contrôle 6 de mettre en pause indéfiniment une communication pour la bloquer. Dans ce cas de figure, le circuit de contrôle 6 peut désactiver son blocage lors de la réception d'un START ou STOP PC. Sur le bus 8 PC cette technique a l'avantage de mettre en pause sans arrêter totalement la transaction. Pour une sécurité additionnelle, le circuit de contrôle 6 peut faire cette action tout en monitorant l'état réel de la ligne d'horloge, pour vérifier qu'elle reste bien arrêtée, et si celui-ci détecte une anomalie, un système de reset global du système peut se déclencher. Méthode 2 : II est possible au circuit de contrôle 6 de forcer le signal de données afin que la communication soit bloquée à un moment opportun. - Sur un bus 8 de communication qui transmet une information d'adresse, il est possible de forcer le signal pour que l'adresse ne corresponde pas à celle d'un des composants périphériques sécurisés. - Sur un bus 8 de communication qui transmet une information d'accusé réception (« acknowledgement »), forcer le signal permet de faire croire au composant transmetteur que le composant qui écoute n'a pas reçu le message, conduisant donc normalement à l'annulation de la séquence (contoumable par un attaquant en fonction des cas de figure). Lorsque la donnée utile à transmettre au périphérique 2 est transmise sur le bus 8, il est possible dans certaines situations de faire en sorte que le circuit de contrôle 6 force électriquement le signal vers une valeur qu'il approuve, en changeant l'état du bus 8 pour la valeur perçue par le composant périphérique 2 soit une valeur prédéfinie dans le circuit de contrôle 6. Méthode 3 : il est possible au circuit de contrôle 6 d'utiliser un signal externe qu'il génère (autre que le bus 8 de données) afin d'appliquer un contrôle sur le fonctionnement du système : Un signal de réinitialisation k reset ») ou de rupture d'alimentation du périphérique 2 transmis via la liaison 16, permettant d'entièrement stopper le fonctionnement. Un signal (ou plusieurs) de configuration d'adresse 12 permettant de forcer la non-sélection du composant périphérique 2 lors de l'envoi d'adresse sur un bus 8 tel que [0082] Le blocage mis en oeuvre d'empêcher toute action au niveau du périphérique 2. Il peut être opéré en appliquant de manière permanente n'importe laquelle des méthodes de blocage exposées plus haut. Les méthodes 1 et 2 sont cependant les plus simples à mettre en oeuvre si le blocage doit affecter plusieurs composants périphériques sur le même bus 8. [0083] Ce blocage peut être utilisé dans le cas où le circuit de contrôle 6 a détecté une anomalie étant reconnue comme une attaque, ou a reçu un ordre provenant du serveur 3 de confiance. [0084] Selon le type de blocage mis en oeuvre, le circuit de contrôle 6 peut se retrouver dans une situation dans laquelle il ignore à quel périphérique 2 le circuit de commande 4 s'adresse, et quelles informations sont transmises. Par conséquent, débloquer un tel système doit donc se faire via des méthodes qui sont externes à l'utilisation du bus 8 de données bloqué (par exemple utilisation d'un autre bus 8 de données vers le circuit de contrôle 6, comportement hors-spécification sur le bus 8 de données protégé, compteur de temps ou de transactions interne au circuit de contrôle 6 ...). [0085] Sur un bus 8 de données transmettant un adressage, le circuit de contrôle 6 peut utiliser une des Méthodes de blocage 1, 2, 3 listées ci-dessus pour empêcher que le périphérique 2 ne se voie adressé par le circuit de commande 4. Dans ce cas, le circuit de contrôle 6 peut entrer dans un mode qui ne pet-met plus l'adressage de certains périphérique 2, mais peut toujours lui-même recevoir des ordres provenant de l'extérieur, notamment provenant du serveur 3 de confiance. [0086] L'utilisation de ce blocage peut se faire dans deux cadres : Lorsqu'il a été décidé par le circuit de contrôle 6 ou le serveur 3 de confiance que le périphérique 2 qui se fait bloquer ne doit plus recevoir de communication jusqu'à nouvel ordre. Le circuit de contrôle 6 autorise les communications une à une (ou en nombre réduit) après avoir reçu une autorisation signée par le serveur 3 de confiance. Cette autorisation peut contenir un compteur maximal de communications autorisées, ou une limite temporelle d'utilisation. Par exemple : - Le circuit de commande 4 fait une requête au circuit de contrôle 6 pour le périphérique 2 d'adresse A - Le circuit de contrôle 6 approuve que le circuit de commande 4 fasse cette requête Le circuit de contrôle 6 envoie le signal d'adressage sur le bus 8, et le circuit de contrôle 6 le lit mais n'intervient pas puisqu'il l'a autorisée 13 - Le circuit de commande 4 se fait alors compromettre et essaie de faire une nouvelle requête en envoyant l'adresse A sur le bus 8. Cette fois ci le circuit de contrôle 6 lit l'adresse et empêche l'adressage de se finir avec succès pour empêcher le circuit de commande 4 compromis d'envoyer une requête malicieuse. - Dans un autre cas de figure possible, le circuit de commande 4 fait une requête au circuit de contrôle 6 pour adresser le périphérique 2 d'adresse A, mais pour des raisons de sécurité quelconques, le circuit de contrôle 6 refuse cette autorisation, dans ce cas soit le circuit de commande 4 n'est pas compromis (il peut y avoir d'autres causes au refus par le circuit de contrôle 6), accepte la réponse négative du circuit de contrôle 6, et n'essaye pas de transmettre sa requête au périphérique 2, soit il est compromis, et dans ce cas on retombe dans le point précédent de l'exemple. [0087] Sur un bus de communication 8 qui utilise un système d'accusé réception (« acknowledgement »), le circuit de contrôle 6 peut forcer par la méthode 1 le retardement du signal d'accusé réception, que ce soit au niveau adresse ou donnée, analyser le contenu des données transmises, puis, dans le cas d'anomalie, par les méthodes 1, 2 ou 3 empêcher l'utilisation de ces données par le périphérique 2. [0088] Le cas d'un filtrage au niveau données ne peut fonctionner que dans le cas où le péri- phérique 2 applique sa réaction aux données reçues conditionnellement à la réussite de son accusé réception de la communication (autrement dit, si le périphérique 2 réagit même s'il n'est pas capable (l'envoyer son accusé réception, cette technique sera inefficace). [0089] Une troisième mesure de protection est l'émission par le dispositif de contrôle d'un signal de sécurité adapté pour placer le périphérique 2 dans une configuration de sécurité prédéterminée. Cette troisième mesure de protection se combine avantageusement avec un blocage selon la Méthode 3. Dans cette situation, le circuit de contrôle 6 serait à l'avance configuré avec une séquence de données à transmettre au périphérique 2, et dans le cas d'un blocage de bus 8, le circuit de contrôle 6 prend la main sur le bus 8 en passant maître, et envoie cette séquence sur le bus 8, pour que le périphérique 2 retombe dans un état par défaut convenant à l'application. [0090] Lorsque le périphérique 2 est un actionneur, la configuration de sécurité peut être une position de sécurité prédéterminée. Par exemple si le périphérique 2 est un actionneur ouvrant une serrure, et si la position de sécurité garde la serrure fermée, cela veut dire que dans le cas d'une anomalie, le circuit de contrôle 6 enverra sur le bus 8, au périphérique 2 une donnée résultant en la fermeture de la serrure. 14 REVENDICATIONS[Revendication I] Procédé dc contrôle de commandes propres à être traitées par un péri- phérique (2) tel qu'un actionneur, le procédé comprenant les étapes suivantes mises en oeuvre par un circuit de contrôle de commandes (6) relié à un bus de communication (8), un circuit de commande (4) et le périphérique (3) étant également reliés au bus de communication (8) : - accorder ou non une autorisation au circuit de commande (4) de transmettre un signal de commande du périphérique via le bus de communication (8), - détecter la transmission éventuelle du signal de commande du périphérique par le circuit de commande via le bus de communication (8), - mettre en oeuvre des mesures de protection (614) lorsque le circuit de contrôle détecte que : le signal de commande a été transmis par le circuit de commande via le bus de communication alors que le circuit de contrôle n'a pas accordé l'autorisation, ou que le signal de commande n'a pas été transmis par le circuit de commande sur le bus de communication alors que le circuit de contrôle a accordé l'autoiisation. [Revendication 2] Procédé selon la revendication précédente, dans lequel l'autorisation n'est pas accordée par le circuit de contrôle lorsque le circuit de contrôle détecte que le signal de commande du péiiphérique ne se fonde pas sur un ordre authentiquement émis par un serveur prédéterminé. [Revendication 3] Procédé selon la revendication précédente, dans lequel le circuit de contrôle de commande est configuré pour vérifier si l'ordre a été signé électroniquement par le serveur (3) et/ou si l'ordre est accompagné d'un code d'authentification généré par le serveur (3). [Revendication 4] Procédé selon l'une des revendications 2 et 3, dans lequel le circuit de contrôle met également en oeuvre les étapes suivantes : - mémoriser une donnée d'intégrité relative à l'ordre avant que le circuit de contrôle n'accorde ou non l'autorisation, - si le signal de commande a été transmis par le circuit de commande, mettre en oeuvre un contrôle d'intégrité du signal de commande à l'aide de la donnée d'intégrité mémorisée, les mesures de protection étant mises en oeuvre si le contrôle d'intégrité révèle que le signal de commande n'est pas intègre. [Revendication 5] Procédé selon l'une des revendications 3 et 4, dans lequel les mesures de protection (614) comprennent. un signalement au serveur (3) d'un message d'erreur de commande du périphérique. 15 [Revendication 6] [Revendication 7] [Revendication 8] [Revendication 9] [Revendication 10] [Revendication 11] Procédé selon l'une des revendications 3 à 5, comprenant un signalement au serveur (3) d'un message indiquant que la transmission du signal de commande a été autorisée puis est survenue, le message étant de préférence signé électroniquement ou chiffré. Procédé selon l'une des revendications précédentes, dans lequel l'autorisation n'est pas accordée par le circuit de contrôle (6) lorsque le circuit de contrôle (6) détecte qu'une période de validité d'un ordre sur lequel se fonde le signal de commande du périphérique a expiré. Procédé selon l'une des revendications précédentes, dans lequel les mesures de protection (614) comprennent un blocage empêchant le signal de commande, voire tout signal de commande du périphérique ultérieurement émis par le circuit de commande (4) sur le bus de communication, d'être traité par le périphérique (2). Procédé selon la revendication précédente, dans lequel le blocage comprend au moins une des étapes suivantes : - positionner un signal d'horloge contrôlant le cadencement de l'envoi de données sur le bus de communication (8) à un niveau adapté pour interrompre la transmission du signal de commande du périphérique détecté, avant que la commande détectée ne parvienne au périphérique; - remplacer une adresse désignant le périphérique (2) comme destinataire du signal de commande détecté par une adresse différente, - émettre sur le bus de communication (8) un signal de désactivation adapté pour placer le périphérique (2) dans une configuration désactivée impropre au traitement de la commande détectée, le signal de désactivation étant par exemple un signal de réinitialisation ou de rupture d'alimentation du périphérique (2). Procédé selon l'une des revendications précédentes, dans lequel les mesures de protection (614) comprennent l'émission par le dispositif de contrôle d'un signal de commande de sécurité adapté pour placer le périphérique dans une configuration de sécurité prédéterminée, par exemple une position de sécurité prédéterminée lorsque le périphérique est un actionneur. Circuit (6) de contrôle de commandes propres à être traitées par un périphérique tel qu'un actionneur, le circuit de contrôle de commandes (6) étant configuré pour : - être relié à un bus de communication (8) relié à un circuit de commande (4) et au périphérique (2), - accorder ou non une autorisation au circuit de commande (4) de 16 [Revendication 12] transmettre un signal de commande du périphérique via le bus de communication (8), [Revendication 13] - vérifier la transmission éventuelle du signal de commande du périphérique par le circuit de commande via le bus de communication (8), - mettre en oeuvre des mesures de protection (614) lorsque le circuit de contrôle détecte au cours de la vérification que le signal de commande a été transmis par le circuit de commande via le bus de communication alors que le circuit de contrôle n'a pas accordé l'autorisation, ou que le signal de commande n'a pas été transmis par le circuit de commande sur le bus de communication alors que le circuit de contrôle a accordé l'autorisation. Système comprenant un périphérique (2) un circuit de commande (4), un circuit de contrôle de commandes (4) selon la revendication précédente, et un bus de communication (8), dans lequel le périphérique (2), le circuit de commande (4) et le circuit de contrôle (6) sont tous reliés au bus de communication (8). Object connecté (1) comprenant un système selon la revendication précédente.