An ad hok end to end encrypted group chat
It offers a dependable group chat system with end-to-end encryption using MQTT as backend. This functionality is facilitated through WebSocket technology and messaging protocols.
- Your ID serves as your username, allowing any characters except :.
- The room designation is essential for joining the chat, requiring all participants to converge in the same room.
- Each participant utilizes a shared secret key to generate encryption keys for message security, ensuring uniformity among all chat members.
- The server side is using free public MTQQ broker, choose the one that works best for you.
- Upon establishing a connection, your browser's URL will automatically update. You can readily distribute this modified URL to other participants for seamless integration.
- Thanks to MQTT, all messages are delivered in real-time, encrypted. In addition, disconnected message may be replayed
To transmit a message, simply input your text and press "Enter."
If you see `** unkown message **`, possiblely, someone is sending messages into same room with different secret key. In this case, they can not see you content and neither can you.
Messages are encrypted using a symmetric key before dissemination to other participants, ensuring privacy and security throughout the communication process.
From a technical standpoint, the client employs plain JavaScript for message encryption, while the server utilizes WebSocket, known for its reliability compared to WebRTC, to route and broadcast messages to the channel.
Source code is at GitHub