aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Reid <dreid@dreid.org>2013-11-11 16:05:58 -0800
committerDavid Reid <dreid@dreid.org>2013-11-11 16:05:58 -0800
commit92beb221fc0a1bd8ef1b955a98e1385daed0f207 (patch)
treebbf0a9b6fdee1423ad3a8e8f63944b5d1eaeb9bf
parent1759037b7078872e67e81f43518131a3f7021b4f (diff)
parentcf5fb332af542a6a38da8b8f481a358f32e5e154 (diff)
downloadcryptography-92beb221fc0a1bd8ef1b955a98e1385daed0f207.tar.gz
cryptography-92beb221fc0a1bd8ef1b955a98e1385daed0f207.tar.bz2
cryptography-92beb221fc0a1bd8ef1b955a98e1385daed0f207.zip
Merge pull request #242 from alex/ignore-nist-sections
Ignore the sections of the NIST files
-rw-r--r--tests/hazmat/primitives/test_3des.py12
-rw-r--r--tests/hazmat/primitives/test_aes.py8
-rw-r--r--tests/hazmat/primitives/test_arc4.py4
-rw-r--r--tests/hazmat/primitives/test_blowfish.py8
-rw-r--r--tests/hazmat/primitives/test_cast5.py6
-rw-r--r--tests/test_utils.py59
-rw-r--r--tests/utils.py13
7 files changed, 27 insertions, 83 deletions
diff --git a/tests/hazmat/primitives/test_3des.py b/tests/hazmat/primitives/test_3des.py
index af6bdc04..1543cfd7 100644
--- a/tests/hazmat/primitives/test_3des.py
+++ b/tests/hazmat/primitives/test_3des.py
@@ -28,7 +28,7 @@ from ...utils import load_nist_vectors_from_file
class TestTripleDES_CBC(object):
test_KAT = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "3DES", "CBC"),
[
"TCBCinvperm.rsp",
@@ -42,7 +42,7 @@ class TestTripleDES_CBC(object):
)
test_MMT = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "3DES", "CBC"),
[
"TCBCMMT1.rsp",
@@ -58,7 +58,7 @@ class TestTripleDES_CBC(object):
class TestTripleDES_OFB(object):
test_KAT = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "3DES", "OFB"),
[
"TOFBpermop.rsp",
@@ -72,7 +72,7 @@ class TestTripleDES_OFB(object):
)
test_MMT = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "3DES", "OFB"),
[
"TOFBMMT1.rsp",
@@ -88,7 +88,7 @@ class TestTripleDES_OFB(object):
class TestTripleDES_CFB(object):
test_KAT = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "3DES", "CFB"),
[
"TCFB64invperm.rsp",
@@ -102,7 +102,7 @@ class TestTripleDES_CFB(object):
)
test_MMT = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "3DES", "CFB"),
[
"TCFB64MMT1.rsp",
diff --git a/tests/hazmat/primitives/test_aes.py b/tests/hazmat/primitives/test_aes.py
index 66471fac..c4818409 100644
--- a/tests/hazmat/primitives/test_aes.py
+++ b/tests/hazmat/primitives/test_aes.py
@@ -26,7 +26,7 @@ from ...utils import (
class TestAES(object):
test_CBC = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "AES", "CBC"),
[
"CBCGFSbox128.rsp",
@@ -50,7 +50,7 @@ class TestAES(object):
)
test_ECB = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "AES", "ECB"),
[
"ECBGFSbox128.rsp",
@@ -74,7 +74,7 @@ class TestAES(object):
)
test_OFB = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "AES", "OFB"),
[
"OFBGFSbox128.rsp",
@@ -98,7 +98,7 @@ class TestAES(object):
)
test_CFB = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "AES", "CFB"),
[
"CFB128GFSbox128.rsp",
diff --git a/tests/hazmat/primitives/test_arc4.py b/tests/hazmat/primitives/test_arc4.py
index cf0c5eb4..71b5d63a 100644
--- a/tests/hazmat/primitives/test_arc4.py
+++ b/tests/hazmat/primitives/test_arc4.py
@@ -23,8 +23,8 @@ from ...utils import load_nist_vectors_from_file
class TestARC4(object):
- test_thing = generate_stream_encryption_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ test_rfc = generate_stream_encryption_test(
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "ARC4"),
[
"rfc-6229-40.txt",
diff --git a/tests/hazmat/primitives/test_blowfish.py b/tests/hazmat/primitives/test_blowfish.py
index a7f13823..6f670ad7 100644
--- a/tests/hazmat/primitives/test_blowfish.py
+++ b/tests/hazmat/primitives/test_blowfish.py
@@ -24,7 +24,7 @@ from ...utils import load_nist_vectors_from_file
class TestBlowfish(object):
test_ECB = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "Blowfish"),
["bf-ecb.txt"],
lambda key: algorithms.Blowfish(binascii.unhexlify(key)),
@@ -36,7 +36,7 @@ class TestBlowfish(object):
)
test_CBC = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "Blowfish"),
["bf-cbc.txt"],
lambda key, iv: algorithms.Blowfish(binascii.unhexlify(key)),
@@ -48,7 +48,7 @@ class TestBlowfish(object):
)
test_OFB = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "Blowfish"),
["bf-ofb.txt"],
lambda key, iv: algorithms.Blowfish(binascii.unhexlify(key)),
@@ -60,7 +60,7 @@ class TestBlowfish(object):
)
test_CFB = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "Blowfish"),
["bf-cfb.txt"],
lambda key, iv: algorithms.Blowfish(binascii.unhexlify(key)),
diff --git a/tests/hazmat/primitives/test_cast5.py b/tests/hazmat/primitives/test_cast5.py
index b2988437..4256e2c4 100644
--- a/tests/hazmat/primitives/test_cast5.py
+++ b/tests/hazmat/primitives/test_cast5.py
@@ -24,11 +24,9 @@ from ...utils import load_nist_vectors_from_file
class TestCAST5(object):
test_ECB = generate_encrypt_test(
- lambda path: load_nist_vectors_from_file(path, "ENCRYPT"),
+ lambda path: load_nist_vectors_from_file(path),
os.path.join("ciphers", "CAST5"),
- [
- "cast5-ecb.txt",
- ],
+ ["cast5-ecb.txt"],
lambda key: algorithms.CAST5(binascii.unhexlify((key))),
lambda key: modes.ECB(),
only_if=lambda backend: backend.ciphers.supported(
diff --git a/tests/test_utils.py b/tests/test_utils.py
index 0692c8d1..435690b7 100644
--- a/tests/test_utils.py
+++ b/tests/test_utils.py
@@ -24,7 +24,7 @@ from .utils import (
)
-def test_load_nist_vectors_encrypt():
+def test_load_nist_vectors():
vector_data = textwrap.dedent("""
# CAVS 11.1
# Config info for aes_values
@@ -62,7 +62,7 @@ def test_load_nist_vectors_encrypt():
PLAINTEXT = 9798c4640bad75c7c3227db910174e72
""").splitlines()
- assert load_nist_vectors(vector_data, "ENCRYPT") == [
+ assert load_nist_vectors(vector_data) == [
{
"key": b"00000000000000000000000000000000",
"iv": b"00000000000000000000000000000000",
@@ -75,48 +75,6 @@ def test_load_nist_vectors_encrypt():
"plaintext": b"9798c4640bad75c7c3227db910174e72",
"ciphertext": b"a9a1631bf4996954ebc093957b234589",
},
- ]
-
-
-def test_load_nist_vectors_decrypt():
- vector_data = textwrap.dedent("""
- # CAVS 11.1
- # Config info for aes_values
- # AESVS GFSbox test data for CBC
- # State : Encrypt and Decrypt
- # Key Length : 128
- # Generated on Fri Apr 22 15:11:33 2011
-
- [ENCRYPT]
-
- COUNT = 0
- KEY = 00000000000000000000000000000000
- IV = 00000000000000000000000000000000
- PLAINTEXT = f34481ec3cc627bacd5dc3fb08f273e6
- CIPHERTEXT = 0336763e966d92595a567cc9ce537f5e
-
- COUNT = 1
- KEY = 00000000000000000000000000000000
- IV = 00000000000000000000000000000000
- PLAINTEXT = 9798c4640bad75c7c3227db910174e72
- CIPHERTEXT = a9a1631bf4996954ebc093957b234589
-
- [DECRYPT]
-
- COUNT = 0
- KEY = 00000000000000000000000000000000
- IV = 00000000000000000000000000000000
- CIPHERTEXT = 0336763e966d92595a567cc9ce537f5e
- PLAINTEXT = f34481ec3cc627bacd5dc3fb08f273e6
-
- COUNT = 1
- KEY = 00000000000000000000000000000000
- IV = 00000000000000000000000000000000
- CIPHERTEXT = a9a1631bf4996954ebc093957b234589
- PLAINTEXT = 9798c4640bad75c7c3227db910174e72
- """).splitlines()
-
- assert load_nist_vectors(vector_data, "DECRYPT") == [
{
"key": b"00000000000000000000000000000000",
"iv": b"00000000000000000000000000000000",
@@ -132,10 +90,9 @@ def test_load_nist_vectors_decrypt():
]
-def test_load_nist_vectors_from_file_encrypt():
+def test_load_nist_vectors_from_file():
assert load_nist_vectors_from_file(
- os.path.join("ciphers", "AES", "CBC", "CBCGFSbox128.rsp"),
- "ENCRYPT"
+ os.path.join("ciphers", "AES", "CBC", "CBCGFSbox128.rsp")
) == [
{
"key": b"00000000000000000000000000000000",
@@ -179,14 +136,6 @@ def test_load_nist_vectors_from_file_encrypt():
"plaintext": b"58c8e00b2631686d54eab84b91f0aca1",
"ciphertext": b"08a4e2efec8a8e3312ca7460b9040bbf",
},
- ]
-
-
-def test_load_nist_vectors_from_file_decrypt():
- assert load_nist_vectors_from_file(
- os.path.join("ciphers", "AES", "CBC", "CBCGFSbox128.rsp"),
- "DECRYPT",
- ) == [
{
"key": b"00000000000000000000000000000000",
"iv": b"00000000000000000000000000000000",
diff --git a/tests/utils.py b/tests/utils.py
index cc56a9ac..0b215543 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -14,7 +14,7 @@
import os.path
-def load_nist_vectors(vector_data, op):
+def load_nist_vectors(vector_data):
section = None
count = None
data = {}
@@ -35,32 +35,29 @@ def load_nist_vectors(vector_data, op):
section = line[1:-1]
continue
- if section != op:
- continue
-
# Build our data using a simple Key = Value format
name, value = line.split(" = ")
# COUNT is a special token that indicates a new block of data
if name.upper() == "COUNT":
count = value
- data[count] = {}
+ data[section, count] = {}
# For all other tokens we simply want the name, value stored in
# the dictionary
else:
- data[count][name.lower()] = value.encode("ascii")
+ data[section, count][name.lower()] = value.encode("ascii")
# We want to test only for a particular operation, we sort them for the
# benefit of the tests of this function.
return [v for k, v in sorted(data.items(), key=lambda kv: kv[0])]
-def load_nist_vectors_from_file(filename, op):
+def load_nist_vectors_from_file(filename):
base = os.path.join(
os.path.dirname(__file__), "hazmat", "primitives", "vectors",
)
with open(os.path.join(base, filename), "r") as vector_file:
- return load_nist_vectors(vector_file, op)
+ return load_nist_vectors(vector_file)
def load_cryptrec_vectors_from_file(filename):