为什么python ECDSA还不能支持负数?

2024-10-03 21:24:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图编写一个python脚本来验证ECDSA签名,但我在这方面花了很长时间。在

这是我使用的代码:

public_key = ecdsa.VerifyingKey.from_string(pubkey, curve=ecdsa.SECP256k1)
verified = public_key.verify_digest(signature, val, sigdecode=ecdsa.util.sigdecode_der)

如果签名rs为正,则效果良好,但如果其中任何一个为负,则会引发断言错误。我检查了ecdsa源代码,看到了这一行:

^{pr2}$

https://github.com/warner/python-ecdsa/blob/master/ecdsa/der.py#L105

为什么会这样?这个图书馆不是“公共”的吗?我有什么选择?删除断言行是否安全?在


Tags: key代码from脚本string断言publicecdsa