encrypted terminal chat with file xfer, shared terminal acess, sandbox vm supporitn docker, multipass and virtualbox. also local ai model integration.
Go to file
2023-12-03 16:18:09 +03:00
cmd_chat Working on 1.1.22 2023-12-03 16:18:09 +03:00
.gitignore Update README & pypi 2023-03-08 19:38:28 +03:00
cmd_chat.py Reworked setup.py, now you can run cmd_chat directly. Reworked sanic http webserver to make it work. Update readme, etc... 2023-11-27 14:30:01 +03:00
example.gif Add gif to readme with example 2022-12-01 11:36:48 +03:00
LICENSE Code refactoring 2023-03-08 18:59:38 +03:00
README.MD Working on 1.1.22 2023-12-03 16:18:09 +03:00
requirements.txt Working on 1.1.22 2023-12-03 16:18:09 +03:00
setup.py Working on 1.1.22 2023-12-03 16:18:09 +03:00

Welcome to command line chat project [CMD CHAT]

Alt Text

What is this?

It is a console chat with message encryption.

How does it work?

All you need to do is run a web server and connect to it via a client.

Run

Create and activate a virtual environment in Python

pip install secured_console_chat
import asyncio 
import cmd_chat

if __name__ == '__main__':
    asyncio.run(cmd_chat.run())

Or

Start server:

cmd_chat serve localhost 5000 

Connect to server:

cmd_chat connect localhost 5000 tyler

How does encryption work?

  • The client generates a private key.
  • The server generates a symmetric key.
  • The client sends the public key to the server.
  • The server encrypts the symmetric key and sends it to the client.
  • The client encrypts the private key.
  • After that, communication with the server occurs via the symmetric key.

Example

Alt Text

Known bugs

  • Sometime WS just drop connection
  • Client input message problem. To start input, you need to press enter first, only after that you got pop up with message. Tried to fix, but nothing worked.

1.1.22

  • Renderer logics have been separated
  • A new renderer have been implemented
  • Thread closing logics have been changed. Now, it is easy to quit from the client without any unexpected behavior
  • Now, displaying messages is limited to the last N messages. The default value is 5
  • WS dropped connection, probably fixed