FR2934395A1 - Systeme et procede pour la securisation d'une interface utilisateur - Google Patents

Systeme et procede pour la securisation d'une interface utilisateur Download PDF

Info

Publication number
FR2934395A1
FR2934395A1 FR0804192A FR0804192A FR2934395A1 FR 2934395 A1 FR2934395 A1 FR 2934395A1 FR 0804192 A FR0804192 A FR 0804192A FR 0804192 A FR0804192 A FR 0804192A FR 2934395 A1 FR2934395 A1 FR 2934395A1
Authority
FR
France
Prior art keywords
user interface
information
software component
main part
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
Application number
FR0804192A
Other languages
English (en)
Other versions
FR2934395B1 (fr
Inventor
Nicolas Ponsini
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.)
TRUSTONIC, FR
Original Assignee
Trusted Logic SAS
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
Application filed by Trusted Logic SAS filed Critical Trusted Logic SAS
Priority to FR0804192A priority Critical patent/FR2934395B1/fr
Priority to PCT/FR2009/000918 priority patent/WO2010010258A2/fr
Priority to US13/055,454 priority patent/US8874931B2/en
Priority to EP09784296A priority patent/EP2316088A2/fr
Publication of FR2934395A1 publication Critical patent/FR2934395A1/fr
Application granted granted Critical
Publication of FR2934395B1 publication Critical patent/FR2934395B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2105Dual mode as a secondary aspect

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

L'invention concerne un système pour la sécurisation d'une interface utilisateur comportant une interface utilisateur comprenant un ou plusieurs périphériques matériels de l'interface utilisateur pour interagir avec ladite interface, lesdits périphériques matériels étant pilotés par des logiciels pilotes, et une ou plusieurs applications utilisant l'interface utilisateur, ainsi qu'un procédé de sécurisation d'une telle interface. Le système selon l'invention se caractérise en ce qu'il comporte en outre un hyperviseur et une ou plusieurs machines virtuelle, les pilotes des périphériques matériels de l'interface utilisateur étant scindés en deux parties, une partie principale desdits pilotes étant placée sous le contrôle de l'hyperviseur, une partie frontale desdits pilotes étant placée sous le contrôle des machines virtuelles, la partie frontale du composant logiciel de sécurisation assurant la gestion de la partie frontale des pilotes, la partie principale du composant logiciel de sécurisation assurant la gestion de la partie principale des pilotes. L'invention s'applique, en particulier, aux systèmes embarqués.

Description

