title: How much overhead is there in rebuilding a CryptoStream?
body: <p>I've been beating my head over a problem for the past few days: after doing a public key exchange + sign on, my endpoints switch to a <code>Rijndael</code> symmetric encryption schema to encrypt messages between client and server. </p>
  
  <p>Problem is, I create the cryptostream and leave it open thinking that that's the best way to go since the channel will be used for sending multiple connections. When I do so, the encryption never completely outputs to the base stream. Per msdn, it says:</p>
  
  <blockquote>
    <p>You should always explicitly close your CryptoStream object after you
    are done using it by calling the Close method. Doing so flushes the
    stream and causes all remain blocks of data to be processed by the
    CryptoStream object.</p>
  </blockquote>
  
  <p>That seems like a lot of overhead to rebuild it for every single message sent. Is there some sort of reason for that, or am I just missing something?</p>