aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2015-02-16 13:17:14 -0600
committerPaul Kehrer <paul.l.kehrer@gmail.com>2015-02-16 14:34:11 -0600
commit0d6203f25ad15d5e369e23c8a30ba9d2e42eaf1e (patch)
tree74f152da91f230f3b8c006e0ebca3eb5f86cf770 /src
parent426eee7e732f90f04740e055381f0b37dadc2df1 (diff)
downloadcryptography-0d6203f25ad15d5e369e23c8a30ba9d2e42eaf1e.tar.gz
cryptography-0d6203f25ad15d5e369e23c8a30ba9d2e42eaf1e.tar.bz2
cryptography-0d6203f25ad15d5e369e23c8a30ba9d2e42eaf1e.zip
move asymmetric signature/verification interfaces
Diffstat (limited to 'src')
-rw-r--r--src/cryptography/hazmat/backends/openssl/dsa.py10
-rw-r--r--src/cryptography/hazmat/backends/openssl/ec.py10
-rw-r--r--src/cryptography/hazmat/backends/openssl/rsa.py10
-rw-r--r--src/cryptography/hazmat/primitives/asymmetric/__init__.py35
-rw-r--r--src/cryptography/hazmat/primitives/interfaces/__init__.py50
5 files changed, 73 insertions, 42 deletions
diff --git a/src/cryptography/hazmat/backends/openssl/dsa.py b/src/cryptography/hazmat/backends/openssl/dsa.py
index 9488e260..d2972e4a 100644
--- a/src/cryptography/hazmat/backends/openssl/dsa.py
+++ b/src/cryptography/hazmat/backends/openssl/dsa.py
@@ -7,8 +7,10 @@ from __future__ import absolute_import, division, print_function
from cryptography import utils
from cryptography.exceptions import InvalidSignature
from cryptography.hazmat.backends.openssl.utils import _truncate_digest
-from cryptography.hazmat.primitives import hashes, interfaces
-from cryptography.hazmat.primitives.asymmetric import dsa
+from cryptography.hazmat.primitives import hashes
+from cryptography.hazmat.primitives.asymmetric import (
+ AsymmetricSignatureContext, AsymmetricVerificationContext, dsa
+)
from cryptography.hazmat.primitives.interfaces import (
DSAParametersWithNumbers, DSAPrivateKeyWithNumbers, DSAPublicKeyWithNumbers
)
@@ -27,7 +29,7 @@ def _truncate_digest_for_dsa(dsa_cdata, digest, backend):
return _truncate_digest(digest, order_bits)
-@utils.register_interface(interfaces.AsymmetricVerificationContext)
+@utils.register_interface(AsymmetricVerificationContext)
class _DSAVerificationContext(object):
def __init__(self, backend, public_key, signature, algorithm):
self._backend = backend
@@ -61,7 +63,7 @@ class _DSAVerificationContext(object):
raise InvalidSignature
-@utils.register_interface(interfaces.AsymmetricSignatureContext)
+@utils.register_interface(AsymmetricSignatureContext)
class _DSASignatureContext(object):
def __init__(self, backend, private_key, algorithm):
self._backend = backend
diff --git a/src/cryptography/hazmat/backends/openssl/ec.py b/src/cryptography/hazmat/backends/openssl/ec.py
index d050c6b2..52c93da9 100644
--- a/src/cryptography/hazmat/backends/openssl/ec.py
+++ b/src/cryptography/hazmat/backends/openssl/ec.py
@@ -9,8 +9,10 @@ from cryptography.exceptions import (
InvalidSignature, UnsupportedAlgorithm, _Reasons
)
from cryptography.hazmat.backends.openssl.utils import _truncate_digest
-from cryptography.hazmat.primitives import hashes, interfaces
-from cryptography.hazmat.primitives.asymmetric import ec
+from cryptography.hazmat.primitives import hashes
+from cryptography.hazmat.primitives.asymmetric import (
+ AsymmetricSignatureContext, AsymmetricVerificationContext, ec
+)
def _truncate_digest_for_ecdsa(ec_key_cdata, digest, backend):
@@ -80,7 +82,7 @@ def _sn_to_elliptic_curve(backend, sn):
)
-@utils.register_interface(interfaces.AsymmetricSignatureContext)
+@utils.register_interface(AsymmetricSignatureContext)
class _ECDSASignatureContext(object):
def __init__(self, backend, private_key, algorithm):
self._backend = backend
@@ -114,7 +116,7 @@ class _ECDSASignatureContext(object):
return self._backend._ffi.buffer(sigbuf)[:siglen_ptr[0]]
-@utils.register_interface(interfaces.AsymmetricVerificationContext)
+@utils.register_interface(AsymmetricVerificationContext)
class _ECDSAVerificationContext(object):
def __init__(self, backend, public_key, signature, algorithm):
self._backend = backend
diff --git a/src/cryptography/hazmat/backends/openssl/rsa.py b/src/cryptography/hazmat/backends/openssl/rsa.py
index a4bb283d..00ddcda3 100644
--- a/src/cryptography/hazmat/backends/openssl/rsa.py
+++ b/src/cryptography/hazmat/backends/openssl/rsa.py
@@ -10,8 +10,10 @@ from cryptography import utils
from cryptography.exceptions import (
AlreadyFinalized, InvalidSignature, UnsupportedAlgorithm, _Reasons
)
-from cryptography.hazmat.primitives import hashes, interfaces
-from cryptography.hazmat.primitives.asymmetric import rsa
+from cryptography.hazmat.primitives import hashes
+from cryptography.hazmat.primitives.asymmetric import (
+ AsymmetricSignatureContext, AsymmetricVerificationContext, rsa
+)
from cryptography.hazmat.primitives.asymmetric.padding import (
AsymmetricPadding, MGF1, OAEP, PKCS1v15, PSS
)
@@ -144,7 +146,7 @@ def _handle_rsa_enc_dec_error(backend, key):
raise ValueError("Decryption failed.")
-@utils.register_interface(interfaces.AsymmetricSignatureContext)
+@utils.register_interface(AsymmetricSignatureContext)
class _RSASignatureContext(object):
def __init__(self, backend, private_key, padding, algorithm):
self._backend = backend
@@ -331,7 +333,7 @@ class _RSASignatureContext(object):
return self._backend._ffi.buffer(sig_buf)[:sig_len]
-@utils.register_interface(interfaces.AsymmetricVerificationContext)
+@utils.register_interface(AsymmetricVerificationContext)
class _RSAVerificationContext(object):
def __init__(self, backend, public_key, signature, padding, algorithm):
self._backend = backend
diff --git a/src/cryptography/hazmat/primitives/asymmetric/__init__.py b/src/cryptography/hazmat/primitives/asymmetric/__init__.py
index 4b540884..494a7a13 100644
--- a/src/cryptography/hazmat/primitives/asymmetric/__init__.py
+++ b/src/cryptography/hazmat/primitives/asymmetric/__init__.py
@@ -3,3 +3,38 @@
# for complete details.
from __future__ import absolute_import, division, print_function
+
+import abc
+
+import six
+
+
+@six.add_metaclass(abc.ABCMeta)
+class AsymmetricSignatureContext(object):
+ @abc.abstractmethod
+ def update(self, data):
+ """
+ Processes the provided bytes and returns nothing.
+ """
+
+ @abc.abstractmethod
+ def finalize(self):
+ """
+ Returns the signature as bytes.
+ """
+
+
+@six.add_metaclass(abc.ABCMeta)
+class AsymmetricVerificationContext(object):
+ @abc.abstractmethod
+ def update(self, data):
+ """
+ Processes the provided bytes and returns nothing.
+ """
+
+ @abc.abstractmethod
+ def verify(self):
+ """
+ Raises an exception if the bytes provided to update do not match the
+ signature or the signature does not match the public key.
+ """
diff --git a/src/cryptography/hazmat/primitives/interfaces/__init__.py b/src/cryptography/hazmat/primitives/interfaces/__init__.py
index 75426aa8..acd56458 100644
--- a/src/cryptography/hazmat/primitives/interfaces/__init__.py
+++ b/src/cryptography/hazmat/primitives/interfaces/__init__.py
@@ -11,7 +11,8 @@ import six
from cryptography import utils
from cryptography.hazmat.primitives import ciphers, hashes
from cryptography.hazmat.primitives.asymmetric import (
- dsa, ec, padding, rsa
+ AsymmetricSignatureContext, AsymmetricVerificationContext, dsa, ec,
+ padding, rsa
)
from cryptography.hazmat.primitives.ciphers import modes
from cryptography.hazmat.primitives.padding import PaddingContext
@@ -326,36 +327,25 @@ AsymmetricPadding = utils.deprecated(
utils.DeprecatedIn08
)
+AsymmetricSignatureContext = utils.deprecated(
+ AsymmetricSignatureContext,
+ __name__,
+ (
+ "The AsymmetricPadding interface has moved to the "
+ "cryptography.hazmat.primitives.asymmetric module"
+ ),
+ utils.DeprecatedIn08
+)
-@six.add_metaclass(abc.ABCMeta)
-class AsymmetricSignatureContext(object):
- @abc.abstractmethod
- def update(self, data):
- """
- Processes the provided bytes and returns nothing.
- """
-
- @abc.abstractmethod
- def finalize(self):
- """
- Returns the signature as bytes.
- """
-
-
-@six.add_metaclass(abc.ABCMeta)
-class AsymmetricVerificationContext(object):
- @abc.abstractmethod
- def update(self, data):
- """
- Processes the provided bytes and returns nothing.
- """
-
- @abc.abstractmethod
- def verify(self):
- """
- Raises an exception if the bytes provided to update do not match the
- signature or the signature does not match the public key.
- """
+AsymmetricVerificationContext = utils.deprecated(
+ AsymmetricVerificationContext,
+ __name__,
+ (
+ "The AsymmetricVerificationContext interface has moved to the "
+ "cryptography.hazmat.primitives.asymmetric module"
+ ),
+ utils.DeprecatedIn08
+)
@six.add_metaclass(abc.ABCMeta)