SYSTEME ET PROCEDE POUR LA SECURISATION D'UNE INTERFACE UTILISATEUR
L'invention concerne un système pour la sécurisation 5 d'une interface utilisateur, ainsi qu'un procédé de sécurisation d'une telle interface. L'interface utilisateur est l'interface par laquelle un utilisateur d'une machine informatique, par exemple un ordinateur ou un système embarqué, dialogue avec cette 10 machine. L'interface utilisateur comprend un ou plusieurs périphériques d'interface. Les périphériques d'interface sont divers. Certains périphériques sont des périphériques dits d'entrée, qui permettent d'entrer des informations dans la machine. 15 D'autres périphériques sont des périphériques dits de sortie, qui permettent d'obtenir des informations de la machine. D'autres périphériques d'interface encore sont des périphériques dits d'entrée/sortie, qui permettent d'entrer des informations dans la machine ou de sortir 20 des informations de celle-ci. Parmi les périphériques d'entrée, on citera notamment les claviers, les souris ou autres dispositifs de pointage, les pinpad (clavier d'identification personnelle en langue française), les lecteurs de cartes 25 à puce, les tablettes graphiques, les microphones. Parmi les périphériques de sortie, on citera notamment les écrans ou les enceintes acoustiques. Enfin, parmi les périphériques d'entrée/sortie, on citera notamment les écrans tactiles. 30 Dans la plupart des cas, les informations sont présentées affichées en mode pixels sur un écran, généralement dans un environnement fenêtré, et l'utilisateur utilise un clavier et une souris, ou bien l'écran lui-même - si celui-ci est tactile - pour 35 interagir avec la machine. Il appartient alors aux applications contrôlant l'interface de traiter et d'interpréter les informations venant de l'utilisateur. Par exemple, lorsque l'utilisateur souhaite consulter son compte bancaire sur l'Internet, il dialogue avec une application bancaire à l'aide d'un écran et d'un clavier et/ou une souris. Dans un premier temps, l'application bancaire identifie l'utilisateur en demandant à celui-ci de saisir son numéro de client. L'utilisateur saisit alors sont numéro de client à l'aide du clavier de l'ordinateur. Dans un deuxième temps, l'application bancaire authentifie l'utilisateur client en demandant à celui-ci de saisir son code d'accès secret à l'aide du clavier de son ordinateur et/ou de la souris. Si l'identification et l'authentification sont validées par l'application bancaire, alors celle-ci affiche l'état du compte de l'utilisateur client à l'écran. De telles interactions homme/machine sont sujettes à de nombreuses attaques malveillantes. Par exemple, certaines de ces attaques consistent à récupérer l'identifiant et le code secret d'accès de l'utilisateur client afin que le pirate puisse consulter à loisir les comptes de l'utilisateur client en vue notamment de procéder à des virements illicites. En pratique, deux techniques sont souvent utilisées 25 à cet effet. La première technique consiste à intercepter et enregistrer tous les évènements liés aux périphériques d'entrée de l'interface utilisateur et, notamment, à collecter toutes les touches qui ont été pressées par 30 l'utilisateur sur un clavier et/ou tous les clics de souris voire les déplacements de celle-ci. Fatalement, l'identifiant et le code d'accès de l'utilisateur client sont récupérés par l'application malveillante. Une seconde technique consiste à prendre le contrôle 35 des périphériques de sortie de l'interface et, notamment, à prendre le contrôle de l'affichage de l'écran et d'émuler ou simuler l'application bancaire. L'utilisateur client, qui croit alors avoir affaire à la véritable application bancaire, fournit ses identifiants et codes d'accès à l'application malveillante. Ces identifiants et codes sont récupérés pour une utilisation frauduleuse. L'hameçonnage est un exemple de telles pratiques frauduleuses. Pour contrer les attaques malveillantes précitées et, plus généralement, les problèmes de confiance de la relation avec l'interface utilisateur, il est connu, selon une première approche, de sécuriser les logiciels pilotes des périphériques de ladite interface. Il s'agit par exemple de la sécurisation du pilote du clavier, de la souris et/ou de la sécurisation du pilote de la carte graphique de l'écran. Les pilotes sécurisés comprennent par exemple une clé secrète partagée avec le matériel piloté, de sorte que les informations traitées par le pilote soient chiffrées et par suite, non accessibles en clair par des applications malveillantes. Toutefois, le développement de pilotes sécurisés a été freiné car il impose une modification du matériel piloté, par exemple l'insertion d'une clé secrète partagée avec le pilote. Cette modification est couteuse pour les fabricants de matériels. Certes, MicrosoftTM a proposé un système d'exploitation dit NGSCB, qui implémente des pilotes sécurisés ainsi que cela est divulgué dans le brevet publié sous le numéro US2005/091503. Néanmoins, non seulement la technologie implémentée dans cette base informatique exige une modification du matériel piloté, soit pour chiffrer/déchiffrer les informations échangées, soit pour accéder à un espace sécurisé, mais, en outre, elle suppose que les entrées de l'utilisateur transitent toujours par le système d'exploitation hôte de la machine, qui constitue un environnement non sécurisé, ce qui représente une faille potentielle de sécurité, même si ces informations sont chiffrées, compte tenu du fait que le système d'exploitation hôte est un environnement non sécurisé qui pourrait par exemple détruire ou ne pas transférer ces entrées. Il en va de même pour les entrées sécurisées visées dans le document brevet publié sous le numéro EP1526425 qui enseigne que les informations sécurisées entrées et destinées à être gérées par le noyau sécurisé de la base informatique, en pratique le nexusTM, transitent dans une pile logicielle du système d'exploitation hôte de la machine. Quant à la technologie dite TerraTM, qui est divulguée dans le document intitulé Terra: A Virtual Machine-Based Platform for Trusted Computing , Tal Garfinkel et al., Computer Science Department, Stanford University, elle n'a pas été mise en oeuvre commercialement essentiellement pour les raisons évoquées ci-dessus. D'ailleurs, cela est confirmé dans ce document, qui enseigne, au point 2.3, que Nous n'avons pas mis en ouvre une interface utilisateur sécurisée dans notre prototype Terra. Nous sommes d'avis que la mise en ouvre d'une interface utilisateur sécurisée, qui permettrait l'utilisation des capacités du matériel graphique, devrait requérir un matériel additionnel et un support logiciel . Par ailleurs, pour sécuriser l'interface utilisateur, il est possible, selon une seconde approche, d'adjoindre des indicateurs de sécurité dans l'interface utilisateur. Il s'agit, dans un exemple non limitatif, d'un petit cadenas dans un coin du navigateur, d'un cadre rouge autour d'une fenêtre, et/ou d'un bandeau réservé en haut de l'écran. Ainsi, une fenêtre ou des informations saisies au clavier seront considérées comme de confiance si l'indicateur de sécurité est présent. De tels indicateurs sont divulgués en particulier dans la demande internationale publiée sous le numéro WO2007060322. On peut aussi citer l'architecture du prototype NetTopTM divulguée dans le document Tech Trend Notes, vol. 9, Edition 4, automne 2000, p.l-8, ou même, la technologie TerraTM précitée, qui réservent une partie de l'écran pour spécifier quelle est la machine virtuelle qui contrôle l'interface utilisateur.
La sécurité de cette approche repose sur la difficulté de deviner l'ensemble des indicateurs prévus par l'application et d'afficher un indicateur à l'endroit particulier de l'interface utilisateur. Il s'agit donc d'une approche pratique, qui est communément utilisée en matière informatique, mais qui offre un niveau de sécurité plus modeste, l'affichage d'un indicateur dans une fenêtre étant potentiellement à la portée d'un attaquant plus ou moins averti. Enfin, pour sécuriser l'interface utilisateur, il est possible, selon une troisième approche, de dupliquer les contrôleurs d'interface utilisateur. Ainsi, si deux applications A et B, qui veulent se protéger l'une de l'autre, exécutent chacune leur propre contrôleur d'interface utilisateur, alors les évènements clavier/écran de l'application A sont traités par le contrôleur d'interface de l'application A et restent invisibles de l'application B, et réciproquement. Cette technique est utilisée par l'équipe de recherche en systèmes d'exploitation de l'Université Technique de Dresde dans sa démonstration pour sécuriser les interfaces utilisateurs graphiques. Dans cette démonstration, un premier contrôleur d'interface, appelé NitpickerTM, est placé au-dessus du micronoyau L4. Il contrôle l'interface utilisateur graphique pour les applications de ce micronoyau. Un second contrôleur d'interface est, quant à lui, placé dans une application particulière nommée L4Linux, qui est, en fait, le système d'exploitation Linux implémenté sous la forme d'une application au dessus du micronoyau L4. Cette application particulière est ainsi vue comme une application du micronoyau L4, fonctionnant en mode utilisateur. Le gestionnaire de fenêtres classique de Linux se trouve dans l'application L4Linux. Les évènements graphiques des applications du micronoyau L4 sont gérés directement par le premier contrôleur d'interface NitpickerTM et sont invisibles des applications de Linux, et réciproquement. Cette troisième approche permet donc une bonne séparation des applications. Toutefois, elle impose une duplication des contrôleurs d'interface utilisateur, ce qui implique une augmentation de la taille du code, une consommation accrue de ressources et, bien entendu, des erreurs à corriger dans chacun des contrôleurs soit un support technique à assurer. Compte tenu de ce qui précède, un problème de se propose de résoudre l'invention est de réaliser un système pour la sécurisation d'une interface utilisateur comportant : une interface utilisateur gérée par des périphériques matériels ; une ou plusieurs applications utilisant l'interface utilisateur ; un ou plusieurs périphériques matériels de l'interface utilisateur pour interagir avec ladite interface, lesdits périphériques matériels étant pilotés par des logiciels pilotes, qui pallie aux inconvénients précités de l'état de la technique et qui, en particulier, ne nécessite pas de modification des périphériques matériels ni une duplication des contrôleurs d'interface, tout en montrant un niveau adéquat de sécurisation vis-à-vis, notamment, d'applications malveillantes qui procèdent par enregistrement de frappes ou par hameçonnage.
La solution de l'invention à ce problème posé a pour premier objet un système pour la sécurisation d'une interface utilisateur comportant : une interface utilisateur comprenant un ou plusieurs périphériques matériels de l'interface utilisateur pour interagir avec ladite interface, lesdits périphériques matériels étant pilotés par des logiciels pilotes ; une ou plusieurs applications utilisant l'interface utilisateur ; caractérisé en ce qu'il comporte en outre : un hyperviseur disposant d'un accès direct aux périphériques matériels de l'interface utilisateur ; une ou plusieurs machines virtuelles permettant l'exécution de la ou des applications utilisant l'interface utilisateur, lesdites machines virtuelles ne disposant pas d'accès direct aux ressources matérielles de l'interface utilisateur ; et un composant logiciel de sécurisation comprenant une partie frontale contrôlée par la ou les machines virtuelles et une partie principale contrôlée par l'hyperviseur, les pilotes des périphériques matériels de l'interface utilisateur étant scindés en deux parties, une partie principale desdits pilotes étant placée sous le contrôle de l'hyperviseur, une partie frontale desdits pilotes étant placée sous le contrôle des machines virtuelles, la partie frontale du composant logiciel de sécurisation assurant la gestion de la partie frontale des pilotes, la partie principale du composant logiciel de sécurisation assurant la gestion de la partie principale des pilotes. Elle a pour second objet un procédé pour la sécurisation d'une interface utilisateur, caractérisé en ce qu'il comprend les étapes de : fourniture d'une interface utilisateur comprenant un ou plusieurs périphériques matériels de l'interface utilisateur pour interagir avec ladite interface, lesdits périphériques matériels étant pilotés par des logiciels 5 pilotes ; fourniture d'un hyperviseur, d'une ou plusieurs machines virtuelles permettant l'exécution d'une ou plusieurs applications utilisant l'interface utilisateur, lesdites machines virtuelles ne disposant pas d'accès 10 direct aux ressources matérielles de l'interface utilisateur et d'un composant logiciel de sécurisation comprenant une partie frontale contrôlée par la ou les machines virtuelles et une partie principale contrôlée par l'hyperviseur ; 15 d'exécution d'une application d'une machine virtuelle ; d'activation d'un mode sécurisé du système à la requête de l'application ; d'affichage sécurisé d'une information contrôlé par 20 la partie principale du composant logiciel de sécurisation, l'hyperviseur accédant directement aux périphériques matériels de l'interface utilisateur ; puis de désactivation du mode sécurisé du système. De manière avantageuse, - les périphériques 25 matériels de l'interface utilisateur comprennent au moins un périphérique d'entrée d'information de l'utilisateur et un écran ; - la partie principale du composant logiciel est apte à afficher et à contrôler l'affichage d'un composant d'interface graphique dans l'interface 30 utilisateur, pour la saisie d'une information par l'utilisateur ; - la partie principale du composant logiciel est apte à valider une information d'identification et/ou d'authentification saisie par l'utilisateur ; - les informations échangées entre la 35 partie principale du composant de sécurisation et la partie frontale de ce composant est sécurisé au moyen de clés de chiffrement et/ou de signature ; - des informations échangées entre la partie frontale du composant logiciel de sécurisation et une application de la machine virtuelle comportant cette partie frontale sont sécurisées au moyen de clés de chiffrement et/ou de signature ; - le procédé comporte en outre les étapes suivantes selon lesquelles : l'application requiert la saisie d'une information utilisateur, la requête de saisie est transmise à la partie principale du composant logiciel, un composant graphique de saisie d'information est affiché sous le contrôle direct du composant logiciel de sécurisation, l'utilisateur saisit une information utilisateur, et l'information utilisateur est validée ; - l'information utilisateur est validée par la partie principale du composant logiciel de sécurisation, ou est renvoyée à la partie frontale dudit composant voire à l'application demanderesse, pour validation ; - l'information utilisateur est validée contre des données conservées en mémoire de la partie principale du composant logiciel de sécurisation ; - l'application requiert l'établissement ou la mise à jour d'une information conservée en mémoire du composant logiciel de sécurisation, en ce que l'information est saisie par l'utilisateur, et en ce qu'elle est enregistrée dans la partie principale du composant logiciel de sécurisation ; et - le procédé comporte en outre les étapes suivantes selon lesquelles : l'application requiert un affichage sécurisé d'une information, la requête d'affichage est transmise à la partie principale du composant logiciel, etl'information est affichée sous le contrôle direct dudit composant logiciel. L'invention sera mieux comprise à la lecture de la description non limitative qui va suivre de modes de réalisation de l'invention, et au regard des dessins dans lesquels : la figure 1 présente, de manière schématique, le système selon l'invention ; la figure 2 est un diagramme qui illustre les différentes étapes du procédé selon l'invention pour la saisie sécurisée d'information dans un composant graphique ; et la figure 3 est un diagramme qui illustre les 10 différentes étapes du procédé selon l'invention pour l'affichage sécurisé d'information. La présente invention concerne des systèmes pour la sécurisation d'une interface utilisateur. Les systèmes selon l'invention sont destinés à être 15 implémentés, en particulier, mais non exclusivement, dans des dispositifs du type embarqués, qui disposent bien souvent de ressources matérielles limitées, en comparaison des ressources dont disposent des ordinateurs notamment du type personnel par exemple. Ils sont 20 néanmoins susceptibles de concerner de tels ordinateurs. Les dispositifs embarqués plus particulièrement visés dans la présente invention sont des dispositifs portatifs fabriqués en séries tels que des cartes à puce associées à des lecteurs de cartes eux-mêmes connectés à un 25 terminal, des téléphones portables éventuellement munis de modules d'identification abonnés et disposant d'un écran, des assistants digitaux personnels, ou tous autres dispositifs électroniques de dimensions réduites manipulant des données numériques. Les dispositifs 30 embarqués selon l'invention sont munis d'un processeur ou non. Ils comportent au moins une et parfois plusieurs mémoires. Les systèmes selon l'invention comportent une interface utilisateur comprenant un ou plusieurs 35 périphériques matériels de l'interface utilisateur, et une ou plusieurs applications utilisant l'interface utilisateur. L'interface utilisateur est l'interface par laquelle un utilisateur d'une machine informatique, par exemple un ordinateur ou un système embarqué, dialogue avec cette machine. L'interface utilisateur comprend un de plusieurs périphériques matériels de l'interface, qui sont pilotés par des logiciels pilotes.
Les périphériques de l'interface sont divers. Certains périphériques sont des périphériques d'entrée, qui permettent d'entrer des informations dans la machine. D'autres périphériques sont des périphériques de sortie, qui permettent d'obtenir des informations de la machine.
D'autres périphériques de l'interface encore sont des périphériques d'entrée/sortie, qui permettent d'entrer des informations dans la machine ou de sortir des informations de celle-ci. Parmi les périphériques d'entrée, on citera notamment les claviers, les souris ou autres dispositifs de pointage, les pinpad, les lecteurs de cartes à puce, les tablettes graphiques, les microphones. Parmi les périphériques de sortie, citera notamment les écrans ou les enceintes acoustiques. Enfin, parmi les périphériques d'entrée/sortie, on citera notamment les écrans tactiles. Les applications utilisant l'interface utilisateur sont des applications diverses qui sont à l'origine d'évènements de l'interface utilisateur pour la gestion des informations saisies par l'utilisateur et/ou la présentation de telles informations, ou d'autres informations audit utilisateur. Les informations saisies par l'utilisateur sont notamment des informations d'identification et/ou d'authentification. Les applications émettent des requêtes diverses telles que des requêtes d'affichage ou de saisie. Par exemple, une application peut être une application bancaire, qui permet à un utilisateur d'accéder à ces comptes bancaires et de procéder à des virements. Les périphériques matériel de l'interface utilisateur sont des périphériques permettant à l'utilisateur d'interagir avec ladite interface. Ils sont pilotés par des logiciels pilotes. Ces périphériques sont par exemple des claviers, des souris, des écrans notamment tactiles.
Ainsi que cela est montré à la figure 1, le système selon l'invention comporte en outre un hyperviseur, une ou plusieurs machines virtuelles et un composant logiciel de sécurisation appelé, dans cette figure Secure UI. L'hyperviseur, ou domaine privilégié, est une couche logicielle qui permet l'exécution d'une ou plusieurs machines virtuelles au-dessus de ladite couche. L'hyperviseur dispose d'un accès direct aux ressources matérielles de l'interface utilisateur et notamment, aux périphériques. Dans l'invention, il s'agit de la seule entité disposant d'un tel accès direct à ces ressources. En effet, les machines virtuelles ne disposant pas d'un accès direct aux périphériques matérielles. Elles ne disposent pas de ce privilège. Les machines virtuelles comprennent un système d'exploitation dit invité qui leur est propre et au moins une application utilisant l'interface utilisateur. Elles permettent l'exécution de cette ou ces applications. Les machines virtuelles disposent soit d'un accès indirect aux périphériques matériels, soit d'un accès susceptible d'apparaître comme direct, mais qui transite par l'hyperviseur. Aussi, les accès dit matériels dont disposent les machines virtuelles, qui sont des accès indirects aux périphériques d'interfaces, sont ainsi contrôlés et pilotés uniquement par l'hyperviseur. De plus, les machines virtuelles ne communiquent pas entre elles. Elles sont isolées les unes des autres. On connaît différentes architectures logicielles de virtualisation susceptibles d'être utilisées dans le système selon l'invention. Il s'agit par exemple de l'architecture de virtualisation XenTM développée par l'université de Cambridge (Royaume-Uni) ou de l'architecture de virtualisation VMWareTM. Dans l'architecture XenTM, l'hyperviseur, qui constitue finalement une machine virtuelle particulière, correspond au domaine zéro (domo). Il assure la séparation et l'isolement des machines virtuelles, chaque machine virtuelle correspondant à un domaine spécifique, domU, qui ne dispose pas des privilèges de domo. En effet, le privilège de l'accès physique aux périphériques est délégué par les machines virtuelles des domU à l'hyperviseur. Dans l'invention, les pilotes des périphériques matériels de l'interface utilisateur sont scindés en deux parties. Une partie importante desdits pilotes est placée et tourne dans l'hyperviseur, soit sous le contrôle dudit hyperviseur. Il s'agit de la partie qui gère physiquement les accès aux périphériques. Une autre partie, moins importante au niveau taille, est placée et tourne dans chaque machine virtuelle, soit sous le contrôle de chaque machine virtuelle. Cette autre partie sert de relais vers la partie du pilote située dans l'hyperviseur. La partie du pilote contenue dans l'hyperviseur est appelée partie principale du pilote ou pilote backend à la figure 1. La partie du pilote située dans les machines virtuelles est appelée partie frontale du pilote ou pilote frontend à la figure 1. Le composant logiciel de sécurisation selon l'invention (Secure UI) est un composant de l'interface 35 utilisateur, destiné à la sécurisation de cette interface. Ce composant comprend une partie frontale ou Secure UI frontend, contrôlée par la ou les machines virtuelles ainsi qu'une partie principale, ou Secure UI backend, contrôlée par l'hyperviseur. Ce composant gère les pilotes des périphériques matériels de l'interface, c'est-à-dire par exemple les pilotes du clavier, de l'écran, de la souris ou du pinpad. Ce composant peut être considéré comme étant un composant pilote des pilotes des périphériques matériels de l'interface utilisateur. La partie principale de ce pilote interagit avec les périphériques d'interface de l'utilisateur. Si l'on se rapporte désormais aux figures 2 et 3, il apparaît que, pour la sécurisation de l'interface utilisateur, une machine virtuelle d'un système selon l'invention active tout d'abord la partie frontale du composant logiciel de sécurité d'interface utilisateur. Un contexte de sécurisation est alors créé et diverses informations sont notées telles que l'identifiant de la machine virtuelle. Dès lors, l'interface utilisateur est en mode dit sécurisé. Lorsque, dans ce mode sécurisé, une application A de la machine virtuelle précitée, souhaite authentifier un utilisateur, par exemple par la saisie d'un mot de passe ou d'un code d'identification personnel (PIN), elle notifie la partie frontale du composant de logiciel de sécurisation de sa requête. Cette partie frontale de ce composant transmet la requête à la partie principale du composant de l'hyperviseur. Cette dernière peut alors décider ou non d'afficher, sur l'écran, d'un composant d'interface graphique, plus spécifiquement une fenêtre de confiance, pour la saisie du mot de passe ou du PIN. Si elle décide d'afficher ce composant graphique, l'hyperviseur accède directement à la carte ou au composant graphique de l'interface. Plus particulièrement, la partie principale du composant logiciel de sécurisation récupère la mémoire tampon d'image (frame buffer) de la machine virtuelle concernée et y insère l'affichage du composant d'interface graphique pour la saisie du mot de passe ou du PIN en appelant le pilote de la carte ou du composant graphique pour effectuer l'affichage. Une fenêtre s'affiche alors sur l'écran de l'interface utilisateur. Celui-ci peut saisir son mot de passe ou son PIN par exemple à l'aide du clavier ou d'un pinpad.
A la saisie du mot de passe ou du PIN, le pilote du clavier ou du pinpad est utilisé. Les informations saisies sont directement envoyées à la partie principale du composant logiciel de sécurité d'interface utilisateur.
Dans ce cas, soit la partie principale de ce composant valide le mode de passe elle-même, soit ledit mot de passe est transmis à la partie frontale du composant de sécurité. Pour que la partie principale du composant valide le mot de passe, il suffit que cette partie ait mémorisé les mots de passe attendus, ou leur empreinte numérique (hash) pour chaque application de chaque machine virtuelle. En fonction de la comparaison du mot de passe ou du PIN saisi par l'utilisateur avec les mots de passe ou PIN mémorisé dans la partie principale du composant logiciel de sécurisation, cette partie principale renvoie à la partie frontale un accord de validation (OK) ou un refus (NOK). Pour terminer, la partie frontale du composant fait suivre l'accord ou le refus à l'application demanderesse. Si la partie principale du composant logiciel de sécurité transmet le mot de passe à la partie frontale de ce composant, celle-ci peut, à son tour, valider ce mot de passe/PIN ou alors le transmettre à l'application afin que celle-ci le valide.
Ainsi, selon l'invention, les requêtes et informations échangées dans le systèmes sont sécurisées car elles transitent nécessairement par les deux parties du composant de sécurisation.
En mode sécurisé, une application B, par exemple malveillante, contenue dans la machine virtuelle comprenant l'application A ou alors dans une autre machine virtuelle, ne peut pas modifier l'affichage du composant graphique de saisie de mot de passe ni modifier la saisie de ce dernier. En effet, l'affichage du composant graphique et la saisie d'informations par l'utilisateur sont entièrement gérés par le composant logiciel de sécurisation, au sein de l'hyperviseur. C'est ce composant qui décide d'afficher un composant graphique de saisie de mot de passe/PIN et accède directement aux ressources matérielles pour cet affichage. C'est ce composant logicel qui décide de la taille et de la forme de ce composant graphique de saisie. C'est ce composant logiciel de sécurisation qui reçoit les évènements saisis par l'utilisateur et gère cette information. Les machines virtuelles ne peuvent pas accéder à la mémoire tampon d'image et aux informations saisies aux périphériques matériels de l'interface graphique. Elles ne peuvent pas non plus court-circuiter l'hyperviseur car elles n'ont pas d'accès direct aux périphériques matériels. Aussi, l'invention sécurise effectivement les interactions homme/machine. Le composant logiciel de sécurisation est susceptible de répondre aux commandes suivantes, qui sont pour la plupart mentionnées aux figures 2 et 3 précitées. La commande ACTIVATE, émise par une application, qui permet de créer un contexte de sécurisation entre une machine virtuelle, ou une application d'une machine virtuelle. Il s'agit donc de la commande qui permet d'entrer dans le mode sécurisé.
La commande DEACTIVATE permet de passer du mode sécurisé à un mode non sécurisé. Après l'appel de cette commande, l'interface utilisateur n'est plus sécurisée. On notera que le contexte sécurisé ne peut être désactivé que par le composant ayant commandé l'activation du mode sécurisé. L'authentification de ce composant peut être effectuée en utilisant une clé partagée de signature lors de la création du contexte. La commande GET_DATA est une commande qui peut être émise par l'application qui requiert la saisie d'informations telles qu'un PIN, un mot de passe, un identifiant ou des données diverses, et qui est destinée au composant logiciel de sécurisation. Les informations obtenues suite à l'exécution de cette commande sont envoyées chiffrées et signées à la partie frontale du composant logiciel de sécurisation, ou à l'application demanderesse, dans le cas où des clés auront été partagées. La commande DISPLAYDATA, qui requiert l'affichage d'informations dans une fenêtre de confiance. En réponse à cette commande, les informations sont transmises par la partie frontale du composant logiciel de sécurisation, ou de l'application, à la partie principale de ce composant, puis elles sont affichées dans l'interface utilisateur sous le contrôle de l'hyperviseur. La partie principale du composant logiciel de sécurisation, qui s'exécute au sein de l'hyperviseur, contrôle la mise en forme de ces informations. Notamment, l'hyperviseur peut afficher la provenance desdites informations.
Par ailleurs, des commandes propres à la saisie de mots de passe, PIN ou autres informations d'identifications ou d'authentification sont susceptibles d'être mise en oeuvre dans le procédé selon l'invention. Il s'agit tout d'abord de la commande COMPARE PIN, qui est requise lorsque l'application requiert la saisie d'un PIN ou d'une autre information d'identification ou d'authentification. Cette information est validée par comparaison dans la partie principale du composant logiciel de sécurisation, qui s'exécute dans l'hyperviseur. La validation ou l'absence de validation de l'authentification est renvoyée, par exemple, chiffrée et signée, à la partie frontale du composant logiciel de sécurisation, voire à l'application demanderesse, si des clés ont été partagées à cet effet avec cette application. La saisie de l'information sous le contrôle du composant logiciel de sécurisation, qui s'exécute dans l'hyperviseur, est susceptible d'être effectuée au clavier, au moyen d'une souris ou en cliquant sur un pinpad notamment du type comprenant une fenêtre munie de touches visuelles sur lesquelles l'utilisateur doit cliquer. Il s'agit ensuite de la commande SET_PIN selon laquelle une application, qui envoie la commande, requiert la mise à jour d'une information d'identification ou d'authentification dans la mémoire de la partie principale du composant logiciel de sécurisation, qui s'exécute dans l'hyperviseur. En effet, l'information d'identification ou d'authentification est validée, dans la partie principale du composant logiciel de sécurisation, contre des données conservées en mémoire de celui-ci. Cette commande autorise donc la modification des données conservées dans la mémoire de la partie principale du composant logiciel. Elle peut être invoquée une première fois par une application quelconque, si l'application requiert l'établissement d'une information de comparaison dans la mémoire du composant logiciel. Ensuite, la modification de l'information par cette application quelconque ne pourra être effectuée que sur présentation et validation de l'information conservée en mémoire.
Il s'agit enfin de la commande PAY TRANSACTION selon laquelle une application requiert un paiement pour une transaction donnée. Dans ce cas, la partie principale du composant logiciel de sécurisation, qui s'exécute dans l'hyperviseur, active un périphérique particulier tel qu'un lecteur de cartes à puce, requiert la saisie d'un code d'identification, valide le code entré ou non, et renvoie l'information de validation ou de non validation à la partie frontale du composant logiciel de sécurisation, voire à l'application demanderesse, si des clés ont été partagées à cet effet. On notera que la sécurisation du système selon l'invention peut avantageusement être renforcée en sécurisant le canal de communication entre la partie principale du composant logiciel de sécurisation et sa partie frontale. Dans ce cas, à la création du contexte de sécurisation, des clés de signature et/ou de chiffrement sont partagées entre les parties principale et frontale du composant. Ces clés sont utilisées pour sécuriser les requêtes et les réponses qui transitent entre ces parties. En particulier, si une information d'identification est validée par la partie frontale du composant, cette information sera transmise de manière sécurisée, chiffrée et/ou signée dans le canal de communication. En effet, si l'information et signée et/ou chiffrée, elle ne peut pas être modifiée et/ou lue par des machines virtuelles tierces. La sécurisation du système selon l'invention peut par ailleurs avantageusement être renforcée en sécurisant les communications entre la partie frontale du composant logiciel de sécurisation et la ou chacune des applications de la machine virtuelle comportant cette partie. Dans ce cas, des clés de chiffrement et/ou de signature sont partagées entre cette partie frontale et l'application sécurisée. Ces clés permettent de chiffrer et/ou de signer les messages qui transitent entre les deux entités notamment les informations d'identification ou d'authentification si celles-ci doivent être validées par l'application elle-même. Les autres applications de la machine virtuelle ne peuvent pas lire et/ou modifier les informations destinées à l'application demanderesse. 21

