title: Whose key is used to encrypt a HTTPS response?
body: <p>I have a web server built up relying on HTTPS. So, my server maintains its private key and publish a public key that any clients can use to encrypt their request. Since my server is the only one who has the private key to decrypt any message encryped using server's public key, any request sent this way can be considered secure.</p>
  
  <p>However my question is at the response part. When the server sends the response back to the client, whose public key will the server use to encrypt the response message?</p>
  
  <p>I assume the server will use client's public key to encrypt the response (by default? or upon configuration?). If so, does the server knows the client's public key from the request it sends to the server, or somehow else?</p>
  
  <p><strong>Update:
  If I understand it incorrectly, then during future communications how each party knows how to decrypt the message the other one sends? Is some key shared or somehow?</strong></p>
  
  <p>Thanks!</p>