Crypto++
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345678910111213]
oCAbstractGroup< T >Abstract Group
oCAbstractGroup< EC2NPoint >
oCAbstractGroup< ECPPoint >
oCAbstractGroup< EuclideanDomainOf< PolynomialMod2 >::Element >
oCAbstractGroup< GFP2Element >
oCAbstractGroup< Integer >
oCAbstractGroup< PolynomialMod2 >
oCAbstractGroup< PolynomialOver< T > >
oCAdditiveCipherAbstractPolicy
oCAlgorithmParametersBase
oCAllocatorBase< T >
oCAllocatorBase< byte >
oCAllocatorBase< T_HashWordType >
oCAllocatorBase< word32 >
oCAllocatorBase< word64 >
oCARC4_Base
oCASN1ObjectInterface for encoding and decoding ASN1 objects
oCAssignFromHelperClass< T, BASE >
oCAuthenticatedSymmetricCipherDocumentationEach class derived from this one defines two types, Encryption and Decryption, both of which implement the AuthenticatedSymmetricCipher interface
oCAutoSignaling< T >_
oCBASE
oCBaseAndExponent< T, E >Base and Exponent
oCBlockCipherDocumentationThese objects usually should not be used directly. See CipherModeDocumentation instead
oCBlockGetAndPut< T, B, GA, PA >
oCBlockPaddingSchemeDef
oCFilterWithBufferedInput::BlockQueue
oCBufferless< T >_
oCByteArrayParameter
oCByteQueueNode
oCCallStack
oCCAST
oCCFB_CipherAbstractPolicy
oCChannelSwitchTypedefs
oCCipherFactory
oCClonableInterface for cloning objects, this is not implemented by most classes yet
oCHuffmanEncoder::Code
oCCodeLessThan
oCCompileAssert< b >
oCConstByteArrayParameterUsed to pass byte array input as part of a NameValuePairs object
oCcounted_ptr< T >
oCCustomFlushPropagation< T >_
oCDec
oCDecodingResultUsed to return decoding results
oCDigestSizeDoubleWorkaround< T >
oCDL_Base< KI >_
oCDL_Base< DL_PrivateKey< SCHEME_OPTIONS::Element > >
oCDL_Base< DL_PrivateKey< T > >
oCDL_Base< DL_PublicKey< SCHEME_OPTIONS::Element > >
oCDL_Base< DL_PublicKey< T > >
oCDL_Base< KEY_INTERFACE >
oCDL_CryptoKeys_GFPDL encryption/decryption keys (in GF(p) groups)
oCDL_CryptoKeys_LUC_
oCDL_ElgamalLikeSignatureAlgorithm< T >Interface for Elgamal-like signature algorithms
oCDL_ElgamalLikeSignatureAlgorithm< EC::Point >
oCDL_ElgamalLikeSignatureAlgorithm< Integer >
oCDL_ES< KEYS, AA, DA, EA, ALG_INFO >Discrete Log Based Encryption Scheme
oCDL_FixedBasePrecomputation< T >
oCDL_FixedBasePrecomputation< Integer >
oCDL_FixedBasePrecomputation< typenameEcPrecomputation< EC >::Element >
oCDL_FixedBasePrecomputation< typenameModExpPrecomputation::Element >
oCDL_GroupPrecomputation< T >
oCDL_GroupPrecomputation< EC2N::Point >
oCDL_GroupPrecomputation< ECP::Point >
oCDL_GroupPrecomputation< Integer >
oCDL_Key< T >_
oCDL_Key< DL_GroupParameters_EC< EC >::Element >
oCDL_Key< GP::Element >
oCDL_KeyAgreementAlgorithm< T >Interface for DL key agreement algorithms
oCDL_KeyAgreementAlgorithm< ELEMENT >
oCDL_KeyAgreementAlgorithm< Integer >
oCDL_KeyDerivationAlgorithm< T >Interface for key derivation algorithms used in DL cryptosystems
oCDL_KeyDerivationAlgorithm< Integer >
oCDL_KeyImpl< PK, GP, O >_
oCDL_Keys_DSADSA keys
oCDL_Keys_EC< EC >EC keys
oCDL_Keys_ECDSA< EC >ECDSA keys
oCDL_SchemeOptionsBase< T1, T2 >_
oCDL_SchemeOptionsBase< T1, T2::PublicKey::GroupParameters >
oCDL_SignatureKeys_GFPDL signing/verification keys (in GF(p) groups)
oCDL_SignatureKeys_LUC_
oCDL_SS< KEYS, SA, MEM, H, ALG_INFO >Discrete Log Based Signature Scheme
oCDL_SymmetricEncryptionAlgorithmInterface for symmetric encryption algorithms used in DL cryptosystems
oCDWord
oCEC2NPointElliptic Curve Point
oCECDH< EC, COFACTOR_OPTION >Elliptic Curve Diffie-Hellman, AKA ECDH
oCECMQV< EC, COFACTOR_OPTION >Elliptic Curve Menezes-Qu-Vanstone, AKA ECMQV
oCECPPointElliptical Curve Point
oCEcRecommendedParameters< EC2N >
oCEcRecommendedParameters< ECP >
oCElGamalElGamal encryption scheme with non-standard padding
oCElGamalKeys
oCEmpty
oCEMSA2HashId< H >
oCEnc
oCDeflator::EncodedMatch
oCEncryptionStandardBase class for public key encryption standard classes. These classes are used to select from variants of algorithms. Note that not all standards apply to all algorithms
oCEnumToType< ENUM_TYPE, VALUE >
oCESIGN_Keys
oCExceptionBase class for all exceptions thrown by Crypto++
oCFilterPutSpaceHelper
oCFixedBlockSize< N >To be inherited by block ciphers with fixed block size
oCFixedBlockSize< 12 >
oCFixedBlockSize< 16 >
oCFixedBlockSize< 32 >
oCFixedBlockSize< 8 >
oCFixedBlockSize< DigestSizeDoubleWorkaround< T >::RESULT >
oCFixedBlockSize< T::DIGESTSIZE >
oCFixedKeyLength< N, IV_REQ, IV_L >To be inherited by keyed algorithms with fixed key length
oCFixedKeyLength< 10 >
oCFixedKeyLength< 12 >
oCFixedKeyLength< 16 >
oCFixedKeyLength< 20 >
oCFixedKeyLength< 20, SimpleKeyingInterface::INTERNALLY_GENERATED_IV, 4 >
oCFixedKeyLength< 24 >
oCFixedKeyLength< 32 >
oCFixedKeyLength< 32, SimpleKeyingInterface::UNIQUE_IV, 24 >
oCFixedKeyLength< 32, SimpleKeyingInterface::UNIQUE_IV, 32 >
oCFixedKeyLength< 8 >
oCFixedKeyLength< T::BLOCKSIZE >
oCFixedRounds< R >To be inherited by ciphers with fixed number of rounds
oCFixedRounds< 16 >
oCFixedRounds< 32 >
oCFixedRounds< 8 >
oCFreqLessThan
oCGCM_Base::GCTR
oCGetBlock< T, B, A >
oCGetValueHelperClass< T, BASE >
oCGF256GF(256) with polynomial basis
oCGF2_32GF(2^32) with polynomial basis
oCGFP2ElementElement of GF(p^2)
oCEMSA2HashIdLookup< BASE >::HashIdentifierLookup
oCPKCS1v15_SignatureMessageEncodingMethod::HashIdentifierLookup
oCPK_SignatureMessageEncodingMethod::HashIdentifierLookup
oCEMSA2HashIdLookup< BASE >::HashIdentifierLookup::HashIdentifierLookup2< H >
oCPKCS1v15_SignatureMessageEncodingMethod::HashIdentifierLookup::HashIdentifierLookup2< H >
oCPK_SignatureMessageEncodingMethod::HashIdentifierLookup::HashIdentifierLookup2< H >
oCHashTestTuple
oCHuffmanDecoderHuffman Decoder
oCHuffmanEncoderHuffman Encoder
oCHuffmanNode
oCInitializeInteger
oCInputRejecting< T >_
oCINTERFACE
oCLazyPutterUse this to make sure LazyPut is finalized in event of exception
oCLimitedBandwidth
oCLowFirstBitReader_
oCLUC
oCMARC4_Base
oCMaskGeneratingFunction_
oCmember_ptr< T >
oCMicrosoftCryptoProvider
oCNameValuePairsInterface for retrieving values given their names
oCNewFixedDistanceDecoder
oCNewFixedLiteralDecoder
oCNewInteger< i >
oCNewLastSmallPrimeSquared
oCNewObject< T >
oCNewPolynomialMod2< i >
oCNewPrimeTable
oCNonblockingSinkInfo
oCNotCopyable
oCObjectFactory< AbstractClass >_
oCObjectFactoryRegistry< AbstractClass, instance >_
oCObjectHolder< T >
oCObjectHolder< CIPHER >
oCObjectHolder< HASH_ALGORITHM >
oCOIDObject Identifier
oCOIDLessThan
oCP1363_KDF2< H >_
oCPanama< B >Base class, do not use directly
oCPasswordBasedKeyDerivationFunctionAbstract base class for password based key derivation function
oCPBKDF_TestTuple
oCPK_CryptoSystemInterface for public-key encryptors and decryptors
oCPK_EncryptionMessageEncodingMethodMessage encoding method for public key encryption
oCPK_SignatureMessageEncodingMethodInterface for message encoding method for public key signature schemes
oCPK_SignatureSchemeInterface for public-key signers and verifiers
oCPKCS_DigestDecoration< H >
oCPolynomialMod2Polynomial with Coefficients in GF(2)
oCPolynomialOver< T >Single-variable polynomials over arbitrary rings
oCPrimeAndGeneratorGenerator of prime numbers of special forms
oCPrimeSelector
oCPrimeSieve
oCPSSR_MEM< ALLOW_RECOVERY, MGF, SALT_LEN, MIN_PAD_LEN, USE_HASH_ID >
oCPutBlock< T, B, A >
oCRabinRabin
oCPolynomialOver< T >::RandomizationParameterSpecify the distribution for randomization functions
oCRandomizedTrapdoorFunctionInverse_
oCRawDES
oCAllocatorWithCleanup< T, T_Align16 >::rebind< U >
oCRegisterDefaultFactoryFor< AbstractClass, ConcreteClass, instance >
oCCFB_CipherConcretePolicy< WT, W, BASE >::RegisterOutput< B >
oCRSARSA
oCRSA_ISO
oCRWRW
oCSAFERBase class, do not use directly
oCSafeShifter< false >
oCSafeShifter< true >
oCSameKeyLengthAs< T, IV_REQ, IV_L >Support query of key length that's the same as another class
oCSameKeyLengthAs< T >
oCSEAL_Gamma
oCSecBlock< T, A >Block of memory allocated using A
oCSecBlock< byte >
oCSecBlock< T, FixedSizeAllocatorWithCleanup< T, S, NullAllocator< T >, T_Align16 > >
oCSecBlock< T_HashWordType, FixedSizeAllocatorWithCleanup< T_HashWordType, S > >
oCSecBlock< word32, FixedSizeAllocatorWithCleanup< word32, S > >
oCSecBlock< word32, FixedSizeAllocatorWithCleanup< word32, S, NullAllocator< word32 >, T_Align16 > >
oCSecBlock< word64, FixedSizeAllocatorWithCleanup< word64, S > >
oCSecBlock< word64, FixedSizeAllocatorWithCleanup< word64, S, NullAllocator< word64 >, T_Align16 > >
oCSharkProcessAndXorBlock< sbox, cbox >
oCSignatureStandardBase class for public key signature standard classes. These classes are used to select from variants of algorithms. Note that not all standards apply to all algorithms
oCsimple_ptr< T >
oCSimpleKeyingInterfaceKeying interface for crypto algorithms that take byte strings as keys
oCSingleton< T, F, instance >
oCSocketWrapper for Windows or Berkeley Sockets
oCSocketsInitializer
oCSymmetricCipherDocumentationEach class derived from this one defines two types, Encryption and Decryption, both of which implement the SymmetricCipher interface. Two types of classes derive from this class: stream ciphers and block cipher modes. Stream ciphers can be used alone, cipher mode classes need to be used with a block cipher. See CipherModeDocumentation for more for information about using cipher modes and block ciphers
oCTF_Base< TFI, MEI >_
oCTF_Base< RandomizedTrapdoorFunction, PK_EncryptionMessageEncodingMethod >
oCTF_Base< RandomizedTrapdoorFunctionInverse, PK_SignatureMessageEncodingMethod >
oCTF_Base< TrapdoorFunction, PK_SignatureMessageEncodingMethod >
oCTF_Base< TrapdoorFunctionInverse, PK_EncryptionMessageEncodingMethod >
oCTF_CryptoSchemeOptions< T1, T2, T3 >_
oCTF_ES< STANDARD, KEYS, ALG_INFO >Trapdoor Function Based Encryption Scheme
oCTF_SS< STANDARD, H, KEYS, ALG_INFO >Trapdoor Function Based Signature Scheme
oCThreeBases< BASE1, BASE2, BASE3 >_
oCTimerBase_
oCTracer
oCTrapdoorFunctionBounds_
oCTwoBases< BASE1, BASE2 >_
oCUnflushable< T >_
oCVariableKeyLength< D, N, M, Q, IV_REQ, IV_L >Support query of variable key length, template parameters are default, min, max, multiple (default multiple 1)
oCVariableKeyLength< 16, 0, 2 *(INT_MAX/2), 2 >
oCVariableKeyLength< 16, 0, 255 >
oCVariableKeyLength< 16, 0, 32 >
oCVariableKeyLength< 16, 0, INT_MAX >
oCVariableKeyLength< 16, 1, 128 >
oCVariableKeyLength< 16, 1, 16 >
oCVariableKeyLength< 16, 1, 256 >
oCVariableKeyLength< 16, 1, 32, 1, SimpleKeyingInterface::UNIQUE_IV, 16 >
oCVariableKeyLength< 16, 16, 32 >
oCVariableKeyLength< 16, 16, 32, 8 >
oCVariableKeyLength< 16, 16, 56, 4 >
oCVariableKeyLength< 16, 16, 64 >
oCVariableKeyLength< 16, 4, 56 >
oCVariableKeyLength< 16, 5, 16 >
oCVariableKeyLength< 16, 8, 16, 8 >
oCVariableKeyLength< 32, 0, INT_MAX >
oCVariableKeyLength< 32, 16, 32, 16, SimpleKeyingInterface::UNIQUE_IV, 8 >
oCVariableRounds< D, N, M >To be inherited by ciphers with variable number of rounds
oCVariableRounds< 10, 1, 13 >
oCVariableRounds< 11 >
oCVariableRounds< 16 >
oCVariableRounds< 20 >
oCVariableRounds< 32 >
oCVariableRounds< 6, 2 >
oCvector_member_ptrs< T >
oCWaitableInterface for objects that you can wait for
oCWaitingThreadData
oCWAKE_Base
oCWindowsHandleWindows Handle
oCWindowSlider
oCWindowsPipeWindows Pipe
oCWord
oCINFO
\CT_Base