FR2746199A1 - Architecture de securite a double fonction avec systeme d'exploitation interne protege - Google Patents

Architecture de securite a double fonction avec systeme d'exploitation interne protege Download PDF

Info

Publication number
FR2746199A1
FR2746199A1 FR9603303A FR9603303A FR2746199A1 FR 2746199 A1 FR2746199 A1 FR 2746199A1 FR 9603303 A FR9603303 A FR 9603303A FR 9603303 A FR9603303 A FR 9603303A FR 2746199 A1 FR2746199 A1 FR 2746199A1
Authority
FR
France
Prior art keywords
processor
dual mode
execution
security
mode processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR9603303A
Other languages
English (en)
Other versions
FR2746199B1 (fr
Inventor
Richard J Takahashi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Philips Semiconductors Inc
Original Assignee
VLSI Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to GB9605120A priority Critical patent/GB2311152A/en
Priority to DE19609865A priority patent/DE19609865A1/de
Application filed by VLSI Technology Inc filed Critical VLSI Technology Inc
Priority to FR9603303A priority patent/FR2746199B1/fr
Publication of FR2746199A1 publication Critical patent/FR2746199A1/fr
Application granted granted Critical
Publication of FR2746199B1 publication Critical patent/FR2746199B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1433Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a module or a part of a module

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

Un mode de sécurité implanté dans un processeur à double mode est réalisé. Dans un mode général/externe, le processeur exécute des instructions provenant d'une source externe. Les instructions sont délivrées au processeur par des dispositifs d'entrée/sortie. Lors de la réception d'une interruption matérielle ou logicielle spéciale, le processeur à double mode entre dans un mode de sécurité/interne. L'interruption spécifie une fonction de sécurité stockée dans une mémoire à lecture seule du processeur à double mode. A réception d'une telle interruption, les entrées/sorties du processeur à double mode sont désactivées. La fonction de sécurité identifiée est exécutée par le processeur. Pendant l'exécution de la fonction de sécurité toute tentative d'insérer des instructions, n'ayant pas pour origine la mémoire à lecture seule, est ignorée. Toutefois le processeur peut avoir accès aux données spécifiquement identifiées lors de l'exécution de la fonction de sécurité. Lors de l'achèvement de l'exécution de la fonction de sécurité, un sous-programme de sortie est exécuté pour valider les entrées/sorties du processeur et pour reprendre l'exécution des instructions données par les dispositifs d'entrée/sortie en provenance de la source externe au processeur.

Description

ARCHITECTURE DE SECURITE A DOUBLE FONCTION AVEC SYSTEME
D'EXPLOITATION INTERNE PROTEGE
Arrière-plan de l'invention La présente invention concerne une architecture de circuit intégré et particulièrement une architecture de sécurité de circuit intégré à double fonction avec un
système d'exploitation interne protég6.
Pour certaines applications de traitement, il est primordial de fonctionner dans un environnement sur, de sorte que les opérations ne puissent pas être examinées ou altérées. Dans la technique antérieure, différents procédés ont été utilisés pour procurer un
environnement de sécurité de traitement.
Par exemple, un châssis mécanique peut être utilisé pour loger l'équipement de traitement. Ce châssis mécanique peut comprendre des commutateurs de modification et d'autres éléments pour détecter et se
prémunir contre des altérations et des modifications.
Malheureusement, un châssis mécanique de ce type peut augmenter, de manière significative, le coût du produit. En variante, afin de limiter l'accès à des circuits intégrés particuliers, les circuits intégrés peuvent être recouverts d'époxy ou d'autres matières chimiques pour empêcher l'accès. Malheureusement, souvent ces protections peuvent être retirées facilement et
n'apportent donc qu'une protection limitée.
Un autre procédé pour réaliser un environnement de sécurité de traitement est d'implanter le système sur un seul circuit intégré. Cependant, si un système d'exploitation de sécurité n'est pas implanté, ces systèmes peuvent également, d'une manière générale, être contournés. Cependant, l'implantation d'un système d'exploitation complètement sûr pour toutes les fonctions limite, de manière significative, ILa fonctionnalit:é dcu système ltfEnde_V.ILuLlltiQf Selon le mode de ré-alisation préfr-ié. de la pré.sente invention, un mode de s6écurité est implanté à l'intérieur d"un processeur à dcouble mode. Dans le amode
gqénéral/externe, le processeur à double mode exé:cute.
des instructions procurées par une source externe.]es.b instructions sont délivrées au processeur par l'intermédiaire de dispositifs d'entrée/sortie..]Aors le1 ]la réception cd' une interruption matérielle ou logicielle spéciale, le processeur à doub. Le mode entre dans un mode de sécuritté'./interne. L' interruption spécifie une fonction de sécurité stockée dans une mémoire à lecture seule à l'inté:rieur du p:roce;sseur à double mode. Lors de la réception d'une interruption de ce t'ype, les entrées/sorties du processeur ë double
mode sont désactivées. Un pointeur interne identi:Efi.
par 1' interruption est utilisé pour identifier J'emplacement de la fonction de sécurité stock.e dans
la mémoire à lecture seule à 1' inté-rieur du processeur.
La fonction de sécurité identifiée est exécutée par le processeur. Pendant l' exécutionr de la fonction de sécurité, toute tentative d'insérer des instructions n'ayant pas pour origine la mé-moire à lecture seule, est ignorée. Cependant, le] processeur est autorisé à accéder aux don:nées identifiées, de manière spécifique,
par la fonction cde sécurité en train d'être exécutée.
Lors de l'achèvement de l'exécution de la fonction de sécurité, un sous-programme de sortie est exécuté pour valider les entrées/sorties du processeur iet pou:r reprendre l: exécution des instructions apporté:es par les dispositifs d'entrée/sortie cà partir de la source
externe au prc)cesseur. Les instructions pour le sous-
programme de sortie sont égalenent stockées &
l'intérieur de la mémoire c lecture seule.
Dans le mode de réalisation préféré, le sous-
programme de sortie utilise un circuit de commande matériel spécial pour valider les entrées/sorties dui processeur. Egalement dans le mode de réalisation préféré, lors de la remise a l'état initial, le processeur effectue un autotest en mode de sécurité, les entrées/sorties étant désactivées. LDrs de l'achèvement avec succès de l'exécution de la fonction d'autotest, le sous-programme de sortie est exécuté pour valider les entres/sEcrties du processeur et pour commencer l'exécution des instructions apportées par l'intermédiaire des dispositifs d'entrée/sortie en provenance de la source externe au processeur. Du matériel de protection est utilisé pour procurer une protection contre les altérations physiques et électriques. Le système de traitement à double mode est utilisé, par exemple, pour effectuer des fonctions de chiffrage telles que le cryptage ou la substitution à clé publique. Par exemple, dans une application particulière de ce type, ces patdlets ou blocs de données sont interceptés et sont envoyés au processeur a double mode. Les primitives qui chiffrent/déchiffrent les données sont stockées dans la mémcire à lecture seule A l'intérieur du processeur. Ces primitives sont exécutées lorsque le processeur à double mode est en mode de sécurité. O'autres fonctions de système sont
exécutées en mode général.
La présente invention propose des moyens efficaces et peu coûteux pour réaliser un traitement à double mode. Lors du fonctionnement en mode général, toutes les instructions externes peuvent être exécutées sans aucune servitude associée à un système d'exploitation de sécurité. Pendant le fonctionnement en mode de sécurité, les fonctions de sécurité sont exécutées en
étant protégées contre toute altération ou examen.
Brève description des dessins
D'autres caractéristiques et avantages de l'invention ressortiront plus clairement à la lecture
de la description ci-après, faite en référence aux
dessins annexés, dans lesquels: La figure 1 représente un schéma fonctionnel d'un système dans lequel un processeur à double mode est utilisé en mode de sécurité pour le cryptage et le déchiffrage selon un mode de réalisation préféré de la
présente invention.
La figure 2 représente un schéma fonctionnel simplifié du processeur à double mode représenté à la figure 1 selon un mode de réalisation préféré de la
présente invention.
La figure 3 représente un organigramme qui représente l'initialisation du processeur à double mode représenté à la figure 2 selon un mode de réalisation
préféré de la présente invention.
La figure 4 représente un organigramme qui représente le fonctionnement du processeur à double mode dans le mode de fonctionnement de sécurité selon le mode de réalisation préféré de la présente invention. La figure 5 est un schéma fonctionnel qui indique le contenu d'une ROM (mémoire à lecture seule) à l'intérieur du processeur à double mode représenté à la figure 2 selon le mode de réalisation préféré de la
présente invention.
Description détaillée du mode de réalisation préféré
La figure 1 représente un schéma fonctionnel d'un système dans lequel un processeur à double mode 12 est utilisé dans un mode (interne) de sécurité pour le cryptage et le déchiffrage selon un mode de réalisation préféré de la présente invention. Le processeur à double mode 12 communique avec un processeur à canal de commande 11 par l'intermédiaire d'un canal de données 18 et d'un canal de données 19. Les canaux de données 18 et 19, par exemple, sont réalisés en tant que bus d'entrée/sortie (E/S) qui fonctionne selon un standard de bus d'entrée/sortie, tel que, par exemple, le standard Industry Standard Architecture (ISA). Le processeur à canal de commande 11 procure des données au processeur à double mode 12. De plus, lorsque le processeur à double mode 12 est dans le mode (externe) général, le processeur à canal de commande donne des instructions à exécuter par le processeur à double mode 12. Le processeur à double mode 12 est utilisé pour effectuer une fonction de chiffrage telle que le cryptage ou la substitution à clé publique. Par exemple, la figure 1 représente un démultiplexeur 13 qui reçoit un flot de données chiffrées 14 et qui produit un flot de données déchiffrées démultiplexées 15. Le flot de données chiffrées 14 et les flots de données déchiffrées 15 sont, par exemple, constitués par des blocs de données ou des paquets de données en train d'être transférés vers et depuis le démultiplexeur 13. Le démultiplexeur 13 envoie les données chiffrées au processeur à double mode 12 par l'intermédiaire d'un chemin de données 16. Le processeur à double mode 12 déchiffre les données et renvoie les données déchiffrées au démultiplexeur 13
par l'intermédiaire d'un chemin de données 17.
Afin de protéger l'intégrité du schéma de chiffrage particulier utilisé, il est nécessaire de protéger les fonctions de chiffrage à l'intérieur du processeur & double mode 12 contre un accès ou une altération. Dans ce but, le processeur à double mode 12 comporte deux modes de fonctionnement. Dans un mode général, le processeur à double mode 12 exécute des instructions
reçues depuis le processeur à canal de commande 11.
Dans un mode de sécurité, le processeur à double mode exécute les fonctions de chiffrage dans un environnement de sécurité, comme plus complètement
examiné dans la suite du document.
La figure 2 représente un schéma fonctionnel simplifié du processeur à double mode 12 selon un mode de réalisation préféré de la présente invention. Les fonctions de traitement sont exécutées par des circuits de fonctions de traitement 21. Par exemple, les circuits de fonctions de traitement 21 sont un processeur à calculateur à jeu d'instructions réduit (RISC). Les circuits de fonctions de traitement 21 s'interfacent avec les canaux de données 18 et 19 par l'intermédiaire de circuits d'interface d'entrée/sortie (E/S) de bus 23. Les circuits de fonctions de traitement 21 s'interfacent avec les chemins de données 16 et 17 par l'intermédiaire de circuits d'interface
d'entrée/sortie (E/S) de chiffrage 25.
Une mémoire à accès direct (RAM) 22 est utilisée par les circuits de fonctions de traitement 21, par exemple, pour le stockage de données et pour
l'exécution à haute vitesse de petits blocs de code.
Une mémoire à lecture seule (ROM) 24 est utilisée pour contenir les primitives de sécurité qui sont exécutées par les circuits de fonctions de traitement 21 quand le processeur à double mode 12 est dans le mode de sécurité. Un circuit de commande de matériel d'E/S 26 est adressé par un sous-programme de sortie de mode de sécurité afin de libérer des commandes d'E/S quand le processeur à double mode 12 passe du mode de sécurité au mode général. Le circuit de commande de matériel 26 contient une logique de sortie qui assure que le processeur à double mode 12 va exécuter une séquence fixée de commandes qui ne pourraient pas, par ailleurs, s'exécuter si le processeur à double mode 12 a perdu sa progression. L'utilisation du circuit de commande de matériel 26 pour effectuer la transition entre le mode de sécurité et le mode général assure que si le processeur à double mode 12 perd sa progression, par exemple à cause d'une pointe ou d'une altération du courant, le processeur à double mode 12 ne va pas, de façon prématurée ou de façon incomplète, sortir du mode de sécurité. Quand une altération ou une pointe de courant affecte le fonctionnement du processeur & double mode 12 pendant le mode de sécurité, le circuit de commande de matériel 26 va verrouiller le processeur à double mode 12 et va exiger une remise à l'état initial avant que le fonctionnement du processeur à
double mode 12 ne reprenne.
Lors de l'entrée dans le mode de sécurité, le circuit de commande de matériel 26 désactive les dispositifs d'entrée/sortie du processeur à double mode 12. Lors de la sortie du mode de sécurité, le circuit de commande de matériel 26 valide les dispositifs
d'entrée/sortie du processeur à double mode 12.
Dans le mode de sécurité, tout accès externe aux
circuits de fonctions de traitement 21 est désactivé.
En étant dans le mode de sécurité les circuits de fonctions de traitement 21 exécutent seulement les primitives de sécurité dans la ROM 24. Dans le mode de sécurité, les circuits de fonctions de traitement 21 ont encore la capacité d'accéder à une mémoire externe pour les données, mais seulement lorsque les primitives
de sécurité, à l'intérieur de la ROM 24, l'autorisent.
De plus, dans le mode de sécurité, le processeur & double mode 12 ignore toutes les tentatives d'insertion d'une instruction parasite. La logique de protection 27 apporte une protection contre les altérations physiques et électriques. La logique de protection est activée lors de l'entrée en
mode de sécurité.
La figure 3 représente un organigramme qui représente l'initialisation du processeur à double mode 12. A l'étape 31, le système est remis à l'état initial. Lors de la remise à l'état initial, tous les chemins d'entrée/sortie du processeur à double mode 12 sont désactivés. A l'étape 32, le processeur à double mode 12 effectue une fonction d'autotest pour assurer un fonctionnement correct. Le sous- programme d'autotest
exécuté est stocké dans la ROM 24 en tant que sous-
programme de sécurité. Pendant l'exécution du sous-
programme d'autotest, la logique de protection 27 est activée pour empêcher toute altération physique et électrique du processeur à double mode 12. Si le processeur à double mode 12 réussit la fonction d'autotest, à l'étape 33, le sous-programme de sortie de mode de sécurité est exécuté. Le sous-programme de sortie de mode de sécurité nettoie ou efface tous les registres. Le sous-programme de sortie de mode de sécurité adresse ensuite le circuit de commande de matériel 26 afin de libérer les commandes d'E/S. A l'étape 34, le sous-programme de sortie est terminé et le gestionnaire de programmes est appelé. A l'étape 35, le gestionnaire de programmes gère l'exécution d'un code de programmation externe exécuté par le processeur à double mode 12 lorsque le processeur à double mode 12
est dans le mode général.
La figure 4 représente un organigramme qui représente le fonctionnement du processeur & double mode dans le mode de fonctionnement de sécurité selon le mode de réalisation préféré de la présente invention. Avant l'étape 41, le processeur & double mode est dans le mode général et le gestionnaire de programmes gère l'exécution d'un code de programmation externe exécuté par le processeur à double mode 12. A l'étape 41, une interruption matérielle ou logicielle spéciale (SWI) est affirmée. L'interruption logicielle/matérielle spéciale dirige le processeur à double mode 12 afin d'obliger le processeur à double mode 12 à entrer dans le système d'exploitation de sécurité interne. L'interruption logicielle/matérielle spéciale comporte une adresse qui indique une fonction
à exécuter, stockée à l'intérieur de la ROM 24.
A l'étape 42, on pénètre dans le système d'exploitation de sécurité. Tous les dispositifs d'entrée/sortie sont désactivés par le circuit de commande de matériel d'E/S 26. La logique de protection 27 est activée pour protéger le processeur à double mode 12 de toute altération physique ou électrique. A l'étape 43, la fonction d'adresse à l'intérieur de la ROM 24 spécifiée par l'adresse à l'intérieur de l'interruption logicielle/matérielle spéciale est localisée par un pointeur interne. A l'étape 44, la
fonction adressée est exécutée. A l'étape 45, le sous-
programme de sortie de mode de sécurité est exécuté. Le sous-programme de sortie de mode de sécurité nettoie ou efface tous les registres. Le sous-programme de sortie de mode de sécurité ordonne ensuite au circuit de
commande de matériel 26 de libérer les commandes d'E/S.
A l'étape 46, le sous-programme de sortie est terminé et le gestionnaire de programmes est appelé. A l'étape 47, le gestionnaire de programmes gère l'exécution d'un code de programmation externe exécuté par le processeur à double mode 12 lorsque le processeur à double mode 12
est dans le mode général.
La figure 5 représente un exemple du contenu de la ROM 24. La ROM 24 contient un sous-programme d'entrée en mode de sécurité 51. Le sousprogramme d'entrée en mode de sécurité 51 est le premier sous-programme exécuté quand on entre dans le mode de sécurité ou quand le processeur à double mode 12 est remis à l'état initial. Le sous-programme d'entrée en mode de sécurité 51 désactive tous les dispositifs d'E/S du processeur à double mode 12 et utilise des pointeurs internes 52 pour aller vers des fonctions de sécurité 53. Chaque fonction de sécurité des fonctions de sécurité 53 est faite à partir d'une ou plusieurs primitives. Les fonctions de sécurité particulières stockées à l'intérieur de la ROM 24 varient avec l'application particulière à réaliser. Par exemple, dans le mode de réalisation préféré, les fonctions de sécurité 53 comprennent les primitives utilisées pour les opérations de chiffrage. Après qu'une fonction de sécurité a été exécutée, on sort du mode de sécurité en utilisant le sous-programme de sortie de mode de
sécurité 54.
L'examen précédent dévoile et décrit simplement des exemples de procédés et de modes de réalisation de la présente invention. Comme le comprendront les hommes de l'art, l'invention peut être réalisée sous d'autres formes spécifiques sans s'écarter de l'esprit ni des caractéristiques primordiales de cette dernière. Par
conséquent, la description de la présente invention est
destinée à être représentative, mais non limitative, de l'étendue de l'invention, qui est fixée dans les
revendications annexées.
il

