Program uses RSA to encrypt/decrypt messages
The public and secret keys are generated when the client tries to connect to the server, then the client sends public key to the server.
Server or user encrypt the message using public key of the receiver.
Every user doesn't share his secret key, which makes chatting safe.
Required to have all the modules in the same directory:
To start a server enter 'python server.py'
To start client.py write 'python client.py {username}'in the terminal:
Here's the example of usage:
As seen on the picture, user can enter '|' sign to indicate receivers - can be one person or more
If there is no '|' sign, then the message is sent to everyone.
If username is wrong, user can resend a message:
Allowed characters are ascii symbols in range from 32 to 122 inclusively
Message integrity implemented, the message with warning about error in sending the message can be printed.