Claims (12)

  1. REVENDICATIONS1. Système pour la sécurisation d'une interface utilisateur comportant : une interface utilisateur comprenant un ou plusieurs périphériques matériels de l'interface utilisateur pour interagir avec ladite interface, lesdits périphériques matériels étant pilotés par des logiciels pilotes ; une ou plusieurs applications utilisant l'interface utilisateur ; caractérisé en ce qu'il comporte en outre : un hyperviseur disposant d'un accès direct aux périphériques matériels de l'interface utilisateur ; une ou plusieurs machines virtuelles permettant l'exécution de la ou des applications utilisant l'interface utilisateur, lesdites machines virtuelles ne disposant pas d'accès direct aux ressources matérielles de l'interface utilisateur ; et un composant logiciel de sécurisation comprenant une partie frontale contrôlée par la ou les machines virtuelles et une partie principale contrôlée par l'hyperviseur, les pilotes des périphériques matériels de l'interface utilisateur étant scindés en deux parties, une partie principale desdits pilotes étant placée sous le contrôle de l'hyperviseur, une partie frontale desdits pilotes étant placée sous le contrôle des machines virtuelles, la partie frontale du composant logiciel de sécurisation assurant la gestion de la partie frontale des pilotes, la partie principale du composant logiciel de sécurisation assurant la gestion de la partie principale des pilotes.
  2. 2. Système selon la revendication 1, caractérisé en 35 ce que les périphériques matériels de l'interfaceutilisateur comprennent au moins un périphérique d'entrée d'information de l'utilisateur et un écran.
  3. 3. Système selon l'une des revendications précédentes, caractérisé en ce que la partie principale du composant logiciel est apte à afficher et à contrôler l'affichage d'un composant d'interface graphique dans l'interface utilisateur, pour la saisie d'une information par l'utilisateur.
  4. 4. Système selon l'une des revendications précédentes , caractérisé en ce que la partie principale du composant logiciel est apte à valider une information d'identification et/ou d'authentification saisie par l'utilisateur.
  5. 5. Système selon l'une des revendications précédentes, caractérisé en ce que les informations échangées entre la partie principale du composant de sécurisation et la partie frontale de ce composant est sécurisé au moyen de clés de chiffrement et/ou de signature.
  6. 6. Système selon l'une des revendications précédentes, caractérisé en ce que des informations échangées entre la partie frontale du composant logiciel de sécurisation et une application de la machine virtuelle comportant cette partie frontale sont sécurisées au moyen de clés de chiffrement et/ou de signature.
  7. 7. Procédé pour la sécurisation d'une interface utilisateur, caractérisé en ce qu'il comprend les étapes de .fourniture d'une interface utilisateur comprenant un ou plusieurs périphériques matériels de l'interface utilisateur pour interagir avec ladite interface, lesdits périphériques matériels étant pilotés par des logiciels pilotes ; fourniture d'un hyperviseur, d'une ou plusieurs machines virtuelles permettant l'exécution d'une ou plusieurs applications utilisant l'interface utilisateur, lesdites machines virtuelles ne disposant pas d'accès direct aux ressources matérielles de l'interface utilisateur et d'un composant logiciel de sécurisation comprenant une partie frontale contrôlée par la ou les machines virtuelles et une partie principale contrôlée par l'hyperviseur ; d'exécution d'une application d'une machine virtuelle ; d'activation d'un mode sécurisé du système à la requête de l'application ; d'affichage sécurisé d'une information contrôlée par la partie principale du composant logiciel de sécurisation, l'hyperviseur accédant directement aux périphériques matériels de l'interface utilisateur ; puis de désactivation du mode sécurisé du système.
  8. 8. Procédé selon la revendication 7, caractérisé en ce qu'il comporte en outre les étapes suivantes selon lesquelles : l'application requiert la saisie d'une information utilisateur ; la requête de saisie est transmise à la partie principale du composant logiciel ; un composant graphique de saisie d'information est affiché sous le contrôle direct du composant logiciel de sécurisation ;l'utilisateur saisit une information utilisateur ; l'information utilisateur est validée.
  9. 9. Procédé selon la revendication 8, caractérisé en ce que l'information utilisateur est validée par la partie principale du composant logiciel de sécurisation, ou est renvoyée à la partie frontale dudit composant voire à l'application demanderesse, pour validation.
  10. 10. Procédé selon la revendication 9, caractérisé en ce que l'information utilisateur est validée contre des données conservées en mémoire de la partie principale du composant logiciel de sécurisation.
  11. 11. Procédé selon la revendication 10, caractérisé en ce que l'application requiert l'établissement ou la mise à jour d'une information conservée en mémoire du composant logiciel de sécurisation, en ce que l'information est saisie par l'utilisateur, et en ce qu'elle est enregistrée dans la partie principale du composant logiciel de sécurisation.
  12. 12. procédé selon l'une des revendications 8 à 11, 25 caractérisé en ce qu'il comporte en outre les étapes suivantes selon lesquelles : l'application requiert un affichage sécurisé d'une information ; la requête d'affichage est transmise à la partie 30 principale du composant logiciel ; et l'information est affichée sous le contrôle direct dudit composant logiciel. et
