remove WAKE-CFB
parent
9a892095a0
commit
7fbcee6ca1
|
|
@ -1,13 +1,7 @@
|
|||
AlgorithmType: SymmetricCipher
|
||||
Source: Generated by Crypto++ 5.6.1
|
||||
Key: r2 00112233445566778899AABBCCDDEEFF
|
||||
Name: WAKE-CFB-LE
|
||||
Plaintext: r80 00 r80 01
|
||||
Ciphertext: FFEEDDCCDF42B9D4939C351568AB4888BD9264CA66CF7F7885141F6934F3F390F1987B8609B733919DC5F73F7BED93ECDCD4F35FF32828553B8AFAD113DDA6565932553D9143AA886AE859167327F3C260434E6CF23C167C7EF0772BFAECA2FFDD1BD61640505AC2D997F2419990975D6841E9788E7617C0E79DACF18E1B6463F6D8923602385AA995BBF890BF67F87E9DC3C0C3023F2C2B19B98900BB1E2FFC
|
||||
Test: Encrypt
|
||||
Name: WAKE-CFB-BE
|
||||
Ciphertext: FFEEDDCC7C7C6FA2584C7634D139AE344A8EBA8E272CAF98F9BC424ECE6E2C97AF0214E41053BB0A27B1C36E3FF05E1AC3AE5E9693EC2BF8F917CBC40B0344ED4E65C906D1DBB7F350F63769C6D07C43415DF6714D200D7972AD96C20C5897424F219B4649842ECFC9EEDB8F020CD702FC585C3251A6434953C6FE9066E4D64A3B910B94E55E92E23FD5D17F37947313D3C2BD2FC189399955F8CD6BF8D14567
|
||||
Test: Encrypt
|
||||
Name: WAKE-OFB-LE
|
||||
Ciphertext: FFEEDDCCDF42B9D4939C351568AB4888BD9264CA66CF7F7885141F6934F3F390F1987B8609B733919DC5F73F7BED93ECDCD4F35FF32828553B8AFAD113DDA6565932553D9143AA886AE859167327F3C260434E6C90A0895FD33E6B6412526521FA0B12F4ECEE3E8F4F96DCF70907AAFB5E29C40FC10EB70A4970736E98DF98C615AC844A46FB8E4AEBBBF599DF7B73930B94776C6C8757BE51B34E71E9B514AE
|
||||
Test: Encrypt
|
||||
|
|
|
|||
|
|
@ -112,8 +112,6 @@ void RegisterFactories()
|
|||
RegisterSymmetricCipherDefaultFactories<Weak::MARC4>();
|
||||
RegisterSymmetricCipherDefaultFactories<WAKE_OFB<LittleEndian> >();
|
||||
RegisterSymmetricCipherDefaultFactories<WAKE_OFB<BigEndian> >();
|
||||
RegisterSymmetricCipherDefaultFactories<Weak::WAKE_CFB<LittleEndian> >();
|
||||
RegisterSymmetricCipherDefaultFactories<Weak::WAKE_CFB<BigEndian> >();
|
||||
RegisterSymmetricCipherDefaultFactories<SEAL<LittleEndian> >();
|
||||
RegisterAuthenticatedSymmetricCipherDefaultFactories<CCM<AES> >();
|
||||
RegisterAuthenticatedSymmetricCipherDefaultFactories<GCM<AES> >();
|
||||
|
|
|
|||
18
wake.cpp
18
wake.cpp
|
|
@ -7,8 +7,6 @@ NAMESPACE_BEGIN(CryptoPP)
|
|||
|
||||
void WAKE_TestInstantiations()
|
||||
{
|
||||
Weak::WAKE_CFB<>::Encryption x1;
|
||||
Weak::WAKE_CFB<>::Decryption x3;
|
||||
WAKE_OFB<>::Encryption x2;
|
||||
WAKE_OFB<>::Decryption x4;
|
||||
}
|
||||
|
|
@ -67,22 +65,6 @@ void WAKE_Policy<B>::CipherSetKey(const NameValuePairs ¶ms, const byte *key,
|
|||
GenKey(k0, k1, k2, k3);
|
||||
}
|
||||
|
||||
// CFB
|
||||
template <class B>
|
||||
void WAKE_Policy<B>::Iterate(byte *output, const byte *input, CipherDir dir, size_t iterationCount)
|
||||
{
|
||||
RegisterOutput<B> registerOutput(output, input, dir);
|
||||
|
||||
while (iterationCount--)
|
||||
{
|
||||
r3 = M(r3, ConditionalByteReverse(B::ToEnum(), r6));
|
||||
r4 = M(r4, r3);
|
||||
r5 = M(r5, r4);
|
||||
r6 = M(r6, r5);
|
||||
registerOutput(r6);
|
||||
}
|
||||
}
|
||||
|
||||
// OFB
|
||||
template <class B>
|
||||
void WAKE_Policy<B>::OperateKeystream(KeystreamOperation operation, byte *output, const byte *input, size_t iterationCount)
|
||||
|
|
|
|||
25
wake.h
25
wake.h
|
|
@ -7,13 +7,6 @@
|
|||
|
||||
NAMESPACE_BEGIN(CryptoPP)
|
||||
|
||||
//! _
|
||||
template <class B = BigEndian>
|
||||
struct WAKE_CFB_Info : public FixedKeyLength<32>
|
||||
{
|
||||
static const char *StaticAlgorithmName() {return B::ToEnum() == LITTLE_ENDIAN_ORDER ? "WAKE-CFB-LE" : "WAKE-CFB-BE";}
|
||||
};
|
||||
|
||||
//! _
|
||||
template <class B = BigEndian>
|
||||
struct WAKE_OFB_Info : public FixedKeyLength<32>
|
||||
|
|
@ -32,31 +25,15 @@ protected:
|
|||
};
|
||||
|
||||
template <class B = BigEndian>
|
||||
class CRYPTOPP_NO_VTABLE WAKE_Policy
|
||||
: public CFB_CipherConcretePolicy<word32, 1>
|
||||
, public AdditiveCipherConcretePolicy<word32, 1, 64>
|
||||
, protected WAKE_Base
|
||||
class CRYPTOPP_NO_VTABLE WAKE_Policy : public AdditiveCipherConcretePolicy<word32, 1, 64>, protected WAKE_Base
|
||||
{
|
||||
protected:
|
||||
void CipherSetKey(const NameValuePairs ¶ms, const byte *key, size_t length);
|
||||
// CFB
|
||||
byte * GetRegisterBegin() {return (byte *)&r6;}
|
||||
void Iterate(byte *output, const byte *input, CipherDir dir, size_t iterationCount);
|
||||
// OFB
|
||||
void OperateKeystream(KeystreamOperation operation, byte *output, const byte *input, size_t iterationCount);
|
||||
bool CipherIsRandomAccess() const {return false;}
|
||||
};
|
||||
|
||||
namespace Weak {
|
||||
//! <a href="http://www.cryptolounge.org/wiki/WAKE">WAKE-CFB-BE</a>
|
||||
template <class B = BigEndian>
|
||||
struct WAKE_CFB : public WAKE_CFB_Info<B>, public SymmetricCipherDocumentation
|
||||
{
|
||||
typedef SymmetricCipherFinal<ConcretePolicyHolder<WAKE_Policy<B>, CFB_EncryptionTemplate<> >, WAKE_CFB_Info<B> > Encryption;
|
||||
typedef SymmetricCipherFinal<ConcretePolicyHolder<WAKE_Policy<B>, CFB_DecryptionTemplate<> >, WAKE_CFB_Info<B> > Decryption;
|
||||
};
|
||||
}
|
||||
|
||||
//! WAKE-OFB
|
||||
template <class B = BigEndian>
|
||||
struct WAKE_OFB : public WAKE_OFB_Info<B>, public SymmetricCipherDocumentation
|
||||
|
|
|
|||
Loading…
Reference in New Issue