fix removed cryptography.utils.register_interface
This commit is contained in:
@@ -34,34 +34,67 @@ def _openssl_get_supported_curves():
|
|||||||
return curves
|
return curves
|
||||||
|
|
||||||
|
|
||||||
@utils.register_interface(ec.EllipticCurve)
|
def use_legacy_cryptography_decorator():
|
||||||
class BrainpoolP256R1(object):
|
"""
|
||||||
name = 'brainpoolP256r1'
|
The decorator utils.register_interface was removed in version 38.0.0. Keep using it
|
||||||
key_size = 256
|
if the decorator exists, inherit from `ec.EllipticCurve` otherwise.
|
||||||
|
"""
|
||||||
|
return hasattr(utils, "register_interface") and callable(utils.register_interface)
|
||||||
|
|
||||||
|
|
||||||
@utils.register_interface(ec.EllipticCurve)
|
if use_legacy_cryptography_decorator():
|
||||||
class BrainpoolP384R1(object):
|
@utils.register_interface(ec.EllipticCurve)
|
||||||
name = 'brainpoolP384r1'
|
class BrainpoolP256R1(object):
|
||||||
key_size = 384
|
name = 'brainpoolP256r1'
|
||||||
|
key_size = 256
|
||||||
|
|
||||||
|
|
||||||
@utils.register_interface(ec.EllipticCurve)
|
@utils.register_interface(ec.EllipticCurve)
|
||||||
class BrainpoolP512R1(object):
|
class BrainpoolP384R1(object):
|
||||||
name = 'brainpoolP512r1'
|
name = 'brainpoolP384r1'
|
||||||
key_size = 512
|
key_size = 384
|
||||||
|
|
||||||
|
|
||||||
@utils.register_interface(ec.EllipticCurve)
|
@utils.register_interface(ec.EllipticCurve)
|
||||||
class X25519(object):
|
class BrainpoolP512R1(object):
|
||||||
name = 'X25519'
|
name = 'brainpoolP512r1'
|
||||||
key_size = 256
|
key_size = 512
|
||||||
|
|
||||||
|
|
||||||
@utils.register_interface(ec.EllipticCurve)
|
@utils.register_interface(ec.EllipticCurve)
|
||||||
class Ed25519(object):
|
class X25519(object):
|
||||||
name = 'ed25519'
|
name = 'X25519'
|
||||||
key_size = 256
|
key_size = 256
|
||||||
|
|
||||||
|
|
||||||
|
@utils.register_interface(ec.EllipticCurve)
|
||||||
|
class Ed25519(object):
|
||||||
|
name = 'ed25519'
|
||||||
|
key_size = 256
|
||||||
|
else:
|
||||||
|
class BrainpoolP256R1(ec.EllipticCurve):
|
||||||
|
name = 'brainpoolP256r1'
|
||||||
|
key_size = 256
|
||||||
|
|
||||||
|
|
||||||
|
class BrainpoolP384R1(ec.EllipticCurve):
|
||||||
|
name = 'brainpoolP384r1'
|
||||||
|
key_size = 384
|
||||||
|
|
||||||
|
|
||||||
|
class BrainpoolP512R1(ec.EllipticCurve):
|
||||||
|
name = 'brainpoolP512r1'
|
||||||
|
key_size = 512
|
||||||
|
|
||||||
|
|
||||||
|
class X25519(ec.EllipticCurve):
|
||||||
|
name = 'X25519'
|
||||||
|
key_size = 256
|
||||||
|
|
||||||
|
|
||||||
|
class Ed25519(ec.EllipticCurve):
|
||||||
|
name = 'ed25519'
|
||||||
|
key_size = 256
|
||||||
|
|
||||||
|
|
||||||
# add these curves to the _CURVE_TYPES list
|
# add these curves to the _CURVE_TYPES list
|
||||||
|
|||||||
Reference in New Issue
Block a user