Skip to content

benny-e/chatroom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A simple client-server Python TCP chatroom that uses hyrbrid encryption (RSA for key exchange and AES-EAX for message encryption) with Trust on First Use (TOFU) to save and verify server identity.

Requirements:

  • Python 3.10+
  • pycryptodome

Installation:
Clone the repository and install dependencies:

git clone https://github.com/benny-e/chatroom   
cd chatroom  
python -m venv .venv  
source .venv/bin/activate  
pip install .  

Usage:
The application is run using the chatroom command, which is created when
the project is installed.

Defaults:
Server bind address: 0.0.0.0
Client default host: 127.0.0.1
Default port: 5555

Starting the server:
Start the server using default settings (binds to all interfaces on port 5555):

chatroom --server

To run the server on a custom port:

chatroom --server --port <port> 

Stop the server with Ctrl + C.

Start the client:

chatroom --host <server-ip>  

Connect using a custom port:

chatroom --host <server-ip> --port <port>  

Type <exit> when connected to disconnect

About

A python based encrypted chatroom.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages