Crypto++  8.8
Free C++ class library of cryptographic schemes
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345678910]
 CAbstractGroup< T >Abstract group
 CAbstractGroup< EC2NPoint >
 CAbstractGroup< ECPPoint >
 CAbstractGroup< GFP2Element >
 CAbstractGroup< Integer >
 CAdditiveCipherAbstractPolicyPolicy object for additive stream ciphers
 CAlgorithmParametersBaseBase class for AlgorithmParameters
 CAllocatorBase< T >Base class for all allocators used by SecBlock
 CASN1ObjectInterface for encoding and decoding ASN1 objects
 CAuthenticatedSymmetricCipherDocumentationProvides Encryption and Decryption typedefs used by derived classes to implement an authenticated encryption cipher
 CBASE
 CBaseAndExponent< T, E >Base and exponent
 CBLAKE2b_ParameterBlockBLAKE2b parameter block
 CBLAKE2b_StateBLAKE2b state information
 CBLAKE2s_ParameterBlockBLAKE2s parameter block
 CBLAKE2s_StateBLAKE2s state information
 CBlockCipherDocumentationProvides Encryption and Decryption typedefs used by derived classes to implement a block cipher
 CBlockGetAndPut< T, B, GA, PA >Access a block of memory
 CBlockPaddingSchemeDefPadding schemes used for block ciphers
 CByteArrayParameterUsed to pass byte array input as part of a NameValuePairs object
 CCASTCAST block cipher base
 CCFB_CipherAbstractPolicyPolicy object for feedback based stream ciphers
 CChannelSwitchTypedefs
 CClonableInterface for cloning objects
 CHuffmanEncoder::Code
 CCodeLessThan
 CConstByteArrayParameterUsed to pass byte array input as part of a NameValuePairs object
 Ccounted_ptr< T >Reference counted pointer
 CDataParametersInfo< BlockSize, KeyLength, DigestSize, SaltSize, Iterations >Algorithm information for password-based encryptors and decryptors
 CDecodingResultReturns a decoding results
 CRSAES< STANDARD >::Decryptor
 CRSAES< STANDARD >::Decryptor
 CRSAES< STANDARD >::Decryptor
 CDefaultAutoSeededRNGA typedef providing a default generator
 CDeterministicSignatureAlgorithmInterface for deterministic signers
 CDL_Base< KI >Discrete Log (DL) base interface
 CDL_Base< KEY_INTFACE >
 CDL_CryptoKeys_ElGamalElGamal encryption keys for safe interop
 CDL_CryptoKeys_GFPDiscrete Log (DL) encryption/decryption keys in GF(p) groups
 CDL_CryptoKeys_LUCLUC encryption keys
 CDL_ElgamalLikeSignatureAlgorithm< T >Interface for Elgamal-like signature algorithms
 CDL_ElgamalLikeSignatureAlgorithm< Integer >
 CDL_FixedBasePrecomputation< T >DL_FixedBasePrecomputation interface
 CDL_FixedBasePrecomputation< Integer >
 CDL_GroupPrecomputation< T >DL_GroupPrecomputation interface
 CDL_GroupPrecomputation< EC2N::Point >
 CDL_GroupPrecomputation< ECP::Point >
 CDL_GroupPrecomputation< Integer >
 CDL_Key< T >Base class for a Discrete Log (DL) key
 CDL_KeyAgreementAlgorithm< T >Interface for DL key agreement algorithms
 CDL_KeyAgreementAlgorithm< ELEMENT >
 CDL_KeyDerivationAlgorithm< T >Interface for key derivation algorithms used in DL cryptosystems
 CDL_KeyDerivationAlgorithm< Integer >
 CDL_Keys_DSADSA keys
 CDL_Keys_EC< EC >Elliptic Curve Discrete Log (DL) keys
 CDL_Keys_ECDSA< EC >Elliptic Curve DSA keys
 CDL_Keys_ECGDSA< EC >Elliptic Curve German DSA keys for ISO/IEC 15946
 CDL_SchemeOptionsBase< T1, T2 >Discrete Log (DL) scheme options
 CDL_SchemeOptionsBase< T1, T2::PublicKey::GroupParameters >
 CDL_SignatureKeys_GFPDiscrete Log (DL) signing/verification keys in GF(p) groups
 CDL_SignatureKeys_LUCLUC signature keys
 CDL_SymmetricEncryptionAlgorithmInterface for symmetric encryption algorithms used in DL cryptosystems
 CEC2NPointElliptical Curve Point over GF(2^n)
 CECDH< EC, COFACTOR_OPTION >Elliptic Curve Diffie-Hellman
 CECFHMQV< EC, COFACTOR_OPTION, HASH >Fully Hashed Elliptic Curve Menezes-Qu-Vanstone
 CECHMQV< EC, COFACTOR_OPTION, HASH >Hashed Elliptic Curve Menezes-Qu-Vanstone
 CECMQV< EC, COFACTOR_OPTION >Elliptic Curve Menezes-Qu-Vanstone
 CECPPointElliptical Curve Point over GF(p), where p is prime
 CEcPrecomputation< EC >Elliptic Curve precomputation
 Ced25519Ed25519 signature scheme
 CElGamalElGamal encryption scheme with non-standard padding
 CElGamalKeysElGamal key agreement and encryption schemes keys
 CEmptyAn Empty class
 CEMSA2HashId< H >EMSA2 hash identifier
 CEncodedPoint< Point >Abstract class for encoding and decoding ellicptic curve points
 CEncodedPoint< EC2NPoint >
 CEncodedPoint< ECPPoint >
 CEncryptionStandardBase class for public key encryption standard classes
 CRSAES< STANDARD >::Encryptor
 CRSAES< STANDARD >::Encryptor
 CRSAES< STANDARD >::Encryptor
 CEnumToType< ENUM_TYPE, VALUE >Converts an enumeration to a type suitable for use as a template parameter
 CESIGN_KeysESIGN keys
 Cstd::exceptionSTL class
 CFilterPutSpaceHelperCreate a working space in a BufferedTransformation
 CFixedBlockSize< N >Inherited by algorithms with fixed block size
 CFixedBlockSize< 12 >
 CFixedBlockSize< 16 >
 CFixedBlockSize< 2 *T::DIGESTSIZE >
 CFixedBlockSize< 32 >
 CFixedBlockSize< 4 >
 CFixedBlockSize< 64 >
 CFixedBlockSize< 8 >
 CFixedBlockSize< B::DIGESTSIZE >
 CFixedBlockSize< BS >
 CFixedBlockSize< L >
 CFixedKeyLength< N, IV_REQ, IV_L >Inherited by keyed algorithms with fixed key length
 CFixedKeyLength< 10 >
 CFixedKeyLength< 12 >
 CFixedKeyLength< 16 >
 CFixedKeyLength< 16, SimpleKeyingInterface::NOT_RESYNCHRONIZABLE >
 CFixedKeyLength< 16, SimpleKeyingInterface::UNIQUE_IV, 16 >
 CFixedKeyLength< 16, SimpleKeyingInterface::UNIQUE_IV, 8 >
 CFixedKeyLength< 20 >
 CFixedKeyLength< 20, SimpleKeyingInterface::INTERNALLY_GENERATED_IV, 4 >
 CFixedKeyLength< 24 >
 CFixedKeyLength< 32 >
 CFixedKeyLength< 32, SimpleKeyingInterface::UNIQUE_IV, 12 >
 CFixedKeyLength< 32, SimpleKeyingInterface::UNIQUE_IV, 16 >
 CFixedKeyLength< 32, SimpleKeyingInterface::UNIQUE_IV, 24 >
 CFixedKeyLength< 32, SimpleKeyingInterface::UNIQUE_IV, 32 >
 CFixedKeyLength< 64 >
 CFixedKeyLength< 8 >
 CFixedKeyLength< B::BLOCKSIZE >
 CFixedKeyLength< BS >
 CFixedRounds< R >Inherited by algorithms with fixed number of rounds
 CFixedRounds< 16 >
 CFixedRounds< 20 >
 CFixedRounds< 32 >
 CFixedRounds< 44 >
 CFixedRounds< 8 >
 CFreqLessThan
 CGetBlock< T, B, A >Access a block of memory
 CGF256GF(256) with polynomial basis
 CGF2_32GF(2^32) with polynomial basis
 CGFP2ElementElement of GF(p^2)
 CEMSA2HashIdLookup< BASE >::HashIdentifierLookup
 CPK_SignatureMessageEncodingMethod::HashIdentifierLookup
 CPKCS1v15_SignatureMessageEncodingMethod::HashIdentifierLookup
 CEMSA2HashIdLookup< BASE >::HashIdentifierLookup::HashIdentifierLookup2< H >
 CPK_SignatureMessageEncodingMethod::HashIdentifierLookup::HashIdentifierLookup2< H >
 CPKCS1v15_SignatureMessageEncodingMethod::HashIdentifierLookup::HashIdentifierLookup2< H >
 CHuffmanDecoderHuffman Decoder
 CHuffmanEncoderHuffman Encoder
 CHuffmanNode
 CInfo
 CInitializeIntegerPerforms static initialization of the Integer class
 CINTFACE
 CKalyna_BaseKalyna block cipher base class
 CKEYS
 CLazyPutterHelper class to finalize Puts on ByteQueue
 CLowFirstBitReader
 CLUCLUC cryptosystem
 CMaskGeneratingFunctionMask generation function interface
 Cmember_ptr< T >Pointer that overloads operator ->
 Cmember_ptr< AlgorithmParametersBase >
 Cmember_ptr< BlockCipher >
 Cmember_ptr< BlockTransformation >
 Cmember_ptr< BufferedTransformation >
 Cmember_ptr< FilterWithBufferedInput >
 Cmember_ptr< HuffmanDecoder >
 Cmember_ptr< MAC >
 Cmember_ptr< PK_MessageAccumulator >
 Cmember_ptr< RandomNumberGenerator >
 Cmember_ptr< std::ifstream >
 Cmember_ptr< std::ofstream >
 CMicrosoftCryptoProvider
 CNameValuePairsInterface for retrieving values given their names
 CNewObject< T >An object factory function
 CNotCopyableEnsures an object is not copyable
 CObjectFactory< AbstractClass >Object factory interface for registering objects
 CObjectFactoryRegistry< AbstractClass, instance >Object factory registry
 CObjectHolder< T >Uses encapsulation to hide an object in derived classes
 CObjectHolder< CIPHER >
 CObjectHolder< HASH_ALGORITHM >
 COIDObject Identifier
 CP1363_KDF2< H >P1363 key derivation function
 CPanama< B >
 CPanama< LittleEndian >
 CPK
 CPK_CryptoSystemInterface for public-key encryptors and decryptors
 CPK_EncryptionMessageEncodingMethodMessage encoding method for public key encryption
 CPK_SignatureMessageEncodingMethodInterface for message encoding method for public key signature schemes
 CPK_SignatureSchemeInterface for public-key signers and verifiers
 CPKCS_DigestDecoration< H >PKCS #1 decoration data structure
 CPOLICY
 CPOLICY_INTERFACE
 CPolynomialMod2Polynomial with Coefficients in GF(2)
 CPolynomialOver< T >Single-variable polynomials over arbitrary rings
 CPrimeAndGeneratorGenerator of prime numbers of special forms
 CPrimeSelectorApplication callback to signal suitability of a cabdidate prime
 CPSSR_MEM_BaseWithHashId< USE_HASH_ID >PSSR Message Encoding Method with Hash Identifier
 CPutBlock< T, B, A >Access a block of memory
 CRabinRabin keys
 CPolynomialOver< T >::RandomizationParameterSpecify the distribution for randomization functions
 CRandomizedTrapdoorFunctionInverseApplies the inverse of the trapdoor function, using random data if required
 CRawDESDES block cipher base class
 CAllocatorWithCleanup< T, T_Align16 >::rebind< V >Template class member Rebind
 CRegisterDefaultFactoryFor< AbstractClass, ConcreteClass, instance >Object factory registry helper
 CCFB_CipherConcretePolicy< WT, W, BASE >::RegisterOutput< B >Provides alternate access to a feedback register
 CRSARSA algorithm
 CRSA_ISORSA algorithm
 CRWRabin-Williams keys
 CSAFERSAFER block cipher
 CSafeShifter< overflow >Safely shift values when undefined behavior could occur
 CSafeShifter< false >Shifts a value in the absence of overflow
 CSafeShifter< true >Shifts a value in the presence of overflow
 CSameKeyLengthAs< T, IV_REQ, IV_L >Provides key lengths based on another class's key length
 CSEAL_Gamma
 CSecBlock< T, A >Secure memory block with allocator and cleanup
 CSecBlock< byte >
 CSecBlock< byte, AllocatorWithCleanup< byte, false > >
 CSecBlock< byte, AllocatorWithCleanup< byte, true > >
 CSecBlock< EncodedMatch >
 CSecBlock< HuffmanEncoder::Code >
 CSecBlock< RC5_WORD >
 CSecBlock< RC6_WORD >
 CSecBlock< T, FixedSizeAllocatorWithCleanup< T, S > >
 CSecBlock< T, FixedSizeAllocatorWithCleanup< T, S, AllocatorWithCleanup< T > > >
 CSecBlock< W, AllocatorWithCleanup< W, true > >
 CSecBlock< word >
 CSecBlock< word, AllocatorWithCleanup< word, false > >
 CSecBlock< word, AllocatorWithCleanup< word, true > >
 CSecBlock< word16 >
 CSecBlock< word32 >
 CSecBlock< word32, AllocatorWithCleanup< word32 > >
 CSecBlock< word32, AllocatorWithCleanup< word32, true > >
 CSecBlock< word64 >
 CSecBlock< word64, AllocatorWithCleanup< word64, true > >
 CSignalHandler< S, O >Signal handler for Linux and Unix compatibles
 CSignalHandler< SIGTRAP, false >
 CSignatureStandardBase class for public key signature standard classes
 CRSASS< STANDARD, H >::Signer
 CRSASS< STANDARD, H >::Signer
 CRSASS< STANDARD, H >::Signer
 CRSASS< STANDARD, H >::Signer
 CSIMON_Base< W >SIMON block cipher base class
 CSIMON_Base< word32 >
 CSIMON_Base< word64 >
 Csimple_ptr< T >Manages resources for a single object
 CSimpleKeyingInterfaceInterface for algorithms that take byte strings as keys
 CSingleton< T, F, instance >Restricts the instantiation of a class to one static object without locks
 CSPECK_Base< W >SPECK block cipher base class
 CSPECK_Base< word32 >
 CSPECK_Base< word64 >
 CSymmetricCipherDocumentationProvides Encryption and Decryption typedefs used by derived classes to implement a symmetric cipher
 CT
 CTF_Base< TFI, MEI >The base for trapdoor based cryptosystems
 CTF_CryptoSchemeOptions< T1, T2, T3 >Trapdoor Function (TF) scheme options
 CThreefish_Base< BS >Threefish block cipher base class
 CThreefish_Base< 128 >
 CThreefish_Base< 32 >
 CThreefish_Base< 64 >
 CTimerBaseBase class for timers
 CTrapdoorFunctionBoundsProvides range for plaintext and ciphertext lengths
 CVariableKeyLength< D, N, M, Q, IV_REQ, IV_L >Inherited by keyed algorithms with variable key length
 CVariableKeyLength< 16, 0, 2 *(INT_MAX/2), 2 >
 CVariableKeyLength< 16, 0, 255 >
 CVariableKeyLength< 16, 0, INT_MAX >
 CVariableKeyLength< 16, 1, 128 >
 CVariableKeyLength< 16, 1, 256 >
 CVariableKeyLength< 16, 1, 32, 1, SimpleKeyingInterface::UNIQUE_IV, 16 >
 CVariableKeyLength< 16, 16, 32 >
 CVariableKeyLength< 16, 16, 32, 16 >
 CVariableKeyLength< 16, 16, 32, 4 >
 CVariableKeyLength< 16, 16, 32, 8 >
 CVariableKeyLength< 16, 16, 56, 8 >
 CVariableKeyLength< 16, 16, 64 >
 CVariableKeyLength< 16, 4, 56 >
 CVariableKeyLength< 16, 5, 16 >
 CVariableKeyLength< 16, 8, 16, 8 >
 CVariableKeyLength< 32, 0, 32, 1, SimpleKeyingInterface::NOT_RESYNCHRONIZABLE >
 CVariableKeyLength< 32, 16, 32, 16, SimpleKeyingInterface::UNIQUE_IV, 8 >
 CVariableKeyLength< 32, 32, 64 >
 CVariableKeyLength< 64, 0, 64, 1, SimpleKeyingInterface::NOT_RESYNCHRONIZABLE >
 CVariableRounds< D, N, M >Inherited by algorithms with variable number of rounds
 CVariableRounds< 10, 1, 13 >
 CVariableRounds< 11 >
 CVariableRounds< 16 >
 CVariableRounds< 20 >
 CVariableRounds< 32 >
 CVariableRounds< 6, 2 >
 Cvector_member_ptrs< T >Manages resources for an array of objects
 CRSASS< STANDARD, H >::Verifier
 CRSASS< STANDARD, H >::Verifier
 CRSASS< STANDARD, H >::Verifier
 CRSASS< STANDARD, H >::Verifier
 CWaitableInterface for objects that can be waited on
 CWAKE_Base
 CWindowSlider