I use https://github.com/warner/python-ecdsa library for create private key and public key.
I generated that keys
private key = 'ffbd2d76fde8d62642379e507f4ab69883e094708410392d8470246146195e56'
public key = '04' + '615a523e41d5984d5afc18e5adddddfa0ab8ac63b49933ff1b07fae90604fa6cdd6572996117b3ffce6e1258668c88fc2aad3c45eab31ef8a57b5176c91b272a'
Signed data
message = 'aaa'
signHex = privateKey.sign(message,hashfunc=hashlib.sha256).encode("hex")
# signHex : afe2f94df735d1d0c571c9c10dbd3e9271ad1dd4e6c5d523901324c01a4de25e5b9825f8de3fffeebd477f575c83997998df32e8b0a7053b5a43813f269bd4ee
when I check the sign with my keys in js online tool it says your sign is invalid. I also generated sign with same keys and checked java sign in this tool it said it is valid sign. Why online tool says invalid sign for python ecdsa sign. What is problem with python for sign?
Online Tool : https://kjur.github.io/jsrsasign/sample/sample-ecdsa.html
I solved problem. I added sigencode=sigencode_der parameter and it worked correctly.
The correct sign code :
from ecdsa import SigningKey, VerifyingKey, SECP256k1
from ecdsa.util import sigencode_der
message = 'aaa'
signHex = privateKey.sign(message,hashfunc=hashlib.sha256,sigencode=sigencode_der).encode("hex")
# signHex = 3044022072ae5b5cf026796ee8217df26eb70f3dd72016f87af0a5fd8d6a99faf51e77f802206a77d3a3acc9540721f34e776b8feb7e2ea69e321d25872d3d65b7fd15c8132d