[Cryptech-Commits] [core/util/keywrap] 09/95: Added a simple test case to verify that the aes model is usable.
git at cryptech.is
git at cryptech.is
Wed Mar 25 17:18:08 UTC 2020
This is an automated email from the git hooks/post-receive script.
paul at psgd.org pushed a commit to branch master
in repository core/util/keywrap.
commit 8ee29132119363711d4ffb1e0a7bf119e6392f26
Author: Joachim Strömbergson <joachim at secworks.se>
AuthorDate: Tue Jun 26 16:34:52 2018 +0200
Added a simple test case to verify that the aes model is usable.
---
src/model/aes.py | 4 ++--
src/model/keywrap.py | 26 ++++++++++++++++++++++++++
2 files changed, 28 insertions(+), 2 deletions(-)
diff --git a/src/model/aes.py b/src/model/aes.py
index 848ca85..86741c0 100755
--- a/src/model/aes.py
+++ b/src/model/aes.py
@@ -49,8 +49,8 @@ import sys
#-------------------------------------------------------------------
# Constants.
#-------------------------------------------------------------------
-VERBOSE = True
-DUMP_VARS = True
+VERBOSE = False
+DUMP_VARS = False
AES_128_ROUNDS = 10
AES_256_ROUNDS = 14
diff --git a/src/model/keywrap.py b/src/model/keywrap.py
index e0bd5a6..08aac9a 100755
--- a/src/model/keywrap.py
+++ b/src/model/keywrap.py
@@ -43,6 +43,7 @@
# Python module imports.
#-------------------------------------------------------------------
import sys
+import aes
#-------------------------------------------------------------------
@@ -51,12 +52,37 @@ import sys
VERBOSE = True
+#-------------------------------------------------------------------
+# aes_test
+#
+# Check that the AES functionality is available and works
+# as expected.
+#-------------------------------------------------------------------
+def keywrap_aes_test():
+ nist_aes128_key = (0x2b7e1516, 0x28aed2a6, 0xabf71588, 0x09cf4f3c)
+ nist_plaintext0 = (0x6bc1bee2, 0x2e409f96, 0xe93d7e11, 0x7393172a)
+ nist_exp128_0 = (0x3ad77bb4, 0x0d7a3660, 0xa89ecaf3, 0x2466ef97)
+ enc_result128_0 = aes.aes_encipher_block(nist_aes128_key, nist_plaintext0)
+
+ print("Test 0 for AES-128.")
+ print("Key:")
+ aes.print_key(nist_aes128_key)
+ print("Block in:")
+ aes.print_block(nist_plaintext0)
+ print("Expected block out:")
+ aes.print_block(nist_exp128_0)
+ print("Got block out:")
+ aes.print_block(enc_result128_0)
+ print("")
+
+
#-------------------------------------------------------------------
#-------------------------------------------------------------------
def main():
print("Testing the KEY WRAP model")
print("===========================")
print
+ keywrap_aes_test()
#-------------------------------------------------------------------
More information about the Commits
mailing list