aboutsummaryrefslogtreecommitdiffstats
path: root/src/cryptography/hazmat/backends/openssl/dsa.py
diff options
context:
space:
mode:
authorAviv Palivoda <palaviv@gmail.com>2016-06-30 21:42:46 +0300
committerPaul Kehrer <paul.l.kehrer@gmail.com>2016-06-30 13:42:46 -0500
commitf67429b9d199931eb695524724a947847ed1f808 (patch)
tree6cf38e2a2fdf93074964264963ba575722cb9ea2 /src/cryptography/hazmat/backends/openssl/dsa.py
parent602f88f35dfda15c031de0dce5305e4850df7e07 (diff)
downloadcryptography-f67429b9d199931eb695524724a947847ed1f808.tar.gz
cryptography-f67429b9d199931eb695524724a947847ed1f808.tar.bz2
cryptography-f67429b9d199931eb695524724a947847ed1f808.zip
One shot sign/verify DSA (#3003)
* Add sign and verify methods to DSA * Documented DSA sign/verify methods * Added CHANGELOG entry
Diffstat (limited to 'src/cryptography/hazmat/backends/openssl/dsa.py')
-rw-r--r--src/cryptography/hazmat/backends/openssl/dsa.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/cryptography/hazmat/backends/openssl/dsa.py b/src/cryptography/hazmat/backends/openssl/dsa.py
index 1012d044..43702861 100644
--- a/src/cryptography/hazmat/backends/openssl/dsa.py
+++ b/src/cryptography/hazmat/backends/openssl/dsa.py
@@ -197,6 +197,11 @@ class _DSAPrivateKey(object):
self._dsa_cdata
)
+ def sign(self, data, algorithm):
+ signer = self.signer(algorithm)
+ signer.update(data)
+ return signer.finalize()
+
@utils.register_interface(dsa.DSAPublicKeyWithSerialization)
class _DSAPublicKey(object):
@@ -263,3 +268,8 @@ class _DSAPublicKey(object):
self._evp_pkey,
None
)
+
+ def verify(self, signature, data, algorithm):
+ verifier = self.verifier(signature, algorithm)
+ verifier.update(data)
+ verifier.verify()