aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2013-10-18 21:07:36 -0500
committerPaul Kehrer <paul.l.kehrer@gmail.com>2013-10-18 21:24:05 -0500
commit7e5697c6f597ac6b0550ae3dbcc19482d10f3efe (patch)
treed73f154b93e3a20a976ec9bb166a5e52e49469e6 /tests
parenta3011beae965fde326d4977d850b2aaa9c7b216e (diff)
downloadcryptography-7e5697c6f597ac6b0550ae3dbcc19482d10f3efe.tar.gz
cryptography-7e5697c6f597ac6b0550ae3dbcc19482d10f3efe.tar.bz2
cryptography-7e5697c6f597ac6b0550ae3dbcc19482d10f3efe.zip
SHA-2 family support
Diffstat (limited to 'tests')
-rw-r--r--tests/primitives/test_hash_vectors.py56
-rw-r--r--tests/primitives/test_hashes.py40
2 files changed, 96 insertions, 0 deletions
diff --git a/tests/primitives/test_hash_vectors.py b/tests/primitives/test_hash_vectors.py
index 9a925e27..d0fe46d1 100644
--- a/tests/primitives/test_hash_vectors.py
+++ b/tests/primitives/test_hash_vectors.py
@@ -33,3 +33,59 @@ class TestSHA1(object):
only_if=lambda api: api.supports_hash(hashes.SHA1),
skip_message="Does not support SHA1",
)
+
+
+class TestSHA224(object):
+ test_SHA224 = generate_hash_test(
+ load_hash_vectors_from_file,
+ os.path.join("NIST", "SHABYTE"),
+ [
+ "SHA224LongMsg.rsp",
+ "SHA224ShortMsg.rsp",
+ ],
+ hashes.SHA224,
+ only_if=lambda api: api.supports_hash(hashes.SHA224),
+ skip_message="Does not support SHA224",
+ )
+
+
+class TestSHA256(object):
+ test_SHA256 = generate_hash_test(
+ load_hash_vectors_from_file,
+ os.path.join("NIST", "SHABYTE"),
+ [
+ "SHA256LongMsg.rsp",
+ "SHA256ShortMsg.rsp",
+ ],
+ hashes.SHA256,
+ only_if=lambda api: api.supports_hash(hashes.SHA256),
+ skip_message="Does not support SHA256",
+ )
+
+
+class TestSHA384(object):
+ test_SHA384 = generate_hash_test(
+ load_hash_vectors_from_file,
+ os.path.join("NIST", "SHABYTE"),
+ [
+ "SHA384LongMsg.rsp",
+ "SHA384ShortMsg.rsp",
+ ],
+ hashes.SHA384,
+ only_if=lambda api: api.supports_hash(hashes.SHA384),
+ skip_message="Does not support SHA384",
+ )
+
+
+class TestSHA512(object):
+ test_SHA512 = generate_hash_test(
+ load_hash_vectors_from_file,
+ os.path.join("NIST", "SHABYTE"),
+ [
+ "SHA512LongMsg.rsp",
+ "SHA512ShortMsg.rsp",
+ ],
+ hashes.SHA512,
+ only_if=lambda api: api.supports_hash(hashes.SHA512),
+ skip_message="Does not support SHA512",
+ )
diff --git a/tests/primitives/test_hashes.py b/tests/primitives/test_hashes.py
index 4ad5c89a..2f2dd1c7 100644
--- a/tests/primitives/test_hashes.py
+++ b/tests/primitives/test_hashes.py
@@ -26,3 +26,43 @@ class TestSHA1(object):
only_if=lambda api: api.supports_hash(hashes.SHA1),
skip_message="Does not support SHA1",
)
+
+
+class TestSHA224(object):
+ test_SHA224 = generate_base_hash_test(
+ hashes.SHA224,
+ digest_size=28,
+ block_size=64,
+ only_if=lambda api: api.supports_hash(hashes.SHA224),
+ skip_message="Does not support SHA224",
+ )
+
+
+class TestSHA256(object):
+ test_SHA256 = generate_base_hash_test(
+ hashes.SHA256,
+ digest_size=32,
+ block_size=64,
+ only_if=lambda api: api.supports_hash(hashes.SHA256),
+ skip_message="Does not support SHA256",
+ )
+
+
+class TestSHA384(object):
+ test_SHA384 = generate_base_hash_test(
+ hashes.SHA384,
+ digest_size=48,
+ block_size=128,
+ only_if=lambda api: api.supports_hash(hashes.SHA384),
+ skip_message="Does not support SHA384",
+ )
+
+
+class TestSHA512(object):
+ test_SHA512 = generate_base_hash_test(
+ hashes.SHA512,
+ digest_size=64,
+ block_size=128,
+ only_if=lambda api: api.supports_hash(hashes.SHA512),
+ skip_message="Does not support SHA512",
+ )