Est-ce que quelqu'un sait pourquoi la dernières courbes de références du
NIST sur GF(p) publiées dans la norme FIPS 186-2 (i.e. P-521) est défini sur
un corps de taille 512 bits?
En effet, alors que les autres courbes de références sont définies sur des
corps de tailles divisibles par 8 (cad 192, 224, 256 et 384 bits), la courbe
P-521 oblige les développeurs à rajouter quelques lignes de code pour
traiter ce cas particulier qui ne remplit pas un nombre entier d'octets...
Les p'tits gars du NIST auraient pu choisir P-512 à la place de P-521...
Remarquez, il s'agit peut-être d'une faute de frappe ;-)
Est-ce que quelqu'un a une explication rationnelle ? J'ai déjà entendu dire
"Ils ont pris 521 car 2^521-1 est le premier nombre de Mersenne après
2^512..."
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Thomas Pornin
According to Kris :
Est-ce que quelqu'un sait pourquoi la dernières courbes de références du NIST sur GF(p) publiées dans la norme FIPS 186-2 (i.e. P-521) est défini sur un corps de taille 521 bits?
Une hypothèse que j'ai déjà vue avancer est que le NIST voulait qu'au moins une des courbes travaille dans un corps de cardinal p = 2^n - 1 pour un certain entier n, parce que cela simplifie grandement les réductions modulaires, en particulier si on envisage le cas des implémentations matérielles. Il y a très peu de nombres premiers de cette forme avec une taille "intéressante" (suffisamment grand pour que la courbe ne soit pas attaquable, suffisamment petit pour que les calculs ne prennent pas des heures). En fait, ça ne laisse que deux choix, n = 521 et n = 607 (n = 127 donne un corps trop petit, et n 1279 donne un corps trop grand ; il n'y a pas d'autre choix entre ces bornes). Dans ces conditions, le choix de n = 521, en lieu et place de la courbe "512 bits", semble s'imposer...
--Thomas Pornin
According to Kris <chris.giraud@free.fr>:
Est-ce que quelqu'un sait pourquoi la dernières courbes de références du
NIST sur GF(p) publiées dans la norme FIPS 186-2 (i.e. P-521) est défini sur
un corps de taille 521 bits?
Une hypothèse que j'ai déjà vue avancer est que le NIST voulait qu'au
moins une des courbes travaille dans un corps de cardinal p = 2^n - 1
pour un certain entier n, parce que cela simplifie grandement les
réductions modulaires, en particulier si on envisage le cas des
implémentations matérielles. Il y a très peu de nombres premiers de
cette forme avec une taille "intéressante" (suffisamment grand pour que
la courbe ne soit pas attaquable, suffisamment petit pour que les
calculs ne prennent pas des heures). En fait, ça ne laisse que deux
choix, n = 521 et n = 607 (n = 127 donne un corps trop petit, et n 1279 donne un corps trop grand ; il n'y a pas d'autre choix entre ces
bornes). Dans ces conditions, le choix de n = 521, en lieu et place de
la courbe "512 bits", semble s'imposer...
Est-ce que quelqu'un sait pourquoi la dernières courbes de références du NIST sur GF(p) publiées dans la norme FIPS 186-2 (i.e. P-521) est défini sur un corps de taille 521 bits?
Une hypothèse que j'ai déjà vue avancer est que le NIST voulait qu'au moins une des courbes travaille dans un corps de cardinal p = 2^n - 1 pour un certain entier n, parce que cela simplifie grandement les réductions modulaires, en particulier si on envisage le cas des implémentations matérielles. Il y a très peu de nombres premiers de cette forme avec une taille "intéressante" (suffisamment grand pour que la courbe ne soit pas attaquable, suffisamment petit pour que les calculs ne prennent pas des heures). En fait, ça ne laisse que deux choix, n = 521 et n = 607 (n = 127 donne un corps trop petit, et n 1279 donne un corps trop grand ; il n'y a pas d'autre choix entre ces bornes). Dans ces conditions, le choix de n = 521, en lieu et place de la courbe "512 bits", semble s'imposer...