public void SendMessage(CNSMessageClient receiver, string message)
    {
        AddMessageReceiver(receiver);
        MessageSendingParams p = outgoingMessages[receiver];
        string mess            = p.SendMessage(message);

        receiver.ReceiveMessage(this, mess);
    }
    public void AddMessageReceiver(CNSMessageClient other)
    {
        if (outgoingMessages.ContainsKey(other))
        {
            return;
        }
        MessageSendingParams p = new MessageSendingParams();

        outgoingMessages.Add(other, p);
        other.AddMessageSender(this, new MessageReceivingParams(p.publicKey, p.encryptionKey, p.encryptionIV));
    }