Assinando um documento XML

Hoje vou mostrar como assinar um documento XML, procedimento necessário para diversas operações, um exemplo é nota fiscal eletrônica de produtos/serviços que exige a assinatura do documento usando um certificado digital válido instalado na sua máquina, token, smartcards etc…

Os certificados utilizados normalmente  são o tipo A1 e A3, sendo que o primeiro é armazenado no computador do solicitante, enquanto que o segundo é guardado em cartões inteligentes (smartcards) ou tokens protegidos por senha. Leia mais deste post