Brevet FR3026207A1 — publié le 20160325

TERMINAL A AFFICHAGE SECURISE DOMAINE DE L'INVENTION La présente invention concerne un terminal sécurisé comprenant : - un écran pour l'affichage de données visuelles ; - un sous-système d'affichage pour le contrôle de l'affichage de données visuelles sur ledit écran ; - une unité centrale de traitement pour l'exécution d'instructions de programmes exécutables et l'envoi de commandes d'affichage au sous-système d'affichage ; et - un dispositif de communication reliant l'unité centrale de traitement au sous-système d'affichage. Il concerne en outre un procédé de sécurisation de l'affichage d'un tel terminal. ART ANTERIEUR Dans le domaine de la sécurité informatique, on distingue les codes dits dignes de confiance de ceux qui ne sont pas dignes de confiance. Un code est dit digne de confiance lorsque l'utilisateur/le développeur est confiant que le code exécuté respecte une politique de sécurité ou une spécification qui contraint/limite généralement les comportements autorisés. Par exemple, le code dit digne de confiance est vérifié par des méthodes formelles garantissant que son fonctionnement est conforme aux spécifications. Un code n'est pas digne de confiance dans les autres cas. Il peut alors se comporter de manière non conforme à ce qu'il est censé faire ou à ce qui est attendu. Cela peut arriver soit parce que le code est mal écrit ou écrit par des acteurs auxquels il n'est pas possible de faire confiance, soit parce qu'il est corrompu, ou même, mal configuré. Mais cela peut aussi être le cas si l'on manque d'informations sur le code lui-même, ou la manière avec laquelle il a été développé. Dans un contexte de sécurité, en présence de code non digne de confiance, il est généralement assumé une attitude pessimiste en supposant que le code en question peut utiliser tous les moyens dont il dispose pour faire le pire. De la même façon, un canal de communication est dit sûr s'il est physiquement sûr, ou s'il est sécurisé virtuellement. Le canal de communication est physiquement sûr s'il est sécurisé par un contrôle physique. C'est un concept analogue à celui de code de confiance en considérant que le canal est une fonction informatique. Et un canal de communication est sécurisé virtuellement s'il utilise un protocole cryptographique qui apporte certains éléments de sécurité. Par exemple, un VPN (en anglais « Virtual Private Network » - réseau privé virtuel) est un canal sécurisé virtuellement. Les terminaux modernes sont généralement ouverts. Ils peuvent charger des applications et des données d'origines diverses et non de confiance. Cela peut conduire à des attaques, notamment des attaques logicielles, susceptibles de corrompre le système d'exploitation du terminal en exploitant par exemple des failles de ce système, notamment des erreurs d'implémentation, de design, de configuration, ou de manipulation. Or, il est utile de pouvoir faire confiance aux terminaux au moins à des moments particuliers, par exemple, lors de phases de transactions financières, de signature, ou à l'occasion de la saisie de données confidentielles. En particulier, il est important que l'utilisateur d'un terminal soit certain que ce qu'il « signe est identique à ce qu'il voit » sur l'écran de son terminal. Par exemple, lors de la saisie d'un secret, tel qu'un code PIN (Personnal Identification Number Numéro d'Identification Personnel), l'utilisateur doit être certain qu'il saisit son code dans un cadre digne de confiance et que la confidentialité de ce code est bien garantie. Dans un autre exemple, lorsque l'utilisateur approuve une transaction financière visualisée sur l'écran de son terminal, il doit être certain que le montant qui est affiché est le montant réel pour lequel il donne son accord. Pratiquement, lorsque qu'un utilisateur souhaite consulter son compte bancaire sur l'Internet au moyen de son téléphone intelligent (« smartphone » en langue anglaise), il exécute une application bancaire et dialogue avec cette application à l'aide d'un écran et d'un clavier généralement virtuel. 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 son numéro de client à l'aide du clavier. 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. 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.35 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. Une technique d'attaque consiste à prendre le contrôle des périphériques de sortie de l'interface et, notamment, à prendre le contrôle de l'affichage de l'écran, par exemple, en prenant le contrôle de l'unité centrale de traitement du terminal, et d'émuler ou de 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. Compte tenu de ce qui précède, un problème que se propose de résoudre l'invention est de fournir un terminal qui garantisse certaines propriétés de sécurité lors de certaines phases d'interaction sans avoir à faire confiance au processeur, à son système d'exploitation et à ses applications. RESUME DE L'INVENTION La solution de l'invention à ce problème a pour premier 30 objet un terminal sécurisé comprenant : - un écran pour l'affichage de données visuelles ; - un sous-système d'affichage pour le contrôle de l'affichage de données visuelles sur ledit écran ; - une unité centrale de traitement pour l'exécution d'instructions de programmes exécutables et l'envoi de commandes d'affichage au sous-système d'affichage ; - un dispositif de communication reliant l'unité 5 centrale de traitement au sous-système d'affichage ; caractérisé en ce qu'il comprend en outre : - un processeur de sécurité pour une interprétation et/ou un traitement de commandes de sécurité pour un affichage sécurisé de données visuelles sécurisées sur 10 ledit écran ; et - un moyen de reconnaissance, par un utilisateur du terminal, d'un mode d'affichage sécurisé des données visuelles sécurisées lorsque lesdites données visuelles sécurisées, dont l'affichage est commandé par le 15 processeur de sécurité, sont affichées. De manière avantageuse, - le processeur de sécurité filtre des commandes destinées à être traitées par le système d'affichage, et/ou interprète et/ou traite les 20 commandes de sécurité et commande l'affichage de données visuelles sécurisées dans le mode d'affichage sécurisé des données visuelles sécurisées ; - les commandes de sécurité envoyées au processeur de sécurité sont des commandes signées, qui garantissent l'intégrité et/ou 25 l'authentification des données sécurisées affichées ; - les commandes de sécurité envoyées au processeur de sécurité sont des commandes chiffrées ou brouillées qui garantissent la confidentialité des données sécurisées affichées ; - le processeur de sécurité gère plusieurs 30 domaines de sécurité, ainsi que les moyens de reconnaissances visuels correspondants ; le sous-système d'affichage comporte au moins un tampon de trame principal et le processeur de sécurité comporte un tampon de trame de sécurité ; et - le terminal est un téléphone 35 intelligent ou une tablette. La solution de l'invention a pour second objet un procédé de sécurisation de l'affichage de données visuelles au moyen d'un terminal tel que défini ci-dessus, caractérisé en ce qu'il comprend les étapes suivantes selon lesquelles : - l'unité centrale de traitement traite des instructions de programmes exécutables et envoie des commandes d'affichage au sous-système d'affichage par le dispositif de communication reliant l'unité centrale de traitement au sous-système d'affichage ; - les commandes d'affichage envoyées au sous-système d'affichage par l'unité centrale de traitement sont filtrées et/ou traitées par le processeur de sécurité ; - le processeur de sécurité commande un affichage sécurisé des données sécurisées ; et - le processeur de sécurité commande le moyen de reconnaissance du mode d'affichage sécurisé des données visuelles sécurisées. De manière avantageuse, - les commandes de sécurité sont signées, garantissant l'intégrité et/ou l'authentification des données sécurisées affichées ; les commandes de sécurité sont brouillées ou chiffrées, garantissant la confidentialité des données affichées ; - le processeur de sécurité gère plusieurs domaines de sécurité, ainsi que les moyens de reconnaissances visuels correspondants ; - le moyen de reconnaissance est un moyen de reconnaissance visuelle affiché à l'écran ; - et le sous-système d'affichage comporte au moins un tampon de trame principal et en ce que le processeur de sécurité comporte un tampon de trame de sécurité et en ce que le processeur de sécurité est le seul à écrire dans le tampon de trame de sécurité.35 L'invention permet de ne faire confiance qu'au système d'affichage quand il affiche, dans un mode sécurisé, et à l'application sécurisée située par exemple sur un serveur ou sur un composant sécurisé, par exemple une carte à puce, ou même une zone sécurisée du processeur, par exemple une zone du type de la zone dénommée TrustZonerrn de la Société ARMTm, qui lui prépare les informations à afficher ou à entrer de manière sécurisée. Les autres composants du terminal peuvent jouer un rôle fonctionnel. D_ s'agit par exemple relayer les messages, mais sans que l'on ait besoin de leur faire confiance. BREVE DESCRIPTION DES FIGURES L'invention sera mieux comprise à la lecture de la description non limitative qui suit, rédigée au regard des dessins annexés, dans lesquels : - la figure 1 représente, de manière schématique, un terminal selon l'invention, muni d'un écran et 20 affichant le mode d'affichage sécurisé des données sécurisées ; - la figure 2 représente, de manière schématique, les moyens matériels mis en oeuvre dans le terminal sécurisé de l'invention, pour la sécurisation de 25 l'affichage ; et - la figure 3 est un diagramme qui illustre les différentes étapes du procédé de sécurisation selon l'invention. 30 DESCRIPTION DETAILLEE DE L'INVENTION La présente invention concerne un terminal. Un tel terminal est représenté à la figure 1. Dans cette figure, il est référencé 1. Il s'agit avantageusement d'un terminal portatif, notamment un téléphone portable intelligent ou une tablette. Le terminal 1 est équipé d'un écran 2. Sur cet écran 2, 5 on a représenté, à la figure 1 précitée, une zone d'affichage sécurisée comprenant une zone d'entrée sécurisée des données, ainsi qu'un clavier virtuel 3. Ce clavier virtuel 3 est par exemple un clavier numériques à touches positionnées aléatoirement. Un bouton 4 permet 10 par exemple la sortie du mode d'affichage sécurisé des données. Ainsi que cela apparaît à la figure 2, le terminal 1 sécurisé selon l'invention comprend un sous-système 15 d'affichage 5. Le sous-système d'affichage 5 comprend un ou plusieurs composants. Il contrôle l'écran 2. A cet effet, il récupère les informations constitutives des images contenues par exemple dans une zone mémoire d'un tampon de trame (« frame buffer » en langue anglaise), 20 convertit ces informations et commande l'affichage des images à l'écran 2. Pour l'affichage, le sous-système d'affichage 5 exécute des commandes d'affichage qui lui sont transmises. Dans la présente description, dans le cas où le terminal 1 comporte un tampon de trame, on 25 considère que ce terminal 1 comporte au moins un tampon de trame dit principal et, éventuellement, au moins un tampon de trame dit de sécurité. Le tampon de trame principal est considéré comme étant partie du sous-système d'affichage 5. 30 Selon l'invention, le sous-système d'affichage 5 est complété par un processeur de sécurité 10 pour former, avec l'écran 2, un système d'affichage sécurisé 6. Grâce à ce processeur sécurisé 10, le système d'affichage 35 sécurisé 6 est apte à gérer plusieurs modes d'affichage, un au moins de ces modes étant un mode d'affichage sécurisé. Lorsque le système d'affichage sécurisé 6 reçoit une commande de sécurité, par exemple une commande comportant un paramètre de sécurité, cette commande est analysée et traitée par le processeur de sécurité 10 et potentiellement utilisée pour commander le sous-système d'affichage 5, ou pour mettre jour les données à processeur de sécurité 10. Dans le cas contraire, cette commande est transmise directement au sous-système d'affichage 5 qui interprète cette commande, compose des données visuelles, notamment des données d'images, et affiche ces données visuelles à l'écran 2 selon la commande qui lui est transmise. Les commandes d'affichage reçues par le sous-système d'affichage 5 sont donc susceptibles de provenir du processeur de sécurité 10 ou de l'unité centrale de traitement 8. Le terminal comprend en outre au moins une mémoire 7. Cette mémoire 7 est par exemple une mémoire Flash. Des applications et des données sont enregistrées dans la mémoire 7. Il peut s'agir d'applications exigeant un niveau de sécurité élevé, comme des applications bancaires, qui permettent à un utilisateur d'accéder à ses comptes en ligne et d'opérer des transactions financières. Il peut s'agir d'applications malveillantes ou comportant un code corrompu, qui mettent en danger la sécurité du terminal 1 et les secrets saisis ou affichés à l'écran 2. L'unité centrale de traitement 8, ou CPU (pour « Central Processing Unit », en langue anglaise), est le composant central du terminal, qui exécute les instructions des programmes logiciels exécutables qui sont contenues dans une mémoire du terminal 1 ou qui lui sont transmises par des périphériques, par exemple par le clavier 3. Elle du exécute ces instructions et envoie des commandes d'affichage au système d'affichage sécurisé 11, en particulier, au sous-système d'affichage 5 quand celui-ci peut être accédé directement. Le terminal 1 comprend par ailleurs un dispositif de communication 9 qui relie l'unité centrale de traitement 8 au système d'affichage sécurisé 11. Ce dispositif de communication 9 est classiquement un système de bus, qui conduit les commandes d'affichage au sous-système d'affichage 5 directement ou indirectement. Le terminal 1 comprend en outre, selon l'invention, le processeur de sécurité 10. Ce processeur de sécurité 10 est un composant matériel. Il peut être indépendant physiquement des autres composants du terminal 1, c'est-à-dire former une entité physique indépendante et qui peut être distinguée des autres composants. Il peut aussi ne pas être indépendant physiquement des autres composants du terminal. Par exemple, il peut être indépendant physiquement de l'unité centrale de traitement 8 ou au moins en partie lié ou incorporé dans cette unité. Dans le cas où il est au moins en partie lié à l'unité 8, il s'agit d'un coprocesseur de sécurité de cette unité. Dans certaines variantes de réalisation de l'invention, il est intégré au sous-système d'affichage 5, c'est-à-dire à l'un de ses composants, d'une manière qui ne permettent plus de distinguer les deux et/ou qui supprime le besoin d'un dispositif additionnel de communication entre le processeur 10 et le sous-système d'affichage 5. Alternativement, le processeur de sécurité 10 peut être placé sur le canal de communication entre le sous-système d'affichage 5 et l'unité centrale de traitement 8 à condition de lui donner les moyens de contrôler au moins partiellement le sous-système d'affichage 5, par exemple, en lui donnant un accès direct et exclusif à certaines commandes du sous-système d'affichage 5. Ce processeur de sécurité 10 remplit différentes fonctions. Il filtre au moins certaines commandes d'affichage transmises par l'unité centrale de traitement 8 au sous-système d'affichage 5. Les commandes filtrées sont notamment des commandes d'affichage, qui découlent de l'exécution d'applications de confiance et exigeant un degré de sécurité élevé, et qui sont transmises par l'unité de commande 8 au sous-système d'affichage 5. Le processeur de sécurité 10 interprète les commandes d'affichage et, en particulier, les commandes précitées, que nous appelons commandes de sécurité, les exécute dans un cadre sécuritaire, et gère en particulier le mode d'affichage sécurisé. Il effectue des vérifications sécuritaires et contrôle à lui seul, sans l'intervention de l'unité centrale de traitement 8, le sous-système d'affichage 5 lorsqu'il déclenche un mode dit d'affichage sécurisé. A cet effet, il maintient un état comportant une représentation des données visuelles sécurisées à afficher et une information indiquant si ces données visuelles sécurisées doivent être affichées ou non. Le processeur de sécurité 10 est avantageusement associé à une ou plusieurs clé de chiffrement, notamment une clé privée et/ou une clé publique, qui lui permettent d'authentifier ou vérifier l'intégrité, des commandes de sécurité qu'il reçoit. Les commandes de sécurité sont, dans un exemple, identiques aux commandes d'affichage classique qui sont transmises par l'unité centrale de traitement 8 au système d'affichage 5, mais comportent en outre des paramètres de sécurité tels qu'une signature numérique, par exemple en partie terminale de la commande. Il s'agit notamment, mais non exclusivement, de commandes de description de données, y compris la commande de Remise à Zéro (RAZ), des commandes d'affichage et de fin d'affichage. Le processeur de sécurité 10 dispose des moyens de vérifier l'authenticité et/ou la signature des commandes qu'il reçoit. Le terminal 1 comprend un dispositif de communication 12, qui relie le processeur de sécurité 10 au sous-système d'affichage 5. Ce dispositif de communication 12 est 10 classiquement un système de bus, qui conduit les commandes d'affichage sécurisé au sous-système d'affichage 5. Le dispositif de communication 12 et le dispositif de communication 9 peuvent former un même système de bus. Le dispositif de communication 12 peut 15 cependant être un dispositif dédié uniquement à la transmission de commandes d'affichage sécurisé au sous-système d'affichage 5. Il peut ne pas exister dans le cas où les deux composants ou sous-systèmes 5 et 10 sont intégrés dans un même composant. Une partie des 20 fonctionnalités du processeur de sécurité 10 peut aussi être intégrée au sous-système d'affichage 5 tout en laissant une autre partie dans un composant ou sous-système distinct. Par exemple, le sous-système d'affichage 5 peut être muni d'une entrée particulière 25 accessible uniquement par le processeur de sécurité 10, par exemple, par un branchement physique direct, et qui permet de bloquer certaines commandes envoyées au sous-système d'affichage 5. Cela permet en effet au processeur de sécurité 10 de filtrer les commandes envoyées au sous- 30 système d'affichage 5 sans avoir à relayer lui même les commandes non modifiées, par exemple les commandes d'affichage non sécurisé, ce qui pourrait être pénalisant d'un point de vue performances. Le terminal 1 comprend enfin un moyen de reconnaissance, par exemple visuelle, par un utilisateur dudit terminal, du mode d'affichage sécurisé des données visuelles sécurisées. Ce moyen de reconnaissance visuelle est 5 notamment une marque visible à l'écran 2 indicative du mode d'affichage sécurisé. Il peut cependant s'agir d'un autre moyen de reconnaissance, par exemple, une lumière de couleur affichée sur le téléphone au moyen d'une diode lumineuse (LED - Light Emissive Diode en langue anglaise 10 - diode émettant de la lumière), voire d'une vibration caractéristique du téléphone. A la figure 1, ce moyen de reconnaissance est référencé 11. Il s'agit des mots « AFFICHAGE SECURISE / secret 4567» avec 4567 représentant un secret qui est connu uniquement de 15 l'utilisateur et du processeur de sécurité 10, mais pas des composants qui ne sont pas dignes de confiance, par exemple, l'unité centrale de traitement et ses applications. Cela permet à l'utilisateur de reconnaître sans ambiguïté la fenêtre comme étant un affichage de 20 sécurité, car les applications ou composants non de confiance sont incapables de constituer une telle fenêtre. En effet, seul le processeur de sécurité 10 en a la capacité. Cela constitue donc un moyen de reconnaissance visuelle 11 qui est affiché à l'écran 2 25 lorsque les données visuelles sécurisées, sous le contrôle du processeur de sécurité 10, sont affichées. Dans l'exemple de la figure 1, les données visuelles sécurisées 12 sont formées par un cadre d'entrée d'un code personnel précédé des mots « ENTER PIN CODE ». 30 Cependant, ce sera plus typiquement un clavier à touches aléatoires (ou clavier « scrambled » en langue anglaise - pour brouillé) dont la disposition aléatoire ne sera connue que par les composants sécurisés. Dans de nombreux cas le sous-système d'affichage 5 utilise une ou plusieurs zones mémoires. Il s'agit notamment de tampons de trames (« frame buffers » en langue anglaise). Les tampons de trames sont des zones mémoires dans lesquelles sont stockées, pixel par pixel, des informations constitutives des images à afficher à l'écran 2. Elles sont susceptibles de se situer dans la mémoire 7, ou à un autre emplacement physique dans le terminal 1, par exemple un emplacement physique distinct de cette mémoire 7. Toutefois, ces zones mémoires de tampons de trames sont considérées ici comme faisant partie de la mémoire 7, mais aussi du sous-système d'affichage 5 ainsi que du moyen de communication 9 entre les deux. Il y a donc recoupement des différentes notions. Certaines commandes d'affichage consistent ainsi pour l'unité centrale de traitement 8 de décrire l'écran à afficher dans la zone mémoire du tampon de trames prévue à cet effet. Il s'agit de la zone mémoire du tampon de trames principale, partie du sous-système d'affichage. Une manière d'implémenter l'invention consiste donc à réserver une zone mémoire de tampon de trame distincte pour la sécurité. Il s'agit alors du tampon de trame de sécurité considéré comme étant partie du processeur de sécurité 10. Cela facilite notamment grandement la tâche de ce processeur 10. De manière générale, il se peut qu'une commande d'affichage provenant de l'unité centrale 8, non sécurisée, puisse potentiellement compromettre l'intégrité ou la sécurité de l'affichage sécurisé, en risquant de modifier l'affichage sécurisé. Dans ce cas, il appartient au processeur de sécurité 10 de détecter et réagir à cette situation, par exemple, en quittant le mode d'affichage sécurisé, ou en bloquant la commande en défaut. Dans l'exemple de mise en oeuvre donné précédemment selon lequel une zone mémoire tampon de trame de sécurité est utilisée, cela revient notamment à vérifier que personne d'autre que le processeur de sécurité 10 n'écrit dans cette zone, et que personne d'autre que le processeur de sécurité 10 et le sous-système d'affichage 5 ne lit dans la zone. Dans ce cas d'implémentation, on considère encore que le tampon de trame principal fait partie du sous-système d'affichage, et que le tampon de trame de sécurité fait lui partie du processeur de sécurité. Ainsi les mises à jours du tampon de trame principal seront considérées comme des commandes d'affichage inoffensives pour la sécurité, alors que les mises à jour du tampon de trame de sécurité ne devra être fait que par le processeur de sécurité. Ce tampon constituera en quelque sorte une partie de l'état interne de ce processeur de sécurité. Une tentative de mise à jour du tampon de trame de sécurité par l'unité centrale de traitement ou tout autre composant que le processeur de sécurité 10 sera considérée typiquement par une commande de sécurité illégitime à laquelle le processeur de sécurité 10 devra réagir. Le travail de filtrage du processeur de sécurité 10 sera typiquement fait par surveillance du bus qui servira ici notamment de moyen de communication entre le processeur principal, la mémoire, le processeur de sécurité, plus généralement le sous-système d'affichage. Le bus servira aussi de moyen de communication interne du sous-système d'affichage, c'est-à-dire entre le tampon de trame principal et les autres composants du sous-système d'affichage 5. Pour la sécurisation de l'affichage d'un terminal selon l'invention, on procède selon les étapes présentées ci-35 après au regard de différents exemples. Dans un premier exemple, un utilisateur souhaite exécuter une application dans un environnement sécuritaire, notamment une application bancaire. Pour cela, il utilise une application enregistrée dans la mémoire 7 de son terminal téléphonique portatif, ici un téléphone intelligent, en vue d'opérer une transaction financière. Cette application, qui est stockée et/ou s'exécute sur un composant qui n'est pas de confiance, n'est présente que pour exécuter des opérations non critiques pour la sécurité de l'application bancaire. Il s'agit par exemple de commander le lancement de l'application bancaire correspondante qui, elle, s'exécute sur un serveur bancaire sécurisé ou sur une carte à puce locale, l'envoi des informations de transactions à valider, etc. A cet effet, l'utilisateur clique sur une icône appropriée de l'application locale, apparente à l'écran 2. La commande d'exécution de l'application est prise en compte par l'unité centrale de traitement 8. Pour l'exécution de cette application, l'unité de traitement 8 commande par exemple une connexion à un serveur distant relié au terminal par un réseau de télécommunication par exemple du type GSM. Dans le déroulement de l'exécution de l'application, l'application et/ou le serveur distant commande l'affichage d'une fenêtre pour la saisie, par l'utilisateur, d'un code secret permettant d'authentifier l'utilisateur ou valider la transaction. L'unité de traitement 8 transmet cette commande d'affichage au sous-système d'affichage 5, pour l'affichage d'une fenêtre correspondante à l'écran 2. Le processeur de sécurité 10 filtre cette commande d'affichage, et l'interprète comme une commande de sécurité devant servir à un affichage sécurisé. L'unité de traitement 8 peut dans une version plus adaptée envoyer directement cette commande de sécurité vers le processeur de sécurité 10 pour qu'il la traite. Pour réaliser cet affichage de sécurité le processeur de sécurité 10 prend le contrôle du système d'affichage 5, ce qui conduira par exemple le processeur sécurisé dans l'exemple d'implémentation reposant sur un tampon de trame sécurisé, à construire dans ce tampon de trame sécurisé le clavier virtuel aléatoire dont les caractéristiques auront été envoyées par le serveur de manière confidentielle chiffrée dans l'une des commandes destinées au processeur de sécurité, et que le processeur principal se sera contenté de transmettre sans les comprendre, puis de demander ensuite au sous-système d'affichage d'afficher le tampon de trame sécurisé une fois constitué. L'unité centrale de traitement 8 n'intervient plus dans l'affichage. Si l'unité centrale tente pendant l'affichage sécurisé d'envoyer une commande non sécurisée qui peut corrompre ou menacer l'affichage sécurisé, par exemple en tentant de recouvrir ou modifiant les données sécurisées affichés à l'écran, si le noyau tournant sur le processeur est corrompu, le processeur de sécurité doit intervenir soit par exemple pour bloquer la commande, soit pour arrêter l'affichage sécurisé de manière à garantir à tout moment l'intégrité et le bon repérage de l'affichage de sécurité, c'est-à-dire l'affichage du moyen de reconnaissance. Le processeur de sécurité 10 vérifie que les commandes de sécurité, ainsi que le contenu des informations de sécurité qu'il affiche, sont intègres et/ou authentiques. Dès qu'un affichage sécurisé est prêt, et qu'une demande 35 d'affichage authentique est faite par l'intermédiaire d'une commande de sécurité appropriée demandée par le serveur dans l'exemple considéré, le processeur de sécurité 10 déclenche un affichage sécurisé des données sécurisées. Autrement dit, il déclenche le mode d'affichage sécurisé des données sécurisées. Il envoie une commande ou plusieurs commandes à cet effet au système d'affichage 5, par exemple le changement du registre pointant sur le tampon de trame. L'unité centrale de traitement 8 n'intervient pas non plus dans cette étape du procédé autrement que comme relais ou pour des tâches accessoires qui n'ont pas d'incidence sur la sécurité de la transaction et n'intervient pas plus non plus pour l'affichage dans les étapes suivantes, tant que le mode sécurisé est déclenché. L'écran caractéristique du mode d'affichage sécurisé est affiché par exemple superposé à l'écran classique, ou dans une fenêtre superposée sur celui-ci. Le processeur de sécurité 10 commande l'affichage de moyen de reconnaissance visuelle 11. La commande est reçue par le système d'affichage, en pratique le sous-système d'affichage 5, qui commande lui-même l'affichage du moyen de reconnaissance à l'écran 2. Le moyen de reconnaissance 11 est affiché à l'écran 2 et l'utilisateur du terminal comprend de manière non ambigüe, en visualisant ce moyen de reconnaissance, que le mode d'affichage sécurisé est déclenché. Le serveur distant demande par exemple l'entrée d'un PIN Code par l'utilisateur. Cette demande est reçue par le processeur de sécurité 10 qui l'exécute en demandant au sous-système d'affichage 5, l'affichage de la fenêtre d'entrée du PIN Code, qu'il va par exemple présenter en construisant et gérant un clavier aléatoire. L'unité centrale de traitement 8 n'intervient toujours pas pour l'affichage. Le sous-système d'affichage 5 affiche la fenêtre de saisie du PIN Code à l'écran 2. L'utilisateur saisit alors son PIN Code dans la fenêtre d'entrée sécurisée des données sécurisées, par exemple à l'aide du clavier à touches aléatoires. Dans la mesure où le clavier est à touches aléatoires, l'entrée des touches du clavier peut être réalisée par l'unité centrale de traitement 8 sans qu'il soit besoin de lui faire confiance, car il ne connaitra pas la correspondance entre les touches et leurs valeurs. Seul le processeur de sécurité 10 et/ou l'application sur le serveur les connaitra et pourra traduire la séquence d'entrée du code PIN. La saisie elle-même du code peut être effectuée dans un environnement de confiance. L'authentification de l'utilisateur sera faite sans qu'il soit nécessaire de faire confiance à l'unité centrale de traitement ou aux applications qu'il héberge. Une fois l'utilisateur authentifié, une transaction électronique de nature financière peut être engagée, dans le mode d'affichage sécurisé. Ici aussi, l'unité centrale de traitement 8 ne fait pas partie de l'espace de confiance. L'affichage est commandé uniquement par le processeur de sécurité 10 qui coopère avec le sous-système d'affichage 5. Toutes les commandes de sécurité transmises au processeur de sécurité 10 sont par exemple vérifiées, signées voire chiffrées. L'authenticité et l'intégrité de toutes les données affichées dans le mode d'affichage sécurisé sont vérifiées par le processeur de sécurité 10. Si le terminal 1 comprend un code non digne de confiance, 35 par exemple un code malicieux, qui exploite une faille du système d'exploitation du terminal. Alors, cette faille intervient sur les commandes d'affichage transmises par l'unité centrale de traitement 8 au sous-système d'affichage 5. Ce code malicieux ne pourra plus 5 intervenir sur l'affichage dans le mode sécurisé d'affichage des données sécurisées, car, effectivement, l'unité centrale de traitement 8 n'intervient pas ou uniquement pour des tâches qui ne nécessite aucune confiance et, s'il essaie par exemple de construire de 10 fausses commandes de sécurité, le processeur de sécurité 10 détectera leur non validité. Le système selon l'invention est ainsi sécurisé. 15 Pour la sortie du mode d'affichage sécurisé, l'utilisateur, par exemple, actionne le bouton 4. L'affichage est alors remis à zéro sous la commande du processeur de sécurité 10. 20 REVENDICATIONS1. Terminal (1) sécurisé comprenant : - un écran (2) pour l'affichage de données visuelles ; - un sous-système d'affichage (5) pour le contrôle 5 de l'affichage de données visuelles sur ledit écran (2) ; - une unité centrale de traitement (8) pour l'exécution d'instructions de programmes exécutables et l'envoi de commandes d'affichage au sous-système d'affichage (5) ; 10 - un dispositif de communication (9) reliant l'unité centrale de traitement (8) au sous-système d'affichage (5) caractérisé en ce qu'il comprend en outre : un processeur de sécurité (10) pour une 15 interprétation et/ou un traitement de commandes de sécurité pour un affichage sécurisé de données visuelles sécurisées sur ledit écran (2) ; et - un moyen de reconnaissance (11), par un utilisateur du terminal (1), d'un mode d'affichage 20 sécurisé des données visuelles sécurisées lorsque lesdites données visuelles sécurisées, dont l'affichage est commandé par le processeur de sécurité (10), sont affichées. 25 2. Terminal (1) selon la revendication 1, caractérisé en ce que le processeur de sécurité (10) filtre des commandes destinées à être traitées par le sous-système d'affichage (5), et/ou interprète et/ou traite les commandes de sécurité et commande l'affichage 30 de données visuelles sécurisées dans le mode d'affichage sécurisé des données visuelles sécurisées. 3. Terminal (1) selon l'une des revendications précédentes, caractérisé en ce que les commandes de sécurité envoyées au processeur de sécurité (10) sont des commandes signées, qui garantissent l'intégrité et/ou l'authentification des données sécurisées affichées. 4. Terminal (1) selon l'une des revendications précédentes, caractérisé en ce que les commandes de sécurité envoyées au processeur de sécurité (10) sont des commandes chiffrées ou brouillées qui garantissent la confidentialité des données sécurisées affichées. 5. Terminal (1) selon l'une des revendications précédentes en ce que le processeur de sécurité (10) gère 15 plusieurs domaines de sécurité, ainsi que les moyens de reconnaissances visuels correspondants. 6. Terminal (1) selon l'une des revendications précédentes, caractérisé en ce que le moyen de 20 reconnaissance (11) est un moyen de reconnaissance visuelle affiché à l'écran (2). 7. Terminal (1) selon l'une des revendications précédentes, caractérisé en ce que le sous-système 25 d'affichage (5) comporte au moins un tampon de trame principal et en ce que le processeur de sécurité (10) comporte un tampon de trame de sécurité. 8. Terminal (1) selon l'une des revendications 30 précédentes, caractérisé en ce qu'il est un téléphone intelligent ou une tablette. 9. Procédé de sécurisation de l'affichage de données visuelles au moyen d'un terminal (1) selon l'une desrevendications précédentes, caractérisé en ce qu'il comprend les étapes suivantes selon lesquelles : - l'unité centrale de traitement (8) traite des instructions de programmes exécutables et envoie des commandes d'affichage au sous-système d'affichage (5) par le dispositif de communication (9) reliant le l'unité centrale de traitement (8) au sous-système d'affichage (5) ; - les commandes d'affichage envoyées au sous-système 10 d'affichage (5) par l'unité centrale de traitement (8) sont filtrées et/ou traitées par le processeur de sécurité (10) ; - le processeur de sécurité (10) commande un affichage sécurisé des données sécurisées ; et 15 - le processeur de sécurité (10) commande le moyen de reconnaissance (11) du mode d'affichage sécurisé des données visuelles sécurisées. 10. Procédé selon la revendication 9, caractérisé en 20 ce que les commandes de sécurité sont signées, garantissant l'intégrité et/ou l'authentification des données sécurisées affichées. 11. Procédé selon l'une des revendications 9 ou 10, 25 caractérisé en ce que les commandes de sécurité sont brouillées ou chiffrées, garantissant la confidentialité des données affichées. 12. Procédé selon l'une des revendications 9 à 11, 30 caractérisé en ce que le processeur de sécurité (10) gère plusieurs domaines de sécurité, ainsi que les moyens de reconnaissances visuels correspondants. 13. Procédé selon l'une des revendications 9 à 12, 35 caractérisé en ce que le moyen de reconnaissance (11) estun moyen de reconnaissance visuelle affiché à l'écran (2). 14. Procédé selon l'une des revendications 9 à 13, caractérisé en ce que le sous-système d'affichage (5) comporte au moins un tampon de trame principal et en ce que le processeur de sécurité (10) comporte un tampon de trame de sécurité et en ce que le processeur de sécurité est le seul à écrire dans le tampon de trame de sécurité.