Brevet FR2983374A1 — publié le 20130531

Arrière-plan de l'invention L'invention se rapporte au domaine des transactions en ligne. L'invention concerne en particulier l'authentification des parties à une transaction initiée en ligne lorsqu'elles se rencontrent pour finaliser la transaction. Une transaction entre deux personnes, par exemple la vente d'un produit ou d'un service, peut se dérouler en deux phases : lors d'une première phase, la transaction est initiée en ligne. Les parties communiquent par l'intermédiaire d'un réseau de télécommunication pour convenir d'un produit ou d'un service, d'un prix de vente et d'un rendez-vous pour réaliser l'échange. Ensuite, lors d'une deuxième phase, les personnes se rencontrent et échangent le produit ou service convenu contre le paiement de son prix. Lors d'une telle transaction, il n'est pas possible de s'assurer que la personne qui se présente au rendez-vous est bien la personne qui a initié la transaction en ligne. Un tiers peut donc tenter d'usurper l'identité d'une des parties. On connait l'utilisation d'un code de livraison pour permettre d'authentifier l'acheteur d'un produit. Lors d'une première phase en ligne de la transaction, le vendeur fournit un code de livraison à l'acheteur. Lors de la livraison, l'acheteur présente le code de livraison reçu pour s'authentifier et obtenir le produit. Toutefois, il reste souhaitable d'améliorer la sécurité d'une transaction initiée en ligne. Objet et résumé de l'invention La présente invention propose un procédé d'authentification destiné à permettre une authentification entre une première entité et une deuxième entité, comprenant : - lors d'une première phase au cours de laquelle une première entité communique avec une deuxième entité par l'intermédiaire d'un réseau de télécommunication : - une étape de génération d'un premier jeton, et - une étape de transmission du premier jeton vers la deuxième entité, et - lors d'une deuxième phase, une étape d'authentification d'une première entité non authentifiée comme étant la deuxième entité, en fonction d'un deuxième jeton contenu dans un premier dispositif électronique portable de la première entité non authentifiée. Ce procédé est remarquable en ce qu'il comprend : - lors de la première phase : - une étape de génération, d'un troisième jeton, et - une étape de transmission du troisième jeton vers la première entité, et - lors de la deuxième phase, une étape d'authentification d'une deuxième entité non authentifiée comme étant la première entité, en fonction d'un quatrième jeton contenu dans un deuxième dispositif électronique portable de la deuxième entité non authentifiée. Grâce à ces caractéristiques, l'invention permet une authentification mutuelle entre la première entité et la deuxième entité, par exemple entre deux personnes, lors de la deuxième phase. Autrement dit, l'invention fournit un protocole d'authentification mutuelle. En effet, lors de la première phase, qui peut correspondre à l'initiation d'une transaction en ligne, les deux entités échangent un premier jeton et un troisième jeton. Lors de la deuxième phase, en l'absence d'usurpation d'identité, le deuxième jeton correspond au premier jeton et le quatrième jeton correspond au troisième jeton. Le troisième et le quatrième jeton permettent donc de vérifier que les entités qui se rencontrent lors de la deuxième phase sont celles qui avaient participé à la première phase. L'invention trouve une application particulière lors d'une transaction relative à un service. En effet, dans ce cas, il n'est pas possible d'authentifier une des parties à la transaction par la présentation d'un produit. Une authentification mutuelle est donc particulièrement avantageuse. De préférence, l'étape de génération du premier jeton comprend la génération du premier jeton en fonction de données relatives à une transaction entre la première entité et la deuxième entité et d'une clé secrète de la première entité en utilisant un algorithme cryptographique, et l'étape de génération du troisième jeton comprend la génération du troisième jeton en fonction des données et d'une clé secrète de la deuxième entité en utilisant un algorithme cryptographique. L'utilisation d'un algorithme cryptographique et de clés pour générer les jetons échangés rend plus difficile l'usurpation d'identité par un tiers. Selon un mode de réalisation, la clé de la première entité est une clé secrète, le premier jeton étant généré par chiffrement des données avec la clé de la première entité, et la clé de la deuxième entité est une clé secrète, le troisième jeton étant généré par chiffrement des données avec la clé de la deuxième entité. Selon un autre mode de réalisation, la clé de la première entité est une clé secrète, le premier jeton étant généré par signature des données avec la clé de la première entité, et la clé de la deuxième entité est une clé secrète, le troisième jeton étant généré par signature des données avec la clé de la deuxième entité. Selon un autre mode de réalisation, la clé de la première entité est une clé bi-asymétrique incluant une clé privée et une clé publique, le premier jeton étant généré par signature des données avec la clé publique de la première entité, et la clé de la deuxième entité est une clé bi-asymétrique incluant une clé privée et une clé publique, le troisième jeton étant généré par signature des données avec la clé publique de la deuxième entité. Dans un mode de réalisation, l'étape d'authentification d'une première entité non authentifiée comme étant la deuxième entité comprend : - une étape de réception, par le deuxième dispositif électronique portable, du deuxième jeton, et - une étape de vérification, par le deuxième dispositif électronique portable, de l'authenticité du deuxième jeton en utilisant la clé de la première entité, et l'étape d'authentification d'une deuxième entité non authentifiée comme étant la première entité comprend : - une étape de réception, par le premier dispositif électronique portable, du quatrième jeton, et - une étape de vérification, par le premier dispositif électronique portable, de l'authenticité du quatrième jeton en utilisant la clé de la deuxième entité. Selon un mode de réalisation, l'étape de vérification de l'authenticité du deuxième jeton comprend le déchiffrement du deuxième jeton avec la clé de la première entité, et l'étape de vérification de l'authenticité du quatrième jeton comprend le déchiffrement du quatrième jeton avec la clé de la deuxième entité. Selon un mode de réalisation, l'étape de vérification de l'authenticité du deuxième jeton comprend la comparaison du deuxième jeton avec une première signature prédéterminée, et l'étape de vérification de l'authenticité du quatrième jeton comprend le déchiffrement du quatrième jeton avec une deuxième signature prédéterminée. Selon un mode de réalisation, l'étape de vérification de l'authenticité du deuxième jeton comprend la comparaison du deuxième jeton avec une première signature déterminée en utilisant la clé privée de la première entité, et l'étape de vérification de l'authenticité du quatrième jeton comprend le déchiffrement du quatrième jeton avec une deuxième signature déterminée en utilisant la clé privée de la deuxième entité. Selon un mode de réalisation, le premier dispositif électronique portable et le deuxième dispositif électronique portable comprennent chacun une interface de communication permettant une communication courte portée, c'est-à-dire de portée comprises entre 5 cm et 300m, entre le premier dispositif électronique portable et le deuxième dispositif électronique portable, l'étape de réception, par le deuxième dispositif électronique portable, du deuxième jeton et l'étape de réception, par le premier dispositif électronique portable, du quatrième jeton comprenant un échange de jetons par ladite communication courte portée. Dans un autre mode de réalisation, l'étape d'authentification d'une première entité non authentifiée comme étant la deuxième entité comprend : - une étape de réception, par le deuxième dispositif électronique portable, d'un premier code, et - une étape de vérification, par le deuxième dispositif électronique portable, de l'authenticité du quatrième jeton en utilisant le premier code, et l'étape d'authentification d'une deuxième entité non authentifiée comme étant la première entité comprend : - une étape de réception, par le premier dispositif électronique portable, d'un deuxième code, et - une étape de vérification, par le premier dispositif électronique portable, de l'authenticité du deuxième jeton en utilisant le deuxième code. Le premier code peut être la clé de la deuxième entité et le deuxième code peut être la clé de la première entité. En variante, l'étape de vérification de l'authenticité du quatrième jeton peut comprendre la détermination, par le deuxième dispositif électronique portable, de la clé de la deuxième entité en fonction du premier code, et l'étape de vérification de l'authenticité du deuxième jeton comprendre la détermination, par le premier dispositif électronique portable, de la clé de la première entité en fonction du premier code. L'étape de génération d'un premier jeton peut être effectuée par un premier dispositif électronique de la première entité, ledit premier dispositif électronique et le deuxième dispositif électronique portable étant deux dispositifs distincts. De même, l'étape de génération d'un troisième jeton peut être effectuée par un deuxième dispositif électronique de la deuxième entité, ledit deuxième dispositif électronique et le premier dispositif électronique portable étant deux dispositifs distincts. A l'inverse, l'étape de génération d'un premier jeton peut être effectuée par le deuxième dispositif électronique portable de la première entité et l'étape de génération d'un troisième jeton peut être effectuée par le premier dispositif électronique portable de la deuxième entité. Cela permet à chaque entité de réaliser la transaction avec deux dispositifs électroniques séparés ou un unique dispositif. Les jetons peuvent également être générés par un serveur. De manière correspondante, l'invention propose un système d'authentification destiné à permettre une authentification entre une première entité et une deuxième entité, comprenant : - des moyens de génération d'un premier jeton, - des moyens de transmission du premier jeton vers la deuxième entité par un réseau de télécommunication, et des moyens d'authentification d'une première entité non authentifiée comme étant la deuxième entité, en fonction d'un deuxième jeton contenu dans un premier dispositif électronique portable de la première entité non authentifiée, caractérisé en ce qu'il comprend : - des moyens de génération d'un troisième jeton, - des moyens de transmission du troisième jeton vers la première entité par le réseau de télécommunication, et des moyens d'authentification d'une deuxième entité non authentifiée comme étant la première entité, en fonction d'un quatrième jeton contenu dans un deuxième dispositif électronique portable de la deuxième entité non authentifiée. Selon un mode de réalisation, le premier dispositif électronique portable et le deuxième dispositif électronique portable comprennent chacun une interface de communication permettant une communication courte portée, c'est-à-dire de portée comprises entre 5 cm et 300m, entre le premier dispositif électronique portable et le deuxième dispositif électronique portable. Brève description des dessins D'autres caractéristiques et avantages de la présente invention ressortiront de la description faite ci-dessous, en référence aux dessins annexés qui en illustrent un exemple de réalisation dépourvu de tout caractère limitatif. Sur les figures : la figure 1 représente un système permettant la mise en oeuvre de l'invention, la figure 2 représente l'architecture matérielle d'un dispositif électronique du système de la figure 1, la figure 3 représente le déroulement d'une première phase d'un procédé d'authentification conforme à l'invention dans le système de la figure 1, la figure 4 représente le déroulement d'une deuxième phase de ce procédé d'authentification, la figure 5 représente le déroulement de la deuxième phase de ce procédé d'authentification, selon une variante. Description détaillée de modes de réalisation La figure 1 représente un système 1 permettant la réalisation d'une transaction entre deux personnes, notées respectivement A et B. Le système 1 comprend un ordinateur personnel 100 et un terminal portable 101 (par exemple un téléphone portable) appartenant à la personne A, un ordinateur personnel 200 et un terminal portable 201 (par exemple un téléphone portable) appartenant à la personne B, un serveur 300 d'un fournisseur de service et un réseau de télécommunication 2. Le réseau de télécommunication 2 est par exemple le réseau Internet et permet à l'ordinateur personnel 100, à l'ordinateur personnel 200 et au serveur 300 de communiquer entre eux. La figure 2 représente l'architecture matérielle d'un dispositif électronique 10 du système de la figure 1. Le dispositif électronique 10 peut être l'ordinateur personnel 100, le terminal portable 101, l'ordinateur personnel 200 ou le terminal portable 201. Le dispositif électronique 10 présente l'architecture matérielle d'un ordinateur et comprend un processeur 11, une mémoire non volatile 12, une mémoire volatile 13, 25 une première interface de communication 14 et une deuxième interface de communication 15. Le processeur 11 permet d'exécuter des programmes d'ordinateur mémorisés dans la mémoire non volatile 12, en utilisant la mémoire volatile 13. Lorsqu'on décrit ci-dessous le fonctionnement de l'ordinateur personnel 100, du terminal portable 101, de 30 l'ordinateur personnel 200 ou du terminal portable 201, il faut comprendre que ce fonctionnement peut résulter de l'exécution d'un tel programme d'ordinateur. De tels programme peuvent être des programmes de gestion de clés, de génération et de vérification de jetons utilisés lors de la transaction entre l'entité A et l'entité B. Dans le cas de l'ordinateur personnel 100 ou 200, l'interface de 35 communication 14 permet une communication à distance par l'intermédiaire du réseau de télécommunication 2 et l'interface de communication 15 permet une communication courte portée avec le terminal portable 101 ou 201. Dans le cas du terminal portable 101 ou 201, l'interface de communication 14 permet par exemple une communication à distance par l'intermédiaire d'un réseau téléphonie cellulaire ou téléphonie mobile et l'interface de communication 15 permet une communication courte portée, c'est-à-dire de quelques centimètres à quelques mètres, avec un autre terminal situé à proximité. L'interface de communication 15 utilise par exemple un protocole de communication Bluetooth, NFC,... Les dispositifs portables 101 et 201 peuvent communiquer l'un avec l'autre et avec le serveur 300 via l'interface communication 14, par SMS et internet mobile par exemple, et de façon complémentaire, ils peuvent également communiquer via l'interface de communication 15. Sur la figure 1, on a également représenté une clé 110 secrète de la personne A, mémorisée dans la mémoire de l'ordinateur personnel 100 (mémoire non volatile 12 et/ou mémoire volatile 13), une clé 210 secrète de la personne B, mémorisée dans la mémoire de l'ordinateur personnel 200 (mémoire non volatile 12 et/ou mémoire volatile 13), la mémoire 140 du terminal portable 101 (mémoire non volatile 12 et/ou mémoire volatile 13) et la mémoire 240 du terminal portable 201 (mémoire non volatile 12 et/ou mémoire volatile 13). La clé 110 est également mémorisée dans la mémoire 140 et la clé 210 est également mémorisée dans la mémoire 240. On décrit maintenant le déroulement d'une transaction entre la personne A et la personne B dans le système de la figure 1. La figure 3 représente une première phase de la transaction, permettant d'initier la transaction en ligne. Lors d'une étape E0, l'ordinateur personnel 100 et l'ordinateur personnel 200 communiquent avec le serveur 300 pour initier une transaction. La communication entre l'ordinateur personnel 100, l'ordinateur personnel 200 et le serveur 300 passe par le réseau de télécommunication 2. Autrement dit, la transaction est initiée en ligne. Le serveur 300 est par exemple un serveur d'un fournisseur de service comme un site de vente de produit ou de service en ligne, un site de rencontre,... L'initiation de la transaction consiste par exemple à convenir un produit ou un service, un prix et un rendez-vous. Ainsi, à l'issue de l'étape E0, l'ordinateur personnel 100 obtient des données DATA relatives à la transaction (étape El). Les données DATA contiennent par exemple l'identité de la personne A, l'identité de la personne B, la description d'un produit ou d'un service, un prix et un rendez-vous (lieu, date et heure), éventuellement un numéro d'identification de la transaction. De manière correspondante, à l'issue de l'étape E0, l'ordinateur personnel 200 obtient des données DATA relatives à la transaction (étape F1). Ensuite, à l'étape E2, l'ordinateur personnel 100 génère un jeton JA en fonction des données DATA et de la clé 110. Le jeton 3A est par exemple généré par un algorithme cryptographique en fonction des données DATA et de la clé 110. L'algorithme cryptographique utilisé rend impossible à un tiers, même en connaissant les données DATA, de générer le jeton JA sans connaître la clé 110. La clef 110 peut être une clef statique (réutilisable plusieurs fois par A), ou bien alors éphémère, c'est-à-dire uniquement utilisable pour la transaction en cours de réalisation (authentification mutuelle avec B). Dans un mode de réalisation, elle peut être déduite d'un code secret (PIN) choisi par A et/ou généré par l'ordinateur personnel 100 et/ou généré par le serveur 300, à l'aide d'un algorithme cryptographique (par exemple une fonction de hashage SHA-1 comme décrit dans FIPS 180-3). Dans un autre mode de réalisation, la clef 110 ne peut être utilisée uniquement qu'après la présentation par A d'un code secret (PIN) en protégeant l'utilisation. Dans ce dernier cas, le code secret sert à débloquer les fonctions de génération et de vérification des jetons. De manière correspondante, à l'étape F2, l'ordinateur personnel 200 génère un jeton JB en fonction des données DATA et de la clé 210. Le jeton JB est par exemple généré par un algorithme cryptographique en fonction des données DATA et de la clé 210. L'algorithme cryptographique utilisé rend impossible à un tiers, même en connaissant les données DATA, de générer le jeton JB sans connaître la clé 210. La clef 210 peut être une clef statique (réutilisable plusieurs fois par B), ou bien alors éphémère, c'est-à-dire uniquement utilisable pour la transaction en cours de réalisation (authentification mutuelle avec A). Dans un mode de réalisation, elle peut être déduite d'un code secret (PIN) choisi par B et/ou l'ordinateur personnel 200 et/ou généré par le serveur 300, à l'aide d'un algorithme cryptographique (par exemple une fonction de hashage SHA-1 comme décrit dans FIPS 180-3). Dans un autre mode de réalisation, la clef 210 ne peut être utilisée uniquement qu'après la présentation par B d'un code secret (PIN) en protégeant l'utilisation. Dans ce dernier cas, le code secret sert à débloquer les fonctions de génération et de vérification des jetons. Ensuite, les ordinateurs personnels 100 et 200 échangent les jetons JA et JB générés par l'intermédiaire du réseau de télécommunication 2 (étapes E3 et F3). L'ordinateur personnel 100 transmet alors le jeton JB reçu au terminal portable 101 (étape E4), qui le mémorise dans sa mémoire 140 (étape E5). De manière correspondante, l'ordinateur personnel 200 transmet alors le jeton JA reçu au terminal portable 201 (étape F4), qui le mémorise dans sa mémoire 240 (étape F5). De manière alternative, le serveur 300 possède les données DATA, les clefs et génère les jetons JA et JB. Dans ce cas, l'ordinateur personnel 100 ou le dispositif portable 101 reçoit le jeton JB, la clef 110 et les données DATA, et l'ordinateur personnel 200 ou le dispositif portable 201 reçoit le jeton JA, la clé 210 et les données DATA. A l'issue de cette première phase, les personnes A et B ont donc convenu d'un rendez-vous pour échanger le produit ou le service. De plus, chaque personne dispose, dans son terminal portable 101 ou 201, d'un jeton JA ou JB généré en fonction d'une clé secrète de l'autre personne. La figure 4 représente une deuxième phase de la transaction, au cours de laquelle les personnes A et B se rencontrent au rendez-vous fixé et s'authentifient mutuellement afin de finaliser la transaction. Lors de ce rendez-vous, la personne A porte sur lui son terminal portable 101 et la personne B porte son terminal portable 201. Les personnes A et B étant celles qui ont participé à la première phase de la figure 3, la mémoire 140 du terminal portable 101 contient notamment le jeton JB reçu à l'étape E5 et la mémoire 240 du terminal portable 201 contient notamment le jeton JA reçu à l'étape F5. Toutefois, en cas de tentative d'usurpation d'identité, un tiers peut se présenter au rendez-vous avec un terminal portable mémorisant un jeton quelconque et se faire passer pour A ou B. Ainsi, sur la figure 4, on note JA' et JB' les jetons mémorisés dans les terminaux portables des personnes qui se rencontrent. Les jetons JA' et JB' correspondent normalement aux jetons JA et JB, mais au moins l'un deux peut être différent en cas d'usurpation d'identité. La rencontre entre les personnes A et B permet d'établir une communication courte distance entre les terminaux portables 101 et 201, par les interfaces de communications 15. Ainsi, aux étapes E6 et F6, les terminaux portables échangent les jetons JA' et JB' mémorisés. Ensuite, à l'étape E7, le terminal portable 101 vérifie l'authenticité du jeton JA' reçu à l'étape E6, en utilisant la clé 110 de la personne A et un algorithme cryptographique complémentaire à l'algorithme utilisé à l'étape E2. La clé 110 peut être pré-mémorisée dans le terminal portable 101 ou transmise avec le jeton JB lors de l'étape E4. Si c'est effectivement la personne B qui se présente au rendez-vous et transmet le jeton JA', alors le jeton JA' correspond au jeton 3A. Par contre, si c'est un tiers qui se présente au rendez-vous et transmet le jeton JA', alors le jeton JA' ne correspond pas jeton JA. En effet, comme expliqué précédemment, l'algorithme cryptographique utilisé à l'étape E2 rend impossible à un tiers, même en connaissant les données DATA, de générer le jeton 3A sans connaître la clé 110 secrète de la personne A. La vérification de l'authenticité du jeton JA' permet donc à la personne A d'authentifier l'autre personne qui se présente au rendez-vous comme étant effectivement la personne B. De manière correspondante, à l'étape F7, le terminal portable 201 vérifie l'authenticité du jeton h' reçu à l'étape F6, en utilisant la clé 210 de la personne B et un algorithme cryptographique complémentaire à l'algorithme utilisé à l'étape F2. La clé 210 peut être pré-mémorisée dans le terminal portable 201 ou transmise avec le jeton JA lors de l'étape F4. Si c'est effectivement la personne A qui se présente au rendez-vous et transmet le jeton 3B', alors le jeton 3B' correspond au jeton JB. Par contre, si c'est un tiers qui se présente au rendez-vous et transmet le jeton 38', alors le jeton JB' ne correspond pas jeton 313. En effet, comme expliqué précédemment, l'algorithme cryptographique utilisé à l'étape F2 rend impossible à un tiers, même en connaissant les données DATA, de générer le jeton JB sans connaître la clé 210 secrète de la personne A. La vérification de l'authenticité du jeton -113' permet donc à la personne B d'authentifier l'autre personne qui se présente au rendez-vous comme étant effectivement la personne A. Après les étapes E7 et F7, les personnes A et B se sont mutuellement authentifiées et peuvent donc finaliser la transaction en toute sécurité, par exemple en échangeant le produit ou le service convenu contre son prix. Des exemples (non limitatifs) de modes de réalisation des mécanismes de construction et de vérification de jeton d'authentification sont décrits ci-après. Le jeton d'authentification peut être calculé à l'aide d'algorithme cryptographique à base de clef secrète. Dans ce cas, il peut s'agir d'une signature des données (MAC). Lors de l'étape [3 (respectivement F3), le dispositif 100 (respectivement 200) construit le jeton JA (respectivement 38) en signant les données DATA caractérisant la transaction, éventuellement complété d'autres données (publiques ou secrètes), à l'aide de la clef 110 (respectivement 210). Dans ce cas, lors de l'étape E6 (respectivement F6), le dispositif 101 (respectivement 201) construit la signature attendu, à partir des données DATA caractérisant la transaction, éventuellement complété d'autres données (publiques ou secrètes), à l'aide de la clef 110 (respectivement 210) puis le compare à l'étape E7 (respectivement F7) à JA' (respectivement JB'). Un autre mode de réalisation utilisant un algorithme cryptographique à base de clef secrète peut être le chiffrement des données. Lors de l'étape E3 (respectivement F3), le dispositif 100 (respectivement 200) construit le jeton JA (respectivement JB) en chiffrant les données DATA caractérisant la transaction, éventuellement couplée à un secret uniquement connu de A (respectivement B) à l'aide de la clef 110 (respectivement 210). Dans ce cas, lors de l'étape E6 (respectivement F6), le dispositif 101 (respectivement 201) déchiffre le jeton JA' (respectivement JB') à l'aide de la clef 110 (respectivement 210), et vérifie à l'étape E7 (respectivement F7) que les données déchiffrées sont bien celles attendues. Un autre mode de réalisation utilisant un algorithme cryptographique à base de clef asymétrique peut être le chiffrement des données. Dans ce cas, la clef 110 (respectivement 210) est une bi clef asymétrique (clef privée et publique). Lors de l'étape E3 (respectivement F3), le dispositif 100 (respectivement 200) construit le jeton JA (respectivement JB) en chiffrant les données DATA caractérisant la transaction, éventuellement couplée à un secret uniquement connu de A (respectivement B) à l'aide de la clef publique 110 (respectivement 210). Dans ce cas, lors de l'étape E6 (respectivement F6), le dispositif 101 (respectivement 201) déchiffre le jeton JA' (respectivement JB') à l'aide de la clef 110 privée (respectivement 210), et vérifie à l'étape E7 (respectivement F7) que les données déchiffrées sont bien celles attendues. L'aspect asymétrique du protocole permet de n'utiliser qu'une seule des deux clefs à chaque étape du protocole. Ainsi la clef 110 (respectivement 210) contenue dans l'ordinateur personnel 100 (respectivement 200) doit elle au moins contenir la clef publique de la bi clef asymétrique, tandis que la clef 110 contenue dans le terminal portable 101 (respectivement 201) doit au moins contenir la clef privée de la bi clef asymétrique. Dans ce mode de réalisation, il est possible de permettre à plusieurs entités ou personne de conclure une transaction en ligne (à savoir la réalisation de la phase 1) au nom de A (respectivement B), chacune possédant la même clef publique, associée à A (respectivement B), tandis que seul A (respectivement B) qui possède la clef privée correspondante pourra s'authentifier lors du rendez-vous et donc conclure la transaction (phase 2). Cela permet à A (respectivement B) de déléguer à des tiers la préparation de la transaction en ligne, tandis que lui seul pourra effectivement conclure la transaction en ligne (remise en face à face). Un homme du métier comprendra que les modes de réalisation et variantes décrits ci-avant ne constituent que des exemples non limitatifs de mise en oeuvre de l'invention. En particulier, l'homme du métier pourra envisager une quelconque combinaison des variantes et modes de réalisation décrits ci-avant afin de répondre à un besoin bien particulier. La figure 5 représente une variante du déroulement de la deuxième phase. Comme dans le cas de la figure 4, au cours de la deuxième phase de la transaction, les personnes A et B se rencontrent au rendez-vous fixé et s'authentifient mutuellement afin de finaliser la transaction. Lors de ce rendez-vous, la personne A porte sur lui son terminal portable 101 et la personne B porte son terminal portable 201. Comme précédemment, on note JA' et JB' les jetons mémorisés dans les terminaux portables des personnes qui se rencontrent. Les jetons JA' et JB' correspondent normalement aux jetons JA et JB de la figure 3, mais au moins l'un deux peut être différent en cas d'usurpation d'identité. A l'étape E8, la personne A présente son terminal portable 101 à la personne B qui introduit alors un code KB dans le terminal portable 101, par exemple en utilisant une interface d'entrée du terminal 101. Le code KB, peut soit être la clef cryptographique de vérification de B (c'est-à-dire 210), soit une données (PIN) permettant au terminal portable 101 de reconstruire la clef cryptographique de vérification 210 de B (par exemple à l'aide d'une fonction de hashage SHA-1 comme décrit dans FIPS 180-3) Ensuite, à l'étape E9, le terminal portable 101 vérifie l'authenticité du jeton JB' contenu dans sa mémoire en utilisant le code KB. Si c'est effectivement la personne B qui se présente au rendez-vous et introduit le code KB, alors le code KB correspond au jeton JB' mémorisé dans la mémoire 140 du terminal 101. Par contre, si c'est un tiers qui se présente au rendez-vous et introduit un code KB quelconque, alors le code KB ne correspond pas au jeton JB' mémorisé dans la mémoire 140 du terminal 101. La vérification de la correspondance du jeton 3B' et du code KB permet donc à la personne A d'authentifier l'autre personne qui se présente au rendez-vous comme étant effectivement la personne B. Une fois que A aura vérifié le résultat de la concordance entre KB et JB' effectué par le terminal 101 (affichage sur l'écran par exemple), il aura authentifié B. De manière correspondante, à l'étape F8, la personne B présente son terminal portable 201 à la personne A qui introduit alors un code KA dans le terminal portable 201, par exemple en utilisant une interface d'entrée du terminal 201. Le code KA, peut soit être la clef cryptographique de vérification de A (c'est-à-dire 110), soit une données (PIN) permettant au terminal portable 201 de reconstruire la clef cryptographique de vérification 110 de A (par exemple à l'aide d'une fonction de hashage SHA-1 comme décrit dans FIPS 180-3). Ensuite, à l'étape F9, le terminal portable 201 vérifie l'authenticité du jeton 3A' contenu dans sa mémoire en utilisant le code KA. Si c'est effectivement la personne A qui se présente au rendez-vous et introduit le code KA, alors le code KA correspond au jeton JA' mémorisé dans la mémoire 140 du terminal 101. Par contre, si c'est un tiers qui se présente au rendez-vous et introduit un code KA quelconque, alors le code KA ne correspond pas au jeton JA' mémorisé dans la mémoire 240 du terminal portable 201. La vérification de la correspondance du jeton JA' et du code KA permet donc à la personne B d'authentifier l'autre personne qui se présente au rendez-vous comme étant effectivement la personne A. Une fois que B aura vérifié le résultat de la concordance entre KA et JA' effectué par le terminal 201 (affichage sur l'écran par exemple), il aura authentifié A. Ainsi, après les étapes E9 et F9, les personnes A et B se sont mutuellement authentifiées et peuvent donc finaliser la transaction en toute sécurité, par exemple en échangeant le produit ou le service convenu contre son prix. Dans le système 1 de la figure 1, la transaction est initiée en ligne par l'intermédiaire d'un serveur 300. Dans une variante, les personnes A et B initient la transaction par une communication directe des ordinateurs personnels 100 et 200 sans l'intermédiaire d'un serveur. Dans le système 1 de la figure 1, la personne A est équipée d'un ordinateur personnel 100 et d'un terminal portable 101. Dans une variante, la personne A utilise un unique dispositif électronique portable qui remplit les fonctions de l'ordinateur personnel 100 et du terminal portable 101. Le fonctionnement dans ce cas est sensiblement le même que celui décrit précédemment, seul l'étape E4 de transmission entre l'ordinateur personnel 100 et le terminal portable 101 étant non nécessaire. De manière correspondante, la personne B peut utiliser un unique dispositif électronique portable qui remplit les fonctions de l'ordinateur personnel 200 et du terminal portable 201. Dans un mode de réalisation, l'utilisation de la clé 110 par le terminal portable 101 et/ou l'ordinateur personnel 100 ne peut avoir lieu que si la personne A a introduit un code d'identification, par exemple un code PIN, dans son terminal portable 101 afin d'en autoriser l'utilisation. De manière correspondante, dans un mode de réalisation, l'utilisation de la clé 210 par le terminal portable 201 et/ou l'ordinateur personnel 200 ne peut avoir lieu que si la personne B a introduit un code d'identification, par exemple un code PIN, dans son terminal portable 201 afin d'en autoriser l'utilisation. REVENDICATIONS1. Procédé d'authentification destiné à permettre une authentification entre une première entité (A) et une deuxième entité (B), comprenant : - lors d'une première phase au cours de laquelle une première entité (A) communique avec une deuxième entité (B) par l'intermédiaire d'un réseau de télécommunication (2) : - une étape (E2) de génération d'un premier jeton (JA), et - une étape (E3) de transmission du premier jeton (JA) vers la deuxième entité (B), et - lors d'une deuxième phase, une étape d'authentification d'une première entité non authentifiée comme étant la deuxième entité (B), en fonction d'un deuxième jeton (JA') contenu dans un premier dispositif électronique portable (201) de la première entité non authentifiée, caractérisé en ce qu'il comprend : - lors de la première phase : - une étape (F2) de génération, d'un troisième jeton (JB), et - une étape (F3) de transmission du troisième jeton (JB) vers la première entité (A), et - lors de la deuxième phase, une étape d'authentification d'une deuxième entité non authentifiée comme étant la première entité (A), en fonction d'un quatrième jeton (JB') contenu dans un deuxième dispositif électronique portable (101) de la deuxième entité non authentifiée. 2. Procédé d'authentification selon la revendication 1, dans lequel l'étape (E2) de génération du premier jeton (JA) comprend la génération du premier jeton (JA) en fonction de données (DATA) relatives à une transaction entre la première entité (A) et la deuxième entité (B) et d'une clé (110) de la première entité (A) en utilisant un algorithme cryptographique, et l'étape (F2) de génération du troisième jeton (JB) comprend la génération du troisième jeton (JB) en fonction des données (DATA) et d'une clé (210) de la deuxième entité (B) en utilisant un algorithme cryptographique. 3. Procédé d'authentification selon la revendication 2, dans lequel la clé (110) de la première entité (A) est une clé secrète, le premier jeton (JA) étant généré par chiffrement des données (DATA) avec la clé (110) de la première entité (A), 35 etla clé (210) de la deuxième entité (B) est une clé secrète, le troisième jeton (JB) étant généré par chiffrement des données (DATA) avec la clé (210) de la deuxième entité (B). 4. Procédé d'authentification selon la revendication 2, dans lequel la clé (110) de la première entité (A) est une clé secrète, le premier jeton (JA) étant généré par signature des données (DATA) avec la clé (110) de la première entité (A), et la clé (210) de la deuxième entité (B) est une clé secrète, le troisième jeton (JB) étant généré par signature des données (DATA) avec la clé (210) de la deuxième entité (B). 5. Procédé d'authentification selon la revendication 2, dans lequel la clé (110) de la première entité (A) est une clé bi-asymétrique incluant une clé privée et une clé publique, le premier jeton (JA) étant généré par signature des données (DATA) avec la clé publique de la première entité (A), et la clé (210) de la deuxième entité (B) est une clé bi-asymétrique incluant une clé privée et une clé publique, le troisième jeton (JB) étant généré par signature des données (DATA) avec la clé publique de la deuxième entité (B). 6. Procédé d'authentification selon la revendication 2, dans lequel l'étape d'authentification d'une première entité non authentifiée comme étant la deuxième entité (B) comprend : - une étape (E6) de réception, par le deuxième dispositif électronique portable (101), du deuxième jeton (JA'), et - une étape (E7) de vérification, par le deuxième dispositif électronique portable (101), de l'authenticité du deuxième jeton (JA') en utilisant la clé (110) de la première entité (A), et l'étape d'authentification d'une deuxième entité non authentifiée comme étant la première entité (A) comprend : - une étape (F6) de réception, par le premier dispositif électronique portable (201), du quatrième jeton (JB'), et - une étape (F7) de vérification, par le premier dispositif électronique portable (201), de l'authenticité du quatrième jeton (JB') en utilisant la clé (210) de la deuxième entité (A). 7. Procédé d'authentification selon la revendication 3 et la revendication 6, dans lequel l'étape (E7) de vérification de l'authenticité du deuxième jeton (JA') comprend le déchiffrement du deuxième jeton (JA') avec la clé (110) de la première entité (A), et l'étape (F7) de vérification de l'authenticité du quatrième jeton (JB') comprend le déchiffrement du quatrième jeton (JB') avec la clé (210) de la deuxième entité (B). 8. Procédé d'authentification selon la revendication 4 et la revendication 6, dans lequel l'étape (E7) de vérification de l'authenticité du deuxième jeton (JA') comprend la comparaison du deuxième jeton (JA') avec une première signature prédéterminée, et l'étape (F7) de vérification de l'authenticité du quatrième jeton (JB') comprend le déchiffrement du quatrième jeton (JB') avec une deuxième signature prédéterminée. 9. Procédé d'authentification selon la revendication 5 et la revendication 6, dans lequel l'étape (E7) de vérification de l'authenticité du deuxième jeton (JA') comprend la comparaison du deuxième jeton (JA') avec une première signature déterminée en utilisant la clé privée de la première entité (A), et l'étape (F7) de vérification de l'authenticité du quatrième jeton (JB') comprend le déchiffrement du quatrième jeton (JB') avec une deuxième signature déterminée en utilisant la clé privée de la deuxième entité (B). 10. Procédé d'authentification selon l'une des revendications 6 à 9, dans lequel le premier dispositif électronique portable (201) et le deuxième dispositif électronique portable (101) comprennent chacun une interface de communication permettant une communication courte portée, c'est-à-dire de portée comprises entre 5 cm et 300m, entre le premier dispositif électronique portable (201) et le deuxième dispositif électronique portable (101), l'étape (E6) de réception, par le deuxième dispositif électronique portable (101), du deuxième jeton (JA') et l'étape (F6) de réception, par le premier dispositif électronique portable (201), du quatrième jeton (JB') comprenant un échange de jetons par ladite communication courte portée. 11. Procédé d'authentification selon l'une des revendications 1 à 5, dans lequel l'étape d'authentification d'une première entité non authentifiée comme étant la deuxième entité (B) comprend : - une étape (E8) de réception, par le deuxième dispositif électronique portable (101), d'un premier code (KB), et - une étape (E9) de vérification, par le deuxième dispositif électronique portable (101), de l'authenticité du quatrième jeton (JB') en utilisant le premier code (KB), et l'étape d'authentification d'une deuxième entité non authentifiée comme étant la première entité (A) comprend- une étape (F8) de réception, par le premier dispositif électronique portable (201), d'un deuxième code (KA), et - une étape (F9) de vérification, par le premier dispositif électronique portable (201), de l'authenticité du deuxième jeton (JA') en utilisant le deuxième code (KB). 12. Procédé d'authentification selon l'une des revendications 2 à 5 et la revendication 10, dans lequel le premier code (KB) est la clé (210) de la deuxième entité (B) et le deuxième code (KA) est la clé (110) de la première entité (B). 13. Procédé d'authentification selon l'une des revendications 2 à 5 et la revendication 10, dans lequel l'étape (E9) de vérification de l'authenticité du quatrième jeton (JB') comprend la détermination, par le deuxième dispositif électronique portable (101), de la clé (210) de la deuxième entité (B) en fonction du premier code (KB), et l'étape (F9) de vérification de l'authenticité du deuxième jeton (JB') comprend la détermination, par le premier dispositif électronique portable (201), de la clé (110) de la première entité (A) en fonction du premier code (KA). 14. Procédé d'authentification selon l'une des revendications 1 à 13, dans lequel l'étape (E2) de génération d'un premier jeton (JA) est effectuée par un premier dispositif électronique (100) de la première entité (A), ledit premier dispositif électronique (100) et le deuxième dispositif électronique portable (101) étant deux dispositifs distincts. 15. Procédé d'authentification selon l'une des revendications 1 à 13, dans lequel l'étape (E2) de génération d'un premier jeton (JA) est effectuée par le deuxième dispositif électronique portable (101) de la première entité. 16. Système d'authentification destiné à permettre une authentification entre une première entité (A) et une deuxième entité (B), comprenant : - des moyens (11, 12, 13) de génération d'un premier jeton (JA), - des moyens (14) de transmission du premier jeton (JA) vers la deuxième entité (B) par un réseau de télécommunication (2), et des moyens d'authentification d'une première entité non authentifiée comme étant la deuxième entité (B), en fonction d'un deuxième jeton (JA') contenu dans un premier dispositif électronique portable (201) de la première entité non authentifiée, caractérisé en ce qu'il comprend : - des moyens (11, 12, 13) de génération d'un troisième jeton (JB),- des moyens (14) de transmission du troisième jeton (JB) vers la première entité (A) par le réseau de télécommunication (2), et - des moyens d'authentification d'une deuxième entité non authentifiée comme étant la première entité (A), en fonction d'un quatrième jeton (JB') contenu dans un deuxième dispositif électronique portable (101) de la deuxième entité non authentifiée. 17. Système d'authentification selon la revendication 16, dans lequel le premier dispositif électronique portable (201) et le deuxième dispositif électronique portable (101) comprennent chacun une interface de communication permettant une communication courte portée, c'est-à-dire de portée comprises entre 5 cm et 300m, entre le premier dispositif électronique portable (201) et le deuxième dispositif électronique portable (101).