FR 2973909 A1 20121012 FR 1153101 A 20110408 [1] La présente invention concerne le domaine technique des cartes à puce ou des dispositifs personnels sécurisés et plus particulièrement le domaine de l'accès à une ressource protégée d'une carte à puce. [2] Une carte à puce comprend généralement une ou plusieurs ressources permettant au détenteur ou à l'utilisateur de la carte de réaliser une ou plusieurs opérations au moyen de ladite carte à puce. Parmi les opérations susceptibles d'être effectuées au moyen d'une carte à puce, il est possible de citer des opérations de paiement, des opérations de signature, des opérations d'identification ou d'authentification, l'accès à un lieu ou un site protégé, ou encore un accès à des ressources informatiques sans que cette liste ne soit limitative ou exhaustive. Afin d'éviter que ces opérations ne puissent être réalisées par un tiers en possession de la carte à puce mais qui n'en serait pas l'utilisateur ou le propriétaire légitime, l'exécution et/ou l'accès aux ressources de la carte à puce est protégé par un code identifiant connu seulement du propriétaire légitime et éventuellement d'une entité émettrice de la carte. Un même code identifiant peut permettre un accès à toutes les ressources protégées de la carte à puce ou à seulement certaines d'entre elles. Ainsi, il possible que la carte à puce ou le dispositif personnel sécurisé soit associée à plusieurs codes identifiants qui permettent chacun un accès à une partie seulement des ressources protégées de la carte à puce ou du dispositif personnel sécurisé. [03] Lorsque que l'utilisateur souhaite accéder ou mettre en oeuvre une ressource protégée de la carte à puce communiquant avec une unité locale, l'utilisateur saisit le code identifiant correspondant à ladite ressource sur un clavier de l'unité locale qui le transmet directement à la carte à puce pour vérification. En cas de vérification positive la carte à puce autorise l'accès à la ressource protégée. La transmission du code identifiant est dans les systèmes connus effectuée en clair de sorte qu'un tiers malveillant est susceptible de prendre connaissance du code identifiant en « écoutant » ou en enregistrant les communications de l'unité locale à destination de la carte à puce. [04] Cette faiblesse du système de mise en oeuvre des ressources protégées de la carte à puce est particulièrement gênante lorsque la carte à puce ou le dispositif personnel sécurisé est utilisé via une unité locale comprenant un ordinateur personnel relié à un réseau de télécommunications tel qu'un réseau local filaire ou hertzien ou un réseau étendu tel qu'internet. Un tel ordinateur personnel n'offre généralement pas des garanties d'intégrité permettant d'être certain que le code identifiant ne sera pas intercepté et donc que l'identité du propriétaire de la carte à puce ne sera usurpée en cas de vol de ladite carte à puce ou dudit dispositif personnel sécurisé. [05] Il est donc apparu le besoin d'un nouveau système ou procédé d'accès aux ressources protégées d'une carte à puce ou d'un dispositif personnel sécurisé qui offre des garanties de confidentialité et de protection du code identifiant supérieures à celles des systèmes selon l'art antérieur. [06] Afin d'atteindre cet objectif, l'invention concerne un procédé d'accès au moyen d'un code identifiant associé à un utilisateur à au moins une ressource protégée d'un dispositif personnel sécurisé communicant avec une unité locale contrôlée par l'utilisateur. Selon l'invention, ce procédé d'accès comprend les étapes suivantes : mise en oeuvre par l'unité locale d'un module intermédiaire de saisie du code identifiant, saisie par l'utilisateur du code identifiant à destination du module intermédiaire, obtention par le module intermédiaire auprès d'un module tiers de confiance d'au moins une clé de session sécurisée, envoi au dispositif personnel sécurisé, par le module intermédiaire, du code identifiant sous une forme sécurisée au moyen de chaque clé de session sécurisée. [07] Au sens de l'invention, un dispositif personnel sécurisé (en anglais Personal Security Device, PSD) est un dispositif électronique portable comprenant des ressources matérielles de calcul, de mémoire, de cryptographie et de communication adaptées pour intervenir notamment dans des protocoles d'identification, d'authentification, de signature électronique, de chiffrement, de contrôle d'accès sans que cette liste ne soit limitative ou exhaustive. A titre d'exemples de dispositifs personnels sécurisés, il est possible de citer : les cartes à puce, les cartes à circuit intégré, les dispositifs portables de stockage de données, les modules d'identification d'abonné (SIM pour Subscriber Identification Module en anglais), les modules d'identification sans fil, les clés USB, les jetons d'identification électronique, les modules d'applications sécurisées (SAM pour Secure Application Module en anglais), les modules matériel de sécurité (HSM pour Hardware Security Module en anglais), les puces TPG de l'alliance Trusted Computing Group ainsi que tout système électronique personnel comprenant un ou plusieurs des dispositifs précités. Par ailleurs, il peut être précisé qu'au sens de l'invention, une carte à puce CP est un dispositif électronique tel que, par exemple, défini par, d'une part, la norme ISO 7816 pour ce qui concerne les cartes à puce à contact et, d'autre part, la norme ISO 14443 pour ce qui concerne les cartes à puce sans contact de proximité. Il est également possible de se reporter à l'ouvrage « Les cartes à puce - théorie et mise en oeuvre » de Christian TAVERNIER - Dunod éditeur - 2eme édition pour tout ce qui concerne les définitions et les outils utilisables pour la mise en oeuvre des cartes à puce. [8] Il doit être remarqué que, selon l'invention, la saisie du code identifiant peut intervenir soit avant, soit après, l'obtention de la clé de session sécurisée. Au sens de l'invention, un code identifiant est équivalant à un code PIN pour Personal Identification Number, en anglais. [9] La mise en oeuvre du module intermédiaire de saisie du code identifiant permet de confiner la diffusion en clair du code identifiant au seul module intermédiaire qui est, de préférence, adapté pour capter directement la saisie du code identifiant ou pin effectuée au moyen d'une interface homme machine de l'unité locale. Ensuite, l'obtention d'une clé de session sécurisée auprès d'un tiers de confiance permet de transmettre le code identifiant au dispositif personnel sécurisé sous une forme sécurisée qui garantit qu'en cas d'écoute des communications, entre le dispositif personnel sécurisé et l'unité locale, par un tiers malveillant, ce dernier ne pourra pas accéder facilement voire ne pourra pas accéder à la connaissance du code identifiant. Par ailleurs, la génération de chaque clé de session par le tiers de confiance permet d'éviter la fourniture des outils nécessaires à la création des clés de sessions sécurisées aux utilisateurs ainsi qu'une divulgation du mode de création des clés de session sécurisées. L'invention permet donc de garantir l'origine des clés de session. Ainsi dans un processus où l'accès à la ressource protégée du dispositif personnel sécurisé permet une utilisation d'un service ou une transaction auprès d'un prestataire, le simple fait que l'utilisateur ait pu accéder ou autoriser l'accès à la ressource protégée est une indication pour le prestataire que l'utilisateur appartient à l'ensemble des utilisateurs capable d'obtenir une clé de session sécurisée auprès du tiers de confiance. [10] Dans le sens d'un renforcement de la sécurité pour le prestataire de service, la mise en oeuvre d'un module tiers de confiance peut en outre être mise à profit pour effectuer une authentification ou identification de l'utilisateur préalablement à la délivrance de la clé de session sécurisée. Ainsi, selon une forme de mise en oeuvre de l'invention, le procédé comprend une identification ou authentification de l'utilisateur par le module tiers de confiance et l'obtention de chaque clé de session sécurisée n'intervient qu'en cas d'authentification ou d'identification positive de l'utilisateur par le module tiers de confiance. L'identification de l'utilisateur peut être effectuée par tout moyen approprié et par exemple au moyen de données biométriques de l'utilisateur. L'identification de l'utilisateur peut également être effectuée à partir d'informations issues d'un document autre que le dispositif personnel sécurisé, comme par exemple un numéro d'une carte d'identité. L'identification de l'utilisateur peut également mettre en oeuvre le code identifiant qu'il est normalement le seul à connaître. [11] Ainsi dans une variante de cette forme de mise en oeuvre, l'obtention de chaque clé de session sécurisée comprend les étapes suivantes : - envoi par le module intermédiaire à destination d'un module tiers de confiance d'une preuve de connaissance du code identifiant, - en cas de reconnaissance, par le module tiers de confiance, de la validité de la preuve de connaissance du code identifiant : - génération, au moins par le module tiers de confiance, d'au moins une clé de session sécurisée, envoi de chaque clé de session sécurisée au module intermédiaire. [12] Selon une caractéristique de l'invention, le module tiers de confiance comprend, pour la génération de chaque clé de session, des informations secrètes associées au dispositif personnel sécurisé. La mise en oeuvre d'informations secrètes pour la génération des clés de session sécurisée permet utiliser des protocoles de sécurisation robustes comme par exemple des algorithmes cryptographique à clé secrète tels que le DES et l'AES ou des algorithmes à clé publique, comme le RSA, utilisé avec des clés de session à usage unique. [13] Selon l'invention, le module tiers de confiance peut être un module implémenté au niveau de l'unité locale soit en étant intégré à cette dernière soit en communiquant directement avec cette dernière. Le module tiers de confiance peut, par exemple, être intégré dans un module matériel de sécurité. Selon l'invention, le module tiers de confiance peut au contraire être un module distant avec lequel le module intermédiaire communique via un réseau de télécommunication. Au sens de l'invention, un réseau de télécommunication est un réseau local et/ou étendu permettant de communication moyenne ou grande distance entre des systèmes informatiques. Un réseau local et/ou étendu fonctionnant selon le protocole TCP/IP constitue un exemple de réseau de télécommunications au sens de l'invention. Dans ce cadre, le réseau Internet constitue également un exemple de réseau étendu constituant un réseau de télécommunication au sens de l'invention. [14] Selon une caractéristique de l'invention visant à renforcer la sécurité, les échanges entre le module intermédiaire et le module tiers de confiance peuvent être effectués par une liaison sécurisée. Parmi les protocoles susceptibles d'être utilisés pour la mise en place d'une telle liaison sécurisée il est possible de citer le protocole TLS pour «Transport Layer Security » en anglais, anciennement appelé SSL pour « Secure Sockets Layer» en anglais. [15] Selon une variante de l'invention mettant en oeuvre cette caractéristique, la preuve de la connaissance du code identifiant est le code identifiant en lui-même dont le module tiers de confiance possède une copie. [16] Selon une autre variante de cette caractéristique, la liaison sécurisée est établie avec une authentification du module tiers de confiance par un certificat émis dans le cadre d'une infrastructure à clé publique. Une telle infrastructure à clé publique est aussi appelée PKI pour « Public Key Infrastructure » en anglais. [17] Dans le cadre de cette variante, la liaison sécurisée peut être établie au moyen d'un protocole d'échange de clé authentifié par mot de passe dont le mot de passe est le code identifiant dont le module tiers de confiance possède une copie. [18] Selon une forme de mise en oeuvre de l'invention, la transmission de la preuve de connaissance est effectuée selon un protocole de type à divulgation nulle de connaissance. Un tel protocole, désigné en anglais sous la dénomination de « zero- knowledge protocol », permet comme son nom l'indique de vérifier la connaissance mutuelle d'une information, généralement un secret, par deux systèmes distincts sans communication de l'information en elle-même. Ainsi, cette forme de mise en oeuvre annule les risques de prise de connaissance du code identifiant par un tiers malveillant qui aurait accès aux informations échangées par le module intermédiaire et le module tiers de confiance. [19] Selon une caractéristique de cette forme de mise en oeuvre, la liaison sécurisée peut être établie selon un protocole renforcé d'échange de clé authentifié par mot de passe dans lequel l'authentification du module local est effectuée à partir d'un élément d'authentification calculé à partir du code identifiant, le module tiers de confiance possédant une copie de l'élément d'authentification. Un tel protocole renforcé d'échange de clé authentifié par mot de passe, également connu sous la dénomination « Augmented Password Authenticated Key Exchange » (Augmented PAKE). Ainsi dans l'hypothèse où un tiers malveillant aurait connaissance des informations détenues par le module tiers de confiance ou arriverait à faire réaliser au module tiers de confiance des opérations sans avoir démontré au préalable une connaissance du code identifiant, ce tiers malveillant n'ayant accès qu'à l'élément d'authentification, distinct du code identifiant, ne pourra pas se connecter à la carte à puce pour accéder à la ressource protégée, s'il n'a découvert le code identifiant en lui-même. [20] Selon une caractéristique de l'invention, la génération de chaque clé de session sécurisée peut faire intervenir une authentification réciproque du dispositif personnel sécurisé et du module tiers de confiance. Cette caractéristique renforce les caractéristiques d'authentification du procédé selon l'invention dans la mesure où il y a d'une part une authentification du module intermédiaire par le module tiers de confiance qui permet notamment une authentification et/ou une identification du couple l'unité locale/utilisateur et, d'autre part, une authentification du dispositif personnel sécurisé par le module tiers de confiance ce qui combiné permet une authentification et/ou identification de l'ensemble unité locale/utilisateur/dispositif personnel sécurisé. [21] Selon une variante de cette caractéristique de l'invention, l'authentification réciproque est effectuée selon un protocole de challenge cryptographique de type défi- réponse. [22] Selon une autre caractéristique de l'invention, le module tiers de confiance peut comprendre un module de contrôle de la connaissance du code identifiant et un module de génération de clé de session sécurisée. Cette dissociation des deux fonctions du module tiers de confiance permet d'augmenter la sécurité. [23] Selon une variante de cette caractéristique, que le module de contrôle de la connaissance du code identifiant communique avec le module de génération de clé de session sécurisé via une liaison sécurisée à authentification mutuelle. [24] Ainsi, il peut être envisagé que les communications entre la carte à puce et le module tiers de confiance ainsi qu'entre le module intermédiaire et le module tiers de confiance ne soit gérées que par le module de contrôle de connaissance de sorte que les informations en provenance du module de génération de clé de session sécurisée transitant par le module de contrôle de connaissance. Selon une variante de cette caractéristique le module intermédiaire communique donc uniquement avec le module de contrôle de connaissance du module tiers de confiance. Ainsi, l'accès aux informations secrètes détenues par le module de génération de clé de session sécurisée est rendu plus difficile. [25] Selon une caractéristique de l'invention visant à augmenter la sécurité du procédé, le module tiers de confiance peut être en partie au moins intégré dans un module matériel de sécurité également appelé HSM pour Hardware Security Module en anglais [26] Selon une variante de cette caractéristique, le module de génération de clé de session sécurisée et/ou module de contrôle de connaissance est intégré dans un module matériel de sécurité. [27] Selon une autre caractéristique de l'invention visant également à renforcer la sécurité, le module de contrôle de connaissance et le module de génération de clé de sessions peuvent être implantés chacun sur deux serveurs distincts. [28] Selon encore une autre caractéristique de l'invention, le module de contrôle de connaissance peut être adapté pour mémoriser les envois de preuve de connaissance et pour refuser les transactions en fonction d'un nombre d'échec déterminé et/ou de règles de sécurité. Un tel enregistrement de l'historique des transactions et/ou des communications permet de mettre en oeuvre des règles de sécurité faisant obstacle aux attaques par force brute ou par dictionnaire notamment. [29] Selon une variante de cette autre caractéristique de l'invention, le module de contrôle de connaissance est associé à un module de détection des fraudes adapté pour mémoriser l'identifiant utilisé à chaque envoi de preuve de connaissance et le résultat du contrôle de connaissance et pour communiquer au module de contrôle de connaissance une autorisation de communication avec le module intermédiaire en fonction de l'identifiant et du ou des résultats des contrôle des connaissances. [30] Dans le même sens, le module tiers de confiance peut mettre en oeuvre une contre-mesure visant à rendre le temps de réponse du tiers de confiance indépendant du résultat du test de validité de la preuve de connaissance. [31] Selon l'invention, la saisie du code identifiant à destination du module intermédiaire peut être réalisée par tous moyens appropriés et notamment au moyen d'un clavier de l'unité locale. Selon une forme de mise en oeuvre de l'invention, la saisie du code identifiant est effectuée au moyen d'une interface graphique affichant un clavier virtuel sur un écran de l'unité locale et d'une interface de pointage permettant à l'utilisateur de sélectionner des caractères du clavier virtuel. Cette caractéristique de l'invention vise à limiter des risques de divulgation du code identifiant par « écoute » des informations émises par un clavier et notamment un clavier sans fil. [32] Au sens de l'invention, une interface de pointage est un dispositif matériel permettant de sélectionner une zone ou une partie d'une information visuelle ou image affichée par l'interface graphique. Parmi les interfaces de pointage, il est possible de citer les souris, trackball ou analogue, les trackpads, les tablettes graphiques ou de digitalisation ou encore les écrans tactiles sans que cette liste ne soit limitative ou exhaustive. [33] L'invention concerne également un dispositif informatique comprenant des moyens de communication avec un dispositif personnel sécurisé, des moyens d'interface homme-machine et des moyens de communication avec un module tiers de confiance, caractérisé en ce que le dispositif informatique comprend un module intermédiaire adapté pour : recevoir la saisie d'un code identifiant par un utilisateur au moyen de l'interface homme machine, obtenir du module tiers de confiance moins une clé de session sécurisée, envoyer au dispositif personnel sécurisé le code identifiant sous une forme sécurisée au moyen de chaque clé de session sécurisée. [34] L' invention concerne aussi un dispositif informatique susceptible de former une unité locale comprenant des moyens de communication avec un dispositif personnel sécurisé, des moyens d'interface homme machine et des moyens de communication avec un module tiers de confiance, ce dispositif informatique étant adapté pour mettre en oeuvre le procédé, selon l'invention, d'accès à une ressource protégée d'un dispositif personnel sécurisé . [35] Bien entendu les différentes caractéristiques, variantes et formes, de mise en oeuvre du procédé de contrôle d'accès selon l'invention, peuvent être associées les unes avec les autres selon diverses combinaisons dans la mesure où elles ne sont pas incompatibles ou exclusives les unes des autres. [36] Par ailleurs, diverses autres caractéristiques de l'invention ressortent de la description annexée effectuée en référence aux dessins qui illustrent une forme non limitative du procédé et du système, selon l'invention, de contrôle d'accès à une ressource protégée d'un dispositif personnel sécurisé. - La figure 1 est une vue schématique d'un système ou d'une infrastructure informatique pour la mise en oeuvre du procédé selon l'invention. - La figure 2 est un schéma de principe des différents échanges d'information dans une forme préférée de mise en oeuvre du procédé selon l'invention. [37] Un système pour la mise en oeuvre de l'invention comprend une unité locale UL qui comprend de manière connue en soi des moyens de calcul informatique ainsi que des moyens de stockage temporaire et /ou permanent de données. L'unité locale UL comprend également des moyens d'interfaces homme machine permettant à un utilisateur U de contrôler l'unité locale UL. Les moyens d'interfaces homme machine peuvent par exemple comprendre un clavier C, un écran E et une souris S. L'unité locale UL comprend également une interface de communication avec un réseau de télécommunications comme par exemple une interface filaire et/ou radio de type Ethernet pour une communication selon le protocole TCP/IP sur le réseau Internet. L'unité locale pourrait également comprendre des moyens de communication avec un réseau de télécommunications commuté comme le réseau téléphonique. Selon l'invention, l'unité locale UL est adaptée pour communiquer avec un dispositif personnel sécurisé CP qui dans le cadre de l'exemple décrit est une carte à puce. Bien entendu, le dispositif personnel sécurisé peut être d'un autre type. Il doit être noté que les termes « dispositif personnel sécurisé » et « carte à puce » sont utilisés indifféremment et sont considérés, sauf indication contraire, comme équivalents et interchangeables au sens de l'invention. [38] L'unité locale comprend également des moyens de communication LC avec un dispositif personnel sécurisé CP comme par exemple un lecteur de carte à puce CP à contacts. Bien entendu, l'unité locale UL pourrait également comprendre des moyens de communication radio ou optique avec un dispositif personnel sécurisé CP sans contact. [39] L'unité locale UL peut par exemple être formée par un ordinateur personnel ou encore par un terminal de paiement dans la mesure où elle comprend des moyens de communication LC avec un dispositif personnel sécurisé CP. [40] Selon un exemple d'une possible mise en oeuvre de l'invention, l'utilisateur U détenteur du dispositif personnel sécurisé CP souhaite utiliser des services en ligne offerts par un fournisseur de services FS, l'accès à ces services étant contrôlé et nécessitant une authentification forte au moyen de ressources du dispositif personnel sécurisé CP. Afin d'éviter une utilisation malveillante du dispositif personnel sécurisé, la ressource nécessaire à l'accès aux services du fournisseur FS est protégée par un code identifiant PIN gardé secret par l'utilisateur U. Afin de permettre l'accès ou la mise en oeuvre de la ressource protégée du dispositif personnel sécurisé CP il est nécessaire de transmettre à ce dernièr le code identifiant PIN. [41] L'invention propose d'éviter tout risque de « fuites » du code identifiant PIN au sein de l'unité locale UL et de ses divers raccordements, d'une part, au dispositif personnel sécurisé CP et, d'autre part, aux réseaux de télécommunication en mettant en oeuvre, au niveau de l'unité locale, un module intermédiaire MI destiné, notamment, à permettre la saisie du code identifiant PIN et à assurer la communication sous forme sécurisée du code identifiant PIN au dispositif personnel sécurisé CP. [42] Le module intermédiaire MI est un module logiciel et/ou matériel qui est activé au plus tard juste avant le besoin d'accès à la ressource protégée du dispositif personnel sécurisé CP et plus généralement juste après la mise en place de la carte à puce CP dans le lecteur LC. [43] Selon l'invention, le module intermédiaire MI obtient au moins une clé de session sécurisée, nécessaire à la transmission sécurisée du code identifiant au dispositif personnel sécurisé CP, auprès d'un module tiers de confiance MTC qui, selon l'exemple illustré, est distant et communique avec le module intermédiaire via le réseau de télécommunications Internet. [44] Selon une forme préférée mais non exclusive de mise en oeuvre du procédé conforme à l'invention, l'accès protégé par le code identifiant PIN à la ressource protégée du dispositif personnel sécurisé CP se déroule selon la séquence suivante plus particulièrement illustrée à la figure 2. [45] Tout d'abord, dans une étape 1, le module intermédiaire MI requiert de l'utilisateur U la saisie du code identifiant PIN. Dans une étape 2, l'utilisateur U procède à la saisie du code identifiant PIN. Cette saisie peut être effectuée au moyen du clavier C de l'unité locale UL. Toutefois, afin d'éviter les risques de fuite par écoute des codes ASCII envoyés par le clavier à l'unité locale, le module intermédiaire MI affiche à l'écran E un clavier virtuel CV qui peut être numérique ou alphanumérique et sur lequel l'utilisateur choisit les caractères de son code identifiant PIN au moyen de la souris S. Le module intermédiaire MI pourra alors être adapté pour ne pas être en mesure de recevoir le code des touches du clavier C de manière à en neutraliser l'usage pour la saisie du code identifiant PIN. [46] Une fois la saisie du code identifiant PIN achevée, le module intermédiaire MI va chercher à obtenir du module tiers de confiance MTC les informations nécessaires à la communication sous une forme sécurisée du code identifiant PIN à la carte à puce. [47] Pour ce faire, il est établi un canal sécurisé de communication selon un protocole à divulgation nulle de connaissance (en anglais Zero-Knowledge protocol) entre le module intermédiaire MI et le module tiers de confiance MTC. L'établissement de ce canal sécurisé de communication à divulgation nulle de connaissance peut intervenir juste avant ou juste après la saisie du code identifiant PIN dans le module intermédiaire MI. Le canal sécurisé de communication divulgation nulle de connaissance est de préférence établi avec une authentification du module tiers de confiance MTC par un certificat émis dans le cas d'une infrastructure à clé publique (en anglais PKI). [48] Selon l'exemple illustré, le module tiers de confiance MTC comprend, d'une part, un module de contrôle de connaissance MCC et, d'autre part, un module de génération de clés de session sécurisée MGC. Dans le cas présent, le module de contrôle de connaissance MCC et le module de génération de clés de session sécurisée MGC sont mis en oeuvre sur deux serveurs distincts, respectivement SV1 et SV2, et, de préférence, chacun implanté en partie au moins dans un module matériel de sécurité HSM du serveur correspondant. Les serveurs SV1 et SV2 sont bien entendu adaptés pour gérer des requêtes simultanées émanant de modules intermédiaires MI distincts activés sur différentes unités locales UL connectées au réseau Internet [49] Le module de contrôle de connaissance MCC assure une fonction gestion des communications directes avec chaque module intermédiaire MI et de relai des communications à destination du module de gestion des clés de session sécurisée MGC. Ainsi, chaque module intermédiaire MI communique avec un module de gestion des clés de session sécurisée MGC uniquement par l'intermédiaire du module de contrôle de connaissance MCC faisant office de serveur mandataire (en anglais proxy). Les communications entre le module de gestion des clés de session sécurisée MGC et le module de contrôle de connaissance seront de préférence réalisées dans le cadre d'une liaison sécurisée avec authentification mutuelle. [50] Afin de commencer la procédure d'obtention d'au moins une clé de session sécurisée, dans une étape 3 le module intermédiaire MI envoie dans le cadre du protocole à divulgation nulle de connaissance une preuve P de la connaissance du code identifiant PIN au module tiers de confiance MTC qui en assurera le traitement par le module de contrôle de connaissance MCC. La preuve P envoyée est par exemple un élément calculé à partir du code identifiant PIN, l'algorithme de calcul de cet élément de preuve étant conçu pour ne pas permettre une découverte du code identifiant PIN par calcul inverse. [51] Afin de vérifier la validité de la preuve de connaissance, le module de contrôle de connaissance MCC comprend un enregistrement de la preuve de connaissance ou le moyen de recalculer cette preuve de connaissance à partir du code identifiant PIN ou encore un enregistrement du code identifiant PIN. Dans une forme préférée de l'invention, le module de contrôle de connaissance MCC ne comprendra pas d'enregistrement du code identifiant PIN. [52] En cas de validité de la preuve de connaissance, le module tiers de confiance MTC et, plus particulièrement, son module de contrôle de connaissance MCC adresse, dans une étape 4, un message de contrôle positif. [53] Afin d'éviter une analyse extérieure du mode de fonctionnement du module tiers de confiance MTC, ce dernier est, de préférence, paramétré pour adresser un message de contrôle en retour de chaque envoi d'une preuve de connaissance quel que soit le résultat du contrôle. Dans le même sens, ce message de contrôle est adressé dans un délai indépendant du résultat du contrôle. [54] En cas de réception, à l'étape 4, d'un message de contrôle positif par le module intermédiaire MI, il est mis en place un canal de communication sécurisée entre la carte à puce CP et le module tiers de confiance MTC et plus particulièrement son module de génération de clés de session sécurisée MGC. Ce canal de communication sera établi, au travers du module intermédiaire MI et du module de contrôle connaissance MCC du module tiers de confiance MTC, avec une authentification forte selon une procédure de type défi-réponse dans le cadre d'un protocole de type « augmented PAKE » tel que par exemple ceux répondant à la norme IEEE P1363.2. [55] Ainsi, dans une étape 5, le module intermédiaire MI adresse une demande de défi à la carte à puce CP qui, dans une étape 6, envoie un défi. Dans une étape 7, le module intermédiaire MI relaye au module de contrôle de connaissance MCC, ce défi en y associant l'identification de la carte à puce CP. Le module de contrôle de connaissance MCC achemine, dans une étape 8, la demande de défi et l'identification de la carte à puce CP au module de génération de clé de session sécurisée MGC. [56] Le module de génération de clés de session sécurisée MGC comprend les secrets nécessaires à la génération des clés de session compatibles avec chacune des cartes à puce CP gérées par le module tiers de confiance MTC. Le module de génération de clés de session sécurisée comprend notamment les clés maîtres associées à chacune des cartes à puce CP. Le module de génération de clés de session sécurisée MGC calcule, à partir de l'identification de la carte à puce CP, la clé secrète de cette dernière pour générer à partir de cette clé secrète une réponse au défi. Dans une étape 9, la réponse au défi est transmise au module de contrôle de connaissance MCC qui l'adresse dans une étape 10 au module intermédiaire MI. Dans une étape 11, le dit module intermédiaire MI achemine, à la carte à puce CP, la réponse au défi. [57] La carte à puce CP calcule alors, à partir de la réponse au défi, d'une part, un secret partagé et, d'autre part, une réponse de secret partagé. La carte à puce CP calcule également des clés de session de chiffrement et d'intégrité à partir du secret partagé. [58] Dans une étape 12, la carte à puce CP adresse au module intermédiaire MI la réponse de secret partagé qui la répercute dans une étape 13 au module de contrôle de connaissance MCC. Dans une étape 14, le module de contrôle de connaissance MCC envoie, au module de génération de clés de session sécurisée MGC la réponse de secret partagé accompagné d'une requête d'export de clés de session. Le module de génération de clés de session sécurisée MGC calcule à partir de la réponse de secret partagé le secret partagé et ensuite calcule les clés de session de chiffrement et d'intégrité à partir dudit secret partagé. Dans une étape 15, le module de génération des clés de session sécurisée MGC envoie les clés de session de chiffrement et d'intégrité au module de contrôle de connaissance MCC qui les acheminera dans une étape 16 au module intermédiaire MI. [59] Le module intermédiaire MI utilise alors la clé de chiffrement pour chiffrer le code identifiant PIN sous une forme de sécurisée et formate un message à destination de la carte à puce CP au moyen de la clé de session d'intégrité. Dans une étape 17, le module intermédiaire MI envoie ce message formaté à la carte à puce. [60] Dans la mesure où les différents échanges des étapes 6 à 17 n'ont pas été corrompus, la carte à puce pourra à partir de ses clés de chiffrement et d'intégrité vérifier l'intégrité du message reçu en provenance du module intermédiaire MI et déchiffrer le code identifiant PIN. [61] La carte à puce CP peut alors contrôler le code identifiant et en cas de contrôle positif activer la ressource protégée associée au code identifiant PIN et/ou autoriser l'accès à cette ressource protégée. [62] Il apparaît donc que le procédé selon l'invention permet de lutter au maximum contre une appropriation malintentionnée du code identifiant PIN. [63] Afin de renforcer plus encore la sécurité du système, le module tiers de confiance MTC peut être adapté pour garder une trace des différentes connexions associées à chaque carte à puce CP. À cet effet, le module de contrôle de connaissance MCC pourra comprendre ou être associé à un module de détection des fraudes MDF adapté pour enregistrer le nombre de connexions associées à chaque carte à puce CP ainsi que le résultat du contrôle de connaissance du code identifiant PIN pour chaque connexion. Le module de détection des fraudes MDF sera alors utilisé pour autoriser ou interdire une nouvelle connexion pour une carte à puce donnée en fonction des valeurs enregistrées. À cet égard, le module de détection des fraudes MDF pourra être adapté pour interdire ou pour commander au module MCC d'interdire toute nouvelle connexion à partir d'un nombre donné de connexions associées à la transmission d'un code identifiant PIN erroné. [64] Le module de détection des fraudes MDF peut également être adapté pour mettre en oeuvre des règles de sécurité visant à identifier des requêtes en grand nombre émises par des systèmes automatisés encore des requêtes en nombre trop élevé pour correspondre à un usage normal de dispositif personnel sécurisé ou de la carte à puce CP. [65] Bien entendu, diverses autres modifications peuvent être apportées à l'invention dans le cadre des revendications annexées25 REVENDICATIONS1. Procédé d'accès au moyen d'un code identifiant (PIN) associé à un utilisateur (U) à au moins une ressource protégée d'un dispositif personnel sécurisé (CP) communicant avec une unité locale (UL) contrôlée par l'utilisateur (U), procédé d'accès comprenant les étapes suivantes : - mise en oeuvre par l'unité locale (UL) d'un module intermédiaire (MI) de saisie du code identifiant (PIN), - saisie par l'utilisateur (U) du code identifiant (PIN) à destination du module intermédiaire (MI), - obtention par le module intermédiaire (MI) auprès d'un module tiers de confiance (MTC) d'au moins une clé de session sécurisée, - envoi au dispositif personnel sécurisé (CP), par le module intermédiaire (MI), du code identifiant (PIN) sous une forme sécurisée au moyen de chaque clé de session sécurisée. 2. Procédé d'accès selon la revendication 1, caractérisé en ce qu'il comprend une identification ou d'authentification de l'utilisateur (U) par le module tiers de confiance et en ce que l'obtention de chaque clé de session sécurisée n'intervient qu'en cas d'authentification ou d'identification positive de l'utilisateur par le module tiers de confiance (MTC). 3. Procédé d'accès selon la revendication 2, caractérisée en ce que l'obtention de chaque clé de session sécurisée comprend les étapes suivantes : envoi par le module intermédiaire (MI) à destination du module tiers de confiance (MTC) d'une preuve de connaissance du code identifiant (PIN), en cas de reconnaissance, par le module tiers de confiance (MTC), de la validité de la preuve de connaissance du code identifiant (PIN), génération, au moins par le module tiers de confiance (MTC), d'au moins une clé de session sécurisée, envoi de chaque clé de session sécurisée au module intermédiaire (MI). 4. Procédé d'accès selon l'une des revendications 1 à 3, caractérisé en ce que le module tiers de confiance (MTC) comprend, pour la génération de chaque clé de session, des informations secrètes associées au dispositif personnel sécurisé (CP). 5. Procédé d'accès selon l'une de revendications 1 à 4, caractérisé en ce que le module tiers de confiance (MTC) est un module distant avec lequel le module intermédiaire (MI) communique via un réseau de télécommunication. 6. Procédé d'accès selon l'une des revendications 1 à 5, caractérisé en ce que les échanges entre le module intermédiaire (MI) et le module tiers de confiance (MTC) sont effectués par une liaison sécurisée. 7. Procédé d'accès selon la revendication 6, caractérisé en ce que la preuve de la connaissance du code identifiant (PIN) est le code identifiant (PIN) dont le module tiers de confiance (MTC) possède une copie. 8. Procédé d'accès selon la revendication 7, caractérisé en ce que la liaison sécurisée est établie avec une authentification du module tiers de confiance (MTC) par un certificat émis dans le cadre d'une infrastructure à clé publique. 9. Procédé d'accès selon la revendication 6, caractérisé en ce que la liaison sécurisée est établie au moyen d'un protocole d'échange de clé authentifié par mot de passe dont le mot de passe est le code identifiant (PIN) dont le module tiers de confiance (MTC) possède une copie. 10. Procédé d'accès selon l'une des revendications 1 à 9, caractérisé en ce que la transmission de la preuve de connaissance est effectuée selon un protocole de type à divulgation nulle de connaissance. 11. Procédé d'accès selon la revendication 10, caractérisé en ce que la liaison sécurisée est établie selon un protocole renforcé d'échange de clé authentifié par mot de passe (augmented PAKE) dans lequel l'authentification du module intermédiaire (MI) est effectuée à partir d'un élément d'authentification calculé à partir du code identifiant (PIN), le module tiers de confiance (MTC) possédant une copie de l'élément d'authentification. 12. Procédé d'accès selon l'une des revendications précédentes, caractérisé en ce que la génération de chaque clé de session sécurisé fait intervenir une authentification réciproque du dispositif personnel sécurisé (CP) et du module tiers de confiance (MTC). 13. Procédé d'accès selon la revendication 12, caractérisé en ce que l'authentification réciproque est effectuée selon un protocole de challenge cryptographique de type défi-réponse. 14. Procédé d'accès selon l'une des revendications précédentes, caractérisé en ce le module tiers de confiance (MTC) comprend un module (MCC) de contrôle de la connaissance du code identifiant (PIN) et un module de génération de clé de session sécurisée (MGC). 15. Procédé d'accès selon la revendication 14, caractérisé en ce que le module (MCC) de contrôle de la connaissance du code identifiant (PIN) communique avec le module de génération de clés de session sécurisé (MGC) via une liaison sécurisée à authentification mutuelle. 16. Procédé d'accès selon la revendication 14 ou 15, caractérisé en ce que le module intermédiaire (MI) communique uniquement avec le module de contrôle de connaissance (MCC) du module tiers de confiance (MTC). 17. Procédé d'accès selon l'une des revendications 14 à 16, caractérisé en ce que le module tiers de confiance (MTC) est en partie au moins intégré dans un module matériel de sécurité (HSM). 18. Procédé d'accès selon l'une des revendications 14 à 17, caractérisé en ce que le module de génération de clé de session sécurisée et/ou le module de contrôle de connaissance est intégré dans un module matériel de sécurité (HSM). 19. Procédé d'accès selon l'une des revendications 14 à 18, caractérisé en ce que le module de contrôle de connaissance (MCC) et le module de génération de clé de session sont implantés chacun sur deux serveurs distincts. 20. Procédé d'accès selon l'une des revendications 14 à 19, caractérisé en ce que le module de contrôle de connaissance (MCC) est adapté pour mémoriser les envois de preuve de connaissance et pour refuser les transactions en fonction d'un nombre d'échec déterminé et/ou de règles de sécurité. 21. Procédé d'accès selon la revendication 20, caractérisé en que le module de contrôle de connaissance (MCC) est associé à un module de détection des fraudes (MDF) adapté pour mémoriser l'identifiant utilisé à chaque envoi de preuve de connaissance et le résultat du contrôle de connaissance et pour communiquer au module de contrôle de connaissance (MCC) une autorisation de communication avec le module intermédiaire (MI) en fonction de l'identifiant et du ou des résultats des contrôle des connaissances. 22. Procédé d'accès selon la revendication 20 ou 21, caractérisé en ce que le module tiers de confiance (MTC) met en oeuvre une contre-mesure visant à rendre le temps de réponse du tiers de confiance indépendant du résultat du test de validité de la preuve de connaissance. 23. Procédé d'accès selon l'une des revendications précédentes caractérisé en ce que la saisie du code identifiant (PIN) est effectuée au moyen d'une interface graphique affichant un clavier virtuel (CV) sur un écran (E) de l'unité locale (UL) et d'une interface de pointage (S) permettant à l'utilisateur (U) de sélectionner des caractères du clavier virtuel (CV). 24. Dispositif informatique comprenant des moyens de communication avec un dispositif personnel sécurisé (CP), des moyens d'interface homme machine (C, E, S) et des moyens de communication avec un module tiers de confiance (MTC) caractérisé en ce que le dispositif informatique comprend un module intermédiaire (MI) adapté pour : - recevoir la saisie d'un code identifiant (PIN) par un utilisateur au moyen de l'interface homme machine, - obtenir du module tiers de confiance (MTC) moins une clé de session sécurisée, - envoyer au dispositif personnel sécurisé (CP) le code identifiant (PIN) sous une forme sécurisée au moyen de chaque clé de session sécurisée.20