diff options
author | weidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0> | 2010-07-06 04:41:28 +0000 |
---|---|---|
committer | weidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0> | 2010-07-06 04:41:28 +0000 |
commit | f346519577655fc3da21711d6026aa2ebbed0d46 (patch) | |
tree | 48b9c94264d07f3c6c482fa8ad79f608b4857629 | |
parent | d7c78e42474cbe7a73f08c46d252eef5e28aef7c (diff) | |
download | cryptopp-f346519577655fc3da21711d6026aa2ebbed0d46.tar.gz |
remove WAKE-CFB
git-svn-id: svn://svn.code.sf.net/p/cryptopp/code/trunk/c5@501 57ff6487-cd31-0410-9ec3-f628ee90f5f0
-rw-r--r-- | TestVectors/wake.txt | 6 | ||||
-rw-r--r-- | regtest.cpp | 2 | ||||
-rw-r--r-- | wake.cpp | 18 | ||||
-rw-r--r-- | wake.h | 25 |
4 files changed, 1 insertions, 50 deletions
diff --git a/TestVectors/wake.txt b/TestVectors/wake.txt index 5e1fd07..2dd80a2 100644 --- a/TestVectors/wake.txt +++ b/TestVectors/wake.txt @@ -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 diff --git a/regtest.cpp b/regtest.cpp index 0c5e614..2144b0e 100644 --- a/regtest.cpp +++ b/regtest.cpp @@ -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> >(); @@ -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) @@ -9,13 +9,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> { static const char *StaticAlgorithmName() {return B::ToEnum() == LITTLE_ENDIAN_ORDER ? "WAKE-OFB-LE" : "WAKE-OFB-BE";} @@ -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 |