首页 > 解决方案 > 使用 xml-crypto nodejs lib 生成的签名时出现无效签名错误

问题描述

我正在使用这个 api 生成签名,然后在https://tools.chilkat.io/xmlDsigVerify.cshtml上验证它,在这种情况下它显示签名无效

示例代码

var sig = new SignedXml({}, { canonicalizationAlgorithm: 'http://www.w3.org/TR/2001/REC-xml-c14n-20010315' });
sig.signingKey = clientPrivateSignKey;

sig.keyInfoProvider = new MyFileKeyInfo(clientPublicSignCert);

sig.addReference("//*[local-name(.)='oAuthToken']", ['http://www.w3.org/2000/09/xmldsig#enveloped-signature', 'http://www.w3.org/TR/2001/REC-xml-c14n-20010315'],undefined,undefined,undefined,undefined,true);

sig.computeSignature(AUTH_V3_PAYLOAD, { prefix: 'ds' });

var signedXmlPayload = sig.getSignedXml();

console.log(signedXmlPayload);

标签: node.jscryptographyxml-signaturexml-crypto

解决方案


推荐阅读