AuthenticatedDecryptionFilter::AuthenticatedDecryptionFilter(AuthenticatedSymmetricCipher &c, BufferedTransformation *attachment, word32 flags, int truncatedDigestSize, BlockPaddingScheme padding) : FilterWithBufferedInput(attachment) , m_hashVerifier(c, new OutputProxy(*this, false)) , m_streamFilter(c, new OutputProxy(*this, false), padding, true) { assert(!c.IsForwardTransformation() || c.IsSelfInverting()); IsolatedInitialize(MakeParameters(Name::BlockPaddingScheme(), padding)(Name::AuthenticatedDecryptionFilterFlags(), flags)(Name::TruncatedDigestSize(), truncatedDigestSize)); }
StreamTransformationFilter::StreamTransformationFilter(StreamTransformation &c, BufferedTransformation *attachment, BlockPaddingScheme padding, bool allowAuthenticatedSymmetricCipher) : FilterWithBufferedInput(attachment) , m_cipher(c), m_padding(DEFAULT_PADDING), m_optimalBufferSize(0) { assert(c.MinLastBlockSize() == 0 || c.MinLastBlockSize() > c.MandatoryBlockSize()); if (!allowAuthenticatedSymmetricCipher && dynamic_cast<AuthenticatedSymmetricCipher *>(&c) != 0) throw InvalidArgument("StreamTransformationFilter: please use AuthenticatedEncryptionFilter and AuthenticatedDecryptionFilter for AuthenticatedSymmetricCipher"); IsolatedInitialize(MakeParameters(Name::BlockPaddingScheme(), padding)); }
void BufferedTransformation::Initialize(const NameValuePairs ¶meters, int propagation) { assert(!AttachedTransformation()); IsolatedInitialize(parameters); }
void BufferedTransformation::Initialize(const NameValuePairs ¶meters, int propagation) { CRYPTOPP_UNUSED(propagation); CRYPTOPP_ASSERT(!AttachedTransformation()); IsolatedInitialize(parameters); }
SignatureVerificationFilter::SignatureVerificationFilter(const PK_Verifier &verifier, BufferedTransformation *attachment, word32 flags) : FilterWithBufferedInput(attachment) , m_verifier(verifier), m_flags(0), m_verified(0) { IsolatedInitialize(MakeParameters(Name::SignatureVerificationFilterFlags(), flags)); }
HashVerificationFilter::HashVerificationFilter(HashTransformation &hm, BufferedTransformation *attachment, word32 flags, int truncatedDigestSize) : FilterWithBufferedInput(attachment) , m_hashModule(hm), m_flags(0), m_digestSize(0), m_verified(false) { IsolatedInitialize(MakeParameters(Name::HashVerificationFilterFlags(), flags)(Name::TruncatedDigestSize(), truncatedDigestSize)); }
void Filter::Initialize(const NameValuePairs ¶meters, int propagation) { m_inputPosition = m_continueAt = 0; IsolatedInitialize(parameters); PropagateInitialize(parameters, propagation); }
HashVerificationFilter::HashVerificationFilter(HashTransformation &hm, BufferedTransformation *attachment, word32 flags) : FilterWithBufferedInput(attachment) , m_hashModule(hm) { IsolatedInitialize(MakeParameters(Name::HashVerificationFilterFlags(), flags)); }