我想验证某个有效载荷的签名,给出一个公开的ECDSA密钥,而且我事先知道签名是正确的。我想使用 python库,但问题是,我无法使验证工作,总是得到一个InvalidSignature异常,即使签名应该是正确的。
这里是我目前使用的代码片段。公钥是base64编码和DER格式的(所以没有---BEGIN PUBLIC KEY ---等)。签名也是base64编码的。消息是一些JSON数据作为字符串,没有空格。
import base64
from cryptography.hazmat.primitives.asymmetric import ec
from cryptography.hazm
我正试图实现与完全相反的功能,在这里,我需要使用ECDSA在Python中签名,并能够在JS中验证签名。
这是我的尝试,但我非常肯定,我遗漏了在两端进行数据转换的东西。
(关键类型与上述问题的答案相同)
我试过一些其他的变体,但到目前为止都没有效果。
(对JS的验证返回False)
Python:
import os
from cryptography.hazmat.backends import default_backend
from cryptography.hazmat.primitives.asymmetric import ec
from cryptography.hazmat.p
当我试图在我的类中验证ECDSA签名时,我得到了这个错误。错误码为:
java.security.SignatureException: error decoding signature bytes.
at org.bouncycastle.jcajce.provider.asymmetric.util.DSABase.engineVerify(Unknown Source)
at java.security.Signature$Delegate.engineVerify(Signature.java:1172)
at java.security.Signature.verify(Signat
使用EJBCA (6.2.0),在Ejbca的"Admin“服务器上添加了一个ecdsa实体证书后,我尝试使用Ejbca公共网站注册这个实体证书,但是,它只提供了选择RSA密钥位长度的选项,而不是我需要的命名曲线(注意:我已经将所有的证书CA,配置文件配置为ECDSA)。在这个话题上花了几天时间在google上,我得到的印象是EJBCA只能够使用ECDSA来签署证书,而不能生成ECDSA密钥!
我想知道是否有解决此问题的方法?任何帮助都是非常感谢的!
谢谢,Harold T