1

Hey i do have a question about cryptography: I know that Elliptic curve is cryptography algorithm and Diffie–Hellman is mechanism which is provide the two parties who wish to encrypt some data with a identical key (symmetric key) and elliptic curve algorithm is used in conjunction with DH to provide authentication. I almost forgot to mention that I know that "ephemeral" in this context means that every session will have a different key so we can achieve "perfect forward secrecy"

My question is what's the purpose of "rsa" there

X2hat
  • 11
  • 1
  • 4

2 Answers2

7

In a TLS cipher suite the ECDHE is for key exchange and the RSA is for server certificate authentication.

Microsoft has a good explanation of cipher suite naming here.

Swashbuckler
  • 2,126
  • 11
  • 8
5

I know that Ecliptic curve is cryptography algorithm

An elliptic curve (I presume ecliptic curve is a misspelling of elliptic curve) is a mathematical structure that can be used in a number of different algorithms.

Diffie–Hellman is mechanism which is provide the two parties who wish to encrypt some data with a identical key (symmetric key)

Yes

ecliptic curve algorithm is used in conjunction with DH to provide authentication.

An elliptic curve based digital signature algorithm can be used for authentication, but that is not what the "EC" in "ECDH" refers to

Traditionally diffe-hellman uses the integers modulo a large prime under multiplication as it's "group", but the prime has to be very large to get adequate security. By using an elliptic curve based group instead, adequate security can be achieved with much smaller values.

I almost forgot to mention that i know that "ephemeral" in this context means that every session will have a different key so we can achieve "perfect forward secrecy"

It's not just about having a different key for each session, it's about ensuring that the session key remains secret even if long term secrets of the client or server are later compromised.

To achieve that the neither of the diffe-helman private keys can be long-term keys. Therefore their corresponding public keys cannot be long term keys either.

So to authenticate the key exchange while maintain forward secrecy a mechanism is required to authenticate the ephemeral DH private key of the server. TLS achieves this through the use of a digital signature from a long term public key.

As has been pointed out in a comment, an alternate mechanism for authentication is to perform two DH exchanges, one ephemeral and one with long-ternm keys, then combine the results of both exchanges to establish the shared secret.

My question is what's the purpose of "rsa" there

RSA is used for authentication.

ECDSA can be used instead, but that requires a different certificate, so it's taken a while to gain popularity.

Peter Green
  • 1,613
  • 1
  • 11
  • 17