moov-io / signedxml

pure go library for processing signed XML documents
MIT License
52 stars 44 forks source link

removed XML declaration before signature operations #53

Closed call-stack closed 3 months ago

call-stack commented 4 months ago

Overview/Description

In this merge request, I have implemented a change to the process of generating and validating XML signatures. Specifically, I've removed the XML declaration from documents before these cryptographic operations are performed.

Why the Change Was Necessary

The presence of an XML declaration was found to potentially affect the consistency of the signature generation and validation processes. Differences in the XML prolog presence could lead to mismatches in signature validation, which in turn could compromise the integrity and reliability of the system.

What Was Changed

Impact of the Change

This change standardizes how XML documents are handled, removing potential discrepancies that could arise from varying XML prolog presence. As a result, the system's cryptographic operations are now more robust and less prone to errors related to XML formatting differences.

Additional Notes

adamdecaf commented 4 months ago

@call-stack Thanks for the PR! It looks like there's a small typo to fix.

call-stack commented 4 months ago

Thanks for fixing the typo. I had moved this PR to Draft state. Reason: when we are calling doc.RemoveChild(p) it is keeping the empty line there. I raised it here but the solution provided seems to be changing indentation. Fixed with the new commit. Etree issue

adamdecaf commented 3 months ago

Thank you for this improvement!