aboutsummaryrefslogtreecommitdiffstats
path: root/docs/hazmat
diff options
context:
space:
mode:
authorAlex Gaynor <alex.gaynor@gmail.com>2014-02-27 07:35:43 -0800
committerAlex Gaynor <alex.gaynor@gmail.com>2014-02-27 07:35:43 -0800
commit4ef63b64a9517cb4b1e3f4c5b8068e3467378862 (patch)
tree167a3d2ddfe1512177c954afc3a8f4a530ae9dca /docs/hazmat
parentbd08799bcce99b94250ad3b3313826651c8c0181 (diff)
parentbb97691d33c3ebb0764f1d97bbbda387c9eaa665 (diff)
downloadcryptography-4ef63b64a9517cb4b1e3f4c5b8068e3467378862.tar.gz
cryptography-4ef63b64a9517cb4b1e3f4c5b8068e3467378862.tar.bz2
cryptography-4ef63b64a9517cb4b1e3f4c5b8068e3467378862.zip
Merge pull request #675 from reaperhulk/rsa-verification
RSA Verification Support
Diffstat (limited to 'docs/hazmat')
-rw-r--r--docs/hazmat/primitives/asymmetric/rsa.rst43
-rw-r--r--docs/hazmat/primitives/interfaces.rst4
2 files changed, 45 insertions, 2 deletions
diff --git a/docs/hazmat/primitives/asymmetric/rsa.rst b/docs/hazmat/primitives/asymmetric/rsa.rst
index 682820b3..7943981e 100644
--- a/docs/hazmat/primitives/asymmetric/rsa.rst
+++ b/docs/hazmat/primitives/asymmetric/rsa.rst
@@ -111,6 +111,49 @@ RSA
or ``modulus`` do not match the bounds specified in
:rfc:`3447`.
+ .. method:: verifier(signature, padding, algorithm, backend)
+
+ .. versionadded:: 0.3
+
+ Verify data was signed by the private key associated with this public
+ key.
+
+ .. doctest::
+
+ >>> from cryptography.hazmat.backends import default_backend
+ >>> from cryptography.hazmat.primitives import hashes
+ >>> from cryptography.hazmat.primitives.asymmetric import rsa, padding
+ >>> private_key = rsa.RSAPrivateKey.generate(
+ ... public_exponent=65537,
+ ... key_size=2048,
+ ... backend=default_backend()
+ ... )
+ >>> signer = private_key.signer(padding.PKCS1v15(), hashes.SHA256(), default_backend())
+ >>> data= b"this is some data I'd like to sign"
+ >>> signer.update(data)
+ >>> signature = signer.finalize()
+ >>> public_key = private_key.public_key()
+ >>> verifier = public_key.verifier(signature, padding.PKCS1v15(), hashes.SHA256(), default_backend())
+ >>> verifier.update(data)
+ >>> verifier.verify()
+
+ :param bytes signature: The signature to verify.
+
+ :param padding: An instance of a
+ :class:`~cryptography.hazmat.primitives.interfaces.AsymmetricPadding`
+ provider.
+
+ :param algorithm: An instance of a
+ :class:`~cryptography.hazmat.primitives.interfaces.HashAlgorithm`
+ provider.
+
+ :param backend: A
+ :class:`~cryptography.hazmat.backends.interfaces.RSABackend`
+ provider.
+
+ :returns:
+ :class:`~cryptography.hazmat.primitives.interfaces.AsymmetricVerificationContext`
+
.. _`RSA`: https://en.wikipedia.org/wiki/RSA_(cryptosystem)
.. _`public-key`: https://en.wikipedia.org/wiki/Public-key_cryptography
.. _`use 65537`: http://www.daemonology.net/blog/2009-06-11-cryptographic-right-answers.html
diff --git a/docs/hazmat/primitives/interfaces.rst b/docs/hazmat/primitives/interfaces.rst
index 5be3dd95..15ad1d1b 100644
--- a/docs/hazmat/primitives/interfaces.rst
+++ b/docs/hazmat/primitives/interfaces.rst
@@ -254,8 +254,8 @@ Asymmetric Interfaces
.. method:: verify()
- :raises cryptography.exceptions.InvalidSignature: If signature does not
- validate.
+ :raises cryptography.exceptions.InvalidSignature: If the signature does
+ not validate.
.. class:: AsymmetricPadding