FR2892251A1 - CRYPTOGRAPHIC METHOD IMPLEMENTING AN IDENTITY-BASED ENCRYPTION SYSTEM - Google Patents

CRYPTOGRAPHIC METHOD IMPLEMENTING AN IDENTITY-BASED ENCRYPTION SYSTEM Download PDF

Info

Publication number
FR2892251A1
FR2892251A1 FR0510524A FR0510524A FR2892251A1 FR 2892251 A1 FR2892251 A1 FR 2892251A1 FR 0510524 A FR0510524 A FR 0510524A FR 0510524 A FR0510524 A FR 0510524A FR 2892251 A1 FR2892251 A1 FR 2892251A1
Authority
FR
France
Prior art keywords
identity
public
user
vector
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR0510524A
Other languages
French (fr)
Inventor
David Naccache
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gemplus SA
Original Assignee
Gemplus SCA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gemplus SCA filed Critical Gemplus SCA
Priority to FR0510524A priority Critical patent/FR2892251A1/en
Priority to PCT/EP2006/066955 priority patent/WO2007042419A1/en
Publication of FR2892251A1 publication Critical patent/FR2892251A1/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing

Abstract

L'invention concerne un procédé de génération de clés destinées à un algorithme cryptographique à clé publique mis en oeuvre dans le cadre d'un système cryptographique basé sur l'identité d'un utilisateur dudit système et comprenant des étapes de:- obtention (10, 50) d'un ensemble de paramètres publics (g, g1, g2, u', U) et privés (g2alpha) associés audit système cryptographique basé sur l'identité ;- sélection d'un identifiant public (ID) comprenant une information d'identité dudit utilisateur et de détermination (20) d'un vecteur identité (v) représentatif dudit identifiant propre audit utilisateur;- génération (30, 60) d'un couple clé publique (PKID)/clé privé (dv) associé à l'identité dudit utilisateur, à partir desdits paramètres publics et privés et dudit vecteur identité (v).Selon l'invention, les éléments (vi) dudit vecteur identité (v) sont codés chacun sur k bits, avec k>1.The invention relates to a method for generating keys for a public key cryptographic algorithm implemented in the context of a cryptographic system based on the identity of a user of said system and comprising steps of: - obtaining (10) 50) of a set of public (g, g1, g2, u ', U) and private (g2alpha) parameters associated with said identity-based cryptographic system - selection of a public identifier (ID) comprising information identifying said user and determining (20) an identity vector (v) representative of said user's own identifier; -generating (30, 60) a public key pair (PKID) / private key (dv) associated with the identity of said user, from said public and private parameters and said identity vector (v). According to the invention, the elements (vi) of said identity vector (v) are each coded on k bits, with k> 1.

Description

PROCEDE CRYPTOGRAPHIQUE METTANT EN îUVRE UN SYSTEME DE CHIFFREMENT BASECRYPTOGRAPHIC METHOD EMPLOYING A BASIC ENCRYPTION SYSTEM

SUR L'IDENTITE La présente invention concerne un procédé de génération de clés destinées à un algorithme cryptographique à clé publique mis en oeuvre dans le cadre d'un système cryptographique basé sur l'identité, dit IBE (de l'acronyme anglais Identity-Based Encryption ). L'invention est notamment intéressante pour la mise en oeuvre d'algorithmes cryptographiques pour le chiffrement et le déchiffrement ou la signature et la vérification de signature dans un objet électronique portable de type carte à puce. Parmi les schémas de sécurité à clé publique, la technologie IBE présente un certain nombre d'avantages. Ainsi, dans les schémas d'infrastructure à clé publique classique, la clé publique est souvent un nombre calculé de façon aléatoire, devant être liée à l'identité de l'utilisateur par un certificat. Avec l'IBE, la clé publique peut être choisie en toute liberté et est directement égale à l'identité de l'utilisateur, sans l'échange de certificats ni la coûteuse infrastructure correspondante. Le schéma d'IBE proposé par la présente invention est mis en oeuvre au moyen de fonctions de couplage sur des courbes elliptiques. Un tel schéma d'IBE utilise le couplage bilinéaire sur des courbes elliptiques pour obtenir un algorithme permettant de transformer une simple identité en une paire de clés publique/privée. Pour rappel, une courbe elliptique est un ensemble de points ayant des caractéristiques communes et dont les coordonnées peuvent notamment être calculées à partir des coordonnées de certains points de la courbe, dits points générateurs, par des opérations simples telles qu'une multiplication par un scalaire. Le lecteur pourra se reporter au document Identity based encryption from the Weil pairing d. Boneh et M. Frankin, dans proceedings of crypto '01, Springer-Verlag, 2001 pour plus de détails sur les systèmes de chiffrement basés sur l'identité qui utilisent de telles techniques cryptographiques. D'une manière générale, la sécurité de tout protocole cryptographique repose sur la difficulté d'un problème algorithmique donné. La présente invention consiste plus précisément en une amélioration du système cryptographique basé sur l'identité proposé par Waters, qu'on appellera dans la suite de la description schéma de Waters, dont la preuve de sécurité ne fait pas appel à des oracles aléatoires mais est basée sur le problème DBDH (acronyme anglais pour Decisional Bilinear Diffie-Hellman ). Le lecteur pourra utilement se reporter pour plus de détails sur ce schéma d'IBE dit complètement sécurisé dans le modèle standard, à la publication Efficient Identity-Based Encryption Without Random Oracles par Brent Waters, dans Proceedings of Eurocrypt 2005, Springer-Verlag, 2005 . L'inconvénient du schéma d'IBE de Waters est qu'il nécessite d'employer une clé publique dont la taille, typiquement de l'ordre de 165 Ko, est incompatible avec les environnements contraints tels que les cartes à puce. Aussi, si ce protocole a montré son efficacité tout en faisant preuve de sa sécurité, il a cependant l'inconvénient d'être particulièrement coûteux, en termes de ressources matérielles de calcul nécessaires à sa mise en œuvre. Notamment, certaines opérations élémentaires utilisées dans ce protocole sont particulièrement coûteuses, comme par exemple les opérations de couplage ( pairing en anglais ) sur courbes elliptiques, d'autant plus si la clé publique possède une taille importante.  The present invention relates to a method for generating keys for a public key cryptographic algorithm implemented in the context of an identity-based cryptographic system, called IBE (Identity-Based). Encryption). The invention is particularly interesting for the implementation of cryptographic algorithms for encryption and decryption or signature and verification of signature in a portable electronic object of the smart card type. Among public-key security schemes, IBE has a number of advantages. Thus, in conventional public key infrastructure schemes, the public key is often a randomly calculated number to be linked to the user's identity by a certificate. With the IBE, the public key can be chosen freely and is directly equal to the identity of the user, without the exchange of certificates or the expensive infrastructure. The IBE scheme proposed by the present invention is implemented by means of coupling functions on elliptic curves. Such an IBE scheme uses bilinear coupling on elliptic curves to obtain an algorithm for transforming a simple identity into a public / private key pair. As a reminder, an elliptic curve is a set of points having common characteristics and whose coordinates can in particular be calculated from the coordinates of certain points of the curve, called generating points, by simple operations such as multiplication by a scalar . The reader can refer to the document Identity based encryption from the Weil pairing d. Boneh and M. Frankin, in Proceedings of Crypto '01, Springer-Verlag, 2001 for more details on identity-based encryption systems that use such cryptographic techniques. In general, the security of any cryptographic protocol is based on the difficulty of a given algorithmic problem. The present invention is more specifically an enhancement of the identity-based cryptographic system proposed by Waters, which will be referred to in the following description of the Waters scheme, whose security evidence does not rely on random oracles but is based on the problem DBDH (acronym for Decisional Bilinear Diffie-Hellman). The reader can usefully refer for more details on this diagram of IBE said completely secure in the standard model, the publication Efficient Identity-Based Encryption Without Random Oracles by Brent Waters, in Proceedings of Eurocrypt 2005, Springer-Verlag, 2005 . The drawback of the Waters IBE scheme is that it requires the use of a public key whose size, typically of the order of 165 KB, is incompatible with constrained environments such as smart cards. Also, while this protocol has shown its effectiveness while demonstrating its security, it nevertheless has the disadvantage of being particularly expensive, in terms of the material resources of calculation necessary for its implementation. In particular, some elementary operations used in this protocol are particularly expensive, such as pairing operations in elliptic curves, especially if the public key has a large size.

Parce que certaines opérations sont coûteuses du fait de la longueur de la clé publique, le schéma d'IBE de Waters est particulièrement difficile à implémenter dans une carte à puce, car les temps de calcul deviennent prohibitifs, les ressources matérielles de la carte étant nécessairement limitées. L'invention a donc pour but de remédier à cet inconvénient en permettant la mise en oeuvre d'algorithmes de chiffrement à clé publique basés sur l'identité, qui présentent un fort niveau de sécurité tout en se servant d'une clé publique dont la taille est fortement réduite par rapport aux schémas d'IBE précédemment décrits, rendant ainsi plus aisée leur incorporation dans des environnements contraints en ressources de calcul.  Because some operations are expensive due to the length of the public key, the IBE scheme of Waters is particularly difficult to implement in a smart card, because computing times become prohibitive, the hardware resources of the card being necessarily limited. The invention therefore aims to overcome this drawback by enabling the implementation of identity-based public key encryption algorithms, which have a high level of security while using a public key whose size is greatly reduced compared to IBE schemes previously described, thus making their incorporation easier in environments constrained in computing resources.

