I'm using Chrome on Ubuntu Linux to connect to Gmail. The connection info says that ECDHE_RSA is used for the https symmetric key exchange.
Based on my understanding of TLS and Gmail, my client creates a symmetrical key, encrypts with Google's public key listed in its certificate, and then sends to Google. Since my browser recognizes Google's certificate, is it safe to assume that my connection is safe and cannot be compromised by a man in the middle attack? How could a man in the middle ever view the symmetric key since he doesn't have Google's private key to decrypt the message?
I do not have a certificate imported into my browser. I used Wireshark to snoop the TLS negotiation. I see in my "client hello" packet I send info on which cipher suites my client supports, a random number, and elliptical curve info. After the gmail server responds with a "server hello" and "certificate, server key exchange, server hello done", my client then sends "client key exchange, change cipher spec, encrypted handshake message". Is it right to assume that the symmetric key that is encrypted with Google's public key is in this packet under the "encrypted handshake message" (TLSv1.1 Record Layer: Handshake Protocol: Encrypted Handshake Message).
Is there any way a server could fingerprint (i.e. uniquely identify) my client in a future TCP connection on a different network via the symmetric key that my client generated above?