Skip to content

Simple secure chat room web application with end-to-end client-side encryption

License

Notifications You must be signed in to change notification settings

amir734jj/symmetric-crypto-chat-room

Repository files navigation

SymmetricCryptoChatRoom (URL)

Docker Hub badge

Simple secure chat room web (+ file transfer) application using SignalR (dotnet core) and Angular.js for front-end and most importantly:

  • SHA-256 to hash the given password
  • AES-256-CTR to encrypt/decrypt the messages

Note

  • password is never sent via a socket, You are responsible to exchange the symmetric key
  • Both encryption and decryption is all done in client-slide, only ciphertexts are transmitted via Sockets
  • File name is transmitted as plaintext but file blob is transmitted as ciphertext
  • Max file size is 50mb (binary format for transport)
  • Session password is store as plaintext via a cookie in your browser
  • Used LiteDB to playback messages from 10 minutes ago to just joined users
  • Fody.PropertyChanged to detect if any of state's properties changes which triggers re-renders of UI

Screenshots

Login

Board

About

Simple secure chat room web application with end-to-end client-side encryption

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published