Avec cet objectif en vue, l'invention a notamment pour objet un procédé de génération de clés destinées à un algorithme cryptographique à clé publique mis en oeuvre dans le cadre d'un système cryptographique basé sur l'identité d'un utilisateur dudit système et comprenant des étapes de : obtention d'un ensemble de paramètres publics et privés associés audit système cryptographique basé sur l'identité ; - sélection d'un identifiant public comprenant une information d'identité dudit utilisateur et de détermination d'un vecteur identité représentatif dudit identifiant propre audit utilisateur; - génération d'un couple clé publique/clé privé associé à l'identité dudit utilisateur, à partir desdits paramètres publics et privés et dudit vecteur identité. Ce procédé est caractérisé en ce que les éléments dudit vecteur identité sont codés chacun sur k bits, avec k>l.  With this objective in view, the invention particularly relates to a method for generating keys for a public key cryptographic algorithm implemented in the context of a cryptographic system based on the identity of a user of said system and comprising steps of: obtaining a set of public and private parameters associated with said identity-based cryptographic system; selecting a public identifier comprising identity information of said user and determining an identity vector representative of said user's own identifier; generating a public key / private key pair associated with the identity of said user, from said public and private parameters and said identity vector. This method is characterized in that the elements of said identity vector are each coded on k bits, with k> l.

Avantageusement, l'algorithme cryptographique mis en oeuvre est un algorithme de chiffrement d'un message pour l'émission du message chiffré d'un émetteur vers l'utilisateur destinataire, ledit procédé comprenant une étape de calcul du message chiffré à partir du message en clair, des paramètres publics et du vecteur identité. De préférence, l'étape de calcul du message 25 chiffré comprend l'utilisation de la clé publique associée au destinataire, définie par le produit n u' fl uiv' , u' et ul faisant partie des paramètres publics i=1 du système et les vi étant les éléments du vecteur identité.  Advantageously, the cryptographic algorithm implemented is an encryption algorithm of a message for sending the encrypted message from a sender to the recipient user, said method comprising a step of calculating the encrypted message from the message in question. clear, public parameters and identity vector. Preferably, the step of calculating the encrypted message comprises the use of the public key associated with the recipient, defined by the naked product, u 'and ul being part of the public parameters i = 1 of the system and the vi being the elements of the identity vector.

Avantageusement, le déchiffrement du message chiffré comprend une étape de calcul du message en clair à partir dudit message chiffré en utilisant ladite clé privée dudit utilisateur destinataire.  Advantageously, the decryption of the encrypted message comprises a step of calculating the plaintext message from said encrypted message using said private key of said recipient user.

L'algorithme cryptographique mis en oeuvre peut être un algorithme de signature à clé publique.  The cryptographic algorithm implemented may be a public key signature algorithm.

Le procédé peut être mis en oeuvre dans le cadre du système cryptographique de Waters, dans lequel lesdits paramètres publics et privé sont issus d'un groupe algébrique dérivé d'une courbe elliptique.  The method can be implemented within the framework of the Waters cryptographic system, wherein said public and private parameters come from an algebraic group derived from an elliptic curve.

L'identifiant public dudit utilisateur peut comprendre le nom dudit utilisateur ou son adresse électronique.  The public identifier of said user may include the name of said user or his email address.

D'autres caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture de la description suivante donnée à titre d'exemple illustratif et non limitatif et faite en référence aux figures annexées dans lesquelles : -la figure 1 illustre de façon schématique un système cryptographique basé sur l'identité dans lequel la présente invention est mise en oeuvre ; -la figure 2 illustre schématiquement la suite d'étapes mises en oeuvre pour chiffrer un message selon la présente invention, et -la figure 3 illustre schématiquement la suite d'étapes mises en oeuvre pour déchiffrer ledit message selon la présente invention. Selon l'exemple de réalisation, l'invention est mise en oeuvre dans un système cryptographique basé sur l'identité (IBE), permettant à un utilisateur de chiffrer un message devant être émis en se servant de données personnelles du destinataire comme clé publique. Ainsi, de manière générale, dans un tel système cryptographique représenté à la figure 1, lorsqu'un émetteur A souhaite envoyer un message m sous forme chiffrée à un destinataire B, le message est chiffré en utilisant une clé publique reliée directement à un identifiant public ID comprenant une information d'identité du destinataire B. Cette information d'identité du destinataire est par exemple constituée du nom du destinataire, ou encore de son adresse électronique, ou de toute autre information permettant d'identifier le destinataire.  Other features and advantages of the present invention will appear more clearly on reading the following description given by way of illustrative and nonlimiting example and with reference to the appended figures in which: FIG. 1 schematically illustrates a system cryptographic based on the identity in which the present invention is implemented; FIG. 2 diagrammatically illustrates the sequence of steps used to encrypt a message according to the present invention, and FIG. 3 schematically illustrates the sequence of steps implemented to decrypt the message according to the present invention. According to the exemplary embodiment, the invention is implemented in an identity-based cryptographic system (IBE), enabling a user to encrypt a message to be transmitted using the recipient's personal data as a public key. Thus, in general, in such a cryptographic system shown in FIG. 1, when a transmitter A wishes to send a message m in encrypted form to a recipient B, the message is encrypted using a public key linked directly to a public identifier ID comprising recipient identity information B. This recipient identity information is for example the name of the recipient, or its email address, or any other information to identify the recipient.

