• Aucun résultat trouvé

Résumé de l'article publié à la conférence CHES'00

Cet article présente les résultats de travaux de recherche eectués en colla- boration avec Nigel Smart de l'université de Bristol. L'idée initiale a consisté à regarder, vis-à-vis de la problématique des attaques en courant, les diérentes pa- ramétrisations des courbes elliptiques issues de [34], et plus particulièrement celle de Jacobi, pour laquelle la courbe elliptique est dénie comme intersection de deux quadriques.

Dans un premier temps, nous analysons la problématique de l'implémentation des courbes elliptiques au sein des composants sécurisés vis-à-vis des attaques par le biais du canal consommation. Alors que les attaques diérentielles représentent une menace critique pour l'algorithme RSA, elles sont bien plus diciles à monter contre les systèmes basés sur les courbes elliptiques car elles utilisent un secret éphémère à chaque instance du protocole. Par ailleurs, la randomisation des coor- données constitue une contre-mesure peu coûteuse, très facile à mettre en oeuvre

5.2. RÉSUMÉ DE L'ARTICLE PUBLIÉ À LA CONFÉRENCE CHES'00 81 dès que les opérations sont menées avec des coordonnées projectives. Ainsi, la principale menace que nous pouvons identier est l'attaque par analyse simple de la consommation (SPA). Cela s'explique facilement, lorsque l'on examine les diérents algorithmes proposés dans la littérature, par le fait que l'une des carac- téristiques des courbes elliptiques est que le doublement de point sur une courbe est une opération particulièrement rapide par rapport à l'addition de deux points diérents menant naturellement à une distinction exploitable au travers des canaux cachés. Cette caractéristique, mise dans le contexte de l'attaque [59] d'EC-DSA ( la version pour Courbes Elliptiques du DSA Digital Signature Algorithm [87]) rend particulièrement dangereuse la fuite de quelques bits du secret éphémère.

Bien qu'aujourd'hui plusieurs solutions soient proposées, au moment de l'écri- ture de cet article la véritable cause de ces attaques qui était la disparité entre l'algorithme d'addition et l'algorithme de doublement, n'avait jamais été adressée par la recherche d'un algorithme unique pour la loi de groupe. En eet, contraire- ment aux opérations sur le corps où la multiplication modulaire peut être utilisée pour calculer un carré modulaire, la dénition de la loi de groupe sur une courbe elliptique dénie selon la règle tangente-sécante", donne un doublement qui ne peut être calculé par la même formule que l'addition pour des raisons d'indé- terminée. Ainsi, la solution que nous développons dans le reste de l'article, est particulièrement élégante car elle ore l'avantage d'être totalement régulière par construction et constitue ce que Benoît Chevalier-Mames, Mathieu Ciet et Marc Joye appellerons plus tard dans [33] une opération atomique du canal caché.

La solution vient de la paramétrisation d'une courbe elliptique en temps qu'in- tersection de deux surfaces quadriques de l'espace projectif P3 que l'on trouve développée par exemple dans [27] et [28]. Pour exploiter cette paramétrisation particulière, il faut d'abord transformer la courbe donnée sous la forme classique E : Y2 = X3+ AX + B sur un corps K en une intersection de deux quadriques

Q : z 2

1− Bz32− Az2z3− z0z2 = 0, z2

2− z0z3 = 0.

La loi de groupe sur les deux quadriques est alors une loi sans singularité qui est applicable à deux points quelconques de Q. Cependant, la loi telle qu'elle est donnée dans [28] ne se traduit pas en un algorithme ecace, c'est pourquoi [34] introduit la forme de Jacobi qui n'existe que si les deux quadriques sont simultané- ment diagonalisables. Ceci se traduit par le fait que la courbe elliptique correspon- dante comporte trois points d'ordre 2. Avec la paramétrisation de l'intersection de deux quadriques considérée par [34]

Q : x 2

0+ x21 − x23 = 0, k2x20+ x22− x2

3 = 0.

vons calculer leur somme (c0, c1, c2, c3) en appliquant les formules suivantes : c0 = a3b1· a0b2+ a2b0· a1b3,

c1 = a3b1· a1b3− a2b0· a0b2, c2 = a3a2b3b2− k2a0a1b0b1, c3 = (a3b1)2+ (a2b0)2.

Il est important de noter que le point à l'inni qui s'exprime en (0, 1, 1, 1) peut être additionné à tout point de la courbe en utilisant la loi générale. Il n'est donc pas nécessaire de le traiter comme une exception. Ainsi construite, la loi de groupe correspond parfaitement au critère d'opération atomique au sens des canaux cachés.

Si l'on abandonne momentanément l'objectif de protection contre la SPA, la formule d'addition peut être simpliée dans le cas du doublement. C'est en vériant la formule de doublement que nous avons trouvé une simplication plus ecace que celle donnée dans [34]. Elle ne nécessite que 7 opérations de produit modulaire sur le corps contre 8 dans celle décrite dans [34]. Ce résultat, en marge de notre but initial, est quand même remarquable car il constitue l'opération de doublement la moins coûteuse connue à ce jour en terme d'utilisation de l'opérateur de multiplication sur le corps.

En pratique, les standards de chirement basés sur l'arithmétique des courbes elliptiques dénissent les courbes par leur paramètres dans le modèle de Weiers- trass. Ainsi, pour rendre exploitables les formules que nous avons précédemment données dans notre modèle, nous montrons comment l'on peut passer du modèle de Weierstrass à celui de Jacobi et inversement et de manière ecace.

Une fois les diérentes formules d'addition et de doublement établies nous pou- vons mesurer, en terme de nombre d'opérations sur le corps, quelle est la pénalité qu'impose notre approche. Pour cela nous avons considéré une courbe elliptique E sur Fp où p désigne un nombre premier de 191 bits, et la multiplication avec les fenêtres signées de 5 bits (c.f. [20] algorithmes IV.6 et IV.7). Dans ce cadre, la protection que nous proposons entraîne une pénalité de 70% par rapport à une implémentation via l'utilisation des coordonnées projectives standards. Cette pénalité peut être réduite à 30% si l'opération de doublement est aléatoirement opérée en utilisant la formule d'addition de 16 opérations ou celle de doublement optimisée en 7 opérations. Ainsi les 38 opérations d'additions restent impossibles à distinguer des 96 opérations (en moyenne) de doublement faites avec la formule générale d'addition. Notons sur ce point que l'article comporte une erreur car il annonce pour cette méthode non pas une pénalité de 30 % mais un gain sur la méthode classique.

Indépendamment de la méthode de protection consistant en une formule unique pour l'addition et le doublement, nous proposons également une variante inédite de l'algorithme de multiplication de point utilisant des fenêtres signées, dans lequel les fenêtres sont choisies lors de la décomposition de l'exposant avec une taille sé- lectionnée aléatoirement entre 1 et une taille maximale xée. Ainsi nous renforçons la résistance aux attaques par canaux cachés.

5.2. RÉSUMÉ DE L'ARTICLE PUBLIÉ À LA CONFÉRENCE CHES'00 83 En conclusion, nous avons montré dans cet article que contrairement à toute attente, il est possible de rendre la loi de groupe sur une courbe elliptique totale- ment régulière sans avoir recours à des artices tels que de fausses opérations. Par ces travaux nous facilitons la sécurisation des implémentations contre les attaques les plus dangeureuses dans le domaine c'est à dire les attaques de type SPA.