diff -Naur python-jose-3.2.0-original/jose/backends/ecdsa_backend.py python-jose-3.2.0/jose/backends/ecdsa_backend.py
--- python-jose-3.2.0-original/jose/backends/ecdsa_backend.py 2020-07-29 18:44:40.000000000 -0400
+++ python-jose-3.2.0/jose/backends/ecdsa_backend.py 2021-03-05 08:44:34.128359807 -0500
@@ -91,11 +91,22 @@
return ecdsa.keys.VerifyingKey.from_public_point(point, self.curve)
def sign(self, msg):
- return self.prepared_key.sign(msg, hashfunc=self.hash_alg, sigencode=ecdsa.util.sigencode_string)
+ return self.prepared_key.sign(
+ msg,
+ hashfunc=self.hash_alg,
+ sigencode=ecdsa.util.sigencode_string,
+ allow_truncate=False
+ )
def verify(self, msg, sig):
try:
- return self.prepared_key.verify(sig, msg, hashfunc=self.hash_alg, sigdecode=ecdsa.util.sigdecode_string)
+ return self.prepared_key.verify(
+ sig,
+ msg,
+ hashfunc=self.hash_alg,
+ sigdecode=ecdsa.util.sigdecode_string,
+ allow_truncate=False
+ )
except Exception:
return False
diff -Naur python-jose-3.2.0-original/requirements.txt python-jose-3.2.0/requirements.txt
--- python-jose-3.2.0-original/requirements.txt 2020-07-29 18:44:45.000000000 -0400
+++ python-jose-3.2.0/requirements.txt 2021-03-05 08:51:54.636194256 -0500
@@ -1,5 +1,5 @@
pycryptodome
six
rsa
-ecdsa<0.15
+ecdsa != 0.15
pyasn1
diff -Naur python-jose-3.2.0-original/setup.py python-jose-3.2.0/setup.py
--- python-jose-3.2.0-original/setup.py 2020-07-29 18:46:23.000000000 -0400
+++ python-jose-3.2.0/setup.py 2021-03-05 08:48:18.808805515 -0500
@@ -38,7 +38,7 @@
'pycrypto': ['pycrypto >=2.6.0, <2.7.0'] + pyasn1,
'pycryptodome': ['pycryptodome >=3.3.1, <4.0.0'] + pyasn1,
}
-legacy_backend_requires = ['ecdsa <0.15', 'rsa'] + pyasn1
+legacy_backend_requires = ['ecdsa != 0.15', 'rsa'] + pyasn1
install_requires = ['six <2.0']
# TODO: work this into the extras selection instead.
@@ -76,7 +76,7 @@
],
tests_require=[
'six',
- 'ecdsa',
+ 'ecdsa != 0.15',
'pytest',
'pytest-cov',
'pytest-runner',