Const-ify Nb, Nk, Nr
[aes.git] / aes.hpp
diff --git a/aes.hpp b/aes.hpp
index 43808d4..5d2acd8 100644 (file)
--- a/aes.hpp
+++ b/aes.hpp
@@ -29,9 +29,21 @@ class AES
                byteArray decrypt (const byteArray& ciphertext) const;
 
        private:
                byteArray decrypt (const byteArray& ciphertext) const;
 
        private:
-               unsigned int Nb;
-               unsigned int Nk;
-               unsigned int Nr;
+               /* Block size in words -- Always constant in AES.
+                *
+                * We also might as well make this static and share it between
+                * all instances of AES. */
+               static const unsigned int Nb = 4;
+
+               /* Key size in words -- can be 4, 6, or 8.
+                *
+                * Once it is set by the constructor, it will never change */
+               const unsigned int Nk;
+
+               /* Number of rounds -- depends on key size.
+                *
+                * Once it is set by the constructor, it will never change */
+               const unsigned int Nr;
 
                wordArray keySchedule;
 
 
                wordArray keySchedule;