我在验证签名的XML文件基于XML安全标准。
我在跑:
xmlsec1 1.2.19 (openssl)
这是证书用于验证:
wget -O 证书.pem http://pastie.org/pastes/8532183/text?key=r4juxvisjzv9s7rqbkv1dw
而实际.xml:
wget -O 文件.xml http://www.nordea.fi/sitemod/upload/root/content/nordea_fi_fi/yritysasiakkaat/yhteys_pankkiin/muut/SOAPrequest_GetUserInfo.xml
我用来执行签名验证的命令行:
xmlsec1 --verify --pubkey-cert-pem cert.pem --id-attr:Id 正文文件.xml
我得到的错误是:
func=xmlSecOpenSSLEvpDigestVerify:file=digests.c:line=250:obj=sha1:subj=unknown:error=12:invalid
data:data and digest do not match
FAIL
SignedInfo References (ok/all):
0/1 Manifests References (ok/all): 0/0
错误:无法验证文件“file.xml”
我可能做错了什么(也许是--id 属性参数应该不同吗?
谢谢。
答案1
摘要实际上是由第三方计算出来的,存在错误。