Crypto++ 8.5 Free C++ class library of cryptographic schemes

File List
Here is a list of all documented files with brief descriptions:

3way.cpp |
3way.h | Classes for the 3-Way block cipher
adler32.cpp |
adler32.h | Class file for ADLER-32 checksum calculations
adv_simd.h | Template for AdvancedProcessBlocks and SIMD processing
aes.h | Class file for the AES cipher (Rijndael)
aes_armv4.h |
algebra.cpp |
algebra.h | Classes for performing mathematics over different fields
algparam.cpp |
algparam.h | Classes for working with NameValuePairs
allocate.cpp |
allocate.h | Functions for allocating aligned buffers
arc4.cpp |
arc4.h | Classes for ARC4 cipher
argnames.h | Standard names for retrieving values by name when working with `NameValuePairs`
aria.cpp |
aria.h | Classes for the ARIA block cipher
aria_simd.cpp |
ariatab.cpp |
arm_simd.h | Support functions for ARM and vector operations
asn.cpp |
asn.h | Classes and functions for working with ANS.1 objects
authenc.cpp |
authenc.h | Classes for authenticated encryption modes of operation
base32.cpp |
base32.h | Classes for Base32Encoder, Base32Decoder, Base32HexEncoder and Base32HexDecoder
base64.cpp |
base64.h | Classes for the Base64Encoder, Base64Decoder, Base64URLEncoder and Base64URLDecoder
basecode.cpp |
basecode.h | Base classes for working with encoders and decoders
bench.h |
bench1.cpp |
bench2.cpp |
bench3.cpp |
bfinit.cpp |
blake2.cpp |
blake2.h | Classes for BLAKE2b and BLAKE2s message digests and keyed message digests
blake2b_simd.cpp |
blake2s_simd.cpp |
blowfish.cpp |
blowfish.h | Classes for the Blowfish block cipher
blumshub.cpp |
blumshub.h | Classes for Blum Blum Shub generator
camellia.cpp |
camellia.h | Classes for the Camellia block cipher
cast.cpp |
cast.h | Classes for the CAST-128 and CAST-256 block ciphers
casts.cpp |
cbcmac.cpp |
cbcmac.h | Classes for CBC MAC
ccm.cpp |
ccm.h | CCM block cipher mode of operation
chacha.cpp |
chacha.h | Classes for ChaCha8, ChaCha12 and ChaCha20 stream ciphers
chacha_avx.cpp |
chacha_simd.cpp |
chachapoly.cpp |
chachapoly.h | IETF ChaCha20/Poly1305 AEAD scheme
cham.cpp |
cham.h | Classes for the CHAM block cipher
cham_simd.cpp |
channels.cpp |
channels.h | Classes for multiple named channels
cmac.cpp |
cmac.h | Classes for CMAC message authentication code
config.h | Library configuration file
config_align.h | Library configuration file
config_asm.h | Library configuration file
config_cpu.h | Library configuration file
config_cxx.h | Library configuration file
config_dll.h | Library configuration file
config_int.h | Library configuration file
config_misc.h | Library configuration file
config_ns.h | Library configuration file
config_os.h | Library configuration file
config_ver.h | Library configuration file
cpu.cpp |
cpu.h | Functions for CPU features and intrinsics
crc.cpp |
crc.h | Classes for CRC-32 and CRC-32C checksum algorithm
crc_simd.cpp |
cryptlib.cpp |
cryptlib.h | Abstract base classes that provide a uniform interface to this library
darn.cpp |
darn.h | Classes for DARN RNG
default.cpp |
default.h | Classes for DefaultEncryptor, DefaultDecryptor, DefaultEncryptorWithMAC and DefaultDecryptorWithMAC
des.cpp |
des.h | Classes for DES, 2-key Triple-DES, 3-key Triple-DES and DESX
dessp.cpp |
dh.cpp |
dh.h | Classes for Diffie-Hellman key exchange
dh2.cpp |
dh2.h | Classes for Unified Diffie-Hellman key exchange
dll.cpp |
dll.h | Functions and definitions required for building the FIPS-140 DLL on Windows
dmac.h | Classes for DMAC message authentication code
donna.h |
donna_32.cpp |
donna_32.h |
donna_64.cpp |
donna_64.h |
donna_sse.cpp |
donna_sse.h |
drbg.h | Classes for NIST DRBGs from SP 800-90A
dsa.cpp |
dsa.h | Classes for the DSA signature algorithm
eax.cpp |
eax.h | EAX block cipher mode of operation
ec2n.cpp |
ec2n.h | Classes for Elliptic Curves over binary fields
eccrypto.cpp |
eccrypto.h | Classes and functions for Elliptic Curves over prime and binary fields
ecp.cpp |
ecp.h | Classes for Elliptic Curves over prime fields
ecpoint.h | Classes for Elliptic Curve points
elgamal.cpp |
elgamal.h | Classes and functions for ElGamal key agreement and encryption schemes
emsa2.cpp |
emsa2.h | Classes and functions for various padding schemes used in public key algorithms
eprecomp.cpp |
eprecomp.h | Classes for precomputation in a group
esign.cpp |
esign.h | Classes providing ESIGN signature schemes as defined in IEEE P1363a
factory.h | Classes and functions for registering and locating library objects
fhmqv.h | Classes for Fully Hashed Menezes-Qu-Vanstone key agreement in GF(p)
files.cpp |
files.h | Classes providing file-based library services
filters.cpp |
filters.h | Implementation of BufferedTransformation's attachment interface
fips140.cpp |
fips140.h | Classes and functions for the FIPS 140-2 validated library
fipsalgt.cpp |
fltrimpl.h |
gcm.cpp |
gcm.h | GCM block cipher mode of operation
gcm_simd.cpp |
gf256.cpp |
gf256.h | Classes and functions for schemes over GF(256)
gf2_32.cpp |
gf2_32.h | Classes and functions for schemes over GF(2^32)
gf2n.cpp |
gf2n.h | Classes and functions for schemes over GF(2^n)
gf2n_simd.cpp |
gfpcrypt.cpp |
gfpcrypt.h | Classes and functions for schemes based on Discrete Logs (DL) over GF(p)
GNUmakefile |
GNUmakefile-cross |
gost.cpp |
gost.h | Classes for the GIST block cipher
gzip.cpp |
gzip.h | GZIP compression and decompression (RFC 1952)
hashfwd.h | Forward declarations for hash functions used in signature encoding methods
hc128.cpp |
hc128.h | Classes for HC-128 stream cipher
hc256.cpp |
hc256.h | Classes for HC-256 stream cipher
hex.cpp |
hex.h | Classes for HexEncoder and HexDecoder
hight.cpp |
hight.h | Classes for the HIGHT block cipher
hkdf.h | Classes for HKDF from RFC 5869
hmac.cpp |
hmac.h | Classes for HMAC message authentication codes
hmqv.h | Classes for Hashed Menezes-Qu-Vanstone key agreement in GF(p)
hrtimer.cpp |
hrtimer.h | Classes for timers
ida.cpp |
ida.h | Classes for Rabin's Information Dispersal and Shamir's Secret Sharing algorithms
idea.cpp |
idea.h | Classes for the IDEA block cipher
integer.cpp |
integer.h | Multiple precision integer with arithmetic operations
iterhash.cpp |
iterhash.h | Base classes for iterated hashes
kalyna.cpp |
kalyna.h | Classes for the Kalyna block cipher
kalynatab.cpp |
keccak.cpp |
keccak.h | Classes for Keccak message digests
keccak_core.cpp |
keccak_simd.cpp |
lea.cpp |
lea.h | Classes for the LEA block cipher
lea_simd.cpp |
lubyrack.h | Classes for the Luby-Rackoff block cipher
luc.cpp |
luc.h | Classes for the LUC cryptosystem
mars.cpp |
mars.h | Classes for the MARS block cipher (IBM AES submission)
marss.cpp |
md2.cpp |
md2.h | Classes for the MD2 message digest
md4.cpp |
md4.h |
md5.cpp |
md5.h |
mdc.h | Classes for the MDC message digest
mersenne.h | Class file for Mersenne Twister
misc.cpp |
misc.h | Utility functions for the Crypto++ library
modarith.h | Class file for performing modular arithmetic
modes.cpp |
modes.h | Classes for block cipher modes of operation
modexppc.h |
mqueue.cpp |
mqueue.h |
mqv.cpp |
mqv.h | Classes for Menezes–Qu–Vanstone (MQV) key agreement
naclite.h | Crypto++ interface to TweetNaCl library (20140917)
nbtheory.cpp |
nbtheory.h | Classes and functions for number theoretic operations
neon_simd.cpp |
nr.h | Classes for Nyberg-Rueppel signature scheme
oaep.cpp |
oaep.h | Classes for optimal asymmetric encryption padding
oids.h | ASN.1 object identifiers for algorthms and schemes
osrng.cpp |
osrng.h | Classes for access to the operating system's random number generators
ossig.h | Utility class for trapping OS signals
padlkrng.cpp |
padlkrng.h | Classes for VIA Padlock RNG
panama.cpp |
panama.h | Classes for Panama hash and stream cipher
pch.cpp |
pch.h | Precompiled header file
pkcspad.cpp |
pkcspad.h | Classes for PKCS padding schemes
poly1305.cpp |
poly1305.h | Classes for Poly1305 message authentication code
polynomi.cpp |
polynomi.h | Classes for polynomial basis and operations
ppc_power7.cpp |
ppc_power8.cpp |
ppc_power9.cpp |
ppc_simd.cpp |
ppc_simd.h | Support functions for PowerPC and vector operations
pssr.cpp |
pssr.h | Classes for probabilistic signature schemes
pubkey.cpp |
pubkey.h | This file contains helper classes/functions for implementing public key algorithms
pwdbased.h | Password based key derivation functions
queue.cpp |
queue.h | Classes for an unlimited queue to store bytes
rabbit.cpp |
rabbit.h | Classes for Rabbit stream cipher
rabin.cpp |
rabin.h | Classes for Rabin encryption and signature schemes
randpool.cpp |
randpool.h | Class file for Randomness Pool
rc2.cpp |
rc2.h | Classes for the RC2 block cipher
rc5.cpp |
rc5.h | Classes for the RC5 block cipher
rc6.cpp |
rc6.h | Classes for the RC6 block cipher
rdrand.asm |
rdrand.cpp |
rdrand.h | Classes for RDRAND and RDSEED
rdtables.cpp |
resource.h |
rijndael.cpp |
rijndael.h | Classes for Rijndael encryption algorithm
rijndael_simd.cpp |
ripemd.cpp |
ripemd.h | Classes for RIPEMD message digest
rng.cpp |
rng.h | Miscellaneous classes for RNGs
rsa.cpp |
rsa.h | Classes for the RSA cryptosystem
rw.cpp |
rw.h | Classes for Rabin-Williams signature scheme
safer.cpp |
safer.h | Classes for the SAFER and SAFER-K block ciphers
salsa.cpp |
salsa.h | Classes for Salsa and Salsa20 stream ciphers
scrypt.cpp |
scrypt.h | Classes for Scrypt from RFC 7914
seal.cpp |
seal.h | Classes for SEAL stream cipher
secblock.h | Classes and functions for secure memory allocations
secblockfwd.h | Forward declarations for SecBlock
seckey.h | Classes and functions for implementing secret key algorithms
seed.cpp |
seed.h | Classes for the SEED block cipher
serpent.cpp |
serpent.h | Classes for the Serpent block cipher
serpentp.h |
sha.cpp |
sha.h | Classes for SHA-1 and SHA-2 family of message digests
sha1_armv4.h |
sha256_armv4.h |
sha3.cpp |
sha3.h | Classes for SHA3 message digests
sha512_armv4.h |
sha_simd.cpp |
shacal2.cpp |
shacal2.h | Classes for the SHACAL-2 block cipher
shacal2_simd.cpp |
shake.cpp |
shake.h | Classes for SHAKE message digests
shark.cpp |
shark.h | Classes for the SHARK block cipher
sharkbox.cpp |
simeck.cpp |
simeck.h | Classes for the SIMECK block cipher
simon.cpp |
simon.h | Classes for the Simon block cipher
simon128_simd.cpp |
simple.cpp |
simple.h | Classes providing basic library services
siphash.h | Classes for SipHash message authentication code
skipjack.cpp |
skipjack.h | Classes for the SKIPJACK block cipher
sm3.cpp |
sm3.h | Classes for the SM3 hash function
sm4.cpp |
sm4.h | Classes for the SM4 block cipher
sm4_simd.cpp |
smartptr.h | Classes for automatic resource management
sosemanuk.cpp |
sosemanuk.h | Classes for Sosemanuk stream cipher
speck.cpp |
speck.h | Classes for the Speck block cipher
speck128_simd.cpp |
square.cpp |
square.h | Classes for the Square block cipher
squaretb.cpp |
sse_simd.cpp |
stdcpp.h | Common C++ header files
strciphr.cpp |
strciphr.h | Classes for implementing stream ciphers
tea.cpp |
tea.h | Classes for the TEA, BTEA and XTEA block ciphers
tftables.cpp |
threefish.cpp |
threefish.h | Classes for the Threefish block cipher
tiger.cpp |
tiger.h | Classes for the Tiger message digest
tigertab.cpp |
trap.h | Debugging and diagnostic assertions
trunhash.h | Classes for truncated hashes
ttmac.cpp |
ttmac.h | Classes for the TTMAC message authentication code
tweetnacl.cpp |
tweetnacl.h |
twofish.cpp |
twofish.h | Classes for the Twofish block cipher
vmac.cpp |
vmac.h | Classes for the VMAC message authentication code
wake.cpp |
wake.h | Classes for WAKE stream cipher
whrlpool.cpp |
whrlpool.h | Classes for the Whirlpool message digest
words.h | Support functions for word operations
xed25519.cpp |
xed25519.h | Classes for x25519 and ed25519 operations
xtr.cpp |
xtr.h | The XTR public key system
xtrcrypt.cpp |
xtrcrypt.h | XTR public key system
xts.cpp |
xts.h | Classes for XTS block cipher mode of operation
zdeflate.cpp |
zdeflate.h | DEFLATE compression and decompression (RFC 1951)
zinflate.cpp |
zinflate.h | DEFLATE compression and decompression (RFC 1951)
zlib.cpp |
zlib.h | ZLIB compression and decompression (RFC 1950)