Brevet FR3100632A1 — publié le 20210312

Système électronique La présente description concerne un procédé d'authentification d'instructions dans un système comprenant : l'extraction desdites instructions par un premier circuit (102) depuis une première mémoire (104) par l'intermédiaire d'un bus de données (106) ; le prélèvement sur le bus de données (106), par un deuxième circuit (110), des instructions lors de leur transmission au premier circuit (102) ; et la génération d'un mot représentatif des instructions (DIGEST). Figure pour l'abrégé : Fig. 1 Système électronique La présente description concerne de façon générale les systèmes électroniques et plus particulièrement les systèmes comprenant une mémoire. La sécurité des systèmes électroniques est d'autant plus importante que les domaines des objets connectés, par exemple la domotique, se développent. En particulier, il est important de pouvoir s'assurer que les instructions de démarrage contenues dans une mémoire et exécutées lors de l'initialisation du système correspondent bien aux instructions voulues et non pas des instructions modifiées par des pirates. Il serait souhaitable d'améliorer au moins un aspect des systèmes électroniques connus. Ces caractéristiques et avantages, ainsi que d'autres, seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non limitatif en relation avec les figures jointes parmi lesquelles : la figure 1 représente un mode de réalisation d'un système électronique ; et la figure 2 représente un mode de réalisation d'un procédé d'authentification d'instructions et de données. Procédé d'authentification d'instructions dans un système comprenant : l'extraction desdites instructions par un premier circuit (102) depuis une première mémoire (104) par l'intermédiaire d'un bus de données (106) ; le prélèvement sur le bus de données (106), par un deuxième circuit (110), des instructions lors de leur transmission au premier circuit (102) ; et la génération d'un mot représentatif des instructions (DIGEST). Procédé selon la revendication 1, dans lequel les instructions sont exécutées par le premier circuit (102). Procédé selon la revendication 1 ou 2, comprenant une étape de comparaison, par le deuxième circuit (110), du mot représentatif des instructions à un mot de référence (REFERENCE). Procédé selon la revendication 3, dans lequel le deuxième circuit (110) détermine que les instructions sont authentiques lorsque le mot représentatif des instructions est identique au mot de référence et que les instructions ne sont pas authentiques lorsque le mot représentatif des instructions n'est pas identique au mot de référence. Procédé selon la revendication 4, dans lequel le système est redémarré ou éteint si le deuxième circuit (110) détermine que les instructions ne sont pas authentiques. Procédé selon l'une quelconque des revendications 3 à 5, dans lequel le deuxième circuit (110) comprend une deuxième mémoire (112) dans laquelle le mot de référence est contenu depuis une programmation initiale du système. Procédé selon la revendication 6, dans lequel le deuxième circuit (110) détermine le début desdites instructions en comparant les adresses sur un bus d'adresses (106) à une adresse de début des instructions (@START) contenue dans la deuxième mémoire. Procédé selon la revendication 6 ou 7, dans lequel la fin des instructions est déterminée par une durée prédéterminée après le début des instructions ou en comparant les adresses sur le bus d'adresses (106) à une adresse de fin des instructions (@END) contenue dans la deuxième mémoire. Procédé selon l'une quelconque des revendications 1 à 8, dans lequel les instructions sont des instructions de démarrage du système. Procédé selon l'une quelconque des revendications 1 à 9, dans lequel les instructions incluent des paramètres d'initialisation d'au moins un élément parmi : une unité de protection de la mémoire, un circuit de type "chien de garde", ou des circuits de protection de mémoires non volatiles. Procédé selon l'une quelconque des revendications 1 à 10, dans lequel la taille des instructions est inférieure à 5 kilo octets. Procédé selon l'une quelconque des revendications 1 à 11, dans lequel la taille du mot représentatif des instructions est inférieure ou égale à 32 octets. Système électronique adapté à la mise en œuvre du procédé selon l'une quelconque des revendications 1 à 12. Système selon la revendication 13, dans lequel le premier circuit (102) est configuré pour exécuter les instructions de démarrage. Système selon la revendication 13 ou 14, dans lequel le deuxième circuit (110) est configuré pour comparer le mot représentatif des instructions à un mot de référence. Système selon la revendication 15, dans lequel le deuxième circuit (110) est configuré pour déterminer que les instructions sont authentiques lorsque le mot représentatif des instructions est identique au mot de référence et que les instructions ne sont pas authentiques lorsque le mot représentatif des instructions n'est pas identique au mot de référence. Système selon la revendication 16, dans lequel le système est configuré pour être redémarré ou éteint si le deuxième circuit (110) détermine que les instructions ne sont pas authentiques. Système selon la revendication 13 à 17, dans lequel le deuxième circuit (110) comprend une deuxième mémoire (112) dans laquelle le mot de référence est contenu depuis une programmation initiale du système.