Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aksh-bansal-dev/idea-ecc-elgamal
Secure client-server communication using Simplified International Data Encryption Algorithm(IDEA) and ElGamal with elliptic curves.
https://github.com/aksh-bansal-dev/idea-ecc-elgamal
Last synced: 25 days ago
JSON representation
Secure client-server communication using Simplified International Data Encryption Algorithm(IDEA) and ElGamal with elliptic curves.
- Host: GitHub
- URL: https://github.com/aksh-bansal-dev/idea-ecc-elgamal
- Owner: Aksh-Bansal-dev
- Created: 2022-10-05T13:42:19.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-10-16T06:05:54.000Z (over 2 years ago)
- Last Synced: 2024-11-20T11:05:24.881Z (3 months ago)
- Language: Python
- Homepage:
- Size: 552 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Simplified IDEA + ECC ElGamal
Secure client-server communication using Simplified International Data Encryption Algorithm(IDEA) and ElGamal with elliptic curves.## How to use?
- Run `python3 server.py` to start the server
- Run `python3 client.py` to start the client## Project structure
- `client.py` client program
- `server.py` server program
- `idea.py` consists of all code related to Simplified IDEA
- `ecc/` consists of all code related to ECC ElGamal code## How it works?
- The message is first encrypted using a secret key provided by client using Simplified IDEA (symmetric).
- The private and public keys are generated on the server using ECC Elgamal (asymmetric) and the public key is sent to the client after
request.
- The secret key is encrypted using the server's public key on client-side.
- The encrypted secret key and encrypted message is then sent server.
- The server uses it's private key to decrypt the encrypted secret key and then uses this secret key to decrypt the encrypted message.Simplified IDEA: [link](https://www.nku.edu/~christensen/simplified%20IDEA%20algorithm.pdf)
## Credits
- [ECC ElGamal](https://github.com/lc6chang/ecc-pycrypto)