DO NOT USE A RANDOM GITHUB REPO FOR CRYPTOGRAPHY - this was made only for my own education and is probably not secure!
As cybersecurity gets more relevent every day and examples of secure Implementations are often hard to come by -
this Repo aims to get some Best-Practice-Implementations of common and secure Cryptography Algorithms in Java out there.
Only well-known / secure Libraries or the Standard-Libraries are used.
I aim to choose secure Paremters for the Cryptographic Functions and also explain them in the comments.
Currently the following Crypto-Algo-Best-Practices are finished and to my best knowledge secure to use:
- RSAAsymmetricEncryption.java using "RSA-4096 with OAEP-SHA512MGF1Padding"
- ChaCha20-Poly1305 Authenticated Encryption using 256bit Keys
- ECDSA Signatures using Standard Java11 Elliptic Curves - get supported curves by running CryptoHelper.ShowSupportedECCurves
- Argon2iHashSecure using Argon2i and explaining all parameters
- SHA512Hash
- SHA256Hash