4

From Wikipedia's article on ECDH:

The public keys are either static (and trusted, say via a certificate)…

Also see this question on this very site.

These indicate to me that a certificate (maybe an X.509 certificate) can have a(n) (elliptic curve) Diffie-Hellman public key as the data that is authenticated by it. Is this true?

Melab
  • 4,178
  • 4
  • 24
  • 49

1 Answers1

2

Yes, but it isn't that common and you may therefore have trouble finding implementations of it. Dave already pointed out in the other answer that you may need to use the OpenSSL API (which is a lower level crypto-API, not just SSL/TLS) rather than using the command line.

Please look at the following in the X509 RFC 5280:

4.1.2.7. Subject Public Key Info

This field is used to carry the public key and identify the algorithm with which the key is used (e.g., RSA, DSA, or Diffie-Hellman) (emphasis mine).


When used with TLS:

With a static DH key you would be using ephemeral-static Diffie-Hellman. That means that such a key is normally only used to authenticate the key agreement protocol. That also means that this protocol won't be providing forward secrecy.

Maarten Bodewes
  • 96,351
  • 14
  • 169
  • 323