Brevet FR3144346A1 — publié le 20240628

Procédé (100) de sécurisation d’une saisie des éléments d’un code personnel d’identification, dit code PIN, sur un terminal mobile (TM) configuré pour communiquer avec un serveur (S), le procédé comprenant les étapes suivantes mises en œuvre par le terminal mobile (TM): - réception (101) d’une séquence aléatoire d’instructions élémentaires en provenance du serveur (S), la séquence aléatoire d’instructions élémentaires étant configurée pour présenter un dessin affiché sur un écran tactile (ET) du terminal mobile (TM), après une exécution par un module de traitement (MT) du terminal mobile (TM) de la séquence aléatoire d’instructions élémentaires, ledit dessin affiché correspondant à au moins l’un parmi des zones de saisie d’un clavier virtuel (CV) et des éléments de code PIN (ECP) associés aux zones de saisie (ZS), - exécution (102) de la séquence aléatoire d’instructions élémentaires. Figure 3 Procédé de sécurisation de la saisie des chiffres d’un code personnel d’identification, et dispositif correspondant. La présente invention concerne le domaine des applications de paiement, et en particulier des applications logicielles configurées pour transformer en terminal de paiement un terminal mobile du commerce destiné au grand public. Il est connu d’utiliser une application logicielle pour transformer en terminal de paiement un terminal mobile du commerce, destiné à des clients non professionnels, par exemple un téléphone intelligent, de type smartphone en particulier. Ladite application logicielle met en œuvre un procédé configuré pour garantir la confidentialité du code personnel d’identification (code PIN) saisi sur le terminal mobile pour authentifier le détenteur de la carte de paiement. A cet effet, il est plus particulièrement connu de mélanger les positions relatives, sur l’écran du terminal, des zones utilisées pour la saisie des différents chiffres du code PIN, de manière à ce que ces positions relatives soient différentes pour une nouvelle transaction de ce qu’elles étaient pour la transaction précédente. Lesdites positions sont déterminées de manière aléatoire par un serveur distinct du terminal mobile ; ainsi, ces dispositions permettent de se défendre contre une attaque par un canal auxiliaire tel que l’écoute de capteurs du terminal, par exemple l’écoute d’un accéléromètre ou d’un gyroscope pour deviner les chiffres saisis pour le code PIN. Cette solution connue présente néanmoins l’inconvénient d’être insuffisante pour contrer la menace d’un attaquant qui écouterait et analyserait au cours de son exécution sur le terminal mobile l’application de paiement et/ou les flux de données échangées entre l’application de paiement et le serveur, pour identifier les positions respectives des zones et des chiffres du code PIN, et déterminer ainsi une présentation du clavier virtuel de saisie des chiffres du code PIN. L’invention a donc pour but de proposer une solution à tout ou partie de ces problèmes. A cet effet, la présente invention concerne un procédé de sécurisation d’une saisie des éléments d’un code personnel d’identification, dit code PIN, sur un terminal mobile configuré pour communiquer avec un serveur, le procédé comprenant les étapes suivantes mises en œuvre par le terminal mobile: - réception d’une séquence aléatoire d’instructions élémentaires en provenance du serveur, la séquence aléatoire d’instructions élémentaires étant configurée pour présenter un dessin affiché sur un écran tactile du terminal mobile, après une exécution par un module de traitement du terminal mobile de la séquence aléatoire d’instructions élémentaires, ledit dessin affiché correspondant à au moins l’un parmi des zones de saisie d’un clavier virtuel et des éléments de code PIN associés aux zones de saisie, - exécution de la séquence aléatoire d’instructions élémentaires. Selon un mode de mise en œuvre, l’invention comprend une ou plusieurs des caractéristiques suivantes, seules ou en combinaison techniquement acceptable. Selon un mode de mise en œuvre, la séquence aléatoire d’instructions élémentaires résulte d’une étape, mise en œuvre par le serveur, d’ordonnancement aléatoire d’une séquence initiale d’instructions élémentaires générée par le serveur, la séquence initiale étant également configurée pour présenter ledit dessin affiché, sur l’écran tactile du terminal mobile, après une exécution par le module de traitement du terminal mobile de la séquence initiale d’instructions élémentaires. Selon ces dispositions, une écoute frauduleuse, par un tiers, de la séquence d’instructions élémentaires ne lui permettra pas de déterminer une séquence initiale d’instructions élémentaires dont est issue la séquence aléatoire; l’ordonnancement aléatoire permet en effet de répartir l’information dans la séquence de sorte que la capture frauduleuse d’un segment de la séquence d’instructions élémentaires comporte moins d’information qu’un segment de la séquence initiale d’instructions élémentaires. Selon ces dispositions également, la séquence aléatoire, comme la séquence initiale, d’instructions élémentaires, ne comprend pas de référence directe aux zones de saisies et aux éléments de code PIN associés aux zones de saisie. Selon un mode de mise en œuvre, la séquence aléatoire d’instructions élémentaires comprend au moins une instruction encodée par le serveur, le procédé comprenant une étape de décodage préalable à l’exécution de la séquence aléatoire d’instructions élémentaires, pour générer au moins une instruction décodée de la séquence aléatoire d’instructions élémentaires. Selon ces dispositions, une écoute frauduleuse par un tiers de la transmission de données entre le serveur et le terminal mobile sera encore plus difficile à exploiter. Selon un mode de mise en œuvre, l’au moins une instruction décodée de la séquence aléatoire d’instructions élémentaires est fonction d’au moins une autre instruction décodée précédemment dans la séquence aléatoire d’instructions élémentaires. Selon un mode de mise en œuvre, au cours de l’étape d’exécution de la séquence d’instructions élémentaires décodées, au moins une instruction décodée de la séquence d’instruction est effacée après avoir été exécutée, et avant l’exécution de l’instruction suivante dans la séquence. Selon ces dispositions, une recopie d’une mémoire interne du terminal mobile ne permettra pas à l’attaquant de remonter à la séquence d’instructions élémentaires complète. Selon un aspect, l’invention concerne également un procédé de sécurisation d’une saisie des éléments d’un code personnel d’identification, dit code PIN, sur un terminal mobile configuré pour communiquer avec un serveur, le procédé comprenant les étapes suivantes mises en œuvre par le serveur : - génération d’une séquence aléatoire d’instructions élémentaires, la séquence aléatoire d’instructions élémentaires étant configurée pour présenter un dessin affiché sur un écran tactile du terminal mobile, après une exécution par un module de traitement du terminal mobile de la séquence aléatoire d’instructions élémentaires, le dessin affiché correspondant à au moins l’un parmi des zones de saisie d’un clavier virtuel et des éléments de code PIN associés aux zones de saisie, - transmission au terminal mobile de la séquence aléatoire d’instructions élémentaires. Selon un mode de mise en oeuvre, ledit procédé comprend une ou plusieurs des caractéristiques suivantes, seules ou en combinaison. Selon un mode de mise en oeuvre, le procédé comprend en outre une étape de génération d’une séquence initiale d’instructions élémentaires, la séquence initiale d’instructions élémentaires étant configurée pour présenter ledit dessin affiché sur un écran tactile du terminal mobile, après une exécution par le module de traitement du terminal mobile de la séquence initiale d’instructions élémentaires, un ordonnancement initial de la séquence initiale d’instructions élémentaires correspondant à une disposition sur l’écran du terminal mobile des zones de saisie et des éléments de code PIN associés aux zones de saisie ; l’étape de génération de la séquence aléatoire d’instructions élémentaires comprenant un ordonnancement aléatoire de la séquence initiale d’instructions élémentaires, pour modifier de manière aléatoire l’ordonnancement initial de la séquence initiale d’instructions élémentaires, l’ordonnancement aléatoire générant la séquence aléatoire d’instructions élémentaires; Selon ces dispositions, une écoute frauduleuse par un tiers de la séquence d’instructions élémentaires ne lui permettra pas de déterminer la séquence initiale ; l’ordonnancement aléatoire permet en effet de répartir l’information dans la séquence de sorte que la capture frauduleuse d’un segment d’instruction élémentaires comporte moins d’information qu’un segment de la séquence initiale. Selon ces dispositions également, la séquence initiale d’instructions élémentaires ne comprend pas de référence directe aux zones de saisies et aux éléments de code PIN associés aux zones de saisie. Selon ces dispositions, une écoute frauduleuse partielle par un tiers de la séquence d’instructions élémentaires ne lui permettra pas de déterminer les éléments de code PIN saisis. Selon un mode de mise en oeuvre, le procédé comprend en outre une étape d’encodage de la séquence aléatoire d’instructions élémentaires, préalablement à l’étape de transmission, l’étape d’encodage générant au moins une instruction encodée associée à au moins une instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une instruction encodée étant fonction de l’au moins une instruction et d’au moins une autre instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une autre instruction précédant l’au moins une instruction dans la séquence aléatoire d’instructions élémentaires. Selon ces dispositions, la détermination de la séquence initiale d’instructions élémentaires par une écoute frauduleuse par un tiers sera rendue encore plus difficile. Selon un aspect, l’invention concerne également un terminal mobile configuré pour une sécurisation d’une saisie des éléments d’un code personnel d’identification, dit code PIN, le terminal mobile comprenant un module de réception configuré pour recevoir une séquence aléatoire d’instructions élémentaires en provenance d’un serveur, un écran tactile et un module de traitement configuré pour exécuter la séquence aléatoire d’instructions élémentaires, la séquence aléatoire d’instructions élémentaires résultant d’une modification aléatoire par le serveur, d’un ordonnancement initial d’une séquence initiale d’instructions élémentaires générée préalablement par le serveur, l’exécution de la séquence aléatoire d’instructions élémentaires ayant pour effet de dessiner sur l’écran tactile au moins l’un parmi, un clavier virtuel, des zones de saisie du clavier virtuel, et des éléments de code PIN associés aux zones de saisie. Selon un mode de réalisation, le module de traitement comprend un module de décodage, le module de décodage étant configuré pour générer au moins une instruction décodée de la séquence aléatoire d’instructions élémentaires, l’au moins une instruction décodée de la séquence aléatoire d’instructions élémentaires étant fonction d’au moins une instruction décodée précédemment dans la séquence aléatoire d’instructions élémentaires. Selon un mode de réalisation, le module de traitement est configuré pour effacer au moins une instruction décodée de la séquence d’instruction après qu’elle a été exécutée par le module de traitement, et avant l’exécution de l’instruction suivante dans la séquence. Selon un autre aspect, l’invention concerne également un serveur configuré pour une sécurisation d’une saisie sur un terminal mobile des éléments d’un code personnel d’identification, dit code PIN, le serveur étant configuré pour communiquer avec le terminal mobile, le serveur comprenant un module de génération configuré pour générer une séquence initiale d’instructions élémentaires, la séquence initiale d’instructions élémentaires étant configurée pour dessiner, sur un écran tactile du terminal mobile, au moins l’un d’un clavier virtuel, des zones de saisie du clavier virtuel, et des éléments de code PIN associés aux zones de saisie, lorsque la séquence initiale d’instructions élémentaires est exécutée par un module de traitement du terminal mobile, un ordonnancement initial de la séquence initiale d’instructions élémentaires correspondant à une disposition sur l’écran du terminal mobile des zones de saisie et des éléments de code PIN associés aux zones de saisie du clavier virtuel, le module de génération étant en outre configuré pour modifier de manière aléatoire l’ordonnancement initial de la séquence initiale d’instructions élémentaires et générer une séquence aléatoire d’instructions élémentaires, le serveur comprenant en outre un module de transmission configuré pour transmettre au terminal mobile la séquence aléatoire d’instructions élémentaires. Selon un mode de réalisation, le module de génération comprend en outre un module d’encodage, le module d’encodage étant configuré pour générer au moins une instruction encodée associée à au moins une instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une instruction encodée étant fonction de l’au moins une instruction et d’au moins une autre instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une autre instruction précédent l’au moins une instruction dans la séquence aléatoire d’instructions élémentaires. Selon un autre aspect, l’invention concerne également un système configuré pour une sécurisation d’une saisie des éléments d’un code personnel d’identification, dit code PIN, sur un terminal mobile selon l’un des modes de réalisation décrits ci-avant, le système comprenant un serveur selon l’un des modes de réalisation décrits ci-avant, et le terminal mobile. Pour sa bonne compréhension, un mode de réalisation et/ou de mise en oeuvre de l’invention est décrit en référence aux dessins ci-annexés représentant, à titre d’exemple non limitatif, une forme de réalisation ou de mise en œuvre respectivement d’un dispositif et/ou d’un procédé selon l’invention. Les mêmes références sur les dessins désignent des éléments similaires ou des éléments dont les fonctions sont similaires. est une représentation schématique des éléments d’un système configuré pour mettre en œuvre le procédé selon l’invention, pour sécuriser une saisie des éléments d’un code PIN sur un clavier virtuel dessiné sur l’écran tactile d’un terminal mobile communicant avec un serveur. illustre un exemple d’un clavier virtuel dessiné avec des zones de saisie de formes différentes. est une présentation schématique du séquencement des étapes mises en œuvre par le terminal mobile et par le serveur. Pour que cela soit beaucoup plus difficile pour l’attaquant de déterminer la présentation du clavier virtuel de saisie des éléments du code PIN, et d’en déduire ensuite le chiffre saisi par une saisie tactile sur une zone de saisie du clavier virtuel, il convient de supprimer les instructions de haut niveau configurées dans l’application de paiement du terminal mobile pour dessiner sur l’écran du terminal mobile les zones de saisie du clavier virtuel de saisie, du type {« dessiner la touche » , « dessiner le chiffre » }, et de remplacer ces instructions de haut niveau par une séquence d’instructions de bas-niveau pour les opérations de dessin du clavier virtuel de saisie, par exemple « dessiner le polygone ». Ladite séquence d’instructions de bas niveau configurées pour les opérations de dessin du clavier virtuel de saisie est calculée et rendue variable de manière aléatoire par le serveur, avant d’être transmise à l’application du terminal mobile d’une manière séquentielle et cryptée qui ne révèle pas la nature, l’objet, et les paramètres des opérations de dessin, de sorte que seule l’application de paiement sur le terminal mobile dispose des règles d’interprétation de la séquence d’instructions de bas niveau qui lui est transmise. De manière complémentaire et à titre de précaution additionnelle, les instructions sont exécutées et supprimées aussitôt après, les unes après les autres, à la volée au fur et à mesure de leur réception en provenance du serveur. Selon ces dispositions, une analyse du flux d’instructions transmises par le serveur à destination de l’application sur le terminal mobile, qui supposerait notamment de casser le cryptage utilisé pour protéger les données transmises, ne révèlera par la présentation du clavier virtuel de saisie sur l’écran du terminal mobile. En effet, selon ces dispositions, le clavier virtuel de saisie n’est pas défini en termes d’opérations de haut-niveau relative à l’affichage de zones de saisie positionnées sur l’écran et de chiffres associés à ces zones de saisie, mais en termes d’une séquence d’opérations élémentaires de dessin graphique qui ne révèle pas directement d’information sur le positionnement des zones de saisie, et des chiffres associés à ces zones de saisie, à moins de décoder la séquence des opérations élémentaires de dessin graphique ou de « dumper » directement la mémoire graphique pour obtenir l’image rendue par l’exécution de l’ensemble de la séquence des opérations élémentaires. Cette approche permet également de dessiner des zones de saisie, ou touches du clavier virtuel tactile, de tailles différentes, telles que représentées à titre d’exemple sur la . La est une représentation schématique des éléments d’un système comprenant un terminal mobile TM et un serveur S, configurés pour communiquer et mettre en œuvre le procédé selon l’invention, de manière à sécuriser une saisie des éléments d’un code PIN sur un clavier virtuel CV dessiné sur un écran tactile ET du terminal mobile TM. Habituellement, les éléments d’un code PIN sont des chiffres, comme cela est représenté sur la , mais les éléments du code PIN peut comprendre tout autre symbole graphique accepté par l’application de saisie. Les éléments du code PIN sont associés chacun à une zone de saisie ZS de l’écran tactile ET du terminal mobile TM, de sorte que l’utilisateur en touchant une zone de saisie ZS sélectionne un élément du code PIN, par exemple un chiffre, associé à ladite zone de saisie ZS. Habituellement les zones de saisie ZS sont représentées sur l’écran tactile ET par des formes simples et identiques, par exemple un carré ou un rectangle, comme cela est illustré sur la figure. Mais les zones de saisie ZS peuvent également prendre des formes variées, ou différentes les unes des autres, tel que cela est illustré sur la . Le terminal mobile TM est un équipement destiné au grand public comprenant un écran tactile ET et un module de traitement MT configuré pour exécuter des séquences d’instructions, notamment des applications logicielles, et pour communiquer avec un serveur S distant. Le terminal mobile est de préférence un téléphone intelligent ; il peut aussi être une tablette, ou un ordinateur portable par exemple. Le terminal mobile TM comprend en particulier un module de réception MRx configuré pour recevoir une séquence aléatoire d’instructions élémentaires en provenance du serveur S ; ladite séquence aléatoire d’instructions est par exemple générée par le serveur à partir d’une séquence initiale d’instructions élémentaires, ladite séquence initiale d’instructions élémentaires étant elle-même générée par le serveur S. Ladite séquence initiale d’instructions élémentaires est configurée pour être exécutable sur le module de traitement MT du terminal mobile TM, et pour dessiner, sur l’écran tactile ET du terminal mobile TM, le clavier virtuel CV, les zones de saisie ZS du clavier virtuel CV, et/ou les éléments de code PIN ECP associés aux zones de saisie ZS, lorsque la séquence initiale d’instructions élémentaires est exécutée par le module de traitement MT du terminal mobile TM. Le serveur S comprend un module de génération MG configuré pour générer 202 la séquence aléatoire d’instructions élémentaires, par exemple à partir de la séquence initiale d’instructions élémentaires en modifiant aléatoirement un ordonnancement initial de la séquence initiale d’instructions élémentaires, la séquence aléatoire d’instructions élémentaires restant configurée pour dessiner, sur l’écran tactile ET du terminal mobile TM, le clavier virtuel CV, les zones de saisie ZS du clavier virtuel CV, et/ou les éléments de code PIN ECP associés aux zones de saisie ZS, lorsque la séquence aléatoire d’instructions élémentaires est exécutée par le module de traitement MT du terminal mobile TM. L’ordonnancement aléatoire permet de répartir l’information dans la séquence de sorte que la capture frauduleuse d’un segment d’instructions élémentaires comporte une information diffuse qui est difficile à exploiter tant qu’on pas la totalité de l’information. Ainsi, une écoute frauduleuse, par un tiers, de la séquence d’instructions élémentaires ne lui permettra pas de déterminer la séquence initiale. En outre, la séquence initiale d’instructions élémentaires ne comprend pas de référence directe aux zones de saisie et aux éléments de code PIN associés aux zones de saisie. Ainsi, une écoute frauduleuse, par un tiers, de la séquence d’instructions élémentaires ne lui permettra pas de déterminer les zones de saisie et les éléments de code PIN objet de la séquence d’instructions. Optionnellement, le module de traitement MT comprend un module de décodage MD, le module de décodage étant configuré pour décoder tout ou partie de la séquence aléatoire d’instructions élémentaires qui a été encodée par un module d’encodage ME du serveur S, avant d’être transmise par le serveur S au terminal mobile TM. Optionnellement, une partie seulement de la séquence aléatoire d’instructions élémentaires est encodée par le module d’encodage ME ; dans ce cas seule cette partie de la séquence aléatoire d’instructions élémentaires est décodée par le module de décodage MD du module de traitement MT du terminal mobile TM. Par exemple, un encodage d’une instruction élémentaire de la séquence aléatoire d’instructions élémentaires est une fonction d’au moins une autre instruction élémentaire précédent ladite instruction élémentaire dans la séquence aléatoire d’instructions élémentaires. Dans ce cas, la génération de ladite instruction élémentaire décodée sera fonction de l’au moins une autre instruction élémentaire décodée précédent ladite instruction élémentaire dans la séquence aléatoire d’instructions élémentaires. Afin de renforcer la sécurité de l’opération de codage/décodage, le module de traitement MT du terminal mobile peut être configuré pour effacer au moins une instruction décodée de la séquence d’instruction après qu’elle a été exécutée par le module de traitement MT, et avant l’exécution de l’instruction suivante dans la séquence. Selon ces dispositions, une recopie d’une mémoire interne du terminal mobile (TM) ne permettra pas à l’attaquant de remonter à la séquence d’instructions élémentaires complète ; ainsi la détermination de la séquence initiale d’instructions élémentaires par une écoute frauduleuse par un tiers sera rendue encore plus difficile. Selon un aspect l’invention concerne un serveur S configuré pour une sécurisation d’une saisie sur un terminal mobile TM des éléments d’un code personnel d’identification, dit code PIN, le serveur étant configuré pour communiquer avec le terminal mobile TM ; le serveur comprend un module de génération MG configuré pour générer 202 une séquence aléatoire d’instructions élémentaires; ladite séquence aléatoire d’instructions est par exemple générée par le serveur S à partir d’une séquence initiale d’instructions élémentaires, ladite séquence initiale d’instructions élémentaires étant elle-même générée par le serveur S. Ladite séquence initiale d’instructions élémentaires est configurée pour être exécutable sur le module de traitement MT du terminal mobile TM, et pour dessiner, sur l’écran tactile ET du terminal mobile TM, le clavier virtuel CV, les zones de saisie ZS du clavier virtuel CV, et/ou les éléments de code PIN ECP associés aux zones de saisie ZS, lorsque la séquence initiale d’instructions élémentaires est exécutée par le module de traitement MT du terminal mobile TM; un ordonnancement initial de la séquence initiale d’instructions élémentaires correspond à une disposition sur l’écran du terminal mobile du clavier virtuel CV, des zones de saisie ZS du clavier virtuel CV, et des éléments ECP de code PIN associés aux zones de saisie ZS du clavier virtuel CV. Selon ce mode particulier de mise en œuvre de l’étape 202 de génération de la séquence aléatoire d’instructions élémentaires, le module de génération MG est en outre configuré pour modifier de manière aléatoire l’ordonnancement initial de la séquence initiale d’instructions élémentaires et générer ainsi ladite séquence aléatoire d’instructions élémentaires. D’autre mode de mise en œuvre de l’étape 202 de génération de la séquence aléatoire d’instructions élémentaires sont envisageables. Le serveur S comprend enfin un module de transmission MTx configuré pour transmettre au terminal mobile TM la séquence aléatoire d’instructions élémentaires. Le module de génération MG du serveur comprend en outre un module d’encodage ME, le module d’encodage étant configuré pour encoder au moins une instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une instruction encodée étant fonction de ladite au moins une instruction et d’au moins une autre instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une autre instruction précédent l’au moins une instruction dans la séquence aléatoire d’instructions élémentaires. Selon un autre aspect l’invention concerne un système comprenant un serveur S selon l’une des modes de réalisation décrit précédemment, et un terminal mobile TM selon l’un des modes de réalisation décrit précédemment. Selon un aspect , l’invention concerne un procédé 100 mis en œuvre par un terminal mobile TM selon l’un des modes de réalisation décrit précédemment, le procédé 100 comprenant les étapes suivantes, en référence à la : - réception 101 d’une séquence aléatoire d’instructions élémentaires en provenance du serveur S ; la séquence aléatoire d’instructions élémentaires résulte par exemple d’une étape mise en œuvre par le serveur S, d’ordonnancement aléatoire d’une séquence initiale d’instructions élémentaires elle-même générée 201 par le serveur S, la séquence initiale et la séquence aléatoire d’instructions élémentaires étant chacune configurées pour dessiner, sur un écran tactile ET du terminal mobile TM, une même représentation graphique d’un clavier virtuel, des zones de saisie d’un clavier virtuel CV et/ou des éléments de code PIN ECP associés aux zones de saisie ZS, lorsque la séquence initiale ou aléatoire d’instructions élémentaires est exécutée sur le terminal mobile TM, par un module de traitement MT du terminal mobile TM, - exécution 102 de la séquence aléatoire d’instructions élémentaires. Optionnellement, le procédé 100 comprend en outre une étape de décodage 101bis préalable à l’exécution de la séquence aléatoire d’instructions élémentaires, pour générer au moins une instruction décodée de la séquence aléatoire d’instructions élémentaires. En particulier, l’au moins une instruction décodée de la séquence aléatoire d’instructions élémentaires peut être fonction d’au moins une autre instruction décodée précédemment dans la séquence aléatoire d’instructions élémentaires. Encore plus particulièrement, au cours de l’étape d’exécution 102 de la séquence d’instructions élémentaires décodées, au moins une instruction décodée de la séquence d’instruction est effacée, après avoir été exécutée et avant l’exécution de l’instruction suivante dans la séquence. Ainsi, une recopie d’une mémoire interne du terminal mobile TM ne permettra pas à l’attaquant de remonter à la séquence d’instructions élémentaires complète. Selon un autre aspect , l’invention concerne également un procédé 200 de sécurisation d’une saisie des éléments d’un code personnel d’identification, dit code PIN, sur un terminal mobile TM configuré pour communiquer avec un serveur S, le procédé 200 comprenant les étapes suivantes mises en œuvre par le serveur S: - génération 202 d’une séquence aléatoire d’instructions élémentaires, la séquence aléatoire d’instructions élémentaires étant configurée pour présenter un dessin affiché sur un écran tactile ET du terminal mobile TM, après une exécution par un module de traitement MT du terminal mobile TM de la séquence aléatoire d’instructions élémentaires, le dessin affiché correspondant à un clavier virtuel, des zones de saisie d’un clavier virtuel CV, et/ou des éléments de code PIN ECP associés aux zones de saisie ZS, La génération 202 d’une séquence aléatoire d’instructions élémentaires peut par exemple comprendre une étape de génération 201 d’une séquence initiale d’instructions élémentaires, la séquence initiale d’instructions élémentaires étant configurée pour présenter ledit dessin affiché sur un écran tactile ET du terminal mobile TM, après une exécution par le module de traitement MT du terminal mobile TM de la séquence initiale d’instructions élémentaires, un ordonnancement initial de la séquence initiale d’instructions élémentaires correspondant à une disposition sur l’écran du terminal mobile TM du clavier virtuel, des zones de saisie ZS du clavier virtuel et/ou des éléments de code PIN ZS associés aux zones de saisie ZS du clavier virtuel; l’étape de génération 202 de la séquence aléatoire d’instructions élémentaires selon cet exemple de mise en œuvre, comprenant en particulier un ordonnancement aléatoire de la séquence initiale d’instructions élémentaires, pour modifier de manière aléatoire l’ordonnancement initial de la séquence initiale d’instructions élémentaires, l’ordonnancement aléatoire générant la séquence aléatoire d’instructions élémentaires ; - transmission 203 au terminal mobile TM de la séquence aléatoire d’instructions élémentaires. Selon ces dispositions, une écoute frauduleuse par un tiers de la séquence d’instructions élémentaires ne lui permettra pas de déterminer la séquence initiale ; l’ordonnancement aléatoire permet en effet de répartir l’information dans la séquence de sorte que la capture frauduleuse d’un segment d’instruction élémentaires comporte moins d’information qu’un segment de la séquence initiale. Selon ces dispositions également, la séquence initiale d’instructions élémentaires ne comprend pas de référence directe aux zones de saisies et aux éléments de code PIN associés aux zones de saisie. Selon ces dispositions, une écoute frauduleuse partielle par un tiers de la séquence d’instructions élémentaires ne lui permettra pas de déterminer les éléments de code PIN saisis. Pour renforcer la sécurité du procédé, le procédé comprend en outre une étape d’encodage 202bis de la séquence aléatoire d’instructions élémentaires, préalablement à l’étape de transmission 203, l’étape d’encodage 202bis générant au moins une instruction encodée associée à au moins une instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une instruction encodée étant fonction de l’au moins une instruction et d’au moins une autre instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une autre instruction précédant l’au moins une instruction dans la séquence aléatoire d’instructions élémentaires. Ainsi, la détermination de la séquence initiale d’instructions élémentaires par une écoute frauduleuse par un tiers sera rendue encore plus difficile. Procédé (100) de sécurisation d’une saisie des éléments d’un code personnel d’identification, dit code PIN, sur un terminal mobile (TM) configuré pour communiquer avec un serveur (S), le procédé comprenant les étapes suivantes mises en œuvre par le terminal mobile (TM): - réception (101) d’une séquence aléatoire d’instructions élémentaires en provenance du serveur (S), la séquence aléatoire d’instructions élémentaires étant configurée pour présenter un dessin affiché sur un écran tactile (ET) du terminal mobile (TM), après une exécution par un module de traitement (MT) du terminal mobile (TM) de la séquence aléatoire d’instructions élémentaires, ledit dessin affiché correspondant à au moins l’un parmi des zones de saisie d’un clavier virtuel (CV) et des éléments de code PIN (ECP) associés aux zones de saisie (ZS), - exécution (102) de la séquence aléatoire d’instructions élémentaires. Procédé (100) selon la revendication 1, la séquence aléatoire d’instructions élémentaires résulte d’une étape, mise en œuvre par le serveur (S), d’ordonnancement aléatoire (202) d’une séquence initiale d’instructions élémentaires générée par le serveur (S), la séquence initiale étant également configurée pour présenter ledit dessin affiché, sur l’écran tactile (ET) du terminal mobile (TM), après une exécution par le module de traitement (MT) du terminal mobile (TM) de la séquence initiale d’instructions élémentaires. Procédé (100) selon l’une des revendications 1 ou 2, dans lequel la séquence aléatoire d’instructions élémentaires comprend au moins une instruction encodée par le serveur (S), le procédé (100) comprenant une étape de décodage (101bis) préalable à l’exécution de la séquence aléatoire d’instructions élémentaires, pour générer au moins une instruction décodée de la séquence aléatoire d’instructions élémentaires. Procédé (100) selon l’une des revendications 1 à 3, dans lequel l’au moins une instruction décodée de la séquence aléatoire d’instructions élémentaires est fonction d’au moins une autre instruction décodée précédemment dans la séquence aléatoire d’instructions élémentaires. Procédé (100) selon la revendication 4, dans lequel au cours de l’étape d’exécution (102) de la séquence d’instructions élémentaires décodées, au moins une instruction décodée de la séquence d’instruction est effacée après avoir été exécutée, et avant l’exécution de l’instruction suivante dans la séquence. Procédé (200) de sécurisation d’une saisie des éléments d’un code personnel d’identification, dit code PIN, sur un terminal mobile (TM) configuré pour communiquer avec un serveur (S), le procédé comprenant les étapes suivantes mises en œuvre par le serveur (S): - génération (202) d’une séquence aléatoire d’instructions élémentaires, la séquence aléatoire d’instructions élémentaires étant configurée pour présenter un dessin affiché sur un écran tactile (ET) du terminal mobile (TM), après une exécution par un module de traitement (MT) du terminal mobile (TM) de la séquence aléatoire d’instructions élémentaires, le dessin affiché correspondant à au moins l’un parmi des zones de saisie d’un clavier virtuel (CV) et des éléments de code PIN (ECP) associés aux zones de saisie (ZS), - transmission (203) au terminal mobile (TM) de la séquence aléatoire d’instructions élémentaires. Procédé (200) selon la revendication précédente, comprenant en outre une étape de génération (201) d’une séquence initiale d’instructions élémentaires, la séquence initiale d’instructions élémentaires étant configurée pour présenter ledit dessin affiché sur un écran tactile (ET) du terminal mobile (TM), après une exécution par le module de traitement (MT) du terminal mobile (TM) de la séquence initiale d’instructions élémentaires, un ordonnancement initial de la séquence initiale d’instructions élémentaires correspondant à une disposition sur l’écran du terminal mobile (TM) des zones de saisie (ZS) et des éléments de code PIN (ZS) associés aux zones de saisie ; l’étape de génération (202) de la séquence aléatoire d’instructions élémentaires comprenant un ordonnancement aléatoire de la séquence initiale d’instructions élémentaires, pour modifier de manière aléatoire l’ordonnancement initial de la séquence initiale d’instructions élémentaires, l’ordonnancement aléatoire générant la séquence aléatoire d’instructions élémentaires; Procédé (200) selon l’une des revendications 6 ou 7, comprenant en outre une étape d’encodage (202bis) de la séquence aléatoire d’instructions élémentaires, préalablement à l’étape de transmission (203), l’étape d’encodage (202bis) générant au moins une instruction encodée associée à au moins une instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une instruction encodée étant fonction de l’au moins une instruction et d’au moins une autre instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une autre instruction précédant l’au moins une instruction dans la séquence aléatoire d’instructions élémentaires. Terminal mobile (TM) configuré pour une sécurisation d’une saisie des éléments d’un code personnel d’identification, dit code PIN, le terminal mobile (TM) comprenant un module de réception (MRx) configuré pour recevoir une séquence aléatoire d’instructions élémentaires en provenance d’un serveur (S), un écran tactile (ET) et un module de traitement (MT) configuré pour exécuter la séquence aléatoire d’instructions élémentaires, la séquence aléatoire d’instructions élémentaires résultant d’une modification aléatoire par le serveur (S), d’un ordonnancement initial d’une séquence initiale d’instructions élémentaires générée préalablement par le serveur (S), l’exécution de la séquence aléatoire d’instructions élémentaires ayant pour effet de dessiner sur l’écran tactile (ET) au moins l’un parmi, un clavier virtuel (CV), des zones de saisie (ZS) du clavier virtuel, et des éléments de code PIN (ECP) associés aux zones de saisie (ZS). Terminal mobile (TM) selon la revendication 9, dans lequel le module de traitement (MT) comprend un module de décodage (MD), le module de décodage étant configuré pour générer au moins une instruction décodée de la séquence aléatoire d’instructions élémentaires, l’au moins une instruction décodée de la séquence aléatoire d’instructions élémentaires étant fonction d’au moins une instruction décodée précédemment dans la séquence aléatoire d’instructions élémentaires. Serveur (S) configuré pour une sécurisation d’une saisie sur un terminal mobile (TM) des éléments d’un code personnel d’identification, dit code PIN, le serveur étant configuré pour communiquer avec le terminal mobile (TM), le serveur comprenant un module de génération (MG) configuré pour générer une séquence initiale d’instructions élémentaires, la séquence initiale d’instructions élémentaires étant configurée pour dessiner, sur un écran tactile (ET) du terminal mobile (TM), au moins l’un d’un clavier virtuel, des zones de saisie (ZS) du clavier virtuel (CV), et des éléments de code PIN (ECP) associés aux zones de saisie (ZS), lorsque la séquence initiale d’instructions élémentaires est exécutée par un module de traitement (MT) du terminal mobile (TM), un ordonnancement initial de la séquence initiale d’instructions élémentaires correspondant à une disposition sur l’écran du terminal mobile des zones de saisie (ZS) et des éléments de code PIN (ECP) associés aux zones de saisie (ZS) du clavier virtuel (CV), le module de génération (MG) étant en outre configuré pour modifier de manière aléatoire l’ordonnancement initial de la séquence initiale d’instructions élémentaires et générer une séquence aléatoire d’instructions élémentaires, le serveur comprenant en outre un module de transmission (MTx) configuré pour transmettre au terminal mobile (TM) la séquence aléatoire d’instructions élémentaires. Serveur (S) selon la revendication 11, dans lequel le module de génération (MG) comprend en outre un module d’encodage (ME), le module d’encodage étant configuré pour générer au moins une instruction encodée associée à au moins une instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une instruction encodée étant fonction de l’au moins une instruction et d’au moins une autre instruction de la séquence aléatoire d’instructions élémentaires, l’au moins une autre instruction précédent l’au moins une instruction dans la séquence aléatoire d’instructions élémentaires. Système configuré pour une sécurisation d’une saisie des éléments d’un code personnel d’identification, dit code PIN, sur un terminal mobile (TM) selon l’une des revendications 9 ou 10, le système comprenant un serveur selon l’une des revendications 11 ou 12, et le terminal mobile (TM).