The aim of this project is to extend the Microsoft .NET framework by implementing the ElGamal encryption algorithm.
By necessity the C# language was used for the implementation details of the algorithm and the Windows Forms (WinForms) library for the GUI side of the application.
The implementation of this algorithm has been adapted from the eTutorials chapter 15.3 Extending the .NET Framework.
In cryptography, the ElGamal encryption system is an asymmetric key encryption algorithm for public-key cryptography.
A digital signature is a mathematical technique used to validate the authenticity and integrity of a message, software or digital document.
ElGamal encryption is used in the free GNU Privacy Guard software, recent versions of Pretty Good Privacy (PGP), and other cryptosystems.
To run this you can choose one of two paths:
-
Releases
- Go to https://github.com/lendritbrahimi/elgamalsignature/releases
- download the latest relase assets
- execute the .exe file, or
-
Visual Studio
- Download Visual Studio from https://visualstudio.microsoft.com/downloads/
- Download the source code
- Open the .sln in Visual Studio
- Build and Run project
You can use this project to make a digital signature for a message by using the ElGamal Encryption method.
It supports two primary modes of execution:
This mode has only input field which is the message awaiting to be signed, the keys will be generated randomly and a digital signature will be shown.
This mode has multiple input fields: one for the message, three for the public keys and one for the private key. A digital signature will be shown.
This project is closed, and will not be updated further.
The collaborators and creators of this project in alphabetical order are:
@kastriotsalihu1 - Kastriot Salihu
@LendritIbrahimi - Lendrit Ibrahimi
This project is MIT licensed.