Lorsque le destinataire B reçoit le message c ainsi chiffré, il s'adresse à une autorité PKG, dont le rôle est de fournir au destinataire sa clé privée d,ä qui est calculée comme une fonction de l'identité du destinataire. Le destinataire B peut alors déchiffrer le message chiffré c qu'il a reçu, à l'aide de la clé privée ainsi obtenue auprès de l'autorité PKG. Le principe de fonctionnement va maintenant être décrit plus en détail en référence au schéma d'IBE de Waters, auquel la présente invention propose une amélioration significative.  When the recipient B receives the message c thus encrypted, he addresses a PKG authority, whose role is to provide the recipient with his private key, which is calculated as a function of the identity of the recipient. The recipient B can then decrypt the encrypted message c he has received, using the private key thus obtained from the PKG authority. The operating principle will now be described in more detail with reference to the Waters IBE scheme, to which the present invention proposes a significant improvement.

Un schéma d'IBE est décrit typiquement par quatre algorithmes, dénommés Setup , extract , encrypt et decrypt dans la littérature anglaise.  An IBE scheme is typically described by four algorithms, called Setup, extract, encrypt and decrypt in the English literature.

La première phase, mise en œuvre par l'algorithme Setup , est une phase de génération de paramètres du système. Pour ce faire, l'algorithme travaille sur un groupe G d'ordre premier, constitué des points d'une courbe elliptique. Un générateur g pour le groupe G est défini ainsi qu'une application e bilinéaire admissible sur G, bénéficiant donc des propriétés de bilinéarité, qui sont connues en elle mêmes. Tout d'abord, un nombre secret a est choisi de manière aléatoire dans l'ensemble prédéfini Zp, avec p un nombre premier, puis on définit g1, tel que g1=ga. Un élément g2 est également choisi de manière aléatoire dans le groupe G. Puis, on choisit une valeur aléatoire u' appartenant au groupe G, ainsi qu'un vecteur U=(ui) de longueur n, dont les éléments ui sont choisis de manière aléatoire dans le groupe G. Dans ce cas, des identités de longueur binaire n pourront être supportées par ce schéma d'IBE. Les paramètres publics du système sont alors constitués par les éléments précédemment définis g, g1, g2, u' et U. Ces paramètres sont encore appelés clé publique maître PKmaître : PKmaître = ( g, g1, g2, u', U). Par ailleurs, on définit un paramètre privé, dit clé privée maître SK maître SKmaître ù g2a La phase suivante consiste, à partir des paramètres du système ainsi obtenus, en la génération du couple clé publique et clé privée, associé à l'identité de l'utilisateur. On détermine tout d'abord un vecteur identité v représentatif d'un identifiant propre à l'utilisateur, en l'occurrence le destinataire du message. Comme on l'a vu, cet identifiant comprend une information d'identité du destinataire, par exemple son nom. Selon la variante améliorée du schéma de Waters proposé par l'invention, l'identité est représentée par un vecteur identité de longueur n, v = (vl,. . .,vn), où chaque élément vi est un entier codé sur k bits, avec k>l. On prendra par exemple k = 32 bits. Dans le schéma de Waters classique, le vecteur identité est une chaîne de bits où chaque élément du vecteur identité est au contraire codé sur un seul bit.  The first phase, implemented by the Setup algorithm, is a phase of generating system parameters. To do this, the algorithm works on a group G of prime order, consisting of the points of an elliptic curve. A generator g for the group G is defined as well as a bilinear e application on G, thus benefiting from bilinear properties, which are known per se. First, a secret number a is randomly selected from the predefined set Zp, with p a prime number, then we define g1, such that g1 = ga. An element g2 is also chosen randomly in the group G. Then, a random value u 'belonging to the group G is chosen, as well as a vector U = (ui) of length n, whose elements ui are chosen so Random in group G. In this case, identities of bit length n can be supported by this scheme of IBE. The public parameters of the system are then constituted by the previously defined elements g, g1, g2, u 'and U. These parameters are also called master public key PKmaster: PKmaster = (g, g1, g2, u', U). Furthermore, a private parameter is defined, referred to as the master SK master key master SKmaster ù g2a The following phase consists, from the parameters of the system thus obtained, in the generation of the public key and private key pair, associated with the identity of the 'user. Firstly, an identity vector v representative of an identifier specific to the user, in this case the recipient of the message, is determined. As we have seen, this identifier includes identity information of the recipient, for example his name. According to the improved variant of the Waters scheme proposed by the invention, the identity is represented by an identity vector of length n, v = (v1, ..., vn), where each element vi is an integer encoded on k bits , with k> l. We will take for example k = 32 bits. In the classical Waters scheme, the identity vector is a bit string where each element of the identity vector is instead coded on a single bit.

Comme illustré à la figure 2, après avoir obtenu les paramètres publics du système (étape 10) et déterminé le vecteur identité v selon les principes exposés ci-dessus (étape 20), une clé publique PKID du destinataire est générée (étape 30), à partir du vecteur public U et du vecteur identité v. Pour ce faire, le calcul suivant est mis en œ uvre : PKun = u' 11 u, '[' La nouvelle construction du vecteur identité v permet alors avantageusement de réduire la taille du vecteur public U d'un facteur k. Ainsi, si on définit par n' la taille du vecteur U dans le schéma de Waters classique, avec le vecteur identité constitué alors classiquement de n' éléments chacun codé sur un bit, la taille du vecteur U est maintenant ramenée à n=n'/k, en prenant la configuration particulière selon l'invention du vecteur identité v. Selon l'exemple avec k = 32, on passe alors d'une taille de vecteur public égale à 160Ko dans le schéma de Waters classique à une taille égale à 5Ko selon l'invention.  As illustrated in FIG. 2, after obtaining the public parameters of the system (step 10) and determining the identity vector v according to the principles explained above (step 20), a recipient public PKID key is generated (step 30), from the public vector U and the identity vector v. To do this, the following calculation is carried out: ## EQU1 ## The new construction of the identity vector v then advantageously makes it possible to reduce the size of the public vector U by a factor k. Thus, if n is defined as the size of the vector U in the classical Waters scheme, with the identity vector then conventionally consisting of n 'elements each coded on a bit, the size of the vector U is now reduced to n = n' / k, taking the particular configuration according to the invention of the vector identity v. According to the example with k = 32, we then go from a public vector size equal to 160Ko in the classic Waters scheme to a size equal to 5Ko according to the invention.

Une fois la clé publique PKID du destinataire calculée pour l'identité v déterminée, le message m peut être chiffré (étape 40) côté émetteur pour être transmis sous forme chiffrée c au destinataire. Pour ce faire, l'algorithme encrypt de chiffrement prend en entrées les paramètres publics, la clé publique du destinataire, le message en clair m, ainsi qu'un nombre t, choisi de manière aléatoire dans l'ensemble Zp. Le message chiffré c fourni par l'algorithme pour être transmis au destinataire est construit de la façon suivante sous forme d'un triplet: c = (cl, c2, c3), avec cl = e (gl , g2) L .m, e étant l'opération de couplage mis en œuvre entre les deux paramètres publics g1 et g2 ; c2 = gt ; c3=(u'~u'r Les trois éléments cl, c2 et c3 sont donc envoyés en tant que message chiffré. Pour pouvoir mettre en oeuvre le déchiffrement côté destinataire, l'algorithme decrypt doit prendre en entrées le triplet chiffré reçu c = (cl, c2, c3) et la clé privée du destinataire, calculée comme une fonction de l'identifiant ID du destinataire. La réalisation de ce calcul nécessite tout d'abord d'obtenir la clé privé d, correspondant au vecteur 20 identité v représentatif de l'identité du destinataire. La clef privée dv est construite (étape 60) par l'autorité en utilisant l'algorithme "extract" et en connaissant la clef secrète maitre, de la façon suivante : n dv = (g2a (u'n ui ['1)r i gr) r=t n On définit dl = g2a (u'nu;v1'1 )Y ; et d2 = gr r étant un nombre aléatoire choisi dans l'ensemble Zp. L'étape de déchiffrement proprement dite (étape 70) peut alors être mise en oeuvre. Soient donc c = (cl,c2,c3), le triplet représentant la forme chiffrée du message m en utilisant l'identité du destinataire représentée par le vecteur identité v, et dv = (dl,d2), la clé privée du destinataire correspondant à son identité, l'algorithme decrypt fournit alors le message m déchiffré en appliquant les calculs suivants . e(d ,c ) elgr,(u'llu.vi )t) 2 3 t c1 e(c2 d1) = e(gl,g2 ) m e(gt ~ga (ut~ u.vi )r ) 2 e(g,(u'nu.vl )rt) = e(gl , g2 )t . m. = m Il ressort donc de ce qui précède, que la nouvelle amélioration du schéma de Waters selon la présente invention, consistant à écrire l'identité de e(g1'g2)te(g,(ulIIulvl )rt) l'utilisateur comme un vecteur v à n éléments v = (v1, vn) où chaque vi est un entier codé sur k bits avec k > 1, tel que n.k = n', où n' serait la taille du vecteur public U dans le schéma antérieur classique de n v Waters, et à calculer le produit modifié UT-Pi ' , l=1  Once the public key PKID of the recipient calculated for the identity v determined, the message m can be encrypted (step 40) on the issuer side to be transmitted in encrypted form c to the recipient. To do this, the encrypt encryption algorithm takes as inputs the public parameters, the public key of the recipient, the message in clear m, and a number t, randomly chosen in the set Zp. The encrypted message c provided by the algorithm to be transmitted to the recipient is constructed as follows in the form of a triplet: c = (cl, c2, c3), with cl = e (gl, g2) L .m, e being the coupling operation implemented between the two public parameters g1 and g2; c2 = gt; c3 = (u '~ u'r The three elements cl, c2 and c3 are thus sent as an encrypted message In order to be able to implement decryption on the receiving side, the decrypt algorithm must take as inputs the encrypted triplet received c = (cl, c2, c3) and the private key of the recipient, calculated as a function of the identifier ID of the recipient The realization of this calculation firstly requires obtaining the private key d, corresponding to the identity vector v representative of the recipient's identity The private key dv is constructed (step 60) by the authority using the "extract" algorithm and knowing the master secret key, as follows: n dv = (g2a (u We define d1 = g2a (u'nu; v1'1) Y, and d2 = gr r being a random number chosen from the set Zp. The deciphering step (step 70) can then be implemented, so be c = (cl, c2, c3), the triplet representing the encrypted form of the mes wise m using the identity of the recipient represented by the vector identity v, and dv = (dl, d2), the recipient's private key corresponding to his identity, the algorithm decrypt then provides the message m deciphered by applying the following calculations . e (d, c) elgr, (u'llu.vi) t) 2 3 t c1 e (c2 d1) = e (g1, g2) me (gt ~ ga (ut ~ u.vi) r) 2 e ( g, (u'nu.vl) rt) = e (g1, g2) t. m. It follows from the foregoing that the new improvement of the Waters scheme according to the present invention of writing the identity of e (g1'g2) te (g, (ulIIulvl) rt) the user as a vector v to n elements v = (v1, vn) where each vi is an integer coded on k bits with k> 1, such that nk = n ', where n' would be the size of the public vector U in the classical prior schema of nv Waters, and to calculate the modified product UT-Pi ', l = 1

conduit à considérer un vecteur public U possédant dorénavant une longueur n, sa taille ayant donc été réduite d'un facteur n'/n = k. En effet, selon l'invention, chaque élément ui du vecteur U peut  leads to consider a public vector U now having a length n, its size has therefore been reduced by a factor n '/ n = k. Indeed, according to the invention, each element ui of the vector U can

maintenant supporter k bits, au lieu d'un seul bit dans le schéma antérieur. Pour une taille d'identité identique, la taille du vecteur U est donc divisée par un facteur k.  now support k bits, instead of a single bit in the previous scheme. For an identical identity size, the size of the vector U is therefore divided by a factor k.

Bien que la taille du paramètre public U puisse être réduite de façon conséquente, par un facteur k, le schéma d'IBE selon la présente invention bénéficie toujours d'une sécurité prouvée dans le modèle de sécurité le plus strict, appelé modèle standard. Les  Although the size of the public parameter U can be significantly reduced by a factor k, the IBE scheme according to the present invention always has a proven security in the strictest security model, called the standard model. The

calculs illustrant la preuve de cette sécurité étant accessibles à l'homme de l'art, ils ne seront pas développés dans le cadre de la présente demande.25  calculations illustrating the proof of this security being accessible to those skilled in the art, they will not be developed in the context of the present application.

Claims (6)

REVENDICATIONS 1. Procédé de génération de clés destinées à un algorithme cryptographique à clé publique mis en oeuvre dans le cadre d'un système cryptographique basé sur l'identité d'un utilisateur dudit système et comprenant des étapes de : - obtention (10, 50) d'un ensemble de paramètres publics (g, g1, g2, u', U) et privés (g2a ) associés audit système cryptographique basé sur l'identité ; - sélection d'un identifiant public (ID) comprenant une information d'identité dudit utilisateur et de détermination (20) d'un vecteur identité (v) représentatif dudit identifiant propre audit utilisateur; - génération (30, 60) d'un couple clé publique 15 (PKID)/clé privé (dv) associé à l'identité dudit utilisateur, à partir desdits paramètres publics et privés et dudit vecteur identité (v) ; ledit procédé étant caractérisé en ce que les éléments (vi) dudit vecteur identité (v) sont codés 20 chacun sur k bits, avec k>1.  A key generation method for a public key cryptographic algorithm implemented in the context of a cryptographic system based on the identity of a user of said system and comprising steps of: obtaining (10, 50) a set of public (g, g1, g2, u ', U) and private (g2a) parameters associated with said identity-based cryptographic system; selecting a public identifier (ID) comprising identity information of said user and determining (20) an identity vector (v) representative of said user's own identifier; generation (30, 60) of a public key pair (PKID) / private key (dv) associated with the identity of said user, from said public and private parameters and said identity vector (v); said method being characterized in that the elements (vi) of said identity vector (v) are each encoded on k bits, with k> 1. 2. Procédé selon la revendication 1, caractérisé en ce que l'algorithme cryptographique mis en oeuvre est un algorithme de chiffrement d'un message (m) pour 25 l'émission du message chiffré (c) d'un émetteur (A) vers l'utilisateur destinataire (B), ledit procédé comprenant une étape de calcul (40) du message chiffréà partir du message en clair, des paramètres publics et du vecteur identité (v).  2. Method according to claim 1, characterized in that the cryptographic algorithm implemented is an encryption algorithm of a message (m) for the transmission of the encrypted message (c) from a transmitter (A) to the recipient user (B), said method comprising a step of calculating (40) the encrypted message from the plaintext message, the public parameters and the identity vector (v). 3 Procédé selon la revendication 2, caractérisé en ce que l'étape de calcul du message chiffré (c) comprend l'utilisation de la clé publique (PKID) associée au destinataire, définie par le produit n u~fluiv' , u' et ui faisant partie des paramètres publics i=1 du système et les vi étant les éléments du vecteur 10 identité.3 Method according to claim 2, characterized in that the step of calculating the encrypted message (c) comprises the use of the public key (PKID) associated with the recipient, defined by the product nu ~ fluiv ', u' and ui part of the public parameters i = 1 of the system and the vi being the elements of the identity vector. 4. Procédé selon la revendication 2 ou 3, caractérisé en ce que le déchiffrement du message chiffré (c) comprend une étape de calcul (70) du 15 message en clair (m) à partir dudit message chiffré (c) en utilisant ladite clé privée dudit utilisateur destinataire.4. Method according to claim 2 or 3, characterized in that the decryption of the encrypted message (c) comprises a calculation step (70) of the message in clear (m) from said encrypted message (c) using said key the recipient user. 5. Procédé selon la revendication 1, caractérisé 20 en ce que l'algorithme cryptographique mis en oeuvre est un algorithme de signature à clé publique.5. Method according to claim 1, characterized in that the cryptographic algorithm used is a public key signature algorithm. 6. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il est 25 mis en oeuvre dans le cadre du système cryptographique de Waters, dans lequel lesdits paramètres publics et privé sont issus d'un groupe algébrique dérivé d'une courbe elliptique.7. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que l'identifiant public (ID) dudit utilisateur comprend le nom dudit utilisateur ou son adresse électronique.56. Method according to any one of the preceding claims, characterized in that it is implemented within the framework of the cryptographic system of Waters, in which said public and private parameters come from an algebraic group derived from a elliptic curve.7. Method according to one of the preceding claims, characterized in that the public identifier (ID) of said user comprises the name of said user or his electronic address.
FR0510524A 2005-10-14 2005-10-14 CRYPTOGRAPHIC METHOD IMPLEMENTING AN IDENTITY-BASED ENCRYPTION SYSTEM Pending FR2892251A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR0510524A FR2892251A1 (en) 2005-10-14 2005-10-14 CRYPTOGRAPHIC METHOD IMPLEMENTING AN IDENTITY-BASED ENCRYPTION SYSTEM
PCT/EP2006/066955 WO2007042419A1 (en) 2005-10-14 2006-10-02 Cryptographic method using an identity-based encryption system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0510524A FR2892251A1 (en) 2005-10-14 2005-10-14 CRYPTOGRAPHIC METHOD IMPLEMENTING AN IDENTITY-BASED ENCRYPTION SYSTEM

Publications (1)

Publication Number Publication Date
FR2892251A1 true FR2892251A1 (en) 2007-04-20

Family

ID=36691836

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0510524A Pending FR2892251A1 (en) 2005-10-14 2005-10-14 CRYPTOGRAPHIC METHOD IMPLEMENTING AN IDENTITY-BASED ENCRYPTION SYSTEM

Country Status (2)

Country Link
FR (1) FR2892251A1 (en)
WO (1) WO2007042419A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE465571T1 (en) * 2001-08-13 2010-05-15 Univ Leland Stanford Junior SYSTEMS AND METHODS FOR IDENTITY-BASED ENCRYPTION AND RELATED CRYPTOGRAPHIC TECHNIQUES
CN102546161A (en) * 2010-12-08 2012-07-04 索尼公司 Ciphertext policy based revocable attribute-based encryption method and equipment and system utilizing same

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017559A2 (en) * 2001-08-13 2003-02-27 Board Of Trustees Of The Leland Stanford Junior University Systems and methods for identity-based encryption and related cryptographic techniques

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017559A2 (en) * 2001-08-13 2003-02-27 Board Of Trustees Of The Leland Stanford Junior University Systems and methods for identity-based encryption and related cryptographic techniques

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BRENT R. WATERS: "Efficient Identity-Based Encryption Without Random Oracles", EUROCRYPT 2005, May 2005 (2005-05-01), pages 114 - 127, XP002392604, Retrieved from the Internet <URL:http://www.springerlink.com/media/56we0hwhtj2tv6t7cqwy/contributions/j/8/x/1/j8x1gw8cbykf18qt.pdf> [retrieved on 20060728] *
DAN BONEH ET AL: "Efficient Selective-ID Secure Identity-Based Encryption Without Random Oracles", 2004, , PAGE(S) 223-238, XP019005019 *

Also Published As

Publication number Publication date
WO2007042419A1 (en) 2007-04-19

Similar Documents

Publication Publication Date Title
EP3506556B1 (en) Method of authenticated key exchange via blockchain
CA2895189C (en) Group signature using a pseudonym
FR2952778A1 (en) SECURE DATA TRANSMISSION METHOD AND ENCRYPTION AND ENCRYPTION SYSTEM FOR SUCH TRANSMISSION
WO2008113950A2 (en) Identity based broadcast encryption
FR2930390A1 (en) METHOD FOR SECURE DIFFUSION OF DIGITAL DATA TO AN AUTHORIZED THIRD PARTY
EP1254534A1 (en) Communication method with encryption key escrow and recovery
CN107070900B (en) It can search for re-encryption method based on what is obscured
FR2742617A1 (en) METHODS OF REDUCTION AND PROVISION OF ENCRYPTION KEYS, AND STRUCTURE AND SUPPORT OF DATA FOR THEIR IMPLEMENTATION
EP2449721B1 (en) Cryptography by parameterizing on elliptic curve
FR2892251A1 (en) CRYPTOGRAPHIC METHOD IMPLEMENTING AN IDENTITY-BASED ENCRYPTION SYSTEM
EP4012972A1 (en) Method for selective disclosure of data via a blockchain
FR2899750A1 (en) Common encryption key generating method for e.g. voice over Internet protocol application, involves verifying correspondence between control data displayed on terminal of one user and control data received from another user by latter user
WO2008113952A2 (en) Identity based encryption
EP3008851B1 (en) System and method for delegating bilinear pairing computations to a server
Jain A review on different types of cryptography techniques
EP3211826A1 (en) Method for handling implicit certificates using a distributed public key infrastructure
WO2012080683A2 (en) Method and system for conditional access to a digital content, associated terminal and subscriber device
FR2786049A1 (en) Information transmission dynamic key encryption coding technique having defined word generated key encryption used and receiver generation same key decoding producing.
EP2689552B1 (en) Non-hierarchical infrastructure for managing twin-security keys of physical persons or of elements (igcp/pki).
WO2005125085A2 (en) Chip card reader, system and method of performing a pairing operation on an elliptic curve
FR3039022A1 (en) SECURE DELEGATION METHOD OF CUTTING CALCULATIONS FOR PUBLIC KEY ENCRYPTION ALGORITHMS
FR2872977A1 (en) METHOD FOR COUNTERMEASING AN ELECTRONIC COMPONENT USING A PUBLIC KEY ALGORITHM USING THE ELLIPTICAL CURVES FOR PROTECTING THE COUPLING CALCULATION ON THE CURVED HANDS
CA2709178A1 (en) Control of an entity to be controlled by a control entity
FR3029667A1 (en) METHOD FOR ENCAPSULATING A SESSION KEY
FR3044790A1 (en) IDENTITY-BASED ENCRYPTION AND SIGNATURE METHOD IN PUBLIC KEY INFRASTRUCTURE WITHOUT CERTIFICATES