This repository features a chat messenger with end-to-end encryption.
Following is a summary of the main features:
- UDP socket communication
- Symmetric encryption using AES-256
- User typing information
- Message notifications
Developed and tested on the following setup:
- macOS High Sierra (10.13.6)
- Qt Creator 4.1.0
- Qt 5.7.0
- Clang 7.0
- Botan 2.6.0 (Crypto and TLS for Modern C++)
Make sure that the Botan library is successfully installed on your system. Visit https://botan.randombit.net for more information on how to install Botan.
Open netchat.pro in Qt Creater and run the build process.
Depicted below is the communication model:
This video presents the general usage and features. Please remember that only peer-to-peer connections are supported.