From f0a48c6916bf7963dc27043401a73a685943a16c Mon Sep 17 00:00:00 2001 From: Paul Kehrer Date: Sat, 7 Jun 2014 17:04:13 -0500 Subject: change to sub-interface idea --- cryptography/hazmat/primitives/interfaces.py | 32 +++++++------- docs/hazmat/primitives/interfaces.rst | 66 ++++++++++++++-------------- 2 files changed, 49 insertions(+), 49 deletions(-) diff --git a/cryptography/hazmat/primitives/interfaces.py b/cryptography/hazmat/primitives/interfaces.py index e827271f..682a36da 100644 --- a/cryptography/hazmat/primitives/interfaces.py +++ b/cryptography/hazmat/primitives/interfaces.py @@ -204,6 +204,14 @@ class RSAPrivateKey(object): """ +@six.add_metaclass(abc.ABCMeta) +class RSAPrivateKeyWithNumbers(RSAPrivateKey): + def private_numbers(self): + """ + Returns an RSAPrivateNumbers. + """ + + @six.add_metaclass(abc.ABCMeta) class RSAPublicKey(object): @abc.abstractmethod @@ -219,6 +227,14 @@ class RSAPublicKey(object): """ +@six.add_metaclass(abc.ABCMeta) +class RSAPublicKeyWithNumbers(RSAPublicKey): + def public_numbers(self): + """ + Returns an RSAPublicNumbers + """ + + @six.add_metaclass(abc.ABCMeta) class DSAParameters(object): @abc.abstractproperty @@ -455,19 +471,3 @@ class EllipticCurvePublicKey(object): """ The EllipticCurve that this key is on. """ - - -@six.add_metaclass(abc.ABCMeta) -class RSAPrivateNumbersAvailable(object): - def private_numbers(self): - """ - Returns an RSAPrivateNumbers. - """ - - -@six.add_metaclass(abc.ABCMeta) -class RSAPublicNumbersAvailable(object): - def public_numbers(self): - """ - Returns an RSAPublicNumbers - """ diff --git a/docs/hazmat/primitives/interfaces.rst b/docs/hazmat/primitives/interfaces.rst index 677199ca..8e6c2548 100644 --- a/docs/hazmat/primitives/interfaces.rst +++ b/docs/hazmat/primitives/interfaces.rst @@ -163,6 +163,22 @@ Asymmetric interfaces The bit length of the modulus. +.. class:: RSAPrivateKeyWithNumbers + + .. versionadded:: 0.5 + + Extends :class:`RSAPrivateKey`. + + .. method:: private_numbers() + + Create a + :class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateNumbers` + object. + + :returns: An + :class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateNumbers` + instance. + .. class:: RSAPublicKey @@ -219,6 +235,23 @@ Asymmetric interfaces The bit length of the modulus. +.. class:: RSAPublicKeyWithNumbers + + .. versionadded:: 0.5 + + Extends :class:`RSAPublicKey`. + + .. method:: public_numbers() + + Create a + :class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicNumbers` + object. + + :returns: An + :class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicNumbers` + instance. + + .. class:: DSAParameters .. versionadded:: 0.3 @@ -492,39 +525,6 @@ Asymmetric interfaces .. attribute:: name -Raw Numbers -~~~~~~~~~~~ - -.. class:: RSAPrivateNumbersAvailable - - .. versionadded:: 0.5 - - .. method:: private_numbers() - - Create a - :class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateNumbers` - object. - - :returns: An - :class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateNumbers` - instance. - - -.. class:: RSAPublicNumbersAvailable - - .. versionadded:: 0.5 - - .. method:: public_numbers() - - Create a - :class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicNumbers` - object. - - :returns: An - :class:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicNumbers` - instance. - - Hash algorithms ~~~~~~~~~~~~~~~ -- cgit v1.2.3