def test_elliptic_curve(self): backend = MultiBackend([DummyEllipticCurveBackend([ec.SECT283K1])]) assert backend.elliptic_curve_supported(ec.SECT283K1()) is True assert backend.elliptic_curve_signature_algorithm_supported( ec.ECDSA(hashes.SHA256()), ec.SECT283K1()) is True backend.generate_elliptic_curve_private_key(ec.SECT283K1()) backend.load_elliptic_curve_private_numbers( ec.EllipticCurvePrivateNumbers( 1, ec.EllipticCurvePublicNumbers(2, 3, ec.SECT283K1()))) backend.load_elliptic_curve_public_numbers( ec.EllipticCurvePublicNumbers(2, 3, ec.SECT283K1())) assert backend.elliptic_curve_supported(ec.SECT163K1()) is False assert backend.elliptic_curve_signature_algorithm_supported( ec.ECDSA(hashes.SHA256()), ec.SECT163K1()) is False with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_ELLIPTIC_CURVE): backend.generate_elliptic_curve_private_key(ec.SECT163K1()) with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_ELLIPTIC_CURVE): backend.load_elliptic_curve_private_numbers( ec.EllipticCurvePrivateNumbers( 1, ec.EllipticCurvePublicNumbers(2, 3, ec.SECT163K1()))) with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_ELLIPTIC_CURVE): backend.load_elliptic_curve_public_numbers( ec.EllipticCurvePublicNumbers(2, 3, ec.SECT163K1()))
def test_elliptic_curve(self): backend = MultiBackend([ DummyEllipticCurveBackend([ ec.SECT283K1 ]) ]) assert backend.elliptic_curve_supported(ec.SECT283K1()) is True assert backend.elliptic_curve_signature_algorithm_supported( ec.ECDSA(hashes.SHA256()), ec.SECT283K1() ) is True backend.generate_elliptic_curve_private_key(ec.SECT283K1()) backend.elliptic_curve_private_key_from_numbers( ec.EllipticCurvePrivateNumbers( 1, ec.EllipticCurvePublicNumbers( 2, 3, ec.SECT283K1() ) ) ) backend.elliptic_curve_public_key_from_numbers( ec.EllipticCurvePublicNumbers( 2, 3, ec.SECT283K1() ) ) assert backend.elliptic_curve_supported(ec.SECT163K1()) is False assert backend.elliptic_curve_signature_algorithm_supported( ec.ECDSA(hashes.SHA256()), ec.SECT163K1() ) is False with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_ELLIPTIC_CURVE): backend.generate_elliptic_curve_private_key(ec.SECT163K1()) with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_ELLIPTIC_CURVE): backend.elliptic_curve_private_key_from_numbers( ec.EllipticCurvePrivateNumbers( 1, ec.EllipticCurvePublicNumbers( 2, 3, ec.SECT163K1() ) ) ) with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_ELLIPTIC_CURVE): backend.elliptic_curve_public_key_from_numbers( ec.EllipticCurvePublicNumbers( 2, 3, ec.SECT163K1() ) )
def test_elliptic_curve(self): backend = MultiBackend([ DummyEllipticCurveBackend([ ec.SECT283K1 ]) ]) assert backend.elliptic_curve_supported(ec.SECT283K1()) is True assert backend.elliptic_curve_signature_algorithm_supported( ec.ECDSA(hashes.SHA256()), ec.SECT283K1() ) is True backend.generate_elliptic_curve_private_key(ec.SECT283K1()) backend.load_elliptic_curve_private_numbers( ec.EllipticCurvePrivateNumbers( 1, ec.EllipticCurvePublicNumbers( 2, 3, ec.SECT283K1() ) ) ) backend.load_elliptic_curve_public_numbers( ec.EllipticCurvePublicNumbers( 2, 3, ec.SECT283K1() ) ) assert backend.elliptic_curve_supported(ec.SECT163K1()) is False assert backend.elliptic_curve_signature_algorithm_supported( ec.ECDSA(hashes.SHA256()), ec.SECT163K1() ) is False with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_ELLIPTIC_CURVE): backend.generate_elliptic_curve_private_key(ec.SECT163K1()) with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_ELLIPTIC_CURVE): backend.load_elliptic_curve_private_numbers( ec.EllipticCurvePrivateNumbers( 1, ec.EllipticCurvePublicNumbers( 2, 3, ec.SECT163K1() ) ) ) with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_ELLIPTIC_CURVE): backend.load_elliptic_curve_public_numbers( ec.EllipticCurvePublicNumbers( 2, 3, ec.SECT163K1() ) ) assert backend.elliptic_curve_exchange_algorithm_supported( ec.ECDH(), ec.SECT283K1() ) backend2 = MultiBackend([DummyEllipticCurveBackend([])]) assert not backend2.elliptic_curve_exchange_algorithm_supported( ec.ECDH(), ec.SECT163K1() ) with pytest.raises(UnsupportedAlgorithm): backend.derive_elliptic_curve_private_key(123, DummyCurve()) assert backend.derive_elliptic_curve_private_key( 123, ec.SECT283K1()) is None