Claims (15)

REVENDICATIONS
1. Procédé réalisé par ordinateur pour procurer un mode de sécurité à l'intérieur d'un processeur, le procédé étant caractérisé en ce qu'il comprend les étapes suivantes: (a) l'exécution d'instructions données par une source externe au processeur, les instructions étant délivrées au processeur par l'intermédiaire de dispositifs d'entrée/sortie du processeur; et (b) lors de la réception d'une interruption spécifiant une fonction de sécurité, l'exécution des étapes secondaires suivantes: (b.1) la désactivation des dispositifs d'entrée/sortie du processeur, (b.2) l'exécution de la fonction de sécurité spécifiée par l'interruption, les instructions pour la fonction de sécurité étant stockées dans une mémoire à lecture seule (24) à l'intérieur du processeur, et (b.3) lors de l'achèvement de l'exécution de
la fonction de sécurité, l'exécution d'un sous-
programme de sortie qui valide les dispositifs d'entrée/sortie du processeur et autorise la reprise de l'exécution des instructions données par la source
externe au processeur, les instructions pour le sous-
programme de sortie étant stockées à l'intérieur de la
mémoire à lecture seule (24).
2. Procédé réalisé par ordinateur selon la revendication 1, caractérisé en ce que, à l'étape secondaire (b.3), la validation des dispositifs d'entrée/sortie du processeur est effectuée par un
circuit de commande de matériel (26).
3. Procédé réalisé par ordinateur selon la revendication 1, caractérisé en ce qu'il comprend, de plus, les étapes suivantes: (c) lorsque le processeur reçoit un ordre de remise à l'état initial, l'exécution des étapes suivantes: (c.1) la désactivation des dispositifs d'entrée/sortie du processeur, (c.2) l'exécution d'un programme d'autotest du processeur, les instructions pour le programme d'autotest étant stockées à l'intérieur de la mémoire & lecture seule (24) a l'intérieur du processeur, et (c.3) lors de l'achèvement réussi de l'exécution du programme d'autotest, l'exécution du
sous-programme de sortie.
4. Procédé réalisé par ordinateur selon la revendication 1, caractérisé en ce que l'étape secondaire (b.2) comprend l'utilisation d'un pointeur interne identifié par l'interruption, le pointeur
interne pointant sur la fonction de sécurité.
5. Procédé réalisé par ordinateur selon la revendication 1, caractérisé en ce que l'étape secondaire (b.2) comprend l'exécution de primitives qui
cryptent/déchiffrent un flot de données.
6. Processeur à double mode, caractérisé en ce qu'il comprend: des moyens d'exécution d'instructions pour exécuter des instructions; des moyens d'entrée/sortie pour donner des instructions externes par une source externe au processeur à double mode (12); et une mémoire à lecture seule (24) stockant des primitives pour un système d'exploitation de sécurité, les primitives incluant des instructions qui, quand elles sont exécutées par les moyens d'exécution d'instructions, effectuent les fonctions suivantes: la désactivation des dispositifs d'entrée/sortie du processeur à double mode (12), l'exécution des fonctions de sécurité spécifiées par les interruptions au processeur & double mode (12), et lors de l'achèvement de l'exécution de l'une quelconque des fonctions de sécurité, l'exécution d'un sous-programme de sortie qui valide les dispositifs d'entrée/sortie du processeur à double mode (12) et qui permet la reprise de l'exécution des instructions données par la source externe au processeur à double
mode (12).
7. Processeur à double mode selon la revendication 6, caractérisé en ce qu'il comprend de plus des circuits spéciaux qui, quand ils sont appelés par le sous-programme de sortie, valident les dispositifs d'entrée/sortie du processeur à double mode (12) et qui sont utilisés lors de l'entrée dans un mode de sécurité pour désactiver les dispositifs
d'entrée/sortie du processeur à double mode (12).
8. Processeur à double mode selon la revendication 7, caractérisé en ce qu'il comprend de plus un matériel de protection qui procure une sécurité physique et une sécurité électrique au processeur à double mode (12) lorsque le processeur à double mode
(12) est dans le mode de sécurité.
9. Processeur à double mode selon la revendication 6, caractérisé en ce que la mémoire à lecture seule (24) stocke, de façon supplémentaire, des primitives qui, quand elles sont exécutées par les moyens d'exécution d'instructions, effectuent les fonctions suivantes en réponse au processeur à double mode (12) recevant un ordre de remise à l'état initial: la désactivation des dispositifs d'entrée/sortie du processeur à double mode (12), l'exécution d'un programme d'autotest du processeur à double mode (12), et lors de l'achèvement réussi de l'exécution du programme d'autotest, l'exécution du sous-programme de sortie.
10. Processeur à double mode selon la revendication 6, caractérisé en ce que la mémoire à lecture seule (24) comprend des pointeurs internes qui pointent sur des fonctions de sécurité, les pointeurs internes étant indiqués par des interruptions au
processeur à double mode (12).
11. Processeur à double mode selon la revendication 6, caractérisé en ce que les fonctions de sécurité comprennent des primitives qui
cryptent/déchiffrent un flot de données.
12. Système pour effectuer une fonction de chiffrage sur des données dans un flot de données, caractérisé en ce que le système comprend: des moyens d'interception pour intercepter le flot de données; et un processeur à double mode (12) comprenant: des moyens d'exécution d'instructions pour exécuter des instructions; des moyens d'entrée/sortie pour donner des instructions externes par une source externe au processeur à double mode (12); une mémoire a lecture seule (24) stockant des primitives pour un système d'exploitation de sécurité, les primitives incluant des instructions qui, quand elles sont exécutées par les moyens d'exécution d'instructions, effectuent les fonctions suivantes: la désactivation des dispositifs d'entrée/sortie du processeur à double mode (12), l'exécution des fonctions de sécurité spécifiées par des interruptions au processeur à double mode (12), les fonctions spéciales incluant des primitives qui cryptent/déchiffrent les données dans le flot de données, et lors de l'achèvement de l'exécution de l'une quelconque des fonctions de sécurité, l'exécution d'un sous-programme de sortie qui valide les dispositifs d'entrée/sortie du processeur à double mode (12) et qui permet la reprise de l'exécution des instructions procurées par la source externe au
processeur à double mode (12).
13. Système selon la revendication 12, caractérisé en ce que le processeur à double mode (12) comprend de plus des circuits spéciaux qui, quand ils sont appelés par le sous-programme de sortie, valident les dispositifs d'entrée/sortie du processeur à double mode (12).
14. Système selon la revendication 12, caractérisé en ce que la mémoire à lecture seule (24) stocke, de façon supplémentaire, des primitives qui, quand elles sont exécutées par les moyens d'exécution d'instructions, effectuent les fonctions suivantes en réponse au processeur à double mode (12) recevant un ordre de remise à l'état initial: la désactivation des dispositifs d'entrée/sortie du processeur à double mode (12), l'exécution d'un programme d'autotest du processeur à double mode (12), et lors de l'achèvement réussi de l'exécution du programme d'autotest, l'exécution du sous-programme de
sortie.
15. Système selon la revendication 12, caractérisé en ce que la mémoire à lecture seule (24) comprend des pointeurs internes qui pointent sur des fonctions de sécurité, les pointeurs internes étant indiqués par des
interruptions au processeur à double mode (12).
FR9603303A 1996-03-11 1996-03-15 Architecture de securite a double fonction avec systeme d'exploitation interne protege Expired - Fee Related FR2746199B1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
GB9605120A GB2311152A (en) 1996-03-11 1996-03-11 Dual mode security architecture with protected internal operating system
DE19609865A DE19609865A1 (de) 1996-03-11 1996-03-13 Doppelzweck-Sicherheitsarchitektur mit einem geschützten, internen Betriebssystem
FR9603303A FR2746199B1 (fr) 1996-03-11 1996-03-15 Architecture de securite a double fonction avec systeme d'exploitation interne protege

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB9605120A GB2311152A (en) 1996-03-11 1996-03-11 Dual mode security architecture with protected internal operating system
DE19609865A DE19609865A1 (de) 1996-03-11 1996-03-13 Doppelzweck-Sicherheitsarchitektur mit einem geschützten, internen Betriebssystem
FR9603303A FR2746199B1 (fr) 1996-03-11 1996-03-15 Architecture de securite a double fonction avec systeme d'exploitation interne protege

