Форум сайта python.su
Здравствуйте, уважаемые!
Помогите, пожалуйста, с написанием скрипта по сложению точек на кривой secp256k1.
Пробовал решить вопрос при помощи нейросети - вот такой получил ответ:
import ecdsa
# Константы эллиптической кривой secp256k1
curve = ecdsa.curves.SECP256k1
# Определение точек A и B с заданными координатами
xa = 55066263022277343669578718895168534326250603453777594175500187360389116729240
ya = 32670510020758816978083085130507043184471273380659243275938904335757337482424
xb = 11253563012059685825953619222107823549092147699031672238385790369351542642469
yb = 854128494371136409743727046824275711659171319271320334673044571879228005767
pointA = ecdsa.ellipticcurve.Point(curve, xa, ya, curve.order)
pointB = ecdsa.ellipticcurve.Point(curve, xb, yb, curve.order)
# Сложение точек A и B с использованием эллиптической криптографии
pointC = pointA + pointB
# Получение координат точки C
xc, yc = pointC.x(), pointC.y()
# Вывод координат точки C
print(“Координаты точки C: (xc, yc) = ({}, {})”.format(xc, yc))
но код выдаёт ошибку:
pointA = ecdsa.ellipticcurve.Point(curve, xa, ya, curve.order)
File “/usr/lib/python3/dist-packages/ecdsa/ellipticcurve.py”, line 1100, in __init__
assert self.__curve.contains_point(x, y)
AttributeError: ‘Curve’ object has no attribute ‘contains_point’
Как можно исправить? Спасибо!
Офлайн
Разобрался, написал без импорта ecdsa по формуле.
Офлайн