FR0804192A 2008-07-23 2008-07-23 Systeme et procede pour la securisation d'une interface utilisateur Active FR2934395B1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
FR0804192A FR2934395B1 (fr) 2008-07-23 2008-07-23 Systeme et procede pour la securisation d'une interface utilisateur
PCT/FR2009/000918 WO2010010258A2 (fr) 2008-07-23 2009-07-23 Systeme et procede pour la securisation d'une interface utilisateur
US13/055,454 US8874931B2 (en) 2008-07-23 2009-07-23 System and method for securing a user interface
EP09784296A EP2316088A2 (fr) 2008-07-23 2009-07-23 Systeme et procede pour la securisation d'une interface utilisateur

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0804192A FR2934395B1 (fr) 2008-07-23 2008-07-23 Systeme et procede pour la securisation d'une interface utilisateur

Publications (2)

Publication Number Publication Date
FR2934395A1 true FR2934395A1 (fr) 2010-01-29
FR2934395B1 FR2934395B1 (fr) 2013-01-04

Family

ID=40230045

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0804192A Active FR2934395B1 (fr) 2008-07-23 2008-07-23 Systeme et procede pour la securisation d'une interface utilisateur

Country Status (4)

Country Link
US (1) US8874931B2 (fr)
EP (1) EP2316088A2 (fr)
FR (1) FR2934395B1 (fr)
WO (1) WO2010010258A2 (fr)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL210169A0 (en) 2010-12-22 2011-03-31 Yehuda Binder System and method for routing-based internet security
EP3651042A1 (fr) 2011-03-22 2020-05-13 Telefonaktiebolaget LM Ericsson (publ) Procédé pour exécuter une commutation entre un fonctionnement dans un système virtualisé et un fonctionnement dans un système non virtualisé
US8813218B2 (en) * 2012-02-14 2014-08-19 Janus Technologies, Inc. Security-enhanced computer systems and methods
US9129124B2 (en) * 2012-04-12 2015-09-08 Hewlett-Packard Development Company, L.P. Dynamic provisioning of virtual systems
US9769123B2 (en) * 2012-09-06 2017-09-19 Intel Corporation Mitigating unauthorized access to data traffic
US9232176B2 (en) 2013-03-04 2016-01-05 Janus Technologies, Inc. Method and apparatus for securing computer video and audio subsystems
US11210432B2 (en) 2013-08-20 2021-12-28 Janus Technologies, Inc. Method and apparatus for selectively snooping and capturing data for secure computer interfaces
US9076003B2 (en) 2013-08-20 2015-07-07 Janus Technologies, Inc. Method and apparatus for transparently encrypting and decrypting computer interface data
US9215250B2 (en) 2013-08-20 2015-12-15 Janus Technologies, Inc. System and method for remotely managing security and configuration of compute devices
US9384150B2 (en) 2013-08-20 2016-07-05 Janus Technologies, Inc. Method and apparatus for performing transparent mass storage backups and snapshots
US9231921B2 (en) 2013-08-20 2016-01-05 Janus Technologies, Inc. System and architecture for secure computer devices
US9424443B2 (en) 2013-08-20 2016-08-23 Janus Technologies, Inc. Method and apparatus for securing computer mass storage data
US9684805B2 (en) 2013-08-20 2017-06-20 Janus Technologies, Inc. Method and apparatus for securing computer interfaces
US9342331B2 (en) 2013-10-21 2016-05-17 International Business Machines Corporation Secure virtualized mobile cellular device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268135A1 (en) * 2003-06-25 2004-12-30 Zimmer Vincent J. Methods and apparatus for secure collection and display of user interface information in a pre-boot environment
US20060089992A1 (en) * 2004-10-26 2006-04-27 Blaho Bruce E Remote computing systems and methods for supporting multiple sessions
US20060218409A1 (en) * 2005-03-25 2006-09-28 Microsoft Corporation Accessing a USB host controller security extension using a HCD proxy
US20060225127A1 (en) * 2005-04-01 2006-10-05 Microsoft Corporation Systems and methods for authenticating a user interface to a computer user
WO2008012567A1 (fr) * 2006-07-28 2008-01-31 Hewlett-Packard Development Company, L.P. Utilisation sécurisée de secrets utilisateur sur une plate-forme informatique

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268135A1 (en) * 2003-06-25 2004-12-30 Zimmer Vincent J. Methods and apparatus for secure collection and display of user interface information in a pre-boot environment
US20060089992A1 (en) * 2004-10-26 2006-04-27 Blaho Bruce E Remote computing systems and methods for supporting multiple sessions
US20060218409A1 (en) * 2005-03-25 2006-09-28 Microsoft Corporation Accessing a USB host controller security extension using a HCD proxy
US20060225127A1 (en) * 2005-04-01 2006-10-05 Microsoft Corporation Systems and methods for authenticating a user interface to a computer user
WO2008012567A1 (fr) * 2006-07-28 2008-01-31 Hewlett-Packard Development Company, L.P. Utilisation sécurisée de secrets utilisateur sur une plate-forme informatique

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YUN CHAN CHO ET AL: "Sharing data between processes running on different domains in para-virtualized xen", CONTROL, AUTOMATION AND SYSTEMS, 2007. ICCAS '07. INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 1 October 2007 (2007-10-01), pages 1255 - 1260, XP031192980, ISBN: 978-89-950038-6-2 *

