Skip to main content
replaced https://tools.ietf.org/html/rfc with https://www.rfc-editor.org/rfc/rfc
Source Link

As per section 5.35.3 of RFC 4492RFC 4492, I'm confused with the following table:

          Key Exchange Algorithm  Server Certificate Type
      ----------------------  -----------------------

      ECDH_ECDSA              Certificate MUST contain an
                              ECDH-capable public key.  It
                              MUST be signed with ECDSA.

      ECDHE_ECDSA             Certificate MUST contain an
                              ECDSA-capable public key.  It
                              MUST be signed with ECDSA.

      ECDH_RSA                Certificate MUST contain an
                              ECDH-capable public key.  It
                              MUST be signed with RSA.

      ECDHE_RSA               Certificate MUST contain an
                              RSA public key authorized for
                              use in digital signatures.  It
                              MUST be signed with RSA.

Specifically, I would like to know about the difference between

ECDH-capable public key

and

ECDSA-capable public key

What actually defines an EC*-capable public key and what are the differences between the two?

I am using XCA/OpenSSL and have configured a CA and signed server certificate to use a prime256v1/P-256 EC key. Then, I will have a client/server using the following cipher suites:

TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA

and

TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA

As per section 5.3 of RFC 4492, I'm confused with the following table:

          Key Exchange Algorithm  Server Certificate Type
      ----------------------  -----------------------

      ECDH_ECDSA              Certificate MUST contain an
                              ECDH-capable public key.  It
                              MUST be signed with ECDSA.

      ECDHE_ECDSA             Certificate MUST contain an
                              ECDSA-capable public key.  It
                              MUST be signed with ECDSA.

      ECDH_RSA                Certificate MUST contain an
                              ECDH-capable public key.  It
                              MUST be signed with RSA.

      ECDHE_RSA               Certificate MUST contain an
                              RSA public key authorized for
                              use in digital signatures.  It
                              MUST be signed with RSA.

Specifically, I would like to know about the difference between

ECDH-capable public key

and

ECDSA-capable public key

What actually defines an EC*-capable public key and what are the differences between the two?

I am using XCA/OpenSSL and have configured a CA and signed server certificate to use a prime256v1/P-256 EC key. Then, I will have a client/server using the following cipher suites:

TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA

and

TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA

As per section 5.3 of RFC 4492, I'm confused with the following table:

          Key Exchange Algorithm  Server Certificate Type
      ----------------------  -----------------------

      ECDH_ECDSA              Certificate MUST contain an
                              ECDH-capable public key.  It
                              MUST be signed with ECDSA.

      ECDHE_ECDSA             Certificate MUST contain an
                              ECDSA-capable public key.  It
                              MUST be signed with ECDSA.

      ECDH_RSA                Certificate MUST contain an
                              ECDH-capable public key.  It
                              MUST be signed with RSA.

      ECDHE_RSA               Certificate MUST contain an
                              RSA public key authorized for
                              use in digital signatures.  It
                              MUST be signed with RSA.

Specifically, I would like to know about the difference between

ECDH-capable public key

and

ECDSA-capable public key

What actually defines an EC*-capable public key and what are the differences between the two?

I am using XCA/OpenSSL and have configured a CA and signed server certificate to use a prime256v1/P-256 EC key. Then, I will have a client/server using the following cipher suites:

TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA

and

TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA

Source Link

Confused about RFC 4492: difference between "ECDH-capable public key" and "ECDSA-capable public key"

As per section 5.3 of RFC 4492, I'm confused with the following table:

          Key Exchange Algorithm  Server Certificate Type
      ----------------------  -----------------------

      ECDH_ECDSA              Certificate MUST contain an
                              ECDH-capable public key.  It
                              MUST be signed with ECDSA.

      ECDHE_ECDSA             Certificate MUST contain an
                              ECDSA-capable public key.  It
                              MUST be signed with ECDSA.

      ECDH_RSA                Certificate MUST contain an
                              ECDH-capable public key.  It
                              MUST be signed with RSA.

      ECDHE_RSA               Certificate MUST contain an
                              RSA public key authorized for
                              use in digital signatures.  It
                              MUST be signed with RSA.

Specifically, I would like to know about the difference between

ECDH-capable public key

and

ECDSA-capable public key

What actually defines an EC*-capable public key and what are the differences between the two?

I am using XCA/OpenSSL and have configured a CA and signed server certificate to use a prime256v1/P-256 EC key. Then, I will have a client/server using the following cipher suites:

TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA

and

TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA