Bonjour,

je suis confronté à un problème assez gênant au niveau de la signature XML d'un document. D'après mes recherches sur Internet je ne suis pas le seul, mais aucune solution en vue néanmoins.

J'ai déjà signé des documents XML sans problème avec la classe SignedXml. La partie signature était alors semblable à
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
  <SignedInfo>
     ...
  </SignedInfo>
  <SignatureValue>...</SignatureValue>
</Signature>
Maintenant, j'ai besoin de générer une signature de la forme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
<ds:Signature>
  <ds:SignedInfo>
     ...
  </ds:SignedInfo>
  <ds:SignatureValue>...</ds:SignatureValue>
</ds:Signature>
Le namespace ds étant définit sur le document à signer.

Malheureusement le framework ne permet pas une telle signature. Le namespace ds est optionnel dans la norme XmlDSig de ce que j'ai pu comprendre et personnellement je l'aurais bien enlevé si j'avais pu, cela m'aurait bien aidé

Comment résoudre ce problème ? J'ai l'impression qu'il n'y a pas de solution simple, à part faire sa propre classe SignedXml pour la gestion du préfixe