diff --git a/hc128.cpp b/hc128.cpp index 19b4a3db..ec90a1bc 100644 --- a/hc128.cpp +++ b/hc128.cpp @@ -193,7 +193,7 @@ void HC128Policy::CipherSetKey(const NameValuePairs ¶ms, const byte *userKey { CRYPTOPP_UNUSED(params); - GetUserKey(LITTLE_ENDIAN_ORDER, m_key, 4, userKey, keylen); + GetUserKey(LITTLE_ENDIAN_ORDER, m_key.begin(), 4, userKey, keylen); for (unsigned int i = 4; i < 8; i++) m_key[i] = m_key[i - 4]; } @@ -238,7 +238,7 @@ void HC128Policy::CipherResynchronize(byte *keystreamBuffer, const byte *iv, siz { CRYPTOPP_UNUSED(keystreamBuffer); - GetUserKey(LITTLE_ENDIAN_ORDER, m_iv, 4, iv, length); + GetUserKey(LITTLE_ENDIAN_ORDER, m_iv.begin(), 4, iv, length); for (unsigned int i = 4; i < 8; i++) m_iv[i] = m_iv[i - 4]; diff --git a/hc128.h b/hc128.h index 205f6b08..6c2c5b0d 100644 --- a/hc128.h +++ b/hc128.h @@ -41,12 +41,12 @@ protected: void SetupUpdate(); private: - word32 m_T[1024]; /* P[i] = T[i]; Q[i] = T[1024+i];*/ - word32 m_X[16]; - word32 m_Y[16]; - word32 m_key[8]; - word32 m_iv[8]; - word32 m_ctr; /*counter1024 = i mod 1024 at the i-th step */ + FixedSizeSecBlock m_X; + FixedSizeSecBlock m_Y; + FixedSizeSecBlock m_key; + FixedSizeSecBlock m_iv; + word32 m_T[1024]; + word32 m_ctr; }; /// \brief HC-128 stream cipher diff --git a/hc256.h b/hc256.h index 360999e7..e6271b1a 100644 --- a/hc256.h +++ b/hc256.h @@ -42,10 +42,10 @@ protected: word32 Generate(); private: + FixedSizeSecBlock m_key; + FixedSizeSecBlock m_iv; word32 m_P[1024]; word32 m_Q[1024]; - word32 m_key[8]; - word32 m_iv[8]; word32 m_ctr; };