Skip to content

An end-to-end encrypted chat room application based on the Signal protocol.

Notifications You must be signed in to change notification settings

anandrahul604/end-to-end-encrypted-chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

End-to-end Encrypted Chat based on Signal

Description

An end-to-end encrypted chat room application where multiple users can connect to a server, and begin sending encrypted messages to each other. Only the connected clients will be able to read each others messages, and the server will only see the encrypted message that was sent.

Based on the Signal protocol, however not all aspects of the protocol were implemented. The parts of the protocol that were implemented include

  • Triple Elliptic-curve Diffie–Hellman (3-DH)
  • Prekeys
  • Cryptographic primitives (e.g. Curve25519, AES-256, and HMAC-SHA256)
  • Double Ratchet algorithm

Dependencies

Steps to Run

  • Run server with command "python3 chatServerDuplex.py"
  • Connect a new client with command "python3 chatClientDuplex.py"
  • You can connect multiple clients and begin messaging.

About

An end-to-end encrypted chat room application based on the Signal protocol.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages