Problema na carta de correção eletrônica

Boa tarde galera.

Estou tentando implementar a carta de correção aqui na empresa.
Só que na hora em que vou assinar o arquivo, o meu objeto assinador o faz na tag raiz.

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<envEvento xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.00">
	<idLote>000000000000001</idLote>
	<evento versao="1.00">
		<infEvento Id="ID1101103112030701349100015455001000010000117013491101">
			<cOrgao>31</cOrgao>
			<tpAmb>2</tpAmb>
			<CNPJ>07013491000154</CNPJ>
			<chNFe>31120307013491000154550010000100001170134911</chNFe>
			<dhEvento>2012-03-21T16:39:59-03:00</dhEvento>
			<tpEvento>110110</tpEvento>
			<nSeqEvento>1</nSeqEvento>
			<verEvento>1.00</verEvento>
			<detEvento versao="1.00">
				<descEvento>Carta de Correcao</descEvento>
				<xCorrecao>adsadsadaasdsadasdad</xCorrecao>
				<xCondUso>A Carta de Correcao e disciplinada pelo paragrafo 1o-A do art. 7o do Convenio S/N, de 15 de dezembro de 1970 e pode ser utilizada para regularizacao de erro ocorrido na emissao de documento fiscal, desde que o erro nao esteja relacionado com: I - as variaveis que determinam o valor do imposto tais como: base de calculo, aliquota, diferenca de preco, quantidade, valor da operacao ou da prestacao; II - a correcao de dados cadastrais que implique mudanca do remetente ou do destinatario; III - a data de emissao ou de saida.</xCondUso>
			</detEvento>
		</infEvento>
	</evento>
	<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
		<SignedInfo>
			<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
			<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
			<Reference URI="#ID1101103112030701349100015455001000010000117013491101">
				<Transforms>
					<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
					<Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
				</Transforms>
				<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
				<DigestValue>KWgYLL/euJWxE+tAh4WqwMqL/PE=</DigestValue>
			</Reference>
		</SignedInfo>
		<SignatureValue>
			WGA0XwDMdCsq4B5u+GTdS2SSF24xM6gicWeIQ0jqqEkEGVhUcTTR+hR3j9rZ7LB+0OOaHwn+CM8B
			iVSkayeJ6q2jPFEF4h0lHEwzhoewakx+IgjLI8luUtvNv465uJjaYukJo9kL8EvR8Fxt8Whqhu+n
			X/wbvBEnttcIVSyGoG0=
		</SignatureValue>
		<KeyInfo>
			<X509Data>
				<X509Certificate>
					MIIGLDCCBRSgAwIBAgIIFmtkh7txdSAwDQYJKoZIhvcNAQEFBQAwTDELMAkGA1UEBhMCQlIxEzAR
					BgNVBAoTCklDUC1CcmFzaWwxKDAmBgNVBAMTH1NFUkFTQSBDZXJ0aWZpY2Fkb3JhIERpZ2l0YWwg
					djEwHhcNMTEwNzA3MTEzNjEzWhcNMTIwNzA2MTEzNjEzWjCB7jELMAkGA1UEBhMCQlIxEzARBgNV
					BAoTCklDUC1CcmFzaWwxFDASBgNVBAsTCyhFTSBCUkFOQ08pMRgwFgYDVQQLEw8wMDAwMDEwMDE5
					NzM4NDYxFDASBgNVBAsTCyhFTSBCUkFOQ08pMRQwEgYDVQQLEwsoRU0gQlJBTkNPKTEUMBIGA1UE
					CxMLKEVNIEJSQU5DTykxFDASBgNVBAsTCyhFTSBCUkFOQ08pMRQwEgYDVQQLEwsoRU0gQlJBTkNP
					KTEsMCoGA1UEAxMjRU5URVJQTEFLIFBST0RVVE9TIEVMRVRST05JQ09TIExUREEwgZ8wDQYJKoZI
					hvcNAQEBBQADgY0AMIGJAoGBAKBRidIA5vbT18CMXLlJShh5rtzBnvZCjl5P6BeXInYJBpZm8goR
					4cHScClOpfoMeCNumg3hR0CBPyp73JLPTi/P4FnqR8wOWySg1inox83B+EOFNi75m0HY8TE1RnB0
					hEpPYeFz5sh1avDd6EMZ4vZidr+i+vKDMXQHgWExtYT/AgMBAAGjggLxMIIC7TAOBgNVHQ8BAf8E
					BAMCBeAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMEMB8GA1UdIwQYMBaAFLdgqFv5sqau
					AO1069VKyZZoZvVcMIG0BgNVHREEgawwgamBE1RJQEVOVEVSUExBSy5DT00uQlKgPgYFYEwBAwSg
					NRMzMjExMjE5NTYzOTYyOTgxMzY1MzAwMDAwMDAwMDAwMDAwTUcgMi4xODkuMjYzU1NQIE1HoB4G
					BWBMAQMCoBUTE0pPU0UgQ0FSTE9TIFJJQkVJUk+gGQYFYEwBAwOgEBMOMDcwMTM0OTEwMDAxNTSg
					FwYFYEwBAwegDhMMMDAwMDAwMDAwMDAwMFcGA1UdIARQME4wTAYGYEwBAgEGMEIwQAYIKwYBBQUH
					AgEWNGh0dHA6Ly93d3cuY2VydGlmaWNhZG9kaWdpdGFsLmNvbS5ici9yZXBvc2l0b3Jpby9kcGMw
					gfAGA1UdHwSB6DCB5TBJoEegRYZDaHR0cDovL3d3dy5jZXJ0aWZpY2Fkb2RpZ2l0YWwuY29tLmJy
					L3JlcG9zaXRvcmlvL2xjci9zZXJhc2FjZHYxLmNybDBDoEGgP4Y9aHR0cDovL2xjci5jZXJ0aWZp
					Y2Fkb3MuY29tLmJyL3JlcG9zaXRvcmlvL2xjci9zZXJhc2FjZHYxLmNybDBToFGgT4ZNaHR0cDov
					L3JlcG9zaXRvcmlvLmljcGJyYXNpbC5nb3YuYnIvbGNyL1NlcmFzYS9yZXBvc2l0b3Jpby9sY3Iv
					c2VyYXNhY2R2MS5jcmwwgZcGCCsGAQUFBwEBBIGKMIGHMEcGCCsGAQUFBzAChjtodHRwOi8vd3d3
					LmNlcnRpZmljYWRvZGlnaXRhbC5jb20uYnIvY2FkZWlhcy9zZXJhc2FjZHYxLnA3YjA8BggrBgEF
					BQcwAYYwaHR0cDovL29jc3AuY2VydGlmaWNhZG9kaWdpdGFsLmNvbS5ici9zZXJhc2FjZHYxMA0G
					CSqGSIb3DQEBBQUAA4IBAQAoB6joemzkGrbrtjB558AeExG2FhvbXaCnhVqkU7A/MikmUT8Rh0ar
					PSmChwXoM54ILU8NNf7+UcDNj2aEm+nnNoYnhas0D9YKmwCPQuocvbpMY8GapiiSc/1MwglSPO5b
					GoogPMqQnwP0p/Yp8LmPeeoRtp1Mcj5JhPju74hWAuJQHtcyjBndtcLQD2BBv/oPWdEG+UyMSjsp
					Lqyh4YrtjUdFd/DRw7oW0wbjdW7RVpHlI0YAsXOEFudc/QHMu6pSelyIcip8W+F2g5qz5xIjPkhc
					L7CPmsy22kWgKNbJuk+paJvKj9DRv0YjerYv1RJK0DAVSLtPooR67pvVR13+
				</X509Certificate>
			</X509Data>
		</KeyInfo>
	</Signature>
</envEvento>

esta assinatura teria que ficar dentro da tag <evento>. Gostaria de saber se alguém tem uma solução.

voce tem que definir pelo getElementsByTagName onde vai ficar o nô de assinatura pegando pelo atributo Id

getElementsByTagName(“infEvento”)

getAttribute(“Id”)