Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rezameerr/ecc-framework

Elliptic Curve Cryptography (ECC) Framework, ECC, ECDH(E), ECDSA, EC ElGamal, ECIES, HMAC
https://github.com/rezameerr/ecc-framework

argon2 blake2 cryptocurrency cryptography digest digital-signature ecc ecdh ecdhe ecdsa ecies elgamal elliptic-curve-cryptography elliptic-curves hmac kdf key-agreement keypair-generator symmetric-encryption twofish

Last synced: about 2 months ago
JSON representation

Elliptic Curve Cryptography (ECC) Framework, ECC, ECDH(E), ECDSA, EC ElGamal, ECIES, HMAC

Awesome Lists containing this project

README

        

# ECC Framework
# Elliptic Curve Cryptography (ECC) Framework

Algorithms and Protocols Implemented in the Project (OOP C++ and C):

1- ECC (Elliptic Curve Math, ECC, Domain Parameters, Standard Curves, Key Pair Generation)

2- ECDH(E) (Elliptic Curve Diffie-Hellman [Ephemeral], Shared Secret Generation)

3- ECDSA (Elliptic Curve Digital Signature Algorithm with Arbitrary Hash Function. e.g. BLAKE2b)

4- EC ElGamal (EC ElGamal Encryption and EC ElGamal Signature)

5- ECIES (Elliptic Curve Integrated Encryption Scheme, Key Derivation Function [KDF] based on Argon2id, MAC, Twofish Symmetric Encryption)

6- HMAC (BLAKE2b, SHA-3 Family, SHA-2 Family)

-------------------------------

Libraries and Codes Used in the Project:

1- GMP

2- Givaro

3- OpenSSL (Only Hash Functions e.g. SHA) (BLAKE2 and Argon2 are computed independently)

4- Argon2

5- BLAKE2

6- Twofish Encryption (Neil Ferguson’s Twofish C library)

-------------------------------

Tested on Ubuntu 22.04.4 LTS

Compiled using GCC 11.4.0 x86_64-linux-gnu

-------------------------------

If you find any bugs or improvements, please let me know.

-------------------------------

Terms of Use & Disclaimer:

This project is developed for educational purposes. Use it at your own risk!

-------------------------------

With inspiration and help from projects:

https://github.com/poojagarg/ECC

and

https://github.com/rapoma/ecc-basis