Crypto++ - C++加密库


未知
跨平台
C/C++

软件简介

Crypto 是一个 C 的加密处理库,支持如下算法:

algorithm type name
authenticated encryption schemes [GCM](http://www.cryptolounge.org/wiki/GCM), [CCM](http://www.cryptolounge.org/wiki/CCM), [EAX](http://www.cryptolounge.org/wiki/EAX)
[high speed](http://my.oschina.net/u/182949/admin/benchmarks.html) stream ciphers [Panama](http://www.cryptolounge.org/wiki/PANAMA), [Sosemanuk](http://www.cryptolounge.org/wiki/Sosemanuk), [Salsa20](http://www.cryptolounge.org/wiki/Salsa20), [XSalsa20](http://www.cryptolounge.org/wiki/XSalsa20)
AES and AES candidates [AES](http://www.cryptolounge.org/wiki/AES) (Rijndael), [RC6](http://www.cryptolounge.org/wiki/RC6), [MARS](http://www.research.ibm.com/security/mars.html), [Twofish](http://www.cryptolounge.org/wiki/Twofish), [Serpent](http://www.cryptolounge.org/wiki/Serpent), [CAST-256](http://www.cryptolounge.org/wiki/CAST-256)
other [block ciphers](http://en.wikipedia.org/wiki/Block_cipher) [IDEA](http://www.cryptolounge.org/wiki/IDEA), [Triple- DES](http://csrc.nist.gov/cryptval/des.htm) (DES-EDE2 and DES-EDE3), [Camellia](http://www.cryptolounge.org/wiki/Camellia), [SEED](http://www.cryptolounge.org/wiki/SEED), RC5, Blowfish, TEA, XTEA, Skipjack, SHACAL-2
[block cipher modes of operation](http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation) ECB, CBC, CBC ciphertext stealing (CTS), CFB, OFB, counter mode (CTR)
message authentication codes [VMAC](http://www.cryptolounge.org/wiki/VMAC), [HMAC](http://www.cryptolounge.org/wiki/HMAC), [GMAC (GCM)](http://www.cryptolounge.org/wiki/GCM), [CMAC](http://www.cryptolounge.org/wiki/CMAC), CBC-MAC, DMAC, Two-Track-MAC
hash functions [SHA-1](http://www.cryptolounge.org/wiki/SHA-1), [SHA-2](http://www.cryptolounge.org/wiki/FIPS_180-2) (SHA-224, SHA-256, SHA-384, and SHA-512), [Tiger](http://www.cryptolounge.org/wiki/Tiger), [WHIRLPOOL](http://www.cryptolounge.org/wiki/WHIRLPOOL), RIPEMD-128, RIPEMD-256, RIPEMD-160, RIPEMD-320
[public-key cryptography](http://en.wikipedia.org/wiki/Public- key_cryptography) [RSA, DSA](http://www.nist.gov/dss), ElGamal, Nyberg-Rueppel (NR), Rabin- Williams (RW), LUC, LUCELG, DLIES (variants of DHAES), ESIGN
padding schemes for public-key systems [PKCS#1](http://www.rsasecurity.com/rsalabs/pkcs/pkcs-1/) v2.0, OAEP, PSS, PSSR, [IEEE P1363](http://grouper.ieee.org/groups/1363/) EMSA2 and EMSA5
key agreement schemes Diffie-Hellman (DH), Unified Diffie-Hellman (DH2), Menezes-Qu-Vanstone (MQV), LUCDIF, XTR-DH
[elliptic curve cryptography](http://en.wikipedia.org/wiki/Elliptic_curve_cryptography) ECDSA, ECNR, ECIES, ECDH, ECMQV
insecure or obsolescent algorithms retained for backwards compatibility and historical value [MD2](http://www.cryptolounge.org/wiki/MD2), [MD4](http://www.cryptolounge.org/wiki/MD4), [MD5](http://www.cryptolounge.org/wiki/MD5), [Panama Hash](http://www.cryptolounge.org/wiki/PANAMA_%28Hash_Function%29), [DES](http://www.cryptolounge.org/wiki/DES), [ARC4](http://www.cryptolounge.org/wiki/RC4), [SEAL 3.0](http://www.cryptolounge.org/wiki/SEAL_3.0), WAKE-OFB, DESX (DES-XEX3), RC2, SAFER, 3-WAY, GOST, SHARK, CAST-128, Square