aboutsummaryrefslogtreecommitdiffstats
path: root/src/cryptography/hazmat/backends/openssl/dsa.py
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2017-06-02 07:51:09 -1000
committerAlex Gaynor <alex.gaynor@gmail.com>2017-06-02 13:51:09 -0400
commit26fcc5c24d7ef7e905181ba044447ed15746c73b (patch)
tree00d9d9d22f28434f57dab94fa03bd357558d6db0 /src/cryptography/hazmat/backends/openssl/dsa.py
parenta7e9a22886418b43ecdebd4ea3b5acba5425e822 (diff)
downloadcryptography-26fcc5c24d7ef7e905181ba044447ed15746c73b.tar.gz
cryptography-26fcc5c24d7ef7e905181ba044447ed15746c73b.tar.bz2
cryptography-26fcc5c24d7ef7e905181ba044447ed15746c73b.zip
make signature and verification contexts error better re: prehashed (#3658)
* make signature and verification contexts error better re: prehashed * code review feedback
Diffstat (limited to 'src/cryptography/hazmat/backends/openssl/dsa.py')
-rw-r--r--src/cryptography/hazmat/backends/openssl/dsa.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/cryptography/hazmat/backends/openssl/dsa.py b/src/cryptography/hazmat/backends/openssl/dsa.py
index e2ed3dfd..c2223250 100644
--- a/src/cryptography/hazmat/backends/openssl/dsa.py
+++ b/src/cryptography/hazmat/backends/openssl/dsa.py
@@ -7,7 +7,7 @@ from __future__ import absolute_import, division, print_function
from cryptography import utils
from cryptography.exceptions import InvalidSignature
from cryptography.hazmat.backends.openssl.utils import (
- _calculate_digest_and_algorithm
+ _calculate_digest_and_algorithm, _check_not_prehashed
)
from cryptography.hazmat.primitives import hashes, serialization
from cryptography.hazmat.primitives.asymmetric import (
@@ -121,6 +121,7 @@ class _DSAPrivateKey(object):
key_size = utils.read_only_property("_key_size")
def signer(self, signature_algorithm):
+ _check_not_prehashed(signature_algorithm)
return _DSASignatureContext(self._backend, self, signature_algorithm)
def private_numbers(self):
@@ -210,6 +211,7 @@ class _DSAPublicKey(object):
if not isinstance(signature, bytes):
raise TypeError("signature must be bytes.")
+ _check_not_prehashed(signature_algorithm)
return _DSAVerificationContext(
self._backend, self, signature, signature_algorithm
)