Crypto++
# Crypto++

Crypto++ (nota anche come CryptoPP, libcrypto++ e libcryptopp) è una libreria C++ che offre algoritmi crittografici e protocolli, originariamente sviluppata da Wei Dai. Crypto++ ha trovato largo uso nel mondo accademico, ma anche in progetti open source e commerciali. La prima versione della libreria risale al 1995: supporta completamente sia architetture a 32 bit sia a 64 bit ed è compatibile con la maggior parte dei sistemi operativi e delle piattaforme, come Android, Apple, BSD, Cygwin, Linux, MinGW, Solaris, Windows, Windows Phone e Windows RT. Il progetto può essere compilato con le librerie degli standard C++03, C++11 e C++17.

## Caratteristiche

Crypto++ fornisce implementazioni complete degli algoritmi crittografici più comuni, ma anche di schemi meno usati come il cifrario a blocchi Camellia e l'algoritmo di hashing Whirlpool. In alcuni casi la libreria Crypto++ mette a disposizione della comunità implementazioni degli algoritmi proposti non ancora standardizzati.

Tra gli algoritmi crittografici supportati vi sono:

### Cifrari

    Blowfish, Twofish, Camellia, CAST, DES, Triple DES, Serpent RC2, RC4, RC5, RC6, IDEA, AES

### Funzioni hash crittografiche

    MD5, MD2, SHA, MDC-2, Whirlpool

### Crittografia a chiave pubblica

    RSA, DSA, Scambio di chiavi Diffie-Hellman, ElGamal

### Funzioni di Autenticazione dei messaggi

    VMAC, HMAC, MD2, MD4, MD5, MDC2, RIPEMD, SHA,

## Cronologia dei rilasci principali

La versione 1.0 di Crypto++ è stata rilasciata nel giugno del 1995. Da allora sono state rilasciate diverse versioni: in particolare, la versione 5.0 del marzo 2009 ha portato a una revisione architetturale.

* Crypto 5.6.0, rilasciata il 15 marzo 2009
* Crypto 5.6.1, rilasciata il 9 agosto 2010
* Crypto 5.6.2, rilasciata il 20 febbraio 2013
* Crypto 5.6.3, rilasciata il 20 novembre 2015
* Crypto 5.6.4, rilasciata il 11 settembre 2016
* Crypto 5.6.5, rilasciata il 11 ottobre 2016
* Crypto 6.0.0, rilasciata il 22 gennaio 2018
* Crypto 6.1.0, rilasciata il 22 febbraio 2018
* Crypto 7.0.0, rilasciata l'8 aprile 2018
* Crypto 8.0.0, rilasciata il 28 dicembre 2018
