aboutsummaryrefslogtreecommitdiffstats
path: root/tests/hazmat
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2014-07-07 13:56:48 -0500
committerPaul Kehrer <paul.l.kehrer@gmail.com>2014-07-07 13:56:48 -0500
commitcc5d1bf129c7e1a41906101fd1cb142b74765303 (patch)
treeb8e749384daac7c551b375266ffa1f83ad3e05e4 /tests/hazmat
parente4b1e854e0482ae4bc363f7938ad5b214c124d9f (diff)
downloadcryptography-cc5d1bf129c7e1a41906101fd1cb142b74765303.tar.gz
cryptography-cc5d1bf129c7e1a41906101fd1cb142b74765303.tar.bz2
cryptography-cc5d1bf129c7e1a41906101fd1cb142b74765303.zip
add PKCS8SerializationBackend support to MultiBackend
Diffstat (limited to 'tests/hazmat')
-rw-r--r--tests/hazmat/backends/test_multibackend.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/tests/hazmat/backends/test_multibackend.py b/tests/hazmat/backends/test_multibackend.py
index a68fe560..19795634 100644
--- a/tests/hazmat/backends/test_multibackend.py
+++ b/tests/hazmat/backends/test_multibackend.py
@@ -19,7 +19,7 @@ from cryptography.exceptions import (
)
from cryptography.hazmat.backends.interfaces import (
CMACBackend, CipherBackend, DSABackend, EllipticCurveBackend, HMACBackend,
- HashBackend, PBKDF2HMACBackend, RSABackend
+ HashBackend, PBKDF2HMACBackend, PKCS8SerializationBackend, RSABackend
)
from cryptography.hazmat.backends.multibackend import MultiBackend
from cryptography.hazmat.primitives import cmac, hashes, hmac
@@ -192,6 +192,12 @@ class DummyEllipticCurveBackend(object):
raise UnsupportedAlgorithm(_Reasons.UNSUPPORTED_ELLIPTIC_CURVE)
+@utils.register_interface(PKCS8SerializationBackend)
+class DummyPKCS8SerializationBackend(object):
+ def load_pkcs8_pem_private_key(self, data, password):
+ pass
+
+
class TestMultiBackend(object):
def test_ciphers(self):
backend = MultiBackend([
@@ -471,3 +477,12 @@ class TestMultiBackend(object):
ec.SECT163K1()
)
)
+
+ def test_pkcs8_serialization_backend(self):
+ backend = MultiBackend([DummyPKCS8SerializationBackend()])
+
+ backend.load_pkcs8_pem_private_key(b"keydata", None)
+
+ backend = MultiBackend([])
+ with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_KEY_FORMAT):
+ backend.load_pkcs8_pem_private_key(b"keydata", None)