As I look over the TexSecures specifications for multi-party chat I have noticed this. Also as far as I understood in TextSecure (now known as Signal) the minimal steps required to do a secure multiparty chat using
- Generate ephemeral symmetric key K
- Encrypt the message.
- Hash the message's plaintext and encrypt the hashes with the key K.
- Send cyphertext,hashes and the key K.
Also by improving it, if client generated an ephemeral signing key as well it can rachet the key and send few messages as well. But whilst I read that and have looked the schema a few questions have been rised to me:
- Is assumed the communication channel to be previously secured when the key K is being sent. I mean transmitting private keys is like you are asking for your security to be compromised.
- What if the ephemeral key K actually has been compromised?
Can you help me to answer these questions?