Publications (2)

Publication Number Publication Date
FR2746199A1 true FR2746199A1 (fr) 1997-09-19
FR2746199B1 FR2746199B1 (fr) 1998-05-07

Family

ID=27216024

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9603303A Expired - Fee Related FR2746199B1 (fr) 1996-03-11 1996-03-15 Architecture de securite a double fonction avec systeme d'exploitation interne protege

Country Status (3)

Country Link
DE (1) DE19609865A1 (fr)
FR (1) FR2746199B1 (fr)
GB (1) GB2311152A (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2883998A1 (fr) * 2005-04-05 2006-10-06 St Microelectronics Sa Coprocesseur securise comprenant un circuit de detection d'un evenement
US7934265B2 (en) 2005-04-05 2011-04-26 Stmicroelectronics Sa Secured coprocessor comprising means for preventing access to a unit of the coprocessor

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7073173B1 (en) * 2000-12-04 2006-07-04 Microsoft Corporation Code and thread differential addressing via multiplex page maps

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0308219A2 (fr) * 1987-09-18 1989-03-22 General Instrument Corporation Micro-ordinateur à sécurité de RAM interne pendant le mode de programme externe
WO1993010498A1 (fr) * 1991-11-12 1993-05-27 Microchip Technology Inc. Systeme de securite pour memoire de microcontrôleur sur puce
US5251304A (en) * 1990-09-28 1993-10-05 Motorola, Inc. Integrated circuit microcontroller with on-chip memory and external bus interface and programmable mechanism for securing the contents of on-chip memory
EP0623879A1 (fr) * 1993-05-06 1994-11-09 Schlumberger Industries Microprocesseur avec mémoire sécurisée

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0175487A3 (fr) * 1984-08-23 1989-03-08 Btg International Limited Dispositif de protection de logiciel
US5014191A (en) * 1988-05-02 1991-05-07 Padgaonkar Ajay J Security for digital signal processor program memory
JPH0484348A (ja) * 1990-07-27 1992-03-17 Nec Corp Romデータ保護方式

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0308219A2 (fr) * 1987-09-18 1989-03-22 General Instrument Corporation Micro-ordinateur à sécurité de RAM interne pendant le mode de programme externe
US5251304A (en) * 1990-09-28 1993-10-05 Motorola, Inc. Integrated circuit microcontroller with on-chip memory and external bus interface and programmable mechanism for securing the contents of on-chip memory
WO1993010498A1 (fr) * 1991-11-12 1993-05-27 Microchip Technology Inc. Systeme de securite pour memoire de microcontrôleur sur puce
EP0623879A1 (fr) * 1993-05-06 1994-11-09 Schlumberger Industries Microprocesseur avec mémoire sécurisée

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2883998A1 (fr) * 2005-04-05 2006-10-06 St Microelectronics Sa Coprocesseur securise comprenant un circuit de detection d'un evenement
EP1772805A2 (fr) 2005-04-05 2007-04-11 Stmicroelectronics Sa Coprocesseur sécurisé comprenant un circuit de détection d' un évènement
EP1772805A3 (fr) * 2005-04-05 2010-05-19 Stmicroelectronics Sa Coprocesseur sécurisé comprenant un circuit de détection d' un évènement
US7934265B2 (en) 2005-04-05 2011-04-26 Stmicroelectronics Sa Secured coprocessor comprising means for preventing access to a unit of the coprocessor
US7954153B2 (en) 2005-04-05 2011-05-31 Stmicroelectronics Sa Secured coprocessor comprising an event detection circuit
US8359481B2 (en) 2005-04-05 2013-01-22 Stmicroelectronics S.A. Secured coprocessor comprising an event detection circuit

Also Published As

Publication number Publication date
FR2746199B1 (fr) 1998-05-07
GB9605120D0 (en) 1996-05-08
GB2311152A (en) 1997-09-17
DE19609865A1 (de) 1997-09-18

Similar Documents

Publication Publication Date Title
EP1964316B1 (fr) Systeme sur une seule puce securise
US9177176B2 (en) Method and system for secure system-on-a-chip architecture for multimedia data processing
CA2028248C (fr) Systeme de television a peage utilisant une carte a memoire associee a un decodeur
US10057641B2 (en) Method to upgrade content encryption
EP1078524B2 (fr) Mecanisme d'appariement entre un recepteur et un module de securite
US8656191B2 (en) Secure system-on-chip
FR2750554A1 (fr) Systeme a acces conditionnel et carte a puce permettant un tel acces
EP1961223A2 (fr) Procede de controle d'acces a un contenu embrouille
US20070234072A1 (en) Secure system-on-chip
EP2659360B1 (fr) Procede de chargement d'un code d'au moins un module logiciel
US20080098418A1 (en) Electronic module for digital television receiver
EP2055102A1 (fr) Procédé de transmission d'une donnée complémentaire a un terminal de réception
US20080317249A1 (en) Encoded Digital Video Content Protection Between Transport Demultiplexer and Decoder
EP1939753A1 (fr) Protection de zones mémoire
WO2018115650A1 (fr) Procédé d'exécution par un microprocesseur d'un code machine polymorphique d'une fonction prédéterminée
FR2529000A1 (fr) Procede et dispositif pour la protection de logiciels d'ordinateurs
WO2000019299A1 (fr) Appareil generant un environnement pour traitement de securisation
FR2746199A1 (fr) Architecture de securite a double fonction avec systeme d'exploitation interne protege
EP1524795A1 (fr) Chiffrement de données dans un appareil électronique à plusieurs processeurs symétriques
US9177111B1 (en) Systems and methods for protecting software
EP1419640B1 (fr) Reseau numerique local, procedes d'installation de nouveaux dispositifs et procedes de diffusion et de reception de donnees dans un tel reseau
EP1980968B1 (fr) Protection de l'exécution d'un programme
US20090202077A1 (en) Apparatus and method for secure data processing
EP4068680A1 (fr) Stockage sécurisé de clefs de chiffrement
FR2890482A1 (fr) Dispositif a semiconducteur utilisant un procede d'embrouillage / desembrouillage de memoire morte, et procede pour le faire fonctionner

Legal Events

Date Code Title Description
CD Change of name or company name
TP Transmission of property
TP Transmission of property
TP Transmission of property
ST Notification of lapse

Effective date: 20131129