Skip to content

Latest commit

 

History

History
91 lines (56 loc) · 3.47 KB

File metadata and controls

91 lines (56 loc) · 3.47 KB

CryptoChat 💬🔐

GitHub Repo stars GitHub total downloads latest release

Cryptochat is a project that allows two users to communicate securely via the command line interface (CLI).

  • The server is implemented in Python with the socket module.
  • A network sniffer is implemented to capture the packets sent and received and ensure that the data is properly encrypted.
  • An authentication is required before accessing the server.

About 🥢

  • Cryptochat uses the RSA algorithm to encrypt messages.
  • All datas are stored into a SQLite database.
  • All roles run on the same machine by default.

Demo 📸

CryptoChat_demo.mp4

Installation 📦

Role Link Description Max clients
Server (P2P) Host, send, receive and save messages. 1
Client Send and receive messages. /
Sniffer Analyze a specified number of TCP packets containing datas. /
All roles Contains the entire project with all roles. /
About roles 🎭 Capture d’écran 2024-02-02 à 21 12 14

Run the project 🚀

Consider installing python 3.12 or higher.

  • Create a virtual environment and install the requirements.
pip install -r requirements.txt

Server

python3 srv.py

Client

python3 clt.py

Sniffer

python3 snf.py

As simple as that 🤯

The figures below explain how CryptoChat works.

About roles

Author ✍️

License 📝

CryptoChat 💬🔐 is under MIT License

Donations & Support ❤️

If you like this project, feel free to give it a ⭐!