aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/hazmat/backends/test_multibackend.py25
-rw-r--r--tests/hazmat/primitives/test_rsa.py20
2 files changed, 35 insertions, 10 deletions
diff --git a/tests/hazmat/backends/test_multibackend.py b/tests/hazmat/backends/test_multibackend.py
index ca21c9fc..ce77ce2f 100644
--- a/tests/hazmat/backends/test_multibackend.py
+++ b/tests/hazmat/backends/test_multibackend.py
@@ -16,7 +16,7 @@ import pytest
from cryptography import utils
from cryptography.exceptions import UnsupportedAlgorithm
from cryptography.hazmat.backends.interfaces import (
- CipherBackend, HashBackend, HMACBackend, PBKDF2HMACBackend
+ CipherBackend, HashBackend, HMACBackend, PBKDF2HMACBackend, RSABackend
)
from cryptography.hazmat.backends.multibackend import MultiBackend
from cryptography.hazmat.primitives import hashes, hmac
@@ -67,7 +67,7 @@ class DummyHMACBackend(object):
@utils.register_interface(PBKDF2HMACBackend)
-class DummyPBKDF2HMAC(object):
+class DummyPBKDF2HMACBackend(object):
def __init__(self, supported_algorithms):
self._algorithms = supported_algorithms
@@ -80,6 +80,12 @@ class DummyPBKDF2HMAC(object):
raise UnsupportedAlgorithm
+@utils.register_interface(RSABackend)
+class DummyRSABackend(object):
+ def generate_rsa_private_key(self, public_exponent, private_key):
+ pass
+
+
class TestMultiBackend(object):
def test_ciphers(self):
backend = MultiBackend([
@@ -134,7 +140,7 @@ class TestMultiBackend(object):
def test_pbkdf2(self):
backend = MultiBackend([
- DummyPBKDF2HMAC([hashes.MD5])
+ DummyPBKDF2HMACBackend([hashes.MD5])
])
assert backend.pbkdf2_hmac_supported(hashes.MD5())
@@ -142,3 +148,16 @@ class TestMultiBackend(object):
with pytest.raises(UnsupportedAlgorithm):
backend.derive_pbkdf2_hmac(hashes.SHA1(), 10, b"", 10, b"")
+
+ def test_rsa(self):
+ backend = MultiBackend([
+ DummyRSABackend()
+ ])
+
+ backend.generate_rsa_private_key(
+ key_size=1024, public_exponent=65537
+ )
+
+ backend = MultiBackend([])
+ with pytest.raises(UnsupportedAlgorithm):
+ backend.generate_rsa_private_key(key_size=1024, public_exponent=3)
diff --git a/tests/hazmat/primitives/test_rsa.py b/tests/hazmat/primitives/test_rsa.py
index fdd55e73..0e930e44 100644
--- a/tests/hazmat/primitives/test_rsa.py
+++ b/tests/hazmat/primitives/test_rsa.py
@@ -49,26 +49,32 @@ class TestRSA(object):
)
)
def test_generate_rsa_keys(self, backend, public_exponent, key_size):
- skey = backend.generate_rsa_private_key(public_exponent, key_size)
+ skey = rsa.RSAPrivateKey.generate(public_exponent, key_size, backend)
_check_rsa_private_key(skey)
assert skey.key_size == key_size
assert skey.public_exponent == public_exponent
def test_generate_bad_rsa_key(self, backend):
with pytest.raises(ValueError):
- backend.generate_rsa_private_key(public_exponent=1, key_size=2048)
+ rsa.RSAPrivateKey.generate(public_exponent=1,
+ key_size=2048,
+ backend=backend)
with pytest.raises(ValueError):
- backend.generate_rsa_private_key(public_exponent=4, key_size=2048)
+ rsa.RSAPrivateKey.generate(public_exponent=4,
+ key_size=2048,
+ backend=backend)
def test_cant_generate_insecure_tiny_key(self, backend):
with pytest.raises(ValueError):
- backend.generate_rsa_private_key(public_exponent=65537,
- key_size=511)
+ rsa.RSAPrivateKey.generate(public_exponent=65537,
+ key_size=511,
+ backend=backend)
with pytest.raises(ValueError):
- backend.generate_rsa_private_key(public_exponent=65537,
- key_size=256)
+ rsa.RSAPrivateKey.generate(public_exponent=65537,
+ key_size=256,
+ backend=backend)
@pytest.mark.parametrize(
"pkcs1_example",