Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cpscript/ecdh-chat-application
A extremely simple chat client made in HASKELL that uses the "Elliptic Curve Diffie-Hellman (ECDH) key exchange protocol" to establish a secure connection between two users. This is a one file script that includes a server and a user client and allows multiple users to message secrets using SHA-256 and AES-256 for encription and decryption.
https://github.com/cpscript/ecdh-chat-application
chat-application chat-client ecdh encrpytion haskell http-encrypt
Last synced: about 2 months ago
JSON representation
A extremely simple chat client made in HASKELL that uses the "Elliptic Curve Diffie-Hellman (ECDH) key exchange protocol" to establish a secure connection between two users. This is a one file script that includes a server and a user client and allows multiple users to message secrets using SHA-256 and AES-256 for encription and decryption.
- Host: GitHub
- URL: https://github.com/cpscript/ecdh-chat-application
- Owner: CPScript
- Created: 2024-10-09T15:38:03.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-11-04T04:00:27.000Z (about 2 months ago)
- Last Synced: 2024-11-04T04:26:17.056Z (about 2 months ago)
- Topics: chat-application, chat-client, ecdh, encrpytion, haskell, http-encrypt
- Language: Haskell
- Homepage:
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
## Features
* Secure key exchange using ECDH protocol
* Symmetric encryption using AES-256
* Simple chat interface for sending and receiving messages## Requirements
* Haskell compiler (e.g. GHC)
* `crypto` and `network` libraries## Usage
1. Compile the code using `ghc ECDHChat.hs`
2. Run the server using `./ECDHChat server`
3. Run the client using `./ECDHChat client`
4. Follow the prompts to enter your username and the server's username
5. Send and receive messages securely using the chat interface## Warnings:
> * This is a basic implementation and does not include any error handling or security measures beyond the ECDH key exchange protocol... Sorry <3
> * The application uses a simple symmetric encryption scheme and does not provide any authentication or authorization mechanisms.
> * This code is for educational purposes only and should not be used in production without further development and testing.## extra
* Made by - CPScript
* This code is released under the MIT License. See LICENSE for details.