summaryrefslogtreecommitdiff
path: root/ida.cpp
diff options
context:
space:
mode:
authorweidai <weidai11@users.noreply.github.com>2003-07-16 01:53:45 +0000
committerweidai <weidai11@users.noreply.github.com>2003-07-16 01:53:45 +0000
commit38b49e454399c81aac16279f78a834de26245bec (patch)
tree1f90c9ea7a31679b5c416408a3ffeba23e87d165 /ida.cpp
parent8cd6a9256d78953d6e99097fb4508a077e8e2ebe (diff)
downloadcryptopp-git-38b49e454399c81aac16279f78a834de26245bec.tar.gz
added support for using encoding parameters and key derivation parameters
Diffstat (limited to 'ida.cpp')
-rw-r--r--ida.cpp25
1 files changed, 9 insertions, 16 deletions
diff --git a/ida.cpp b/ida.cpp
index 3bec9f80..da24da3e 100644
--- a/ida.cpp
+++ b/ida.cpp
@@ -17,11 +17,8 @@ using namespace std;
NAMESPACE_BEGIN(CryptoPP)
-void RawIDA::ChannelInitialize(const string &channel, const NameValuePairs &parameters, int propagation)
+void RawIDA::IsolatedInitialize(const NameValuePairs &parameters)
{
- 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 &para
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 &parameters, int propagation)
+void SecretSharing::IsolatedInitialize(const NameValuePairs &parameters)
{
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 &parameters, int propagation)
+void SecretRecovery::IsolatedInitialize(const NameValuePairs &parameters)
{
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 &parameters, int propagation)
+void InformationDispersal::IsolatedInitialize(const NameValuePairs &parameters)
{
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 &parameters, int propagation)
+void InformationRecovery::IsolatedInitialize(const NameValuePairs &parameters)
{
m_pad = parameters.GetValueWithDefault("RemovePadding", true);
- RawIDA::Initialize(parameters, propagation);
+ RawIDA::IsolatedInitialize(parameters);
}
void InformationRecovery::FlushOutputQueues()