aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Gaynor <alex.gaynor@gmail.com>2015-07-05 08:29:02 -0400
committerAlex Gaynor <alex.gaynor@gmail.com>2015-07-05 08:29:02 -0400
commit999605e33ae72ba439eddd22187697f0f6296171 (patch)
tree98ab3fd9efa84ba179cedac685ecc19dda5c2d71
parent6e56df3e7a6a9e08fe80c30c9815fbbbae00a682 (diff)
parent8ea90ef486632b71736c53083a8d93134c96c2db (diff)
downloadcryptography-999605e33ae72ba439eddd22187697f0f6296171.tar.gz
cryptography-999605e33ae72ba439eddd22187697f0f6296171.tar.bz2
cryptography-999605e33ae72ba439eddd22187697f0f6296171.zip
Merge pull request #2112 from reaperhulk/publickeywithserialization
move PublicKeyWithSerialization methods to PublicKey
-rw-r--r--CHANGELOG.rst12
-rw-r--r--docs/hazmat/primitives/asymmetric/dsa.rst14
-rw-r--r--docs/hazmat/primitives/asymmetric/ec.rst14
-rw-r--r--docs/hazmat/primitives/asymmetric/rsa.rst20
-rw-r--r--src/cryptography/hazmat/primitives/asymmetric/dsa.py6
-rw-r--r--src/cryptography/hazmat/primitives/asymmetric/ec.py6
-rw-r--r--src/cryptography/hazmat/primitives/asymmetric/rsa.py6
7 files changed, 35 insertions, 43 deletions
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index a540e4a0..82a3e5b6 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -152,23 +152,17 @@ Changelog
* Added
:class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKeyWithSerialization`
and deprecated ``RSAPublicKeyWithNumbers``.
-* Added
- :meth:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKeyWithSerialization.public_bytes`
- to
+* Added ``public_bytes`` to
:class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKeyWithSerialization`.
* Added
:class:`~cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicKeyWithSerialization`
and deprecated ``EllipticCurvePublicKeyWithNumbers``.
-* Added
- :meth:`~cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicKeyWithSerialization.public_bytes`
- to
+* Added ``public_bytes`` to
:class:`~cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicKeyWithSerialization`.
* Added
:class:`~cryptography.hazmat.primitives.asymmetric.dsa.DSAPublicKeyWithSerialization`
and deprecated ``DSAPublicKeyWithNumbers``.
-* Added
- :meth:`~cryptography.hazmat.primitives.asymmetric.dsa.DSAPublicKeyWithSerialization.public_bytes`
- to
+* Added ``public_bytes`` to
:class:`~cryptography.hazmat.primitives.asymmetric.dsa.DSAPublicKeyWithSerialization`.
* :class:`~cryptography.hazmat.primitives.hashes.HashAlgorithm` and
:class:`~cryptography.hazmat.primitives.hashes.HashContext` were moved from
diff --git a/docs/hazmat/primitives/asymmetric/dsa.rst b/docs/hazmat/primitives/asymmetric/dsa.rst
index e16974d5..2ceb7d7d 100644
--- a/docs/hazmat/primitives/asymmetric/dsa.rst
+++ b/docs/hazmat/primitives/asymmetric/dsa.rst
@@ -367,13 +367,6 @@ Key interfaces
:returns:
:class:`~cryptography.hazmat.primitives.asymmetric.AsymmetricVerificationContext`
-
-.. class:: DSAPublicKeyWithSerialization
-
- .. versionadded:: 0.8
-
- Extends :class:`DSAPublicKey`.
-
.. method:: public_numbers()
Create a
@@ -402,6 +395,13 @@ Key interfaces
:return bytes: Serialized key.
+.. class:: DSAPublicKeyWithSerialization
+
+ .. versionadded:: 0.8
+
+ Alias for :class:`DSAPublicKey`.
+
+
.. _`DSA`: https://en.wikipedia.org/wiki/Digital_Signature_Algorithm
.. _`public-key`: https://en.wikipedia.org/wiki/Public-key_cryptography
.. _`FIPS 186-4`: http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf
diff --git a/docs/hazmat/primitives/asymmetric/ec.rst b/docs/hazmat/primitives/asymmetric/ec.rst
index daec5df3..e0abe0ab 100644
--- a/docs/hazmat/primitives/asymmetric/ec.rst
+++ b/docs/hazmat/primitives/asymmetric/ec.rst
@@ -386,13 +386,6 @@ Key Interfaces
The elliptic curve for this key.
-
-.. class:: EllipticCurvePublicKeyWithSerialization
-
- .. versionadded:: 0.6
-
- Extends :class:`EllipticCurvePublicKey`.
-
.. method:: public_numbers()
Create a :class:`EllipticCurvePublicNumbers` object.
@@ -417,6 +410,13 @@ Key Interfaces
:return bytes: Serialized key.
+.. class:: EllipticCurvePublicKeyWithSerialization
+
+ .. versionadded:: 0.6
+
+ Alias for :class:`EllipticCurvePublicKey`.
+
+
.. _`FIPS 186-3`: http://csrc.nist.gov/publications/fips/fips186-3/fips_186-3.pdf
.. _`FIPS 186-4`: http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf
.. _`some concern`: https://crypto.stackexchange.com/questions/10263/should-we-trust-the-nist-recommended-ecc-parameters
diff --git a/docs/hazmat/primitives/asymmetric/rsa.rst b/docs/hazmat/primitives/asymmetric/rsa.rst
index 8689bad3..e8bbf5ce 100644
--- a/docs/hazmat/primitives/asymmetric/rsa.rst
+++ b/docs/hazmat/primitives/asymmetric/rsa.rst
@@ -113,10 +113,8 @@ It is also possible to serialize without encryption using
>>> pem.splitlines()[0]
'-----BEGIN RSA PRIVATE KEY-----'
-Similarly, if your public key implements
-:class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKeyWithSerialization`
-interface you can use
-:meth:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKeyWithSerialization.public_bytes`
+For public keys you can use
+:meth:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKey.public_bytes`
to serialize the key.
.. doctest::
@@ -608,13 +606,6 @@ Key interfaces
The bit length of the modulus.
-
-.. class:: RSAPublicKeyWithSerialization
-
- .. versionadded:: 0.8
-
- Extends :class:`RSAPublicKey`.
-
.. method:: public_numbers()
Create a
@@ -645,6 +636,13 @@ Key interfaces
:return bytes: Serialized key.
+.. class:: RSAPublicKeyWithSerialization
+
+ .. versionadded:: 0.8
+
+ Alias for :class:`RSAPublicKey`.
+
+
.. _`RSA`: https://en.wikipedia.org/wiki/RSA_(cryptosystem)
.. _`public-key`: https://en.wikipedia.org/wiki/Public-key_cryptography
.. _`specific mathematical properties`: https://en.wikipedia.org/wiki/RSA_(cryptosystem)#Key_generation
diff --git a/src/cryptography/hazmat/primitives/asymmetric/dsa.py b/src/cryptography/hazmat/primitives/asymmetric/dsa.py
index 733a967c..184177e0 100644
--- a/src/cryptography/hazmat/primitives/asymmetric/dsa.py
+++ b/src/cryptography/hazmat/primitives/asymmetric/dsa.py
@@ -91,9 +91,6 @@ class DSAPublicKey(object):
Returns an AsymmetricVerificationContext used for signing data.
"""
-
-@six.add_metaclass(abc.ABCMeta)
-class DSAPublicKeyWithSerialization(DSAPublicKey):
@abc.abstractmethod
def public_numbers(self):
"""
@@ -107,6 +104,9 @@ class DSAPublicKeyWithSerialization(DSAPublicKey):
"""
+DSAPublicKeyWithSerialization = DSAPublicKey
+
+
def generate_parameters(key_size, backend):
return backend.generate_dsa_parameters(key_size)
diff --git a/src/cryptography/hazmat/primitives/asymmetric/ec.py b/src/cryptography/hazmat/primitives/asymmetric/ec.py
index 631fcbf7..f1d39eed 100644
--- a/src/cryptography/hazmat/primitives/asymmetric/ec.py
+++ b/src/cryptography/hazmat/primitives/asymmetric/ec.py
@@ -85,9 +85,6 @@ class EllipticCurvePublicKey(object):
The EllipticCurve that this key is on.
"""
-
-@six.add_metaclass(abc.ABCMeta)
-class EllipticCurvePublicKeyWithSerialization(EllipticCurvePublicKey):
@abc.abstractmethod
def public_numbers(self):
"""
@@ -101,6 +98,9 @@ class EllipticCurvePublicKeyWithSerialization(EllipticCurvePublicKey):
"""
+EllipticCurvePublicKeyWithSerialization = EllipticCurvePublicKey
+
+
@utils.register_interface(EllipticCurve)
class SECT571R1(object):
name = "sect571r1"
diff --git a/src/cryptography/hazmat/primitives/asymmetric/rsa.py b/src/cryptography/hazmat/primitives/asymmetric/rsa.py
index 772473fd..89eac4d4 100644
--- a/src/cryptography/hazmat/primitives/asymmetric/rsa.py
+++ b/src/cryptography/hazmat/primitives/asymmetric/rsa.py
@@ -76,9 +76,6 @@ class RSAPublicKey(object):
The bit length of the public modulus.
"""
-
-@six.add_metaclass(abc.ABCMeta)
-class RSAPublicKeyWithSerialization(RSAPublicKey):
@abc.abstractmethod
def public_numbers(self):
"""
@@ -92,6 +89,9 @@ class RSAPublicKeyWithSerialization(RSAPublicKey):
"""
+RSAPublicKeyWithSerialization = RSAPublicKey
+
+
def generate_private_key(public_exponent, key_size, backend):
if not isinstance(backend, RSABackend):
raise UnsupportedAlgorithm(