Guidelines for Signing XML Documents

Team-Fly    

 
XML, Web Services, and the Data Revolution
By Frank  P.  Coyle
Table of Contents
Chapter 7.   XML Security


Rules for digitally signing XML.

Just as in nonelectronic life, a user should only sign what is seen. Because XML relies on transformations and substitutions during the processing of an XML document, special care needs to be taken when working with the XML Security Framework. For instance, if an XML document includes an embedded style sheet (such as when XSLT is used), it is the transformed document that should be represented to the user and signed rather than the document without the style sheet. In addition, when a document references an external style sheet, the content of that external style sheet should also be signed.

Content presentation may introduce changes.

If signing is intended to convey the judgment of a user about document content, then it is important that what gets signed is the information that was presented to that user. However, when content is presented on a screen or viewed in a printout based on some XML source, the signer must be careful to sign not only the original XML but also any style sheets or other information that may affect the presentation.

Transformations may alter content.

Some applications might operate with the original or intermediary data, but a signer should be careful about potential weaknesses introduced between the original and transformed data. This is a trust decision about the character and meaning of the transforms that an application needs to make. Consider a canonicalization algorithm that normalizes character case (lower to upper) or character composition ("e and accent " to " accented -e"). An adversary could introduce changes that are normalized and thus inconsequential to signature validity but material to a Document Object Model processor. For instance, by changing the case of a character one might influence the result of an XPath selection, introducing a serious risk if that change is normalized for signature validation but the XML processor operating over the original data returns a different result than intended. Care should be taken that all documents associated with a core XML document be part of the signature process.

Similarly, care must be taken by applications executing algorithms specified in an XML signature when additional information is supplied as parameters such as XSLT transforms. The algorithms specified in the document will often be implemented via a trusted library, yet perverse parameters might cause unacceptable processing or memory demand. As in any security infrastructure, the security of an overall system will depend on the security and integrity of procedures and personnel as well as procedural enforcement.


Team-Fly    
Top


XML, Web Services, and the Data Revolution
XML, Web Services, and the Data Revolution
ISBN: 0201776413
EAN: 2147483647
Year: 2002
Pages: 106
Authors: Frank Coyle

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net