-
Notifications
You must be signed in to change notification settings - Fork 192
Closed
Description
I am connecting to a java endpoint that calculates the digest in a different way. I believe it has something to do with an option to sign the Timestamp element itself or the Timestamp content.
For the following xml fragment:
<wsu:Timestamp wsu:Id="TS-f3c103e9-1897-43d8-8cf6-274bdb647678">
<wsu:Created>2016-02-24T15:32:12.693Z</wsu:Created>
<wsu:Expires>2016-02-24T15:37:12.693Z</wsu:Expires>
</wsu:Timestamp>
Java produces the following transform:
<ds:Reference URI="#TS-f3c103e9-1897-43d8-8cf6-274bdb647678">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<ec:InclusiveNamespaces xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="wsse soap"/>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>1rjXQQWVMM5KBWY8uswUynk6PCk=</ds:DigestValue>
</ds:Reference>
However, the same xml fragment produces a different digest value using xml-crypto. I am assuming it has something to do with canonicalization between node and java.
In java, there is an option to sign the "contents" or the "element". By default it signs the contents, although its difficult to tell what that really means.
Is there a known issue when interop between java/soap and other libs? Is there someway to solve the mismatch?
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels