Brevet FR2901940A1 — publié le 20071207

L'invention concerne un procédé de génération d'une clé privée, ainsi que des procédés de chiffrement et de déchiffrement d'un message. Elle propose en particulier un système de chiffrement basé sur l'identité à niveau de sécurité amélioré, utilisant par exemple une opération de couplage de point sur courbe elliptique. Suivant le principe du chiffrement basé sur l'identité, un utilisateur peut envoyer un message (représenté sous forme électronique) chiffré à un destinataire en utilisant l'identité dudit destinataire (également représentée sous forme électronique) comme clef publique de chiffrement, la clef privée dudit destinataire lui étant fournie par un serveur de clef centralisé. Suivant ce principe, si un utilisateur nommé Alice désire envoyer un message chiffré à un utilisateur nommé Bob, l'utilisateur Alice utilise le procédé suivant en trois étapes : - Alice chiffre son message en utilisant l'adresse de messagerie 15 électronique de Bob comme clef publique de chiffrement, par exemple "bob@b.com" ; - Bob s'authentifie auprès du serveur de clef centralisé et reçoit la clef privée correspondant à son adresse de messagerie électronique ; - Bob utilise sa clef privée pour déchiffrer le message. 20 Il peut ensuite déchiffrer n'importe quel message envoyé par Alice ou par tout autre utilisateur en utilisant cette clef privée (tout au moins durant sa durée de validité). Un avantage du principe du chiffrement basé sur l'identité par rapport aux procédés de chiffrement à clef publique conventionnels est qu'il ne 25 nécessite pas l'utilisation de certificats. Un autre avantage est qu'un utilisateur peut envoyer un message chiffré à un autre utilisateur même si ce dernier ne s'est pas encore enregistré dans le système. Le premier procédé efficace de chiffrement basé sur l'identité a été proposé par Boneh et Franklin dans l'article "Identity-based encryption from the 30 Weil pairing", publié à l'occasion de la conférence Crypto 2001. Ce procédé est également décrit dans la demande de brevet WO 031017559. Ce dernier procédé est basé sur l'utilisation d'une opération dite de couplage de point réalisée sur une courbe elliptique particulière, ladite courbe elliptique étant un ensemble de points vérifiant une certaine équation mathématique. Le système de chiffrement basé sur l'identité de Boneh-Franklin fonctionne de la manière suivante, étant divisé en quatre sous-procédés. Le premier sous-procédé concerne la sélection des paramètres du système. On définit un ensemble mathématique G muni d'une structure de groupe (multiplicatif dans la suite) et possédant un nombre fini d'éléments noté q. Dans un exemple de réalisation, cet ensemble G peut être un ensemble de points appartenant à une courbe elliptique. On considère également une fonction e prenant en entrée deux éléments de G et renvoyant en sortie un élément d'un groupe G1, constitué lui aussi d'un nombre d'éléments égal à q, ladite fonction e possédant une propriété dite de bilinéarité. Dans un exemple de réalisation, le groupe G1 peut être un sous-ensemble de l'ensemble des couples d'entiers de la forme (a,b), où a et b sont définis modulo un entier premier p, et la fonction e peut être construite au moyen d'une l'opération de couplage dite de Weil ou de Tate définie sur une courbe elliptique. On définit un élément générateur g pour le groupe G. On définit également quatre fonctions de hachage H1, H2, H3 et H4. On génère un entier a compris entre 0 et q-1, et on calcule l'élément h=g^a, (cette dernière opération est le calcul de g exposant a, réalisée dans le groupe multiplicatif précédemment défini G). Les paramètres publics du système sont alors le couple (g,h), tandis que la clef maître du système est l'entier a ; cette clef-maître est stockée au niveau du serveur de clef et doit être maintenue confidentielle. Le second sous-procédé du schéma de chiffrement de Boneh- Franklin concerne la génération d'une clef privée pour une identité particulière notée v, ladite identité pouvant être une chaîne de caractères arbitraire. La génération de ladite clef privée s'effectue en calculant l'élément dv=H1(v)^a, l'opération étant réalisée dans le groupe G. Le troisième sous-procédé du système de chiffrement de Boneh- Franklin concerne l'opération de chiffrement d'un message m pour une certaine identité v (c'est-à-dire destiné au porteur de l'identité v). Dans une première étape, on génère une chaîne aléatoire s. Dans une deuxième étape, on génère un entier r=H3(s,m). Le message chiffré, noté C, est alors défini de la manière suivante: C= (g^r, s xor H2( e(H1(v),h)^r) , m xor H4(s) ) Le quatrième sous-procédé du système de chiffrement de Boneh- Franklin concerne l'opération de déchiffrement d'un message chiffré C, noté C=(cl,c2,c3). La première étape consiste à calculer s=c2 xor H2(e(dv, et )). La deuxième étape consiste à calculer m=c3 xor H4(s). La troisième étape consiste à calculer r=H3(s, m), et à effectuer le test: et =g^r. Si le test n'est pas vérifié, le message chiffré est rejeté. Si le test est vérifié, on renvoie le message m. Un inconvénient du schéma de chiffrement de Boneh-Franklin est qu'il existe une perte importante de sécurité entre le niveau de sécurité de ce schéma et le niveau de sécurité offert par la courbe elliptique sous-jacente. En effet, pour des paramètres standards, cette perte de sécurité atteint environ 151 bits. Pour compenser cette perte, on doit donc utiliser des tailles de paramètres beaucoup plus grandes, ce qui ralentit le temps d'exécution des quatre sous-procédés décrits précédemment, et diminue donc l'efficacité pratique de ce schéma de chiffrement. L'objet de l'invention est de proposer un nouveau schéma de chiffrement basé sur l'identité qui supprime cette perte de sécurité, ce qui permet de réduire la taille des paramètres du système et améliorer ainsi l'efficacité pratique du schéma de chiffrement. Lorsque l'on utilise une courbe elliptique pour l'opération de couplage, le nouveau schéma possède par exemple un niveau de sécurité identique à celui offert par la courbe elliptique sous-jacente. L'invention propose ainsi un procédé de génération d'une clé privée au sein d'une entité électronique, à partir d'une clef-maître et de données représentant une identité, caractérisé par les étapes suivantes : -génération d'un nombre au sein de l'entité électronique ; - détermination d'un premier élément de la clé privée égal au résultat de l'application d'une fonction à sens unique impliquant la clef-maître à la combinaison dudit nombre et du résultat de l'application d'une première fonction de hachage aux données ; - utilisation dudit nombre comme second élément de la clé privée. La combinaison réalisée permet d'améliorer la sécurité du système, ce qui contribue à réduire, voire à éliminer, la perte de sécurité mentionnée ci- dessus. On peut remarquer ici que, selon la terminologie fréquemment employée en cryptographie, une fonction f est dite à sens unique lorsque le calcul d'une image f(x) par cette fonction est relativement simple par rapport aux calculs nécessaires pour retrouver x en ne connaissant que f(x), qui rendent cette dernière opération impossible en pratique. On remarquera par ailleurs que l'on utilise les notions de premier élément et second élément (voire troisième et quatrième éléments dans certains cas) pour les distinguer dans un ensemble (par exemple une clef privée ou un message chiffré ou déchiffré), mais qu'il ne s'agit en aucun cas de se limiter à la formation de l'ensemble dans cet ordre précis. Selon un mode de réalisation particulièrement pratique, ladite fonction à sens unique est l'exponentiation à la valeur de la clef-maître dans un groupe multiplicatif de cardinal fini, un second paramètre public est l'image d'un premier paramètre public par ladite fonction, le premier paramètre public étant un élément générateur du groupe, et ladite combinaison comprend la multiplication du résultat de l'application de la première fonction de hachage et du second paramètre public élevé à une puissance égale à l'opposé dudit nombre. Cette solution permet de mettre en oeuvre les procédés de chiffrement et de déchiffrement associés de manière particulièrement simple, comme décrit ci-après. Le premier élément de la clé privée vaut par exemple (H1(v)*h^(-y))^a, où v correspond aux données, H1 est la première fonction de hachage, h un paramètre public et y ledit nombre. Selon une première solution, le nombre est généré au sein de l'entité électronique par tirage aléatoire ou pseudo-aléatoire. En variante, le nombre peut être généré par application aux données d'une fonction de hachage impliquant une clé cryptographique. L'invention propose également un procédé de chiffrement d'un message en message chiffré au moyen d'un premier et d'un second paramètres publics au sein d'une entité électronique, caractérisé en ce qu'il comprend les étapes suivantes : - exponentiation du premier paramètre public au moyen d'un nombre déterminé par l'entité électronique afin d'obtenir un premier élément du message chiffré ; - exponentiation au moyen dudit nombre du résultat de l'application d'une fonction de couplage au second paramètre public afin d'obtenir un second élément du message chiffré. Ces éléments du message chiffré permettent la mise en oeuvre relativement aisée du déchiffrement dans le cadre du système à clé privée évoqué ci-dessus. On peut prévoir en outre que le résultat de l'application de la fonction de couplage au second élément est mémorisé au sein de l'entité électronique. Selon un mode de réalisation dans lequel la sécurité est encore améliorée, ledit nombre est le résultat de l'application d'une fonction de hachage au message et à une chaine de caractères déterminée au sein de l'entité électronique par tirage aléatoire ou pseudo-aléatoire. Dans ce cas, s étant ladite chaine de caractères, r ledit nombre, g le premier paramètre public, h le second paramètre public et e la fonction de couplage, le premier élément du message chiffré étant égal à g^r, le second élément du message chiffré étant égal à e(h,h)^r, le procédé peut comprendre en pratique une étape de détermination d'un troisième élément du message chiffré égal à s xor H2(e(H1(v),h)^r), où H1 et H2 sont des fonctions de hachage et v la clé publique, en général représentative de l'identité du titulaire de la clé privée. Une étape de détermination d'un quatrième élément du message chiffré peut alors consister à chiffrer le message à proprement parler par l'opération m xor H4(s). L'invention propose en outre un procédé de déchiffrement d'un message chiffré en un message déchiffré au moyen d'une clé privée, caractérisé en ce qu'il comprend les étapes suivantes : - application d'une fonction de couplage à un premier élément de la 5 clé privée et à un premier élément du message chiffré pour obtenir un premier terme ; - exponentiation d'un second élément du message chiffré au moyen d'un second élément de la clé privée pour obtenir un second terme ; - multiplication du premier terme par le second terme ; 10 - détermination du message déchiffré sur la base du résultat de ladite multiplication. Cette solution de déchiffrement permet d'intégrer de manière simple et pratique la clé privée obtenue comme évoqué plus haut. On peut prévoir en pratique que, e étant la fonction de couplage, cl 15 et c2 respectivement le premier élément et le second élément du message chiffré, d et y respectivement le premier élément et le second élément de la clé privée, le résultat de la multiplication valant e(d, c1)*(c2^y), l'étape de détermination du message déchiffré comprenne les étapes suivantes : - application d'une fonction de hachage H2 au résultat de la 20 multiplication, puis d'une opération de ou exclusif avec un troisième élément c3 du message chiffré afin d'obtenir une chaîne de caractères s ; - application d'une fonction de hachage H4 à la chaine de caractères s, puis d'une opération de ou exclusif avec un quatrième élément c4 du message chiffré afin d'obtenir le message déchiffré. 25 Le procédé peut en outre inclure une étape de vérification du déchiffrement au moyen du test de l'égalité et =g^r où g est un premier paramètre public et où r est obtenu par application d'une fonction de hachage H3 à la chaîne de caractères et au message déchiffré et/ou une étape de vérification du déchiffrement au moyen du test de l'égalité c2=e(h,h)^r où h est 30 un second paramètre public et où r est obtenu par application d'une fonction de hachage H3 à la chaîne de caractères et au message déchiffré. La fonction de couplage est par exemple un couplage de Tate et/ou un couplage de Weil. Il peut s'agir également d'un couplage de Eta ou de Ate. Pour la mise en oeuvre pratique de ces différents procédés, une entité électronique (par exemple une carte à microcircuit, ou en variante un ordinateur personnel ou un serveur, tel que le serveur de clés) est apte à mettre en oeuvre les procédés évoqués ci-dessus et pour ce faire à manipuler les données numériques traitées (qui représentent les différents éléments, tel que les messages, clés, nombres et chaînes de caractères), par exemple au moyen d'un microprocesseur. On décrit à présent un premier mode de réalisation d'un système de chiffrement basé sur l'identité selon l'invention, basé sur les quatre sous-procédés suivants. Le premier sous-procédé est similaire au premier sous-procédé du schéma de chiffrement de Boneh-Franklin et concerne la sélection des paramètres du système. Dans ce premier sous-procédé, on définit un ensemble mathématique G muni d'une structure de groupe et possédant un nombre d'éléments noté q. Cet ensemble G est par exemple un ensemble de points d'une courbe elliptique. Ces points peuvent être représentés sous forme numérique par des moyens appropriés, par exemple grâce à leurs coordonnées. On considère également une fonction e prenant en entrée deux éléments de G et renvoyant en sortie un élément d'un groupe G1, constitué lui aussi d'un nombre d'éléments égal à q, ladite fonction e possédant une propriété dite de bilinéarité. Dans un exemple de réalisation, le groupe G1 peut être un sous-ensemble de l'ensemble des couples d'entiers de la forme (a,b), où a et b sont définis modulo un entier premier p, et la fonction e peut être construite au moyen de l'opération de couplage dit de Weil ou de Tate définie sur une courbe elliptique. En variante, on pourrait choisir une fonction e dont les deux entrées sont dans des groupes différents. De même, lorsque la fonction e est construire au moyen d'un couplage, d'autres couplages que ceux de Weil et de Tate peuvent être utilisés. On définit un élément générateur g pour le groupe G. On définit ici deux fonctions de hachage H1, H2. On génère un entier a compris entre 0 et q-1, et on calcule l'élément h=g"a, cette opération étant réalisée dans le groupe précédemment défini G. Les paramètres publics du systèmes sont alors le couple (g,h), tandis que la clef maître du système est l'entier a, ladite clef maître devant être maintenue confidentielle (en général au niveau du serveur de clés). Le second sous-procédé du système de chiffrement concerne la génération d'une clef privée pour une identité particulière notée v, ladite identité pouvant être une chaîne de caractères arbitraire. Ce sous-procédé est en général mis en oeuvre au sein du serveur de clés sur la base de l'identité d'un utilisateur authentifié, la chaîne de caractères étant représenté sous forme de données numériques. La première étape de ce second sous-procédé consiste à générer un entier y entre 0 et q-1. La clef privée dv est alors calculée de la manière suivante dv= ( (H1(v)*h"(-y))"a , y), le premier élément de dv étant un élément du groupe G. Selon une première possibilité de mise en oeuvre, l'entier y est généré aléatoirement, par exemple au moyen d'un algorithme de génération de nombres aléatoires (parfois dénommés en pratique pseudo-aléatoires). Dans ce cas, le calcul de la clef privée dv n'est effectué qu'une seule fois (par exemple, à la première sollicitation de l'utilisateur concerné) et la clef privée est mémorisée au cas où l'utilisateur ne demande à nouveau la clef privée associée à son identité. Selon une seconde possibilité de mise en oeuvre, l'entier y est obtenu par application à l'identité v d'une fonction de hachage impliquant une clé cryptographique que seul peut mettre en oeuvre le détenteur de cette clé cryptographique (à savoir ici le serveur de clés). Le stockage de la clef privée obtenue n'est pas nécessaire. Le troisième sous-procédé prévu dans ce premier mode de réalisation concerne l'opération de chiffrement d'un message m pour une certaine identité v (c'est-à-dire destiné à l'utilisateur ayant cette identité, qui seul pourra le déchiffrer grâce à la clef privée associée à l'identité). Pour ce faire, on génère tout d'abord selon ce premier mode de réalisation un entier aléatoire r. Le message chiffré, noté C, est alors définit de la manière suivante: C= (g^r, e(h,h)^r, m xor H2(e(H1(v),h)^r) ). On peut noter que l'élément e(h,h) peut être pré-calculé et mémorisé par le système réalisant ce troisième sous-procédé. Le quatrième sous-procédé du procédé de chiffrement de l'invention concerne l'opération de déchiffrement d'un message chiffré C, noté C=(cl,c2,c3). On note comme ci-dessus la clef privée dv=(d,y). Pour ce faire, on calcule c3 xor H2(e(d, cl )*(c2^y)). En remplaçant c2 par sa valeur (provenant du chiffrement), on a : e(d, cl )*(c2^y)=e(d,cl )*e(h,h)Ary=e(d,cl )*e(H,g^a)Ary. Par bilinéarité, et en remplaçant cl par sa valeur, on a donc : e(d, cl )*(c2^y)=e(d,g^r)*e(h^ya,g^r)=e(d*h^ya,g^r). En remplaçant l'élément d de la clef privée par sa valeur (provenant du mode de calcul de la clef privée décrit ci-dessus) et en utilisant à nouveau la propriété de bilinéarité, on obtient : e(d, cl )*(c2^y)=e((H1(v))^a,g^r)=e(H1(v),g^a)Ar=e(H1(v),h)^r. Ainsi le calcul de c3 xor H2(e(d, cl )*(c2Ay)) permet d'obtenir : c3 xor H2(e(H1(v),h)^r)=m. On a ainsi déchiffré le message chiffré C et obtenu le message déchiffré m. On va décrire à présent un second mode de réalisation d'un procédé de chiffrement basé sur l'identité selon l'invention, qui constitue une variante du premier mode de réalisation décrit ci-dessus. Cet autre exemple est donc lui aussi basé sur quatre sous-procédés comme suit. Le premier sous-procédé est similaire au premier sous-procédé du schéma de chiffrement de Boneh-Franklin décrit en introduction et concerne la détermination des paramètres du système. On rappelle que, dans ce premier sous-procédé, on définit un ensemble mathématique G muni d'une structure de groupe et possédant un nombre d'éléments noté q. Dans un exemple de réalisation, cet ensemble G peut être un ensemble de points d'une courbe elliptique. On considère également une fonction e prenant en entrée deux éléments de G et renvoyant en sortie un élément d'un groupe G1, constitué lui aussi d'un nombre d'éléments égal à q, ladite fonction e possédant une propriété dite de bilinéarité. Dans un exemple de réalisation, le groupe G1 peut être un sous-ensemble de l'ensemble des couples d'entiers de la forme (a,b), où a et b sont définis modulo un entier premier p, et la fonction e peut être construite au moyen de l'opération de couplage dit de Weil ou de Tate définie sur une courbe elliptique. On définit un élément générateur g pour le groupe G. On définit également quatre fonctions de hachage H1, H2, H3 et H4. On génère un entier a compris entre 0 et q-1, et on calcule l'élément h=g^a, cette opération étant réalisée dans le groupe précédemment défini G. Les paramètres publics du systèmes sont alors le couple (g,h), tandis que la clef maître du système est l'entier a, ladite clef maître devant être maintenue confidentielle. Le second sous-procédé est identique à celui du premier mode de réalisation et concerne la génération d'une clef privée pour une identité particulière notée v, ladite identité pouvant être une chaîne de caractère arbitraire. La première étape consiste à générer un entier y aléatoirement entre 0 et q-1. La clef privée dv est alors calculée de la manière suivante dv= ( (H1 (v)*h"(-y))^a , y), le premier élément de dv étant un élément du groupe G. Ce second sous-procédé étant identique à celui du premier mode de réalisation, les remarques faites à l'égard de ce dernier s'appliquent également ici. Le troisième sous-procédé du procédé de l'invention concerne l'opération de chiffrement d'un message m pour une certaine identité v. Dans une première étape, on génère une chaîne aléatoire s. Dans une deuxième étape, on génère un entier r=H3(s,m). Le message chiffré, noté C, est alors définit de la manière suivante: C= ( gAr, e(h,h)^r, s xor H2(e(H1(v),h)^r) , m xor H4(s) ). On peut noter que l'élément e(h,h) peut être pré-calculé par le système réalisant ce troisième sous-procédé. Le quatrième sous-procédé du procédé de chiffrement de l'invention concerne l'opération de déchiffrement d'un message chiffré C, noté C=(cl,c2,c3,c4). On note la clef privée dv=(d,y). La première étape consiste à calculer s=c3 xor H2(e(d, cl )*(c2^y)). La deuxième étape consiste à calculer m=c4 xor H4(s). La troisième étape consiste à calculer r=H3(s, m), et à effectuer le test: et=g^r et c2=e(h,h)"r. Si le test n'est pas vérifié, le message chiffré est rejeté. Si le test est vérifié, on renvoie le message m. L'avantage du nouveau procédé de chiffrement basé sur l'identité décrit précédemment est qu'il permet d'atteindre un niveau de sécurité au moins aussi élevé que celui fourni par la courbe elliptique sous-jacente. La taille des paramètres utilisés peut donc être beaucoup plus petite que celle utilisée pour le schéma de Boneh-Franklin, ce qui améliore l'efficacité pratique du procédé de chiffrement basé sur l'identité. REVENDICATIONS 1. Procédé de génération d'une clé privée au sein d'une entité électronique, à partir d'une clef-maître et de données représentant une identité, caractérisé par les étapes suivantes : - génération d'un nombre au sein de l'entité électronique ; - détermination d'un premier élément de la clé privée égal au résultat de l'application d'une fonction à sens unique impliquant la clef-maître à la combinaison dudit nombre et du résultat de l'application d'une première fonction de hachage aux données ; - utilisation dudit nombre comme second élément de la clé privée. 2. Procédé selon la revendication 1, caractérisé en ce que ladite fonction à sens unique est l'exponentiation à la valeur de la clef-maître dans un groupe multiplicatif de cardinal fini, en ce qu'un second paramètre public est l'image d'un premier paramètre public par ladite fonction, le premier paramètre public étant un élément générateur du groupe, et en ce que ladite combinaison comprend la multiplication du résultat de l'application de la première fonction de hachage et du second paramètre public élevé à une puissance égale à l'opposé dudit nombre. 3. Procédé selon la revendication 1, caractérisé en ce que le premier élément de la clé privée vaut (H1(v)*h^(-y))^a, où v correspond aux données, H1 est la première fonction de hachage, h un paramètre public et y ledit nombre. 4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce que le nombre est généré au sein de l'entité électronique par tirage aléatoire ou pseudo-aléatoire.30 5. Procédé selon l'une des revendications 1 à 3, caractérisé en ce que le nombre est généré par application aux données d'une fonction de hachage impliquant une clé cryptographique. 6. Procédé de chiffrement d'un message en message chiffré au moyen d'un premier et d'un second paramètres publics au sein d'une entité électronique, caractérisé en ce qu'il comprend les étapes suivantes : -exponentiation du premier paramètre public au moyen d'un nombre déterminé par l'entité électronique afin d'obtenir un premier élément du message chiffré ; - exponentiation au moyen dudit nombre du résultat de l'application d'une fonction de couplage à un second paramètre public afin d'obtenir un second élément du message chiffré. 7. Procédé selon la revendication 6, caractérisé en ce que le résultat de l'application de la fonction de couplage au second élément est mémorisé au sein de l'entité électronique. 8. Procédé selon la revendication 6 ou 7, caractérisé en ce que ledit nombre est le résultat de l'application d'une fonction de hachage à une chaine de caractères déterminée au sein de l'entité électronique par tirage aléatoire ou pseudo-aléatoire. 9. Procédé selon la revendication 8, caractérisé en ce que, s étant ladite chaîne de caractères, r ledit nombre, g le premier paramètre public, h le second paramètre public et e la fonction de couplage, le premier élément du message chiffré est égal à g^r, le second élément du message chiffré est égal à e(h,h)^r, et en ce que procédé comprend une étape de détermination d'un 30 troisième élément du message chiffré égal à s xor H2(e(H1(v),h)^r), où H1 et H2 sont des fonctions de hachage et v la clé publique. 10. Procédé selon la revendication 9, caractérisé en ce que la clé publique est représentative de l'identité du titulaire de la clé privée. 11. Procédé selon la revendication 9 ou 10, caractérisé en ce qu'il 5 comprend une étape de détermination d'un quatrième élément du message chiffré égal à m xor H4(s), où m est le message. 12. Procédé de déchiffrement d'un message chiffré en un message déchiffré au moyen d'une clé privée, caractérisé en ce qu'il comprend les 10 étapes suivantes : - application d'une fonction de couplage à un premier élément de la clé privée et à un premier élément du message chiffré pour obtenir un premier terme ; - exponentiation d'un second élément du message chiffré au moyen 15 d'un second élément de la clé privée pour obtenir un second terme ; - multiplication du premier terme par le second terme ; -détermination du message déchiffré sur la base du résultat de ladite multiplication. 20 13. Procédé selon la revendication 12, caractérisé en ce que, e étant la fonction de couplage, cl et c2 respectivement le premier élément et le second élément du message chiffré, d et y respectivement le premier élément et le second élément de la clé privée, le résultat de la multiplication valant e(d, cl )*(c2^y), l'étape de détermination du message déchiffré comprend les étapes 25 suivantes : - application d'une fonction de hachage H2 au résultat de la multiplication, puis d'une opération de ou exclusif avec un troisième élément c3 du message chiffré afin d'obtenir une chaîne de caractères s ; - application d'une fonction de hachage H4 à la chaine de caractères 30 s, puis d'une opération de ou exclusif avec un quatrième élément c4 du message chiffré afin d'obtenir le message déchiffré. 14. Procédé selon la revendication 13, caractérisé par une étape de vérification du déchiffrement au moyen du test de l'égalité c1=g^r où g est un premier paramètre public et où r est obtenu par application d'une fonction de hachage H3 à la chaîne de caractères et au message déchiffré. 15. Procédé selon la revendication 13 ou 14, caractérisé par une étape de vérification du déchiffrement au moyen du test de l'égalité c2=e(h,h)^r où h est un second paramètre public et où r est obtenu par application d'une fonction de hachage H3 à la chaîne de caractères et au message déchiffré. 16. Procédé selon l'une des revendications 12 à 15, caractérisé en ce que la clé privée est obtenue à partir de données représentatives d'une identité. 15 17. Procédé selon l'une des revendications 7 à 16, caractérisé en ce que la fonction de couplage est un couplage de Tate. 18. Procédé selon l'une des revendications 7 à 16, caractérisé en ce que la fonction de couplage est un couplage de Weil. 19. Procédé selon l'une des revendications 1 à 18, caractérisé en ce qu'il est mis en oeuvre au sein d'une carte à microcircuit. 10 20