An implementation of New algorhtms into CNG (Cryptography New Generation) API so all Windows apps can use them. Visual Studio 2022 Solution included.
CodeProject Article: https://www.codeproject.com/Articles/5351727/cngsha3-A-Cryptography-Next-Generation-Implementat
SHA-3 (using librhash https://github.com/rhash/RHash/tree/master/librhash) Supports SHA-224, SHA-256, SHA-384 and SHA-512
CRYSTALS-Kyber: https://github.com/itzmeanjan/kyber Supports 512,768,1024 bits
CRYSTALS-Dilithium: https://github.com/itzmeanjan/dilithium Supports 2,3,5
CRYSTALS-Sphincs: https://github.com/itzmeanjan/sphincs
The names are:
const wchar_t* ProviderB = L"Michael Chourdakis CNG Implementations";
#define SHA3_224_ALGORITHM L"SHA3-224"
#define SHA3_256_ALGORITHM L"SHA3-256"
#define SHA3_384_ALGORITHM L"SHA3-384"
#define SHA3_512_ALGORITHM L"SHA3-512"
#define KYBER_512_ALGORITHM L"KYBER-512"
#define KYBER_768_ALGORITHM L"KYBER-768"
#define KYBER_1024_ALGORITHM L"KYBER-1024"
#define DILITHIUM_2_ALGORITHM L"DILITHIUM-2"
#define DILITHIUM_3_ALGORITHM L"DILITHIUM-3"
#define DILITHIUM_5_ALGORITHM L"DILITHIUM-5"
#define SPHINCS_ALGORITHM L"SPHINCS"