diff options
author | weidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0> | 2003-07-16 01:53:45 +0000 |
---|---|---|
committer | weidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0> | 2003-07-16 01:53:45 +0000 |
commit | 42c3d8f3aa593c224174558fd6f3d2709e08f7d0 (patch) | |
tree | 1f90c9ea7a31679b5c416408a3ffeba23e87d165 /ida.cpp | |
parent | 09326fa9f564c09ebecff7c56d0e33555dec65b6 (diff) | |
download | cryptopp-42c3d8f3aa593c224174558fd6f3d2709e08f7d0.tar.gz |
added support for using encoding parameters and key derivation parameters
git-svn-id: svn://svn.code.sf.net/p/cryptopp/code/trunk/c5@98 57ff6487-cd31-0410-9ec3-f628ee90f5f0
Diffstat (limited to 'ida.cpp')
-rw-r--r-- | ida.cpp | 25 |
1 files changed, 9 insertions, 16 deletions
@@ -17,11 +17,8 @@ using namespace std; NAMESPACE_BEGIN(CryptoPP) -void RawIDA::ChannelInitialize(const string &channel, const NameValuePairs ¶meters, int propagation) +void RawIDA::IsolatedInitialize(const NameValuePairs ¶meters) { - if (!channel.empty()) - throw NotImplemented("RawIDA: can't reinitialize a channel"); - if (!parameters.GetIntValue("RecoveryThreshold", m_threshold)) throw InvalidArgument("RawIDA: missing RecoveryThreshold argument"); @@ -48,10 +45,6 @@ void RawIDA::ChannelInitialize(const string &channel, const NameValuePairs ¶ for (int i=0; i<nShares; i++) AddOutputChannel(i); } - - if (propagation) - for (unsigned int i=0; i<m_outputChannelIds.size(); i++) - AttachedTransformation()->ChannelInitialize(m_outputChannelIdStrings[i], parameters, propagation-1); } unsigned int RawIDA::InsertInputChannel(word32 channelId) @@ -240,10 +233,10 @@ void RawIDA::OutputMessageEnds() // **************************************************************** -void SecretSharing::Initialize(const NameValuePairs ¶meters, int propagation) +void SecretSharing::IsolatedInitialize(const NameValuePairs ¶meters) { m_pad = parameters.GetValueWithDefault("AddPadding", true); - m_ida.Initialize(parameters, propagation); + m_ida.IsolatedInitialize(parameters); } unsigned int SecretSharing::Put2(const byte *begin, unsigned int length, int messageEnd, bool blocking) @@ -283,10 +276,10 @@ unsigned int SecretSharing::Put2(const byte *begin, unsigned int length, int mes return 0; } -void SecretRecovery::Initialize(const NameValuePairs ¶meters, int propagation) +void SecretRecovery::IsolatedInitialize(const NameValuePairs ¶meters) { m_pad = parameters.GetValueWithDefault("RemovePadding", true); - RawIDA::Initialize(CombinedNameValuePairs(parameters, MakeParameters("OutputChannelID", (word32)0xffffffff)), propagation); + RawIDA::IsolatedInitialize(CombinedNameValuePairs(parameters, MakeParameters("OutputChannelID", (word32)0xffffffff))); } void SecretRecovery::FlushOutputQueues() @@ -311,11 +304,11 @@ void SecretRecovery::OutputMessageEnds() // **************************************************************** -void InformationDispersal::Initialize(const NameValuePairs ¶meters, int propagation) +void InformationDispersal::IsolatedInitialize(const NameValuePairs ¶meters) { m_nextChannel = 0; m_pad = parameters.GetValueWithDefault("AddPadding", true); - m_ida.Initialize(parameters, propagation); + m_ida.IsolatedInitialize(parameters); } unsigned int InformationDispersal::Put2(const byte *begin, unsigned int length, int messageEnd, bool blocking) @@ -344,10 +337,10 @@ unsigned int InformationDispersal::Put2(const byte *begin, unsigned int length, return 0; } -void InformationRecovery::Initialize(const NameValuePairs ¶meters, int propagation) +void InformationRecovery::IsolatedInitialize(const NameValuePairs ¶meters) { m_pad = parameters.GetValueWithDefault("RemovePadding", true); - RawIDA::Initialize(parameters, propagation); + RawIDA::IsolatedInitialize(parameters); } void InformationRecovery::FlushOutputQueues() |