我正在使用 CXF ws secuirty 创建客户端以将 WS 安全 SOAP 信封发送给第三方。当我从本地 Tomcat 服务器发送请求时,我收到 200 响应,但是,当我部署到 websphere 时,我收到 500 响应。我比较了 Tomcat 和 Websphere 的信封和日志。一切都匹配(签名算法、签名提供者、X509 证书)。当我与第三方交谈时,他们说 RSA 签名无效。我能找到的唯一区别是“用密钥签名”日志。在 websphere 上,密钥似乎由不同的包提供。这是问题吗?如果是这样,我该如何解决?
Websphere 日志:
org.apache.jcp.xml.dsig.internal.dom.DOMSignatureMethod - Signature provider:BC version 1.4
org.apache.jcp.xml.dsig.internal.dom.DOMSignatureMethod - Signing with key: com.ibm.crypto.provider.RSAPrivateCrtKey
org.apache.jcp.xml.dsig.internal.dom.DOMSignatureMethod - JCA Algorithm: SHA256withRSA
Tomcat 日志(我删除了一些值):
org.apache.jcp.xml.dsig.internal.dom.DOMSignatureMethod - Signature provider:BC version 1.4
org.apache.jcp.xml.dsig.internal.dom.DOMSignatureMethod - Signing with key: RSA Private CRT Key
modulus: --removed value--
public exponent: --removed value--
private exponent: --removed value--
primeP: --removed value--
primeQ: --removed value--
primeExponentP: --removed value--
primeExponentQ: --removed value--
crtCoefficient: --removed value--
org.apache.jcp.xml.dsig.internal.dom.DOMSignatureMethod - JCA Algorithm: SHA256withRSA