Brevet FR2950720A1 — publié le 20110401

Appareil pour enregistrer une configuration d'un système de microprocesseur et procédé pour enregistrer une configuration d'un système de microprocesseur Description [0001] La présente invention concerne un appareil pour enregistrer une configuration d'un système de 10 microprocesseur et un procédé pour enregistrer une configuration d'un système de microprocesseur. [0002] Les systèmes de microprocesseur sont des systèmes dans lesquels tous les composants d'un processeur sont 15 combinés sur une micro-puce. Cela peut également être un microcontrôleur ou un soi-disant System on Chip (SoC) (= Système sur Puce). Dans la vie quotidienne, les systèmes de microprocesseur se présentent souvent sous forme de systèmes incorporés dans des articles tels que des cartes à 20 puce, dans des dispositifs électroniques de grand public, des dispositifs électroniques de bureau, des véhicules à moteur, des téléphones mobiles et même des horloges. Ils sont également inclus dans virtuellement tous les périphériques d'ordinateur. La puissance et le matériel des 25 systèmes de microprocesseur sont adaptés à leur utilisation respective prévue. [0003] On connaît une multiplicité de systèmes de microprocesseur qui, largement de même conception, 30 diffèrent en termes de leur largeur de registre et fréquence d'horloge ainsi qu'en termes de leur grandeur de mémoire et propriétés de système, par exemple lorsqu'ils se présentent sous forme de microcontrôleur. Les sociétés qui utilisent des systèmes de microprocesseur pour installation 35 dans leurs dispositifs doivent souvent avoir en stock une multiplicité de systèmes de microprocesseur différents avec5 différents paramètres de système pour être à même de répondre rapidement et de manière flexible aux désirs de leurs clients. Le stockage et l'approvisionnement d'une multiplicité de systèmes de microprocesseur requiert une quantité considérable d'efforts en termes de stockage et de logistique. De plus, un capital est lié à la nécessité de stocker une multiplicité de systèmes de microprocesseur différents. [0004] Pour éviter l'effort en termes de stockage et de logistique et les coûts y associés, le document US 5.530.753 décrit un appareil et un procédé de configuration sécurisée d'un système informatique générique, c'est-à-dire un système informatique fourni avec une configuration maximale. Sur base de la configuration maximale, le client peut sélectionner les propriétés de système et les grandeurs de mémoire désirées et peut leur permettre un code de libération. Le client ne paie que pour les propriétés de système et les grandeurs de mémoire sélectionnées et utilisées. Les propriétés de système et les zones de mémoire qui n'ont pas été sélectionnées sont bloquées et ne sont, de ce fait, pas accessibles au client. [0005] Par exemple, si un fabricant de semi-conducteurs fournit alors à un client un plus grand nombre de systèmes de microprocesseur génériques avec des grandeurs de mémoire pouvant être libérées électroniquement et/ou des modules de système pouvant être libérés, avec pour résultat que ces derniers peuvent configurer en conséquence les systèmes de microprocesseur selon les clients finaux, le client devrait obtenir en temps opportun le code de libération correspondant du fabricant de semi-conducteurs pour chaque système de microprocesseur à configurer. Cela présenterait l'inconvénient que le fabricant de semi-conducteurs soit forcé de fournir toute la journée une multiplicité de codes de libération, afin de permettre une facturation en fonction de la configuration. D'autre part, le client devrait obtenir les codes de libération nécessaires en temps opportun et devrait les entrer dans son système de production. Les pratiques de fourniture et d'obtention d'un grand nombre de codes de libération pour des systèmes de microprocesseur configurables impliquent donc une grande quantité d'efforts en termes de logistique et, de ce fait, des coûts élevés tant pour le fabricant de semi-conducteurs que pour le client. [0006] L'invention est basée sur l'objet de proposer un appareil et un procédé pour enregistrer de manière sécurisée une configuration d'un système de microprocesseur. L'invention réalise l'objet au moyen d'un appareil présentant les caractéristiques de la revendication 1 et au moyen d'un procédé présentant les caractéristiques de la revendication 13. Des raffinements avantageux de l'invention sont spécifiés dans les sous-revendications. [0007] L'utilisation d'un appareil qui présente un appareil d'enregistrement présentant un module de sécurité rend possible la création d'un enregistrement anti-manipulation. Grâce à la création d'un enregistrement anti-manipulation, le fabricant de semi-conducteurs, par exemple, est à même d'obtenir une information sécurisée relative aux configurations sélectionnées par le client pour ses systèmes de microprocesseur, configurations sur base desquelles le fabricant peut établir une facture. [0008] Si le fabricant de semi-conducteurs laisse l'enregistrement des configurations des systèmes de microprocesseur entièrement au client, il s'expose au risque de manipulation par le client. Il est difficile, voire même impossible pour le fabricant de semi-conducteurs de comprendre les paramètres de configuration et, donc, les grandeurs de mémoire et/ou les modules de mémoire, sur lesquels s'établit finalement la facture, qui ont été sélectionnés. Une telle possibilité de manipulation est évitée par le concept décrit ci-dessus. [0009] Le module de sécurité peut être, par exemple, un module de cryptage, un soi-disant cryptomodule. [0010] L'appareil d'enregistrement peut être couplé à un appareil de configuration pour être à même de transmettre un paramètre de configuration entre l'appareil de configuration et l'appareil d'enregistrement. Cela peut être réalisé à l'aide d'un couplage non permanent qui ne couple que temporairement l'appareil d'enregistrement et l'appareil de configuration, ou à l'aide d'un couplage permanent entre l'appareil d'enregistrement et l'appareil de configuration, par exemple sous forme d'un câble de données. [0011] L'appareil d'enregistrement pourrait être, par exemple, un contrôleur de sécurité. Un contrôleur de sécurité comprend déjà un module de sécurité. Dans un exemple de mode de réalisation, le module de sécurité pourrait être sous forme de cryptomodule. Le module de sécurité assure, par exemple, que les données générées par l'appareil d'enregistrement soient cryptées et que la clé requise soient échangée avec l'appareil de configuration et/ou une ligne de données externe et/ou une mémoire de données externe, par exemple. Il est donc possible d'assurer que les paramètres de configuration utilisés soient enregistrés de manière sécurisée qui ne peut pas être manipulée. [0012] Dans un autre exemple de mode de réalisation, l'appareil d'enregistrement est connecté à l'appareil de configuration via un canal de données sécurisé. A cet effet, le canal de données peut présenter des capteurs qui détectent la manipulation, ou une structure spéciale à lignes blindées. Pour augmenter la sécurité, les données transmises via le canal de données peuvent être cryptées, par exemple à l'aide d'un cryptomodule. [0013] Dans un autre exemple de mode de réalisation de l'appareil selon l'invention, le système de microprocesseur est bloqué après configuration; le blocage peut être mis en œuvre, par exemple, en faisant sauter les fusibles à l'intérieur du système de microprocesseur. Le blocage empêche que la configuration du système de microprocesseur soit à même d'être modifiée ultérieurement. [0014] Pour mémoriser de manière sécurisée les données enregistrées, l'appareil d'enregistrement peut présenter une mémoire de données sécurisée. Les données d'enregistrement peuvent être mémorisées dans la mémoire de données cryptage existant La mémoire de données peut également être protégée contre de capteurs correspondante. La mémoire de données est lue, par exemple, sans contact via une interface appropriée ou à l'aide de contacts via une ligne. [0015] Dans un autre exemple de mode de réalisation de l'appareil selon l'invention, l'appareil d'enregistrement est connecté à un appareil de communication de données. L'appareil de communication de données assure que les données d'enregistrement soient envoyées au fabricant de semi-conducteurs, par exemple. Les données peuvent être communiquées de manière filaire, sans fil ou tant de manière filaire que sans fil et via une connexion à Internet et/ou téléphonique, par exemple. Dans un mode de réalisation particulier, l'appareil de communication de sécurisée de forme cryptée, par peut être réalisé par le module exemple. Le de sécurité une manipulation de l'extérieur, à l'aide correspondants ou d'une structure données présente, en outre, une mémoire de données pour la mise en tampon des données d'enregistrement. [0016] Dans un autre exemple de mode de réalisation de l'appareil selon l'invention, l'appareil d'enregistrement est conçu pour générer un code de libération ayant au moins un paramètre de configuration. Le paramètres de configuration sont, par exemple, les grandeurs de mémoire qui peuvent être sélectionnées, les modules qui peuvent être connectés, par exemple cryptomodules, les modules d'interface et/ou les modules de sécurité, les processeurs qui peuvent être connectés, par exemple cryptomodules, les modules d'interface et, par exemple les co-processeurs et/ou cryptoprocesseurs, les modules de système qui peuvent être connectés ou les blocs de logiciel et/ou les librairies de logiciel qui peuvent être connectés. L'appareil d'enregistrement génère un code de libération selon le ou les paramètres de configuration désirés. L'appareil de configuration connaît, de par le code de libération fonction de la configuration qui est transmis à l'appareil de configuration, la manière dont il doit configurer le système de microprocesseur. Pour une protection contre une manipulation, le code de libération peut être protégé de manière cryptographique contre une manipulation. La protection cryptographique peut être réalisée, par exemple, en cryptant le code de libération au moyen du module de sécurité de l'appareil d'enregistrement. Dans un premier exemple de mode de réalisation, un code de libération individuel est généré pour chaque système de microprocesseur à configurer. Dans un autre exemple de mode de réalisation, un code de libération est généré pour un groupe de systèmes de microprocesseur. Les configurations des systèmes de microprocesseur qui sont réalisées à l'aide des codes de libération sont enregistrées dans l'appareil d'enregistrement. [0017] Dans un autre exemple de mode de réalisation, une communication sécurisée entre l'appareil d'enregistrement et l'appareil de configuration a lieu via un canal de communication sécurisé. Par exemple, l'appareil de configuration transmet à l'appareil d'enregistrement les données de configuration relatives à une configuration du système de microprocesseur. Les données de configuration peuvent être entrées directement dans l'appareil de configuration. Après la configuration, le système de microprocesseur peut être bloqué. Le canal de communication sécurisé peut être protégé de manière cryptographique contre une manipulation. Le module de sécurité dans l'appareil d'enregistrement peut être utilisé pour la protection cryptographique. [0018] Dans un autre exemple de mode de réalisation, l'appareil selon l'invention est intégré directement dans un système de microprocesseur. L'appareil d'enregistrement et l'appareil de configuration font alors tous deux partie du système de microprocesseur. [0019] Le procédé pour enregistrer de manière sécurisée une configuration d'un système de microprocesseur configurable présente les étapes consistant à coupler le système de microprocesseur à un appareil de configuration, à enregistrer de manière sécurisée un paramètre de configuration, et à configurer le système de microprocesseur selon le paramètre de configuration. [0020] L'enregistrement sécurisé de la configuration d'un système de microprocesseur assure qu'un fabricant de semi- conducteurs, par exemple, reçoive un enregistrement sécurisé des configurations des systèmes de microprocesseur configurables qu'il a délivrés, configurations qui sont utilisées par son client, le client. Sur base de l'enregistrement sécurisé, le fabricant de semi-conducteurs peut alors établir une facture pour le client pour les systèmes de microprocesseur configurés. [0021] Après que le système de microprocesseur ait été configuré, le système peut être bloqué, par exemple à l'aide d'une commande de blocage, avec pour résultat qu'il n'est plus possible de modifier ultérieurement la configuration. [0022] Le ou les paramètres de configuration utilisés, par exemple les grandeurs de mémoire qui peuvent être sélectionnées, les modules qui peuvent être connectés, par exemple cryptomodules, les modules d'interface et/ou les modules de sécurité, les processeurs qui peuvent être connectés, par exemple co-processeurs et/ou cryptoprocesseurs, les modules de système et/ou les modules de sécurité, les processeurs qui peuvent être connectés ou les blocs de logiciel et/ou les librairies de logiciel qui peuvent être connectés, peuvent être mémorisés sur un support de mémoire de données sécurisé, par exemple. [0023] Dans un autre exemple de mode de réalisation, il est également possible d'envoyer le paramètre de configuration à un appareil de communication de données directement ou après mise en tampon dans une mémoire de données sécurisée. [0024] Dans un autre exemple de mode de réalisation du procédé selon l'invention, un code de libération est généré par l'appareil d'enregistrement, le code de libération contenant au moins un paramètre de configuration. L'appareil de configuration configure alors le système de microprocesseur selon le code de libération. Le code de libération peut être protégé de manière cryptographique contre une manipulation. Un système de microprocesseur peut être configuré à l'aide d'un code de libération attribué individuellement. Dans un autre exemple de mode de réalisation, un groupe entier de systèmes de microprocesseur peut être configuré à l'aide d'un seul code de libération attribué. [0025] Dans un autre exemple de mode de réalisation du procédé selon l'invention, l'appareil de configuration transmet le paramètre de configuration à l'appareil d'enregistrement via un canal de communication sécurisé. Le canal de communication peut être protégé de manière cryptographique contre une manipulation dans cet exemple de mode de réalisation également. [0026] Ci-après, des exemples de mode de réalisation préférés de l'appareil selon l'invention sont expliqués 15 plus en détail à l'aide des figures, dans lesquelles: [0027] la figure 1 est une illustration schématisée d'un premier exemple de mode de réalisation; et 20 [0028] la figure 2 est une illustration schématisée d'un deuxième exemple de mode de réalisation. [0029] La figure 1 est une illustration schématisée d'un premier exemple de mode de réalisation de l'appareil selon 25 l'invention pour enregistrer de manière sécurisée une configuration effectuée sur un système de microprocesseur. L'appareil 100 selon l'invention présente un appareil d'enregistrement 20 présentant un module de sécurité 25 pour créer un enregistrement anti-manipulation 30. Un 30 appareil de configuration 50 est connecté à l'appareil d'enregistrement 20. La configuration d'un système de microprocesseur ou d'un groupe de systèmes de microprocesseur peut être transmise à l'appareil d'enregistrement 20 via un terminal d'entrée 10. Les 35 données de configuration peuvent être transmises, dans ce cas, du terminal d'entrée 10 à l'appareil d'enregistrement 20 via un câble de données normal ou sans contact, par exemple au moyen de Bluetooth. Il va sans dire que d'autres possibilités de transmission des données de configuration à l'appareil d'enregistrement sont également possibles. Par exemple, les configurations peuvent être mémorisées sur un support de mémoire de données, par exemple une mémoire flash, et peuvent être transmises du support de mémoire de données à l'appareil d'enregistrement. [0030] L'appareil d'enregistrement 20 génère un code de libération 70 sur base de la configuration désirée du système de microprocesseur 40. Le code de libération 70 peut être généré de manière anti-manipulation à l'aide du module de sécurité 25 qui peut faire partie de l'appareil d'enregistrement 20. Si le module de sécurité 25 est un cryptomodule, par exemple, le code de libération 70 peut être crypté de manière cryptographique. Le système de microprocesseur 40 ou l'appareil de configuration 50 peut alors décrypter le code de libération à l'aide d'une clé mémorisée, laquelle peut être mémorisée dans l'appareil de configuration 50, et peut réaliser la configuration sélectionnée. [0031] Aux fins de la configuration, le système de microprocesseur 40 peut être couplé à l'appareil de configuration 50, c'est-à-dire qu'il peut y avoir soit un couplage permanent, soit un couplage non permanent entre le système de microprocesseur et l'appareil de configuration. Le couplage peut être sans contact ou peut utiliser des contacts. [0032] Si l'appareil de configuration 50 reçoit le code de libération 70 directement de l'appareil d'enregistrement 20, il configure le système de microprocesseur 40 selon les paramètres de configuration mémorisés dans le code de libération 70. L'appareil d'enregistrement 20 enregistre la configuration du système de microprocesseur 40 dans un journal d'enregistrement sécurisé 30. Le journal d'enregistrement 30 doit être protégé en conséquence contre une manipulation de l'extérieur. Le journal d'enregistrement 30 peut également être protégé, par exemple, au moyen d'un cryptage à l'aide du module de sécurité 25. [0033] Sur base des données de configuration enregistrées dans le journal d'enregistrement 30, une facture peut être établie, par exemple, entre un fabricant de semi-conducteurs qui a délivré les systèmes de microprocesseur configurables 40 et son client qui a réalisé la configuration. Le système de microprocesseur configuré 40 contient le ou les paramètres de configuration désirés par le client, par exemple une grandeur de mémoire particulière et/ou les modules de système connectés. [0034] La figure 2 est une illustration schématisée d'un deuxième exemple de mode de réalisation de l'appareil selon l'invention. Contrairement à la structure décrite à la figure 1, le terminal d'entrée 10 est connecté directement à l'appareil de configuration 50 dans ce cas. Par ailleurs, l'appareil de configuration 50 communique avec l'appareil d'enregistrement 20 via un canal de communication sécurisé 60. La configuration désirée du système de microprocesseur 40 est entrée dans le terminal d'entrée 10 par le client. [0035] Le système de microprocesseur 40 est configurable et peut être fourni au client soit selon une configuration maximale, soit selon une configuration minimale, selon le modèle de facturation. Lorsqu'il est fourni selon la configuration maximale, le client peut utiliser le système de microprocesseur 40 avec une configuration plus petite, qui est donc la plus économique pour lui. Lorsqu'il est fourni selon la configuration minimale, le fournisseur du système de microprocesseur configurable 40, par exemple le fabricant de semi-conducteurs, peut utiliser le journal d'enregistrement sécurisé 30, par exemple, pour prouver qu'il a été utilisé des paramètres de configuration additionnels éventuellement facturables. En d'autres termes, le client avec une configuration maximale bloque les modules de système et/ou de mémoire qui ne sont pas requis, tandis que le client à la configuration minimale libère les modules de système et/ou de mémoire qui sont requis. Le client utilise ses conditions requises pour déterminer la manière de configurer le système de microprocesseur 40. Par exemple, des grandeurs de mémoire particulières et/ou différents modules de système du système de microprocesseur 40 peuvent être utilisés. La configuration d'un système de microprocesseur générique 40 économise au client la mémorisation d'une multiplicité de systèmes de microprocesseur similaires 40. [0036] Une facture est établie sur base des configurations effectuées, par exemple avec le fabricant des systèmes de microprocesseur 40, c'est-à-dire le fabricant de semi-conducteurs, par exemple. A cette fin, l'appareil de configuration 50 transmet la configuration de chaque système de microprocesseur 40 et/ou d'un groupe de systèmes de microprocesseur 40 à l'appareil d'enregistrement 20 via un canal de communication sécurisé 60. [0037] L'appareil d'enregistrement 20 comprend un module de sécurité 25 qui peut être utilisé pour protéger la communication. Le module de sécurité 25 peut être un cryptomodule, par exemple. L'appareil d'enregistrement 20 génère un journal d'enregistrement sécurisé 30, sur base duquel peut ensuite être établie la facture pour les configurations réalisées. Le système de microprocesseur configurable 40 peut être bloqué pour empêcher que la configuration ne soit modifiée ultérieurement. [0038] De préférence, le procédé présente également les étapes consistant à configurer une pluralité de systèmes de microprocesseur 40 et générer un code de libération individuel 70 pour chaque système de microprocesseur 40 à 5 configurer. Revendications1. Appareil (100) présentant : - un appareil d'enregistrement (20) présentant un module de sécurité (25) pour la création d'un journal d'enregistrement anti-manipulation (30), - un appareil de configuration (50) pour configurer un système de microprocesseur (40), l'appareil de configuration (50) étant à même d'être couplé à l'appareil d'enregistrement (20) pour enregistrer une configuration du système de microprocesseur (40) à l'aide de l'appareil d'enregistrement (20). 2. Appareil (100) selon la revendication 1, le système de microprocesseur (40) étant à même d'être configuré de sorte que la configuration du système de microprocesseur (40) ne puisse plus être changée après que le journal d'enregistrement (30) ait été créé par l'appareil d'enregistrement (20). 3. Appareil (100) selon l'une des revendications précédentes, l'appareil d'enregistrement (20) présentant une mémoire de données sécurisée. 4. Appareil (100) selon l'une des revendications précédentes, l'appareil d'enregistrement (20) étant connecté à un appareil de communication de données. 30 5. Appareil (100) selon l'une des revendications précédentes, l'appareil d'enregistrement (20) étant conçu pour générer un code de libération (70) ayant au moins un paramètre de configuration et pour permettre que le système de microprocesseur (40) 35 soit configuré selon le paramètre de configuration25du code de libération (70) au moyen de l'appareil de configuration (50). 6. Appareil (100) selon la revendication 5, l'appareil d'enregistrement (20) étant conçu pour générer le code de libération (70) de sorte qu'il soit protégé de manière cryptographique contre une manipulation. 7. Appareil (100) selon l'une ou l'autre des revendications 5 et 6, l'appareil d'enregistrement (20) étant conçu pour générer un code de libération individuel (70) pour chaque système de microprocesseur (40) à configurer. 8. Appareil (100). selon l'une ou l'autre des revendications 5 et 6, l'appareil d'enregistrement (20) étant conçu pour générer un code de libération individuel (70) pour un groupe de systèmes de microprocesseur (40) à configurer. 9. Appareil (100) selon l'une des revendications 1 à 4, présentant également un canal de communication sécurisé (60) qui connecte l'appareil d'enregistrement (20) et l'appareil de configuration (50). 10. Appareil (100) selon la revendication 9, le canal de communication {60) étant conçu de sorte qu'il soit protégé de manière cryptographique contre une manipulation. 11. Appareil (100) selon l'une ou l'autre des revendications 9 et 10, l'appareil de configuration (50) étant conçu pour transmettre un paramètre de configuration relatif à la configuration du système de microprocesseur (40) à l'appareild'enregistrement (20) via le canal de communication (60). 12. Système de microprocesseur (40) présentant un appareil (100) selon l'une des revendications précédentes. 13. Procédé pour enregistrer de manière sécurisée une configuration d'un système de microprocesseur configurable (40), présentant les étapes consistant à: coupler le système de microprocesseur (40) à un appareil de configuration (50) d'un appareil (100) suivant l'une des revendications 1 à 11, enregistrer de manière sécurisée un paramètre de configuration, et configurer le système de microprocesseur (40) selon le paramètre de configuration. 14. Procédé selon la revendication 13, présentant également l'étape consistant à: - bloquer le système de microprocesseur (40) après que soit terminée la configuration. 15. Procédé selon l'une ou l'autre des revendications 13 et 14, présentant également l'étape consistant à : 30 - mémoriser le paramètre de configuration dans une mémoire de données sécurisée. 16. Procédé selon l'une des revendications 13 à 15, présentant également l'étape consistant à: 20 25- envoyer le paramètre de configuration protégé de manière cryptographique à un appareil de communication de données. 17, Procédé selon l'une des revendications 13 à 16, présentant également l'étape consistant à: - générer un code de libération (70), le code de libération (70) ayant au moins un paramètre de configuration, - configurer le système de microprocesseur (40) selon le code de libération (70). 18. Procédé selon la revendication 17, le code de libération (70) étant généré de manière protégée cryptographiquement. 19. Procédé selon l'une ou l'autre des revendications 17 et 18, le procédé présentant également les étapes consistant à: - configurer une pluralité de systèmes de microprocesseur (40), et générer un code de libération individuel (70) pour chaque système de microprocesseur (40) à configurer. 20. Procédé selon l'une ou l'autre des revendications 17 et 18, le procédé présentant également les étapes consistant à: - configurer un groupe de systèmes de microprocesseur (40), et - générer un code de libération individuel (70) pour le groupe de systèmes de microprocesseur (40) à configurer. 25 30 35 21. Procédé selon l'une des revendications 13 à 20, l'appareil de configuration (50) transmettant le paramètre de configuration à un appareil d'enregistrement (20) via un canal de communication sécurisé (60). 22. Procédé selon la revendication 21, le canal de communication (60) étant protégé de manière cryptographique contre une manipulation.