Brevet FR2819602A1 — publié le 20020719

PROCÉDÉ DE GESTION D'APPLICATIONS INFORMATIQUES PAR LE SYSTÈME D'EXPLOITATION D'UN SYSTÈME INFORMATIQUE MULTI- APPLICATIONS L'invention concerne un procédé de gestion d'applications informatiques par le système d'exploitation d'un système informatique multiapplications. Le domaine de l'invention est celui des systèmes informatiques permettant le fonctionnement de multiples applications simultanément. Dans les systèmes multi-applications actuels, les applications s'exécutent en même temps dans un même environnement. Les utilisateurs de tels systèmes ont à leur disposition, des combinaisons de touches du clavier comme par exemple Alt+Tab leur permettant de passer d'une application à l'autre. Les utilisateurs ont besoin d'un moyen simple pour différencier différents groupes d'applications et pour pouvoir passer d'un groupe à l'autre. On va considérer plus spécifiquement deux groupes d'applications : les applications sécurisées et les applications non sécurisées. Certaines applications sont téléchargées à partir d'un réseau tel que le réseau INTERNET, sur le système informatique de l'utilisateur, au moyen d'un programme appelé navigateur (terme plus connu sous le vocable anglo-saxon browser ), tel que ceux connus sous les marques NETSCAPE ou INTERNET EXPLORER . Ces applications permettent d'effectuer des transactions sécurisées entre les utilisateurs du réseau, notamment des transactions monétaires. Dans le réseau INTERNET, de plus en plus de sites marchands proposent des transactions sécurisées en mettant en oeuvre des certificats qui garantissent, dans une certaine mesure, que les informations que l'acheteur va rentrer à l'écran sur le site du vendeur ne peuvent pas être"dérobées"par un tiers à la transaction. Ceci est réalisé en établissant une communication signée et/ou chiffrée entre le vendeur et l'acheteur, par exemple à l'aide de la norme SSL. Lorsqu'un site vendeur est sécurisé pour la transaction à effectuer, cet état est porté à la connaissance de l'acheteur, par des caractéristiques visuelles du navigateur qui consistent comme représenté figure 1) en : l'apparition d'un cadenas 2 fermé en bas de la fenêtre 1 du navigateur, à gauche, à droite ou ailleurs selon le navigateur utilisé, et - l'apparition, dans la barre 3 d'adresse du site, de la lettre"s"après"http"pour obtenir"https"en début d'adresse 4. Pour l'acheteur, ces caractéristiques visuelles sont, en général, les seules preuves que la transaction à effectuer sera sécurisée. Comme on va le voir à présent, un fraudeur peut simuler de telles preuves visuelles. Un fraudeur qui voudrait"dérober"les informations confidentielles d'un acheteur potentiel ou, au contraire, l'induire en erreur en lui présentant des fausses informations, peut faire apparaître ces caractéristiques visuelles sur son site vendeur de manière à faire croire que la transaction à effectuer sera sécurisée. Dans l'état actuel de fonctionnement des navigateurs, il lui est en effet possible de faire apparaître de fausses caractéristiques visuelles de sécurité en utilisant un langage de programmation, notamment ceux connus sous les marques"JAVA"ou Active . En effet, ces langages permettent d'afficher par une "applet"une image 10 en surimpression de l'image 1 affichée par le navigateur comme représenté figure 2) et ainsi faire apparaître les caractéristiques visuelles de sécurité 12 en vue de tromper l'acheteur sur la réalité de la sécurité. L'acheteur ne peut finalement plus se fier à ces preuves visuelles de sécurité. Le but de la présente invention est donc de séparer en deux environnements, les applications réellement sécurisées de celles qui ne le sont pas, et de permettre à l'utilisateur d'une part de choisir l'environnement dans lequel il souhaite évoluer, et d'autre part de passer d'un environnement à l'autre par une combinaison de touches particulières. Un troisième environnement peut également regrouper toutes les applications qu'elles soient ou non sécurisées. L'invention a pour objet un procédé de gestion d'applications informatiques par le système d'exploitation d'un système informatique multiapplications dont dispose un utilisateur, principalement caractérisé en ce qu'il consiste à prévoir dans le système d'exploitation un mécanisme permettant de : a) créer au moins deux environnements permettant à l'utilisateur d'accéder à des groupes d'applications correspondant à chacun desdits environnements, b) définir une combinaison de touches permettant à l'utilisateur de passer d'un environnement à l'autre, c) détecter à quel environnement correspond chacune desdites applications résidentes et futures, d) classer chacune desdites applications dans l'environnement qui lui correspond. Selon un mode de réalisation de l'invention, un premier environnement concerne un groupe d'applications sécurisées, un deuxième environnement, un groupe d'applications non sécurisées. Selon une caractéristique de l'invention, l'étape c) consiste préalablement au lancement de l'application à vérifier que ledit code de l'application est signé et lorsque c'est le cas, à vérifier que la signature est valide. Selon une caractéristique additionnelle, l'étape c) consiste à vérifier pendant l'exécution d'une desdites applications, à chaque demande d'ouverture d'une connexion réseau, que ladite connexion est sécurisée. Selon une autre caractéristique de l'invention, le procédé consiste à créer un troisième environnement concernant les applications sécurisées et les applications non sécurisées. Certaines desdites applications peuvent être téléchargées dans ledit système informatique à partir d'un réseau accessible par l'intermédiaire d'un programme de navigation. D'autres particularités et avantages de l'invention apparaîtront clairement à la lecture de la description faite à titre d'exemple non limitatif et en regard des dessins annexés sur lesquels : - la figure 1 déjà décrite est une vue simplifiée d'un écran de navigateur montrant que la transaction monétaire à effectuer sera sécurisée ; - la figure 2 déjà décrite est une vue simplifiée d'un écran de navigateur montrant une image en surimpression faisant croire que la transaction est sécurisée ; la figure 3 est un organigramme des principales étapes permettant de déterminer si une application est sécurisée ou pas. On entend par systèmes informatiques en général, les ordinateurs personnels, portables ou non, les agendas électroniques, les organisateurs électroniques, les téléphones mobiles munis d'un écran graphique, etc. On va considérer l'exemple de l'ordinateur personnel. Il comporte typiquement un écran d'affichage, un clavier composé de touches, souvent une souris et une unité centrale comportant au moins un microprocesseur et des mémoires, permettant de mettre en oeuvre différents programmes constitués d'une suite d'instructions. L'unité centrale comporte également une ou plusieurs interfaces d'entrée-sortie permettant notamment de connecter l'ordinateur à un réseau. 1 Parmi les programmes, celui du système d'exploitation permet de gérer différentes fonctions telles que l'affichage, la saisie d'informations,..., et en particulier la gestion d'applications fonctionnant simultanément. La gestion de ces applications inclut notamment une fonction permettant à l'utilisateur de passer d'une application à l'autre au moyen d'une combinaison de touches du clavier, sans avoir à fermer l'application qu'il quitte. On peut citer les touches "Alt+Tab"comme exemple d'une telle combinaison de touches. Conformément à l'invention, un programmeur insère dans le programme du système d'exploitation, un sousprogramme composé d'une suite d'instructions dont l'exécution permet, lors d'une étape préalable, de créer au moins deux environnements où seront classées les applications en fonction de caractéristiques déterminées par le programmeur, et de définir la combinaison de touches permettant de passer d'un environnement à l'autre telle que"Ctrl+Tab". De manière préférentielle, cette combinaison de touches est proposée par défaut par le système d'exploitation. Il est en outre prévu dans cette suite d'instructions, lors du chargement ou téléchargement d'une nouvelle application sur l'ordinateur, de déterminer au moyen des caractéristiques préalablement déterminées par le programmeur, dans quel environnement l'application doit être classée, puis de la classer. Cette suite d'instructions est insérée dans le système d'exploitation car il est bien protégé et quasiment inaccessible à partir d'un réseau notamment à partir des applets ou des programmes qui seraient téléchargés. Il est ainsi très difficile pour un fraudeur par exemple, de transférer une application d'un environnement vers un autre, à moins qu'il n'ait physiquement accès à l'ordinateur. On va prendre un exemple de classement d'applications selon qu'elles sont ou non sécurisées. L'utilisateur crée dans un premier temps à l'aide du système d'exploitation, trois environnements par exemple sous forme de barreaux virtuels ; l'environnement El, concernant les applications sécurisées, l'environnement E2 concernant les applications non sécurisées, et l'environnement E3 concernant toutes les applications qu'elles soient ou non sécurisées. Il retient la combinaison de touches proposée par défaut par le système d'exploitation, par exemple"Ctrl+Tab", qui lui permettra de passer de El à E2, de E2 à E3 et de E3 à-El. Le système d'exploitation lui propose éventuellement d'afficher l'environnement dans lequel il se trouvera, quelque part sur l'écran d'affichage, au niveau par exemple de la barre des tâches d'un barreau de l'application au moyen d'une caractéristique visuelle éventuellement choisie par l'utilisateur parmi une liste proposée par le système d'exploitation. Ensuite, lorsque l'utilisateur souhaite lancer une application qui n'a pas encore été classée dans un de ces environnements, le système d'exploitation détermine d'abord si l'application est ou n'est pas sécurisée. On va à présent décrire en relation avec la figure 3, différentes étapes permettant de distinguer une application sécurisée de celle qui ne l'est pas ou plus généralement de celle à laquelle l'utilisateur ne peut faire confiance. On va prendre comme exemple d'applications sécurisées, les applications dont le code a été signé par un dispositif mettant en oeuvre un algorithme de cryptographie tel que l'algorithme RSA du nom de ses auteurs (Rivest, Shamir et Adleman), bien connu de l'homme du métier. Lors du lancement d'une application résidente qui n'a pas encore été classée dans un environnement ou lors du chargement ou téléchargement d'une nouvelle application sur l'ordinateur, en l'occurrence du code de l'application, on procède à des vérifications avant de lancer l'exécution du code de l'application. Il s'agit de vérifier que le code est authentique c'est-à-dire vérifier d'une part que le code est signé et si c'est le cas que la signature est valide. Si l'une de ces deux conditions n'est pas vérifiée, l'application est classée dans l'environnement E2 des applications non sécurisée. Mais un code authentique ne suffit pas toujours pour classer l'application dans l'environnement El des applications sécurisées. En effet si, pendant l'exécution d'une application dont le code est signé et dont la signature est valide, l'ouverture d'une connexion réseau (une connexion Internet par exemple) est demandée par l'application, on vérifie que la connexion est également sécurisée. Si c'est le cas, c'est-à-dire si le certificat est valide et déjà connu du système d'exploitation ou non encore connu du système d'exploitation mais reconnu par l'utilisateur, l'application est classée dans l'environnement El des applications sécurisées. Si l'une des conditions n'est pas remplie, l'application est classée dans l'environnement E2 des applications non sécurisées. REVENDICATIONS 1. Procédé de gestion d'applications informatiques par le système d'exploitation d'un système informatique multi-applications dont dispose un utilisateur, caractérisé en ce qu'il consiste à prévoir dans le système d'exploitation un mécanisme permettant de : a) créer au moins deux environnements permettant à l'utilisateur d'accéder à des groupes d'applications correspondant à chacun desdits environnements, b) définir une combinaison de touches permettant à l'utilisateur de passer d'un environnement à l'autre, c) détecter à quel environnement correspond chacune desdites applications résidentes et futures, d) classer chacune desdites applications dans l'environnement qui lui correspond. 2. Procédé selon la revendication précédente, caractérisé en ce qu'un premier environnement concerne un groupe d'applications sécurisées, un deuxième environnement, un groupe d'applications non sécurisées. 3. Procédé selon la revendication précédente, l'application se présentant sous la forme d'un code, caractérisé en ce que l'étape c) consiste préalablement au lancement de l'application à vérifier que ledit code de l'application est signé et lorsque c'est le cas, à vérifier que la signature est valide. 4. Procédé selon la revendication 2 ou 3, caractérisé en ce que l'étape c) consiste à vérifier pendant l'exécution d'une desdites applications, à chaque demande d'ouverture d'une connexion réseau, que ladite connexion est sécurisée. 5. Procédé selon l'une des revendications 2 à 4, caractérisé en ce qu'il consiste à créer un troisième environnement concernant les applications sécurisées et les applications non sécurisées. 6. Procédé selon l'une des revendications précédentes, caractérisé en ce que certaines desdites applications sont téléchargées dans ledit système informatique à partir d'un réseau accessible par l'intermédiaire d'un programme de navigation.