This project implements a secure chat application in Python, ensuring encrypted communication between clients and a server using RSA for key generation, Diffie-Hellman for key exchange and AES for message encryption.
- RSA(Rivest-Shamir-Adleman) for key generation.
- Diffie-Hellman key exchange to derive a shared key.
- AES(Advanced Encryption Standard) for message encryption
- Multi-threaded server for handling concurrent client connections
- JSON-formatted logging for tracking events
- Python
- cryptography library
- socket module
- threading module
- json module
- logging module
$ git clone https://github.com/ishika-srivastava/Secure-Chat-Application.git
$ cd Secure-Chat-Application
$ pip install -r requirements.txt
$ python server.py
$ python client.py
- Start the server and connect clients.
- Exchange messages securely using the implemented protocols.
- Commands and features are provided in the client interface.
The application logs events such as client connections, messages received, and errors encountered in JSON format. Logs are stored in server.log.
- Ensure Python 3.12.0 and the required libraries are installed.
- Customize encryption settings or network configurations as needed.
Ishika Srivastava
Contact: ishika.srivastava029@gmail.com