summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorSybren A. Stüvel <sybren@stuvel.eu>2011-07-10 12:40:46 +0200
committerSybren A. Stüvel <sybren@stuvel.eu>2011-07-10 12:40:46 +0200
commitfdde99452cd975c51a178feb3483db5794990336 (patch)
treeafdc7f7853ebcccaf7b3dd66e2af0362d1d477b2 /tests
parent3fa97612cd661272b63363b5ed3d411fab1fc9a6 (diff)
downloadrsa-git-fdde99452cd975c51a178feb3483db5794990336.tar.gz
Added unittest for PKCS#1 decoding failures
Diffstat (limited to 'tests')
-rw-r--r--tests/test_pkcs1.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/tests/test_pkcs1.py b/tests/test_pkcs1.py
index 9d3d9ec..230e7f7 100644
--- a/tests/test_pkcs1.py
+++ b/tests/test_pkcs1.py
@@ -13,7 +13,7 @@ class BinaryTest(unittest.TestCase):
def test_enc_dec(self):
- message = struct.pack('>IIII', 0, 0, 0, 1) + 5 * '\x00'
+ message = struct.pack('>IIII', 0, 0, 0, 1)
print "\tMessage: %r" % message
encrypted = pkcs1.encrypt(message, self.pub)
@@ -24,6 +24,16 @@ class BinaryTest(unittest.TestCase):
self.assertEqual(message, decrypted)
+ def test_decoding_failure(self):
+
+ message = struct.pack('>IIII', 0, 0, 0, 1)
+ encrypted = pkcs1.encrypt(message, self.pub)
+
+ # Alter the encrypted stream
+ encrypted = encrypted[:5] + chr(ord(encrypted[5]) + 1) + encrypted[6:]
+
+ self.assertRaises(ValueError, pkcs1.decrypt, encrypted, self.priv)
+
# def test_sign_verify(self):
#
# message = struct.pack('>IIII', 0, 0, 0, 1) + 20 * '\x00'