<div dir="auto">I'll give it a try. <div dir="auto"><br></div><div dir="auto">The Certification Authority (CA) that released the certificate has an RSA key. That was used to generate the signature in the cert, that tells users that the CA verified the Certificate Subject identity and that they hold the secret key associated with the Subject's Public Key. <div dir="auto"><br></div><div dir="auto">The Certificate Subject (<a href="http://facebook.com">facebook.com</a>) has an ECDSA key, and proved to the CA that they own the secret key matching the Subject's Public Key indicated in the certificate.</div><div dir="auto"><br></div><div dir="auto">During the TLS handshake, <a href="http://facebook.com">facebook.com</a> uses ECDHE for key exchange, and then the same ECDSA key verified by the CA to sign a hash over the transcript of the handshake itself, this (plus an extra bit of symmetric authentication not directly relevant for this discussion) proves to the client that the server they are talking with holds the ECDSA secret key associated with the Subject's Public Key of the Certificate: if they trust the CA (or the chain of trust up to the CA that signed the Certificate) they transitively know that the server is indeed <a href="http://facebook.com">facebook.com</a> (or someone that gained control of their secret ECDSA key).</div><div dir="auto"><br></div><div dir="auto">Therefore ECDHE provides key exchange and ECDSA authentication for the handshake, while RSA guarantees the authenticity of the Certificate.</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">Best regards, </div><div dir="auto"><br></div><div dir="auto">Nicola Tuveri </div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Aug 26, 2022, 20:49 radiatejava <<a href="mailto:radiatejava@gmail.com">radiatejava@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I am a bit confused when an RSA signed ECDSA certificate is being used in TLS.<br>
For example, if you run the test for <a href="http://facebook.com" rel="noreferrer noreferrer" target="_blank">facebook.com</a>, you will see that<br>
the certificate has ECDSA key but signed with Signature Algorithm:<br>
sha256WithRSAEncryption.<br>
<br>
$ openssl s_client  -connect  <a href="http://www.facebook.com:443" rel="noreferrer noreferrer" target="_blank">www.facebook.com:443</a><br>
<br>
The ciphersuite used here is ECDHE-ECDSA-AES128-GCM-SHA256. So it<br>
means it used ECDSA key for server authentication.<br>
<br>
But I do not understand how did it use ECDSA key for authentication as<br>
the cert is RSA signed and key exchange is ECDHE, meaning ECDSA key of<br>
the certificate is not used for encryption keys. Can someone explain<br>
this to me?<br>
</blockquote></div>