Crypto++  5.6.4
Free C++ class library of cryptographic schemes
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345678910111213]
 ►CAbstractGroup< T >Abstract group
 ►CAbstractGroup< EC2NPoint >
 ►CAbstractGroup< ECPPoint >
 ►CAbstractGroup< EuclideanDomainOf< PolynomialMod2 > ::Element >
 ►CAbstractGroup< GFP2Element >
 ►CAbstractGroup< Integer >
 ►CAbstractGroup< PolynomialMod2 >
 ►CAbstractGroup< PolynomialOver< T > >
 ►CAdditiveCipherAbstractPolicyPolicy object for additive stream ciphers
 ►CAlgorithmParametersBaseBase class for AlgorithmParameters
 ►CAllocatorBase< T >Base class for all allocators used by SecBlock
 ►CAllocatorBase< byte >
 ►CAllocatorBase< EncodedMatch >
 ►CAllocatorBase< HuffmanEncoder::Code >
 ►CAllocatorBase< ParameterBlock >
 ►CAllocatorBase< RC5_WORD >
 ►CAllocatorBase< RC6_WORD >
 ►CAllocatorBase< State >
 ►CAllocatorBase< T_HashWordType >
 ►CAllocatorBase< unsigned int >
 ►CAllocatorBase< word >
 ►CAllocatorBase< Word >
 ►CAllocatorBase< word16 >
 ►CAllocatorBase< word32 >
 ►CAllocatorBase< word64 >
 ►CARC4_Base
 ►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
 CBLAKE2_ParameterBlock< T_64bit >BLAKE2 parameter block
 CBLAKE2_ParameterBlock< false >BLAKE2s parameter block specialization
 CBLAKE2_ParameterBlock< true >BLAKE2b parameter block specialization
 CBLAKE2_State< W, T_64bit >BLAKE2 state information
 CBLAKE2_TestTuples
 ►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
 CByteQueueNode
 ►CCallStack
 CCASTCAST block cipher base
 ►CCFB_CipherAbstractPolicyPolicy object for feeback based stream ciphers
 ►CChannelSwitchTypedefs
 ►CCipherFactory
 ►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
 ►CDec
 CDecodingResultReturns a decoding results
 ►CDecryptor
 CDefaultAutoSeededRNGA typedef providing a default generator
 CDigestSizeDoubleWorkaround< T >
 ►CDL_Base< KI >Discrete Log (DL) base interface
 ►CDL_Base< DL_PrivateKey< SCHEME_OPTIONS::Element > >
 ►CDL_Base< DL_PrivateKey< T > >
 ►CDL_Base< DL_PublicKey< SCHEME_OPTIONS::Element > >
 ►CDL_Base< DL_PublicKey< T > >
 ►CDL_Base< KEY_INTERFACE >
 ►CDL_CryptoKeys_GFPDL encryption/decryption keys (in GF(p) groups)
 ►CDL_CryptoKeys_LUC_
 ►CDL_ElgamalLikeSignatureAlgorithm< T >Interface for Elgamal-like signature algorithms
 ►CDL_ElgamalLikeSignatureAlgorithm< EC::Point >
 ►CDL_ElgamalLikeSignatureAlgorithm< Integer >
 ►CDL_FixedBasePrecomputation< T >
 ►CDL_FixedBasePrecomputation< Integer >
 ►CDL_FixedBasePrecomputation< typename EcPrecomputation< EC > ::Element >
 ►CDL_FixedBasePrecomputation< typename ModExpPrecomputation ::Element >
 CDL_GroupPrecomputation< T >
 ►CDL_GroupPrecomputation< EC2N::Point >
 ►CDL_GroupPrecomputation< ECP::Point >
 ►CDL_GroupPrecomputation< Integer >
 ►CDL_Key< T >Base class for a Discrete Log (DL) key
 ►CDL_Key< DL_GroupParameters_EC< EC > ::Element >
 ►CDL_Key< GP::Element >
 CDL_KeyAgreementAlgorithm< T >Interface for DL key agreement algorithms
 ►CDL_KeyAgreementAlgorithm< ELEMENT >
 ►CDL_KeyAgreementAlgorithm< Integer >
 ►CDL_KeyDerivationAlgorithm< T >Interface for key derivation algorithms used in DL cryptosystems
 ►CDL_KeyDerivationAlgorithm< Integer >
 ►CDL_Keys_DSADSA keys
 ►CDL_Keys_EC< EC >EC keys
 ►CDL_Keys_ECDSA< EC >ECDSA keys
 CDL_SchemeOptionsBase< T1, T2 >Discrete Log (DL) scheme options
 ►CDL_SchemeOptionsBase< T1, T2::PublicKey::GroupParameters >
 ►CDL_SignatureKeys_GFPDL signing/verification keys (in GF(p) groups)
 ►CDL_SignatureKeys_LUC_
 ►CDL_SymmetricEncryptionAlgorithmInterface for symmetric encryption algorithms used in DL cryptosystems
 CDWord
 CEC2NPointElliptic Curve Point
 CECDH< EC, COFACTOR_OPTION >Elliptic Curve Diffie-Hellman, AKA ECDH
 CECFHMQV< EC, COFACTOR_OPTION, HASH >Fully Hashed Menezes-Qu-Vanstone in ECP or EC2N
 CECHMQV< EC, COFACTOR_OPTION, HASH >Hashed Menezes-Qu-Vanstone in ECP or EC2N
 CECMQV< EC, COFACTOR_OPTION >Elliptic Curve Menezes-Qu-Vanstone, AKA ECMQV
 CECPPointElliptical Curve Point
 CEcPrecomputation< T >
 CEcPrecomputation< EC >
 CEcRecommendedParameters< T >
 CEcRecommendedParameters< EC2N >
 CEcRecommendedParameters< ECP >
 CElGamalElGamal encryption scheme with non-standard padding
 CElGamalKeys
 ►CEmptyAn Empty class
 CEMSA2HashId< H >
 ►CEnc
 ►CEncryptionStandardBase class for public key encryption standard classes
 ►CEncryptor
 CEnumToType< ENUM_TYPE, VALUE >Converts a typename to an enumerated value
 ►CESIGN_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< 32 >
 ►CFixedBlockSize< 8 >
 ►CFixedBlockSize< DigestSizeDoubleWorkaround< T >::RESULT >
 ►CFixedBlockSize< T::DIGESTSIZE >
 CFixedKeyLength< N, IV_REQ, IV_L >Inherited by keyed algorithms with fixed key length
 ►CFixedKeyLength< 10 >
 ►CFixedKeyLength< 12 >
 ►CFixedKeyLength< 16 >
 ►CFixedKeyLength< 20 >
 ►CFixedKeyLength< 20, SimpleKeyingInterface::INTERNALLY_GENERATED_IV, 4 >
 ►CFixedKeyLength< 24 >
 ►CFixedKeyLength< 32 >
 ►CFixedKeyLength< 32, SimpleKeyingInterface::UNIQUE_IV, 24 >
 ►CFixedKeyLength< 32, SimpleKeyingInterface::UNIQUE_IV, 32 >
 ►CFixedKeyLength< 8 >
 ►CFixedKeyLength< T::BLOCKSIZE >
 ►CFixedRounds< R >Inherited by algorithms with fixed number of rounds
 ►CFixedRounds< 16 >
 ►CFixedRounds< 32 >
 ►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
 CPKCS1v15_SignatureMessageEncodingMethod::HashIdentifierLookup
 CPK_SignatureMessageEncodingMethod::HashIdentifierLookup
 CPKCS1v15_SignatureMessageEncodingMethod::HashIdentifierLookup::HashIdentifierLookup2< H >
 CPK_SignatureMessageEncodingMethod::HashIdentifierLookup::HashIdentifierLookup2< H >
 CEMSA2HashIdLookup< BASE >::HashIdentifierLookup::HashIdentifierLookup2< H >
 CHashTestTuple
 CHKDF_TestTuple
 CHuffmanDecoderHuffman Decoder
 CHuffmanEncoder
 CHuffmanNode
 ►CInitializeIntegerPerforms static intialization of the Integer class
 ►CINTERFACE
 ►CKeyDerivationFunctionAbstract base class for key derivation function
 ►CLazyPutterUse this to make sure LazyPut is finalized in event of exception
 ►CLimitedBandwidth
 CLowFirstBitReader_
 ►CLUC
 ►CMARC4_Base
 ►CMaskGeneratingFunctionMask generation function interface
 ►Cmember_ptr< T >Pointer that overloads operator ->
 Cmember_ptr< AlgorithmParametersBase >
 Cmember_ptr< BlockCipher >
 ►Cmember_ptr< BlockCipherFinal >
 Cmember_ptr< BlockTransformation >
 Cmember_ptr< BufferedTransformation >
 ►Cmember_ptr< ECP >
 Cmember_ptr< FilterWithBufferedInput >
 ►Cmember_ptr< GF2NP >
 Cmember_ptr< HMAC >
 ►Cmember_ptr< ModularArithmetic >
 ►Cmember_ptr< MontgomeryRepresentation >
 Cmember_ptr< PK_MessageAccumulator >
 Cmember_ptr< RandomNumberGenerator >
 Cmember_ptr< std::ifstream >
 Cmember_ptr< std::ofstream >
 CMicrosoftCryptoProviderWrapper for Microsoft crypto service provider
 ►CNameValuePairsInterface for retrieving values given their names
 CNewFixedDistanceDecoder
 CNewFixedLiteralDecoder
 CNewInteger< i >
 CNewLastSmallPrimeSquared
 CNewObject< T >An object factory function
 CNewPolynomialMod2< i >
 CNewPrimeTable
 ►CNonblockingSinkInfo
 ►CNotCopyableEnsures an object is not copyable
 ►CObjectFactory< AbstractClass >_
 CObjectFactoryRegistry< AbstractClass, instance >_
 CObjectHolder< T >Uses encapsulation to hide an object in derived classes
 ►CObjectHolder< CIPHER >
 ►CObjectHolder< HASH_ALGORITHM >
 COIDObject Identifier
 COIDLessThan
 CP1363_KDF2< H >
 ►CPanama< B >
 ►CPasswordBasedKeyDerivationFunctionAbstract base class for password based key derivation function
 CPBKDF_TestTuple
 ►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 >
 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
 CPrimeSieve
 ►CPSSR_MEM_BaseWithHashId< USE_HASH_ID >PSSR Message Encoding Method with Hash Identifier
 CPutBlock< T, B, A >Access a block of memory
 ►CRabinRabin
 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< U >Template class memeber Rebind
 CRegisterDefaultFactoryFor< AbstractClass, ConcreteClass, instance >
 CCFB_CipherConcretePolicy< WT, W, BASE >::RegisterOutput< B >
 ►CRSARSA algorithm
 ►CRSA_ISORSA algorithm
 ►CRWRabin-Williams algorithm
 CSafeLeftShiftSafely left shift values when undefined behavior could occur
 ►CSAFERSAFER block cipher
 CSafeRightShiftSafely right shift values when undefined behavior could occur
 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
 ►CSameKeyLengthAs< T >
 ►CSameKeyLengthAs< T_BlockCipher >
 CSEAL_Gamma
 ►CSecBlock< T, A >Secure memory block with allocator and cleanup
 ►CSecBlock< byte >
 ►CSecBlock< byte, AllocatorWithCleanup< byte > >
 ►CSecBlock< byte, AllocatorWithCleanup< byte, true > >
 ►CSecBlock< byte, FixedSizeAllocatorWithCleanup< byte, S > >
 ►CSecBlock< byte, FixedSizeAllocatorWithCleanup< byte, S, NullAllocator< byte >, T_Align16 > >
 ►CSecBlock< byte, FixedSizeAllocatorWithCleanup< byte, S, NullAllocator< byte >, true > >
 CSecBlock< EncodedMatch >
 CSecBlock< HuffmanEncoder::Code >
 CSecBlock< ParameterBlock, AllocatorWithCleanup< ParameterBlock, true > >
 CSecBlock< RC5_WORD >
 CSecBlock< RC6_WORD >
 CSecBlock< State, AllocatorWithCleanup< State, true > >
 ►CSecBlock< T, FixedSizeAllocatorWithCleanup< T, S, NullAllocator< T >, T_Align16 > >
 ►CSecBlock< T_HashWordType, FixedSizeAllocatorWithCleanup< T_HashWordType, S > >
 ►CSecBlock< T_HashWordType, FixedSizeAllocatorWithCleanup< T_HashWordType, S, NullAllocator< T_HashWordType >, T_Align16 > >
 ►CSecBlock< unsigned int, FixedSizeAllocatorWithCleanup< unsigned int, S > >
 ►CSecBlock< word >
 CSecBlock< word, AllocatorWithCleanup< word, 0 > >
 ►CSecBlock< Word, FixedSizeAllocatorWithCleanup< Word, S > >
 CSecBlock< word16 >
 ►CSecBlock< word16, FixedSizeAllocatorWithCleanup< word16, S > >
 CSecBlock< word32 >
 ►CSecBlock< word32, FixedSizeAllocatorWithCleanup< word32, S > >
 ►CSecBlock< word32, FixedSizeAllocatorWithCleanup< word32, S, NullAllocator< word32 >, T_Align16 > >
 ►CSecBlock< word32, FixedSizeAllocatorWithCleanup< word32, S, NullAllocator< word32 >, true > >
 CSecBlock< word64 >
 ►CSecBlock< word64, FixedSizeAllocatorWithCleanup< word64, S > >
 ►CSecBlock< word64, FixedSizeAllocatorWithCleanup< word64, S, NullAllocator< word64 >, T_Align16 > >
 CSharkProcessAndXorBlock< sbox, cbox >
 ►CSignatureStandardBase class for public key signature standard classes
 ►CSigner
 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
 ►CSocketWrapper for Windows or Berkeley Sockets
 CSocketsInitializer
 CStreamState
 ►CSymmetricCipherDocumentationProvides Encryption and Decryption typedefs used by derived classes to implement a symmetric cipher
 CTF_Base< TFI, MEI >The base for trapdoor based cryptosystems
 ►CTF_Base< RandomizedTrapdoorFunction, PK_EncryptionMessageEncodingMethod >
 ►CTF_Base< RandomizedTrapdoorFunctionInverse, PK_SignatureMessageEncodingMethod >
 ►CTF_Base< TrapdoorFunction, PK_SignatureMessageEncodingMethod >
 ►CTF_Base< TrapdoorFunctionInverse, PK_EncryptionMessageEncodingMethod >
 ►CTF_CryptoSchemeOptions< T1, T2, T3 >_
 ►CTimerBaseBase class for timers
 ►CTracer
 ►CTrapdoorFunctionBoundsProvides range for plaintext and ciphertext lengths
 ►CTwoBases
 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, 4 >
 ►CVariableKeyLength< 16, 16, 32, 8 >
 ►CVariableKeyLength< 16, 16, 64 >
 ►CVariableKeyLength< 16, 4, 56 >
 ►CVariableKeyLength< 16, 5, 16 >
 ►CVariableKeyLength< 16, 8, 16, 8 >
 ►CVariableKeyLength< 32, 16, 32, 16, SimpleKeyingInterface::UNIQUE_IV, 8 >
 ►CVariableKeyLength<(T_64bit ? 64 :32), 0,(T_64bit ? 64 :32), 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
 Cvector_ptr< T >Manages resources for an array of objects
 ►CVerifier
 ►CWaitableInterface for objects that can be waited on
 CWaitingThreadData
 ►CWAKE_Base
 ►CWindowsHandleWindows Handle
 CWindowSlider
 ►CWindowsPipeWindows Pipe
 CWord
 ►CKEYS
 ►CPK
 ►CPOLICY
 ►CPOLICY_INTERFACE
 ►CT
 ►CT_Base