diff --git a/requests_http_signature/__init__.py b/requests_http_signature/__init__.py index 9ebb4d6..4dd7509 100644 --- a/requests_http_signature/__init__.py +++ b/requests_http_signature/__init__.py @@ -26,14 +26,12 @@ class Crypto: key = self.load_pem_private_key(key, password=passphrase, backend=self.default_backend()) if self.algorithm in {"rsa-sha1", "rsa-sha256"}: hasher = self.SHA1() if self.algorithm.endswith("sha1") else self.SHA256() - signer = key.signer(padding=self.PKCS1v15(), algorithm=hasher) + return key.sign(string_to_sign, padding=self.PKCS1v15(), algorithm=hasher) elif self.algorithm in {"rsa-sha512"}: hasher = self.SHA512() - signer = key.signer(padding=self.PKCS1v15(), algorithm=hasher) + return key.sign(string_to_sign, padding=self.PKCS1v15(), algorithm=hasher) elif self.algorithm == "ecdsa-sha256": - signer = key.signer(signature_algorithm=self.ec.ECDSA(algorithm=self.SHA256())) - signer.update(string_to_sign) - return signer.finalize() + return key.sign(string_to_sign, signature_algorithm=self.ec.ECDSA(algorithm=self.SHA256())) def verify(self, signature, string_to_sign, key): if self.algorithm == "hmac-sha256":