Also Published As

Publication number Publication date
FR2934395B1 (fr) 2013-01-04
EP2316088A2 (fr) 2011-05-04
US20110131423A1 (en) 2011-06-02
US8874931B2 (en) 2014-10-28
WO2010010258A2 (fr) 2010-01-28
WO2010010258A3 (fr) 2010-03-18

Similar Documents

Publication Publication Date Title
FR2934395A1 (fr) Systeme et procede pour la securisation d'une interface utilisateur
EP1975840B1 (fr) Procédé et dispositif de visualisation sécuritaire
US8505103B2 (en) Hardware trust anchor
JP5976564B2 (ja) セキュリティ強化されたコンピュータシステムおよび方法
CN101529366B (zh) 可信用户界面对象的标识和可视化
US9055060B2 (en) Cloud service system based on enhanced security function and method for supporting the same
US8176324B1 (en) Method and system for a secure virtual keyboard
KR101878149B1 (ko) 패스워드의 보안 입력 및 처리 장치, 시스템 및 방법
US20090319782A1 (en) Interconnectable personal computer architectures that provide secure, portable, and persistent computing environments
US10423791B2 (en) Enabling offline restart of shielded virtual machines using key caching
JP2016509726A (ja) 特権的コンピューティングオペレーションの結果の保護
Martignoni et al. Cloud terminal: Secure access to sensitive applications from untrusted systems
WO2015100188A1 (fr) Assurances de machines virtuelles
FR3026207A1 (fr) Terminal a affichage securise
EP3776223A1 (fr) Système informatique sécurisé
FR3048538A1 (fr) Procede d'execution et de traitement de donnees, dispositif et programme d'ordinateur correspondant
CN117751551A (zh) 用于安全互联网通信的系统和方法
EP1952297A2 (fr) Procede et dispositif d'authentification par un utilisateur d'une interface de confiance et programme d'ordinateur associe
Singh et al. Performance analysis of middleware distributed and clustered systems (PAMS) concept in mobile communication devices using Android operating system
EP4058921B1 (fr) Dispositif et procédé de communication sécurisée
Liu Enhanced Password Security on Mobile Devices.
WO2024069088A1 (fr) Smartphone intégrant un portefeuille matériel de stockage de clés cryptographiques mettant en œuvre un multiplexage logiciel de l'afficheur du smartphone
FR3140688A1 (fr) Procédé de gestion de données d’authentification permettant l’accès à un service d’un utilisateur depuis un terminal
Polon Attestation-based remote biometric authentication
Margalef et al. Usage of thin clients on STB for secure interactive applications

Legal Events

Date Code Title Description
TP Transmission of property

Owner name: TRUSTED LOGIC MOBILITY, FR

Effective date: 20120524

PLFP Fee payment

Year of fee payment: 8

PLFP Fee payment

Year of fee payment: 9

PLFP Fee payment

Year of fee payment: 10

PLFP Fee payment

Year of fee payment: 11

PLFP Fee payment

Year of fee payment: 12

CA Change of address

Effective date: 20200217

CD Change of name or company name

Owner name: TRUSTONIC, FR

Effective date: 20200217

PLFP Fee payment

Year of fee payment: 13

PLFP Fee payment

Year of fee payment: 14

PLFP Fee payment

Year of fee payment: 15

PLFP Fee payment

Year of fee payment: 16