Cryptographie à base de couplages
La cryptographie à base de couplages désigne une branche de la cryptographie qui s'intéresse aux constructions utilisant les accouplements ou couplages. Un couplage est une application bilinéaire non dégénérée, c'est-à-dire qui n'est pas identiquement nulle. L'utilisation de ces objets permet de débloquer des constructions que l'on ne sait pas faire en utilisant uniquement un groupe vérifiant des propriétés cryptographiques, comme l'hypothèse décisionnelle de Diffie-Hellman. Par exemple, le chiffrement par attributs.
L'utilisation des couplages en cryptographie a été popularisé par Antoine Joux en 2002[1].
Définition
Un couplage est une application , qui est bilinéaire, c'est-à-dire qui vérifie pour tout entiers et tous éléments de groupes l'égalité . De plus le couplage ne doit pas être dégénéré, c'est-à-dire que ou . Finalement, comme on souhaite utiliser cette primitive en cryptographie, on souhaite finalement que le calcul de la fonction puisse être évalué par un algorithme fonctionnant en temps polynomial.
Catégorisation
On distingue principalement deux grandes familles de couplages: les couplage symétriques, lorsque les deux groupes sources sont les mêmes : , et les couplages asymétriques lorsqu'ils sont différents.
Usuellement, les cryptographes distinguent de plus les couplages asymétriques forts, où il est difficile d’établir un homomorphisme entre et , et faibles dans le cas contraire. Cette taxonomie est résumée en trois types[2] :
- Type 1 : les couplages symétriques, ;
- Type 2 : les couplages asymétriques faibles, lorsqu'il existe un homomorphisme calculable en temps polynomial ;
- Type 3 : les couplages asymétriques forts, lorsqu'on ne connaît pas un tel homomorphisme entre et .
Utilisation en cryptographie
Les couplages sont associés à des hypothèses de sécurité, comme une généralisation de l'hypothèse décisionnelle de Diffie-Hellman dans les groupes d'origine et , appelé « Hypothèse de Diffie-Hellman symétrique externe » (SXDH en anglais)[3].
À l'heure actuelle, ces hypothèses servent de base pour construire des cryptosystèmes, comme le chiffrement fondé sur l'identité de Boneh et Franklin[4].
Exemple : échange de clefs tripartite
Le protocole d’échange de clefs Diffie-Hellman permet à deux utilisateurs de s’entendre sur une clef privée qui reste secrète aux yeux d’un observateur extérieur et qui pourra ensuite être utilisée pour commencer un échange secret. La sécurité de cette primitive repose sur la sécurité de l'hypothèse calculatoire de Diffie-Hellman. Le principe est le suivant : Alice souhaite échanger une clef secrète avec Bob. Pour cela ils commencent tous les deux par générer un entier pour Alice et pour Bob. Alice calcule ensuite et Bob de son côté calcule . Ces deux valeurs sont ensuite échangées entre les deux partis. Ainsi Alice peut calculer et Bob peut calculer ; mais un observateur qui ne dispose ni de ni de ne peut déterminer , auquel cas il résout l'hypothèse calculatoire de Diffie-Hellman. Ainsi consistue la clef secrète partagée par Alice et Bob.
Ce protocole peut être étendu à trois utilisateurs en un seul tour à l'aide d'un couplage symétrique[1]. En effet, si Alice partage , Bob partage et Charles partage pour un entier aléatoire et secret , alors Alice peut calculer , Bob peut calculer et Charles peut finalement calculer la même valeur .
Notes et références
Notes
Annexes
Articles connexes
Bibliographie
- [Boneh et Franklin 2001] (en) Dan Boneh et Matthew Franklin, « Identity-Based Encryption from the Weil Pairing », Crypto, Springer, (lire en ligne)
- [Ballard et al. 2005] Lucas Ballard, Matthew Green, Breno de Medeiros et Fabian Monrose, « Correlation-Resistant Storage via Keyword-Searchable Encryption », ePrint Report, (lire en ligne)
- [Galbraith, Patterson et Smart 2006] Steven Galbraith, Kenneth Patterson et Nigel Smart, « Pairings for Cryptographers », ePrint Reports, (lire en ligne)
- [Joux 2002] Antoine Joux, « The Weil and Tate pairings as building blocks for public key cryptosystems », ANTS, Springer, , p. 20−32
- Portail de la cryptologie