github-af / SmartPGP

SmartPGP is a JavaCard implementation of the OpenPGP card specifications
GNU General Public License v2.0
229 stars 48 forks source link

Add SECP256k1 #28

Closed bitlogik closed 3 years ago

bitlogik commented 3 years ago

Adding SECP 256k1 in the supported curves parameters list for ECDSA and ECDH.

This curve domain parameter is part of the recommended standard SEC 2 Recommended Elliptic Curve Domain Parameters Version 2 by OpenPGP. Also this is more and more used as an alternative security domain outside of NIST FIPS. Some valued implementations of OpenPGP such as Yubico 5 is supporting this ECP.

af-anssi commented 3 years ago

Could you rebase this pull request on branch javacard-3.0.4-without-secure-messaging ?

bitlogik commented 3 years ago

OK, done.

af-anssi commented 3 years ago

After some internal discussions we prefer not to add other curves in the default applet because we found no easy way to decide which additional curves could/should be included. And we cannot include all "interesting" curves because it would have very strong overhead on the size of the compiled applet. Supported curves in the "default" applet will thus remain those depicted in the OpenPGP card specification.