Ed25519 or Ed448 as account key?


#1

Hello,

Does LE currently support account keys that use Ed25519 or Ed448?

Thank you!


#2

I don’t think so, Boulder appears to implement only ECDSA support for JWK: https://tools.ietf.org/html/rfc7518#section-3.4


#3

@_az is correct (thanks!). Only RSA and ECDSA NIST P256 and P384 account keys are supported presently.


#4

It’s been a while since i touched crypto

Both of the above are signing algorithms not key generation algoritms

NIST P256 and 384 is what you are looking for.

A ECC key can be used as a basis for different signature schemes. Signature schemes matter for SSL clients and certificates however account keys are just that a private/public pair.

Andrei


#5

as Let’s Encrypt follow the JWT standard they probably stick to the recommended signing mechanisms as well.

Below is probably the best summary I can find quickly :smiley:

https://connect2id.com/products/nimbus-jose-jwt/algorithm-selection-guide#signatures

hope it clears things up

Andrei


#6

@ahaw021 Ed25519 and Ed448 are public-key cryptography algorithms that, like RSA and ECC, have private/public pairs. There are JOSE standards for both, so it would be just a matter of implementation to have ACME use them for account keys. There is also, I believe, ongoing work to define usage of such keys pairs for TLS itself, but that’s not what I’m asking about.

The latest development releases of OpenSSL can produce and parse keys for these algorithms, e.g.:

> openssl genpkey -algorithm ed25519
-----BEGIN PRIVATE KEY-----
MC4CAQAwBQYDK2VwBCIEIFkWFmQxzjQZLypPdkqV+ILA3TAXtQguwmUdiiSiO+/V
-----END PRIVATE KEY-----

#7

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.