Modern Cryptography 
for C++

Actively maintained fork of Crypto++ with modern algorithms, 
better organisation, and regular security updates.

Why cryptopp-modern?

Quick Example

#include <cryptopp/blake3.h>
#include <cryptopp/hex.h>
#include <iostream>

int main() {
    CryptoPP::BLAKE3 hash;
    std::string message = "Hello, cryptopp-modern!";
    std::string digest;

    CryptoPP::StringSource(message, true,
        new CryptoPP::HashFilter(hash,
            new CryptoPP::HexEncoder(
                new CryptoPP::StringSink(digest))));

    std::cout << "BLAKE3: " << digest << std::endl;
    return 0;
}

What’s New in 2025.12.0

  • Complete reorganisation - 204 source files organised into logical categories
  • Multi-platform CI/CD - Automated testing on all major platforms
  • Updated build systems - GNUmakefile, Visual Studio, and nmake all updated
  • Backward compatible - Drop-in replacement maintaining the same include structure

View Full Changelog →