Crypto++

Crypto++（也稱作CryptoPP、libcrypto++或libcryptopp）是一套自由开源的C++密碼學函式庫。在學術界、學生專案、開源專案，甚至是商業用途，Crypto++都被廣泛地使用。

 演算法 
除了完整支持常見的演算法，Crypto++也包含了較冷門、較少被使用的演算法，例如Camellia是ISO//IETF核可的區塊加密法，與AES 大致相同；而是ISO//IETF 核可的 密碼雜湊函式，與SHA大致相同。這兩套冷門的演算法都包含在Crypto++之中。

另外，Crypto++函式庫有時也會提出很先進的演算法、實作供密碼學界研究。例如以雜湊為基礎的通用訊息認證碼，在將其提交給IETF的過程中，就被Crypto++函式庫支持了。另外還有曲線，於2009年被加入RFC 5639草稿中，在同月被加入Crypto++ 5.6.0中。

+ Crypto++ 演算法及實作理論或操作  演算法及實作  LCG, KDF2, Blum Blum Shub, ANSI X9.17, 梅森旋轉算法, RDRAND, RDSEED 串流加密法 ChaCha8/12/20, ChaCha20 (IETF version), , , , Salsa20, , XSalsa20 AES 及候選標準 Rijndael (高级加密标准评选过程), RC6, , Twofish, Serpent,  其他區塊加密法 , Blowfish, Camellia, CHAM, HIGHT, IDEA, Kalyna (128/256/512), LEA, RC5, 3DES (2- and 3-key), SEED, SHACAL-2, Simon (64/128), Speck (64/128), SIMECK, Skipjack, SM4, TEA, Threefish (256/512/1024), XTEA 區塊加密法工作模式 ECB, CBC, CTS, CFB, OFB, CTR, XTS 認證加密模式 , , , ChaCha20Poly1305 區塊加密法填充模式 PKCS#5, PKCS#7, Zeros, One and zeros, W3C Padding 訊息識別碼 VMAC, HMAC, CMAC, CBC-MAC, DMAC, Two-Track-MAC 密碼雜湊函式 BLAKE2 (BLAKE2b and BLAKE2s), Keccak, SHA-1, SHA-2 (SHA-224, SHA-256, SHA-384, and SHA-512), SHA3, , , RIPEMD (RIPEMD-128, RIPEMD-160, RIPEMD-256, and RIPEMD-320) 金鑰衍生函式 PBKDF1 and PBKDF2 from PKCS #5, PBKDF from PKCS #12 appendix B, Krawczyk and Eronen's HKDF 公開金鑰加密 RSA, DSA, ElGamal, Nyberg-Rueppel (NR), Rabin-Williams (RW), LUC, LUCELG, DLIES (DHAES 的變體), ESIGN, curve25519 公鑰密碼學填充模式 PKCS#1 v2.0, OAEP, PSS, PSSR, IEEE P1363 EMSA2 and EMSA5  Diffie–Hellman (DH), Unified Diffie–Hellman (DH2), Menezes–Qu–Vanstone (MQV), Hashed MQV (HMQV), Fully Hashed MQV (FHMQV), LUCDIF, XTR-DH, x25519 橢圓曲線密碼學 ECDSA, ECNR, ECIES, ECDH, ECMQV, Ed25519  ,  (IDA)

 參考 

Category:加密软件
Category:C++函式庫
Category:密码算法
Category:自由發展元件與函式庫
Category:带有源代码的公共领域软件
Category:1995年软件