Aller au contenu
ecdsa.com

P-521 (secp521r1)

La plus grande des courbes du NIST sur corps premier, définie modulo le nombre premier de Mersenne 2⁵²¹ − 1, qui offre environ 256 bits de sécurité ; en JOSE, ES512 désigne ECDSA sur P-521 avec SHA-512, et non une courbe de 512 bits.
Autres graphiessecp521r1NIST P-521P521

Définie dans la NIST SP 800-186 §3.2.1.5 et dans SEC 2 §2.6.1. Identifiants : OID 1.3.132.0.35, groupe TLS secp521r1 (25), TLS 1.3 ecdsa_secp521r1_sha512 (0x0603), crv JOSE P-521 avec alg ES512, COSE −36. Le nombre premier de Mersenne rend peu coûteuse la réduction dans le corps, mais la taille de 521 bits ralentit tout le reste : environ 7450 signatures et 4180 vérifications par seconde sur un cœur d’Apple M4 Max avec OpenSSL 3.6.5.

Les tailles piègent le code écrit avec l’hypothèse de « 512 bits » : le scalaire privé fait 66 octets (521 bits), la clé publique 133 octets non compressée ou 67 compressée, une signature JWS ES512 brute exactement 132 octets (r et s complétés chacun à 66) et une signature DER environ 137 à 139 octets. Tronquer les coordonnées à 64 octets ou supprimer les octets nuls de tête produit des clés et des signatures que les autres bibliothèques rejettent.

P-521 offre plus de marge face aux attaques classiques qu’il n’en faut contre tout attaquant réaliste, tant que les ordinateurs quantiques ne changent pas la donne ; elle est donc généralement choisie pour satisfaire une politique plutôt que pour des raisons d’ingénierie de la sécurité. Comme toute courbe elliptique, elle tombe face à l’algorithme de Shor, et le NIST IR 8547 (projet) la traite comme P-256.

Normes et références

Tous les termes