FR2858894A1 - Systeme de securisation pour ordinateur - Google Patents
Systeme de securisation pour ordinateur Download PDFInfo
- Publication number
- FR2858894A1 FR2858894A1 FR0309969A FR0309969A FR2858894A1 FR 2858894 A1 FR2858894 A1 FR 2858894A1 FR 0309969 A FR0309969 A FR 0309969A FR 0309969 A FR0309969 A FR 0309969A FR 2858894 A1 FR2858894 A1 FR 2858894A1
- Authority
- FR
- France
- Prior art keywords
- computer system
- lifetime
- validation routine
- password
- user
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/88—Detecting or preventing theft or loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2137—Time limited access, e.g. to a computer or data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2143—Clearing memory, e.g. to prevent the data from being stolen
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2153—Using hardware token as a secondary aspect
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Storage Device Security (AREA)
Abstract
Système informatique, tel qu'un ordinateur, du type comportant des composants matériels ainsi qu'un programme d'initialisation pourvu de routines pour initialiser lesdits composants matériels puis lancer au moins un programme applicatif, caractérisé en ce que ledit programme d'initialisation comporte en outre une routine de validation de l'échéance d'une durée de vie dudit système informatique et une routine validation de ladite durée de vie, en ce qu'il comporte un composant spécifique incluant une horloge matérielle dont la valeur de compte est représentative du temps écoulé depuis la dernière allocation de durée de vie, ladite routine de validation transmet une demande audit composant spécifique afin de vérifier l'échéance de ladite durée de vie T et de retourner une réponse correspondante,et, si d'après cette réponse il y a échéance, ladite routine de validation de l'échéance d'une durée de vie lance ladite routine de validation pour allouer une nouvelle valeur de durée de vie,- sinon, elle lance la poursuite du déroulement du programme d'initialisation.
Description
La présente invention concerne un système informatique, tel qu'un
ordinateur, équipé d'un système de sécurisation le rendant inutilisable après une période de temps prédéfinie. Un tel système de sécurisation peut être utilisé à des fins anti-vol, dans la mesure où le voleur ne peut utiliser à terme l'objet de son délit.
Dans le domaine de la protection contre le vol d'un ordinateur, on connaît déjà des systèmes de sécurité se déclenchant suite à un événement intervenu à l'extérieur de l'ordinateur, comme par exemple lors de l'enlèvement de sa source d'énergie électrique ou lors de son déplacement d'un endroit seul autorisé. Après un tel évènement, l'utilisateur potentiel fournit un mot de passe pour avoir de nouveau accès aux applications et aux données. Ce système présente un niveau de sécurité faible car les utilisateurs peuvent se communiquer entre eux les mots de passe. De tels dispositifs sont décrits, par exemple, dans le brevet international WO-Al -96/18 175 et dans le brevet européen EP-Al -145 405.
Pour augmenter la sécurité d'une application ou d'un programme (par exemple d'un logiciel), il est également connu de prévoir des clefs d'activation ayant une durée de vie prédéfinie à l'avance (Voir par exemple le document de brevet français FR-Al-2 823 399). Mais ce système de sécurité s'exécute après que l'ordinateur a fini sa phase de démarrage et après que le système d'exploitation est opérationnel.
Un tel système peut empêcher l'utilisation d'une application mais n'empêche pas l'utilisation de l'ordinateur lui-même. Il est donc mal adapté à l'utilisation anti-vol mentionnée ci-dessus.
La présente invention a notamment pour but de proposer un système de sécurisation qui ne présente pas les inconvénients des systèmes mentionnés ci-dessus et qui empêche tout accès à l'ordinateur après une durée prédéterminée, appelée ci- après durée de vie, qui lui a été alloué.
A cet effet, la présente invention propose un système informatique, tel qu'un ordinateur, du type comportant des composants matériels ainsi qu'un programme d'initialisation pourvu de routines pour initialiser lesdits composants matériels puis lancer au moins un programme applicatif.
Il est caractérisé en ce que le ledit programme d'initialisation comporte en outre une routine de validation de l'échéance d'une durée de vie dudit système informatique et une routine validation de ladite durée de vie, en ce qu'il comporte un composant spécifique incluant une horloge matérielle dont la valeur de compte est représentative du temps écoulé depuis la dernière allocation de durée de vie, ladite routine de validation de l'échéance d'une durée de vie transmet une demande audit composant spécifique afin de vérifier l'échéance de ladite durée de vie T et de retourner une réponse correspondante, et, si d'après cette réponse il y a échéance, ladite routine de validation de l'échéance d'une durée de vie lance ladite routine de validation pour allouer une nouvelle valeur de durée de vie, - sinon, elle lance la poursuite du déroulement du programme d'initialisation.
Selon une autre caractéristique de l'invention, ledit composant spécifique, à la réception de la demande envoyée par ladite routine de validation de l'échéance d'une durée de vie, lit la valeur de compte de ladite horloge, compare ladite valeur lue avec la durée de vie T, puis envoie une réponse correspondant à cette autre situation.
Selon une autre caractéristique de l'invention dans le cas où ledit système informatique est du type comportant une interface homme-machine, tel qu'un clavier et un écran, ladite routine de validation est déroulée après la ou les routines d'initialisation de ladite interface hommemachine de manière à pouvoir solliciter l'utilisateur lors de la mise en oeuvre de la routine de validation de durée de vie.
Selon une autre caractéristique de l'invention, ladite routine de validation d'une durée de vie consiste à : - a) demander à l'utilisateur un mot de passe ou une clé, - b) saisir le mot de passe ou la clé entré par l'utilisateur, - c) demander au composant spécifique de vérifier la validité du mot de passe ou de la clé entré par l'utilisateur, - d) demander au composant spécifique d'allouer une nouvelle valeur de durée de vie si le composant, en réponse, a jugé le mot de passe ou la clé entré par l'utilisateur valide, - sinon, e) recommencer lesdites étapes a) à d).
Selon une autre caractéristique de l'invention, ladite routine de validation d'une 30 durée de vie établit des communications avec ledit composant spécifique via un bus spécialisé, tel qu'un bus dit SMBus.
Selon une autre caractéristique de l'invention, pour connaître la valeur de compte de l'horloge, ladite routine de validation de l'échéance d'une durée de vie établit des communications avec ladite horloge via un bus spécialisé, tel qu'un bus dit SMBus.
Selon une autre caractéristique de l'invention, au moins ladite routine de validation de l'échéance d'une durée de vie dudit programme d'initialisation est enregistrée dans une mémoire qui est intégrée audit composant spécifique.
La présente invention est un système de sécurité pour au moins un système informatique. Il comprend un serveur qui est prévu pour délivrer ladite clé ou ledit mot de passe à la réception d'un code utilisateur dudit système informatique.
Selon une autre caractéristique de l'invention, ledit code utilisateur est un code associé à une série d'information propre audit système informatique, préalablement enregistré dans ledit serveur.
Selon une autre caractéristique de l'invention, ledit serveur est un serveur vocal qui délivre ladite clé ou ledit mot de passe vocalement.
Selon une autre caractéristique de l'invention, ledit serveur délivre ladite clé ou ledit mot de passe audit système informatique par télécommunication.
La présente invention présente un procédé de sécurisation d'un système informatique du type comportant des composants matériels, un programme d'initialisation de routines pour initialiser lesdits composants matériels puis lancer au moins un programme applicatif, ledit programme étant en outre pourvu d'une routine de validation de l'échéance d'une durée de vie dudit système informatique et d'une routine validation de ladite durée de vie, ledit système informatique comportant un composant spécifique incluant une horloge matérielle dont la valeur de compte est représentative du temps écoulé depuis la dernière allocation de durée de vie, caractérisé en ce que ladite étape de validation comporte les étapes: - pour transmettre une demande audit composant spécifique afin de vérifier l'échéance de ladite durée de vie T et de retourner une réponse correspondante, et, si d'après cette réponse il y a échéance, ladite routine de validation de l'échéance d'une durée de vie lance ladite routine de validation pour allouer une nouvelle valeur de durée de vie, sinon, elle lance la poursuite du déroulement du programme d'initialisation.
Selon une autre caractéristique de l'invention, dans le cas où ledit système informatique comporterait une interface homme-machine, la ou les routines d'initialisation de ladite interface homme-machine sont mis en oeuvre avant ladite routine de validation de durée de vie.
Selon une autre caractéristique de l'invention, ladite étape d'allocation d'une durée de vie consiste à : - a) demander à l'utilisateur un mot de passe ou une clé, - b) saisir le mot de passe ou la clé entré par l'utilisateur, - c) demander au composant spécifique de vérifier la validité du mot de passe ou de la clé entré par l'utilisateur, - d) demander au composant spécifique d'allouer une nouvelle valeur de durée de vie si le mot de passe ou la clé entré par l'utilisateur a été jugé valide, - sinon, e) recommencer lesdites étapes a) à d).
Selon une autre caractéristique de l'invention, ladite clé ou ledit mot de passe est délivré par un serveur à la réception d'un code utilisateur dudit système informatique.
Selon une autre caractéristique de l'invention, ledit programme d'initialisation étant pourvu de routines pour initialiser lesdits composants matériels puis lancer au moins un programme applicatif, caractérisé en ce qu'il comporte en outre une routine de validation de l'échéance de ladite durée de vie et une routine de validation d'une durée de vie dudit système informatique et, et en ce qu'il est prévu pour mettre en oeuvre le procédé de sécurisation lorsque ledit programme est chargé et exécuté par ledit système informatique.
La présente invention présente une mémoire lisible par un système informatique comportant des instructions de code d'un programme d'initialisation dudit système informatique pour mettre en oeuvre le procédé de validation.
La présente invention présente un composant spécifique, qui à la réception de la demande envoyée par ladite routine de validation de l'échéance d'une durée de vie, lit la valeur de compte de ladite horloge, compare ladite valeur lue avec la durée de vie T, puis, si le temps écoulé correspondant à ladite valeur de compte lue est supérieur ou égal à ladite durée de vie présentement allouée, initialise ladite horloge et envoie une réponse correspondant à cette situation, sinon, envoie une réponse correspondant à cette autre situation.
Selon une autre caractéristique de l'invention, ledit composant spécifique vérifie la validité du mot de passe ou de la clé entré par l'utilisateur, et si la validité du mot de passe ou de la clé entré par l'utilisateur est reconnue, il alloue une nouvelle valeur de durée de vie et envoie une réponse correspondant à cette situation, sinon, envoie une réponse correspondant à cette autre situation.
Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels: la Fig. 1 est une vue schématique d'un ordinateur portable selon la présente invention; la Fig. 2 est une vue schématique des composantes de l'ordinateur selon la présente invention; la Fig. 3 est un organigramme représentant les étapes effectuées au démarrage de l'ordinateur selon la présente invention; et la Fig. 4 est une vue générale de la procédure d'obtention d'une clé à partir d'un serveur selon la présente invention.
La Fig. 1 représente un système informatique 1, tel qu'un ordinateur, par exemple du type portable, essentiellement pourvu d'une unité centrale 2, d'une interface homme-machine, tel qu'un écran 3 et un clavier 4.
Dans le mode réalisation de l'invention représenté, l'unité centrale 2 comporte, par exemple sur la carte-mère de l'ordinateur 1, un composant spécifique 20 qui lui-même comprend une horloge matérielle 21 délivrant une valeur de compte 22. A l'ordinateur 1, est alloué une durée d'utilisation, également appelée durée de vie T. La valeur de compte 22 est représentative du temps écoulé depuis la dernière allocation de durée de vie T. Elle est par exemple incrémentée avec le temps avec une valeur initiale nulle à la dernière allocation de durée de vie T. Elle peut également être décrémentée avec une valeur initiale égale à la dernière durée de vie T. Le composant spécifique 20 selon l'invention incorpore également une unité cryptographique 23 à clé d'activation associée à une série d'information propre à l'ordinateur 1 ou à un mot de passe.
Le principe de l'invention est le suivant. A la mise en marche de l'ordinateur 1, l'unité centrale 2 vérifie que la valeur de compte 22 représentative d'un temps écoulé depuis la dernière allocation de durée de vie est inférieure à la durée de vie T. Si tel est le cas, l'ordinateur 1 démarre normalement. Sinon, il se met dans un mode inactif jusqu'à ce que l'utilisateur mette en oeuvre une procédure d'allocation d'une nouvelle durée de vie. Pour ce faire, il utilise avantageusement l'unité cryptographique 23 comme cela sera expliqué ci-dessous.
En référence à la Fig. 2, l'ordinateur 1 présente le composant spécifique 20 ainsi qu'un ensemble de routines déroulé lors de l'exécution d'un programme d'initialisation 40 de l'ordinateur 1. On a également représenté le clavier 4, l'écran 3 et une unité de télétransmission 5 respectivement reliés à un bus principal 50 de l'ordinateur 1.
Le programme d'initialisation 40 comporte une routine de validation 41 de l'échéance de la durée de vie T et une routine de validation 42 d'une durée de vie T. Quant au composant spécifique 20, il est composé de l'horloge 21 avec sa valeur de compte 22.
Il est alimenté de manière autonome, par exemple au moyen d'une pile (non représentée), de manière à ce que l'horloge 21 fonctionne correctement même si l'ordinateur 1 est hors tension. De plus, il est protégé physiquement de manière à être inaccessible et inviolable par tout utilisateur.
Le composant spécifique 20 représenté à la Fig. 2 comporte encore une unité de traitement 24 prévue pour communiquer, d'une part, avec l'horloge 21, via une liaison 25, afin de notamment lire la valeur de compte 22 et, d'autre part, avec l'unité cryptographique 23, via une liaison 26, notamment pour valider la clé d'activation ou le mot de passe. Par ailleurs, l'unité de traitement 24 est prévue pour recevoir des demandes provenant des routines de validation 41 et 42 et pour ensuite y répondre, via les communications 61 et 62. Ces demandes permettent d'obtenir les informations nécessaires à leur déroulement.
Selon l'invention, ces routines de validation 41 et 42 sont intégrées au programme d'initialisation de l'ordinateur 1, tel que le programme d'initialisation connu sous le nom BIOS (Basic Input and Output System: Système de base d'entrée sortie).
Ces routines de validation 41 et 42 sont prévues pour établir des communications avec l'unité de traitement 24 via un bus 60 à protocole de mise en oeuvre simple, tel que le bus dit SMBus qui est un bus à liaison physique à 2 fils.
Plus précisément, la routine de validation 41 est déroulée au moment du démarrage de l'ordinateur 1 lors du déroulement du programme d'initialisation. Elle envoie, via le bus 60, à l'unité de traitement 24 du composant spécifique 20, une demande 61 de vérification de la valeur de compte 22 de l'horloge 21. L'unité de traitement 24 lit cette valeur 22, via la liaison 25 et envoie, via le bus 60, la réponse 62 à la routine de validation 41. Suivant la valeur de compte 22 relevée, soit le programme d'initialisation 40 poursuit son exécution si bien que l'ordinateur 1 démarre normalement, soit la routine de validation 41 fait appel à la routine de validation 42 de durée de vie.
Celle-ci établit, via le bus 50, des communications 51 et 52 avec le clavier 4 et l'écran 3 pour permettre la saisie de la clé d'activation ou du mot de passe par l'utilisateur. La routine de validation 42 envoie ensuite, via le bus 60, une demande 63 de vérification de la clé d'activation ou du mot de passe à l'unité de traitement 24 du composant spécifique 20 qui demande à l'unité cryptographique 23 de le vérifier et renvoie, via le bus 60, la réponse 64 correspondante. Dans le cas, où la vérification est positive, c'est-à-dire si la clé d'activation ou le mot de passe a été jugé correct, l'horloge 21 est réinitialisée avec une nouvelle valeur de compte 22.
Dans un autre mode de réalisation, la routine de validation 42 établit des communications avec le clavier 4, l'écran 3 et une unité de télétransmission 5 permettant la transmission automatique de la clé d'activation ou du mot de passe, comme expliqué ci-dessous.
Selon un mode de réalisation, si le composant spécifique 20 n'a pas reçu de la routine 41, la demande 61 à un temps prédéterminé après la mise sous tension de l'ordinateur 1, il empêche le fonctionnement physique normal de l'ordinateur 1, par exemple en coupant, par des moyens 28 appropriés, l'alimentation de courant de l'ordinateur 1.
Il en est de même si, après une réponse 62 montrant un dépassement de durée de vie, le composant spécifique 20 n'a pas reçu de la routine 42 la demande 63 après la mise sous tension de l'ordinateur 1.
Il peut en être est de même si, bien que la routine 42 ait fait la demande 63, une réponse 64 n'est pas intervenu un temps prédéterminé après.
La Fig. 3 représente les étapes et leurs relations qui sont effectuées, respectivement par le programme d'initialisation 40 et le composant spécifique 20, au démarrage d'un ordinateur selon la présente invention.
Lorsque l'ordinateur 1 est mis en marche ou réamorcé (généralement appelé action Reset) à l'étape E40, le programme d'initialisation 40, en l'occurrence le BIOS, est lancé (étape E41). Le programme d'initialisation 40 fait classiquement l'inventaire des matériels présents dans l'ordinateur 1 et effectue des tests afin de vérifier leurs bons fonctionnements. Puis, il initialise les routines d'écran (étape E42) et de clavier (étape E43).
Ensuite, la routine de validation 41 transmet la demande 61 à l'unité de traitement 24 du composant spécifique 20 (étape 44). Celle-ci lit la valeur de compte 22 de l'horloge 21 et en déduit le temps écoulé depuis la dernière allocation de durée de vie (étape 45). Elle compare ce temps écoulé à la durée de vie T qui est allouée présentement à l'ordinateur 1 (étape E46). Une fois la valeur de compte 22 ainsi lue et comparée, l'unité de traitement 24 transmet à la routine de validation 41 la réponse 62 correspondant au résultat de cette comparaison.
Lorsque le temps écoulé correspondant à la valeur de compte 22 n'a pas dépassé la durée de vie prédéterminée T allouée à l'ordinateur 1, l'unité de traitement 24 envoie une réponse 62 correspondante à la routine de validation 41 qui passe alors la main aux autres routines d'initialisation de matériels restants (étape E47) du programme d'initialisation 40 de l'ordinateur 1.
Lorsque le temps écoulé correspondant à la valeur de compte 22 est supérieur ou égal à la durée de vie prédéterminée T, envoie ensuite la réponse 62 correspondant à la routine de validation 41 qui fait alors appel à la routine de validation 42 d'une durée de vie.
On notera que la réponse 62 est une réponse booléenne et qu'elle est traitée par la routine de validation 41 dans son étape E49. Elle peut être cryptée avant son envoi à la routine de validation 41, par l'unité de traitement 24, de manière à pouvoir être reconnue par la routine 41.
La routine de validation 42 commande l'affichage à l'écran 3 d'un message dans lequel il est demandé à l'utilisateur d'entrer au clavier 4 la clé d'activation de vie de l'ordinateur 1 ou le mot de passe (étape E50).
On notera que le clavier 4 et l'écran 3 sont opérationnels à ce moment-là du fait de leur initialisation aux étapes précédentes E42 et E43 précède la mise en oeuvre de la routine de validation 42, permettant à l'utilisateur de dialoguer avec l'ordinateur 1, notamment lors de cette saisie de la clé d'activation ou du mot de passe nécessaire à l'allocation d'une durée de vie.
La routine de validation 42 transmet la demande 63 à l'unité de traitement 24 du composant spécifique 20 afin vérifier la validité de la clé (étape E51). La validité de la clé est vérifiée par l'unité cryptographique 23 (étape E52). Le résultat de cette vérification est une réponse booléenne.
Si la clé n'a pas été reconnue par l'unité 23, l'unité de traitement 24 envoie à la routine de validation 42 la réponse 64 correspondante. Cette réponse est traitée à l'étape E54 qui met de nouveau en oeuvre l'étape E50.
Dans le cas contraire, le composant spécifique 20 alloue une nouvelle durée de vie (étape E53), transmet une réponse 64 correspondante à la routine de validation 42. Après l'étape E54, le programme d'initialisation 40 se poursuit en déroulant les autres routines d'initialisation de matériels restants (étape E47).
Ainsi, l'ordinateur 1 dispose de la nouvelle durée de vie allouée.
Comme précédemment, la réponse 64 peut être cryptée avant son envoi.
Cette nouvelle valeur de durée de vie est par exemple une durée prédéterminée une fois pour toutes. Elle peut également être choisie par l'utilisateur. Elle peut encore être fournie par un serveur comme cela sera mentionné ci-dessous.
On notera que tant la clé d'activation ou le mot de passe correct n'est pas entré par l'utilisateur, l'ordinateur 1 est inutilisable. En effet, toutes les routines d'initialisation du programme d'initialisation 40 n'ont pas été exécutées et, par conséquent, aucun programme applicatif n'a pu être lancé.
Si cet utilisateur n'est pas autorisé à utiliser la machine (il s'agit par exemple d'un voleur), il ne peut donc pas obtenir la clé d'activation ou le mot de passe et, finalement, il ne peut pas utiliser normalement l'ordinateur 1.
L'utilisateur peut également prolonger la durée de vie T de l'ordinateur 1 en lançant directement la routine de validation 42, par exemple à partir d'un programme applicatif spécifique. On notera qu'alors, le programme d'initialisation 40 s'est complètement déroulé et que l'ordinateur 1 est normalement démarré. Dans ce cas, l'utilisateur n'est donc pas obligé d'attendre l'échéance de la valeur de compte 22 de l'horloge 21 pour allouer une nouvelle durée de vie à l'ordinateur 1.
Selon un autre mode de réalisation de la présente invention, le programme d'initialisation 40 de l'ordinateur 1 initialise les routines d'écrans (étape E42), de clavier (étape E43). Ensuite il initialise les routines de l'unité de télétransmission (étape E60). L'unité de télétransmission 5 ainsi que l'écran 3 et le clavier 4 sont donc opérationnels au moment de la mise en oeuvre du composant spécifique 20. Dans cette variante, la routine de validation 42 de durée de vie se connecte automatiquement à un serveur via l'unité de télétransmission 5 pour recevoir la clé d'activation ou le mot de passe.
On va maintenant décrire, en relation avec la Fig. 4, l'obtention d'une clé d'activation auprès d'un serveur externe. La Fig. 4 représente un serveur 6 composé d'une unité de communication 61 et d'un générateur de clé 62 lequel comprend une base de donnée 63 dans laquelle sont répertoriées, pour chaque code utilisateur (par exemple le numéro de série de l'ordinateur) de chaque utilisateur enregistré (par exemple lors de l'achat de son ordinateur 1), les informations propres à l'ordinateur correspondant. Il comprend encore un système cryptographique 64 prévu pour mettre en oeuvre un algorithme de cryptage.
Dans sa requête d'une clé d'activation, l'utilisateur transmet le code utilisateur au serveur externe 6. Cette transmission peut être faite vocalement via par exemple une communication téléphonique. Le serveur 6 est alors un serveur vocal. Selon une variante, elle est effectuée par une télécommunication du type Internet ou par tout autre réseau disponible, tel que par exemple l'unité de télétransmission 5.
Le serveur 6 vérifie dans la base de donnée 63 l'existence du code utilisateur, par exemple le numéro de série transmis par l'utilisateur ou par l'unité de télétransmission 5. Si le code utilisateur existe, il vérifie ensuite qu'il n'a pas été marqué comme appartenant à une machine signalée comme étant volée par son utilisateur. Si tel n'est pas le cas et seulement dans ce cas, une clé est calculée et délivrée par le générateur de clé 62.
Dans le cas où l'ordinateur 1 a été volé, le propriétaire de l'ordinateur 1 peut appeler immédiatement le serveur 6 pour bloquer tout échange de clé d'activation de vie. Le serveur 6, après identification, peut alors localiser l'ordinateur 1 grâce à l'adresse IP utilisée par un utilisateur ultérieur, généralement le voleur, pour communiquer avec le serveur 6.
Le générateur de clé 62 met en oeuvre l'algorithme de cryptage du système 64 et utilise une série d'information propre à l'ordinateur 1.
Cet algorithme est par exemple du type dit à clef tournante. Un tel algorithme utilise par exemple une clé spécifique, par exemple une clé de fabricant, un code utilisateur tel que le numéro de série de l'ordinateur 1 concerné et la valeur d'un compteur qui est incrémenté à chaque requête de l'utilisateur de l'ordinateur 1 concerné. Ainsi, le générateur 62 ne génère pas deux fois la même clé. La clé ainsi calculée est donc une clé unique valable une seule fois et donc non réutilisable telle quelle.
Cette clé est, après calcul, transmise à l'utilisateur, soit vocalement dans le cas d'un serveur vocal, soit par télécommunication.
On notera que l'unité cryptographique 23 du composant 20 doit procéder à une opération de décryptage de la clé transmise conforme à l'opération de cryptage du serveur 6. Elle doit donc comprendre une série d'information propre à l'ordinateur, telle que le numéro de série de l'ordinateur 1, une clé propre au fabricant et une valeur de compte propre à l'algorithme de cryptage. Ces données sont chiffrées et inaccessibles de l'extérieur.
Dans le mode de réalisation décrit précédemment, le composant spécifique 20 est réalisé sous la forme d'un unique composant, comme par exemple un microcontrôleur. Néanmoins, on comprendra que l'horloge 21, l'unité cryptographique 23 et l'unité de communication 24 pourraient faire l'objet de plusieurs composants distincts.
Dans un autre mode de réalisation de l'invention, la routine de validation 41 est enregistrée dans une mémoire qui est intégrée au composant spécifique 20 et est déroulée depuis cette mémoire. Il en est de même de la routine de validation 42.
Dans ce cas, l'unité centrale 2 de l'ordinateur 1 communiquerait avec le composant 20 via un bus spécifique, du type parallèle généralement appelé bus LPC. Dans le cas où ces deux routines 41 et 42 étaient toutes les deux enregistrées et déroulées dans une mémoire intégrée au composant 20, le bus 60 ne serait plus nécessaire.
Ce système de sécurité trouve ses applications pour les ordinateurs portables et pour les ordinateurs fixes.
Claims (19)
1) Système informatique (1), tel qu'un ordinateur, du type comportant des composants matériels ainsi qu'un programme d'initialisation (40) pourvu de routines pour initialiser lesdits composants matériels puis lancer au moins un programme applicatif, caractérisé en ce que ledit programme d'initialisation (40) comporte en outre une routine de validation (41) de l'échéance d'une durée de vie dudit système informatique (1) et une routine validation (42) de ladite durée de vie, en ce qu'il comporte un composant spécifique (20) incluant une horloge matérielle (21) dont la valeur de compte (22) est représentative du temps écoulé depuis la dernière allocation de durée de vie, ladite routine de validation (41) transmet une demande (61) audit composant spécifique (20) afin de vérifier l'échéance de ladite durée de vie T et de retourner une réponse (62) correspondante, et, si d'après cette réponse (62) il y a échéance, ladite routine de validation (41) 15 lance ladite routine de validation (42) pour allouer une nouvelle valeur de durée de vie, sinon, elle lance la poursuite du déroulement du programme d'initialisation (40).
2) Système informatique selon la revendication 1, caractérisé en ce que ledit composant spécifique (20), à la réception de la demande (61) envoyée par ladite routine de validation (41), lit la valeur de compte (22) de ladite horloge (21), compare ladite valeur lue avec la durée de vie T, puis envoie une réponse (62) correspondant à cette autre situation.
3) Système informatique selon la revendication 1 ou 2 du type comportant une interface homme-machine, tel qu'un clavier (4) et un écran (3), caractérisé en ce que ladite routine de validation (41) est déroulée après la ou les routines d'initialisation de ladite interface homme- machine de manière à pouvoir solliciter l'utilisateur lors de la mise en oeuvre de la routine de validation (42) de durée de vie.
4) Système informatique selon une des revendications précédentes, caractérisé en ce que ladite routine de validation (42) d'une durée de vie consiste à : 30 - a) demander à l'utilisateur un mot de passe ou une clé, - b) saisir le mot de passe ou la clé entré par l'utilisateur, - c) demander au composant spécifique (20) de vérifier la validité du mot de passe ou de la clé entré par l'utilisateur, - d) demander au composant spécifique (20) d'allouer une nouvelle valeur de durée de vie si le composant (20), en réponse, a jugé le mot de passe ou la clé entré par l'utilisateur valide, - sinon, e) recommencer lesdites étapes a) à d).
5) Système informatique selon la revendication 4, caractérisé en ce que ladite routine de validation (42) d'une durée de vie établit des communications (63 et 64) avec ledit composant spécifique (20) via un bus spécialisé (60), tel qu'un bus dit SMBus.
6) Système informatique selon une des revendications précédentes, caractérisé en ce que, pour connaître la valeur de compte (22) de l'horloge (21), ladite routine de validation (41) établit des communications (61 et 62) avec ladite horloge (21) via un bus spécialisé (60), tel qu'un bus dit SMBus.
7) Système informatique selon une des revendications précédentes, caractérisé en ce qu'au moins ladite routine de validation (41) dudit programme d'initialisation (40) est enregistrée dans une mémoire qui est intégrée audit composant spécifique (20).
8) Système de sécurité pour au moins un système informatique selon une des revendications précédentes, caractérisé en ce qu'il comprend un serveur (6) qui est prévu pour délivrer ladite clé ou ledit mot de passe à la réception d'un code utilisateur dudit système informatique (1).
9) Système de sécurité selon la revendication 8, caractérisé en ce que ledit code utilisateur est un code associé à une série d'information propre audit système informatique (1), préalablement enregistré dans ledit serveur (6).
10) Système de sécurité selon la revendication 8 ou 9, caractérisé en ce que ledit 25 serveur (6) est un serveur vocal qui délivre ladite clé ou ledit mot de passe vocalement.
11) Système de sécurité selon la revendication 8 ou 9, caractérisé en ce que ledit serveur (6) délivre ladite clé ou ledit mot de passe audit système informatique (1) par télécommunication.
12) Procédé de sécurisation d'un système informatique du type comportant des composants matériels, un programme d'initialisation (40) de routines pour initialiser lesdits composants matériels puis lancer au moins un programme applicatif, ledit programme (40) étant en outre pourvu d'une routine de validation (41) de l'échéance d'une durée de vie dudit système informatique (1) et d'une routine validation (42) de ladite durée de vie, ledit système informatique comportant un composant spécifique (20) incluant une horloge matérielle (21) dont la valeur de compte (22) est représentative du temps écoulé depuis la dernière allocation de durée de vie, caractérisé en ce que ladite étape de validation (41) comporte les étapes: - pour transmettre une demande (61) audit composant spécifique (20) afin de vérifier l'échéance de ladite durée de vie T et de retourner une réponse (62) correspondante, et, si d'après cette réponse (62) il y a échéance, ladite routine de validation (41) lance ladite routine de validation (42) pour allouer une nouvelle valeur de durée de vie, - sinon, elle lance la poursuite du déroulement du programme d'initialisation (40).
13) Procédé de sécurisation d'un système informatique selon la revendication 12, ledit système informatique comportant une interface homme-machine, caractérisé en ce que la ou les routines d'initialisation de ladite interface homme-machine sont mises en oeuvre avant ladite routine de validation (42) de durée de vie.
14) Procédé de sécurisation d'un système informatique selon la revendication 12 20 ou 13, caractérisé en ce que ladite étape d'allocation d'une durée de vie consiste à : - a) demander à l'utilisateur un mot de passe ou une clé, - b) saisir le mot de passe ou la clé entré par l'utilisateur, - c) demander au composant spécifique (20) de vérifier la validité du mot de passe ou de la clé entré par l'utilisateur, - d) demander au composant spécifique (20) d'allouer une nouvelle valeur de durée de vie si le mot de passe ou la clé entré par l'utilisateur a été jugé valide, - sinon, e) recommencer lesdites étapes a) à d).
15) Procédé de sécurisation d'un système informatique selon la revendication 12, 13, ou 14, caractérisé en ce que ladite clé ou ledit mot de passe est délivré par un 30 serveur 6 à la réception d'un code utilisateur dudit système informatique (1).
16) Programme d'initialisation d'un système informatique, ledit programme (40) étant pourvu de routines pour initialiser lesdits composants matériels puis lancer au moins un programme applicatif, caractérisé en ce qu'il comporte en outre une routine de validation (41) de l'échéance de ladite durée de vie et une routine de validation (42) d'une durée de vie dudit système informatique (1) et, et en ce qu'il est prévu pour mettre en oeuvre le procédé de sécurisation selon une des revendications 12 à 15 lorsque ledit programme est chargé et exécuté par ledit système informatique (1).
17) Mémoire lisible par un système informatique (1) comportant des instructions de code d'un programme d'initialisation (40) dudit système informatique pour mettre en oeuvre le procédé de validation selon une des revendications 12 à 15.
18) Composant destiné à un système informatique du type comportant des composants matériels ainsi qu'un programme d'initialisation (40) pourvu de routines pour initialiser lesdits composants matériels puis pour lancer au moins un programme applicatif, ledit programme d'initialisation (40) comporte en outre une routine de validation (41) de l'échéance d'une durée de vie dudit système informatique (1), caractérisé en ce que ledit composant spécifique (20), à la réception de la demande (61) envoyée par ladite routine de validation (41), lit la valeur de compte (22) de ladite horloge (21), compare ladite valeur lue avec la durée de vie T, puis, si le temps écoulé correspondant à ladite valeur de compte (22) lue est supérieur ou égal à ladite durée de vie présentement allouée, initialise ladite horloge (21) et envoie une réponse (62) correspondant à cette situation, sinon, envoie une réponse (62) correspondant à cette autre situation.
19) Composant destiné à un système informatique qui comporte en outre une routine de validation (42) de ladite durée de vie, ladite routine de validation (42) étant prévu pour demander à l'utilisateur un mot de passe ou une clé puis pour saisir le mot de passe ou la clé entré par l'utilisateur, pour transmettre audit composant spécifique (20) une demande de vérification (63), caractérisé en ce que ledit composant spécifique (20) vérifie la validité du mot de passe ou de la clé entré par l'utilisateur, et si la validité du mot de passe ou de la clé entré par l'utilisateur est reconnue, il alloue une nouvelle valeur de durée de vie et envoie une réponse (64) correspondant à cette situation, sinon, envoie une réponse correspondant à cette autre situation.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0309969A FR2858894B1 (fr) | 2003-08-14 | 2003-08-14 | Systeme de securisation pour ordinateur |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0309969A FR2858894B1 (fr) | 2003-08-14 | 2003-08-14 | Systeme de securisation pour ordinateur |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2858894A1 true FR2858894A1 (fr) | 2005-02-18 |
FR2858894B1 FR2858894B1 (fr) | 2006-04-21 |
Family
ID=34112791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0309969A Expired - Fee Related FR2858894B1 (fr) | 2003-08-14 | 2003-08-14 | Systeme de securisation pour ordinateur |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2858894B1 (fr) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030093698A1 (en) * | 2001-11-14 | 2003-05-15 | International Business Machines Corporation | System and apparatus for limiting access to secure data through a portable computer to a time set with the portable computer connected to a base computer |
-
2003
- 2003-08-14 FR FR0309969A patent/FR2858894B1/fr not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030093698A1 (en) * | 2001-11-14 | 2003-05-15 | International Business Machines Corporation | System and apparatus for limiting access to secure data through a portable computer to a time set with the portable computer connected to a base computer |
Non-Patent Citations (1)
Title |
---|
MENEZES, OORSCHOT, VANSTONE: "Handbook of Applied Cryptography, PASSAGE", HANDBOOK OF APPLIED CRYPTOGRAPHY, CRC PRESS SERIES ON DISCRETE MATHEMATICS AND ITS APPLICATIONS, 1997, BOCA RATON, FL, US, pages 388 - 389, XP002289766, ISBN: 0-8493-8523-7 * |
Also Published As
Publication number | Publication date |
---|---|
FR2858894B1 (fr) | 2006-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2463833B1 (fr) | Procédé et dispositif de contrôle d'exécution pour des fonctions internes et des applications protégées embarquées dans des cartes à microcircuits pour terminaux mobiles | |
FR3034550A1 (fr) | Procede de chargement d'une cle au sein d'un terminal utilisateur et terminal utilisateur associe | |
FR2993682A1 (fr) | Mise a jour d'un systeme d'exploitation pour element securise | |
WO2011051595A1 (fr) | Procédé et agent client pour contrôler l'utilisation d'un contenu protégé | |
EP1536606A1 (fr) | Méthode d'authentification d'applications | |
EP2741466A1 (fr) | Procédé et système de gestion d'un élément sécurisé intégré eSE | |
FR2989799A1 (fr) | Procede de transfert d'un dispositif a un autre de droits d'acces a un service | |
WO2002051106A1 (fr) | Procede de lutte contre le vol de dispositifs 'nomades', dispositif et installation correspondants | |
WO2005084107A2 (fr) | Dispositif et procede faisant appel a un equipement a carte sim | |
EP1851901B1 (fr) | Procede de pre-authentification rapide par reconnaissance de la distance | |
EP3857413A1 (fr) | Procede de traitement d'une transaction, dispositif, systeme et programme correspondant | |
EP1494460A1 (fr) | Procédé et dispositif d'authentification de données numériques par module d'extension d'authentification | |
FR2966620A1 (fr) | Procede et systeme de controle de l'execution d'une fonction protegee par authentification d'un utilisateur, notamment pour l'acces a une ressource | |
CN113835642A (zh) | 一种基于ipfs的分布式存储网络构建方法及分布式存储网络 | |
FR2858894A1 (fr) | Systeme de securisation pour ordinateur | |
WO2015000967A1 (fr) | Dispositif, système et procédé de sécurisation de transfert de données entre un dispositif de stockage de données portable source et un système informatique destinataire | |
EP3667530B1 (fr) | Accès sécurise à des données chiffrées d'un terminal utilisateur | |
EP4260210A1 (fr) | Procédé de gestion de l'authentification d'un utilisateur d'un dispositif sur un équipement par mot de passe | |
EP2529330B1 (fr) | Procédé de fourniture d'un code dynamique par l'intermédiaire d'un téléphone | |
EP3317800B1 (fr) | Procédé de gestion de profils dans un élément sécurisé | |
WO2018029564A1 (fr) | Systeme et procede d'authentification sans mot de passe d'un utilisateur d'un systeme applicatif par un serveur central | |
WO2011070241A1 (fr) | Procede de sauvegarde de donnees contenues dans un terminal communiquant portable | |
EP1494461B1 (fr) | Procédé et dispositif d'authentification de données numériques à partir d'un module d'extension d'authentification | |
FR3114668A1 (fr) | Système sur puce pour applications de cryptographie incluant un compteur monotone et procédé de mise en œuvre associé | |
WO2011000722A1 (fr) | Procédé de validation distante d'un code exécutable |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |
Effective date: 20100430 |