• Publicidad

Firmar un XML

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Firmar un XML

Notapor audax » 2016-06-13 15:43 @697

Un gusto en saludarlos nuevamente.

El siguiente problema que tengo me está desesperando, les pido su ayuda de alguien que sepa.

Resulta que necesito firmar digitalmente un trozo de texto:
Sintáxis: [ Descargar ] [ Ocultar ]
Using xml Syntax Highlighting
  1. <getToken>
  2. <item>
  3. <SEMILLA>000002248802</SEMILLA>
  4. </item></getToken>
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


El tema es que no logro encontrar las librerías adecuadas para ello, ya que leí por ahí que esto lo hacía la librería xml::sig, pero en Windows no se puede instalar. Tengo el certificado y la llave privada para ver dónde se necesita.

Por una aplicación externa y licenciada logré firmar ese texto, pero tengo que hacerlo por Perl y no logro llegar al mismo resultado. Por favor, si alguien sabe me dice. Gracias de antemano. Dejo el texto del XML firmado para que lo vean.

Sintáxis: [ Descargar ] [ Ocultar ]
Using xml Syntax Highlighting
  1. <getToken>
  2. <item>
  3. <Semilla>000002248802</Semilla>
  4. </item>
  5. <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo>
  6. <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
  7. <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
  8. <Reference URI="">
  9. <Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /></Transforms>
  10. <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
  11. <DigestValue>QRUQKoAQPsbbpRENLsMKALjweuI=</DigestValue>
  12. </Reference>
  13. </SignedInfo>
  14. <SignatureValue>Nef27VdFVvSX4HtP7tjWeWQv1aDyilTIWOBN9XHvx1MbgVvNmjmgGjmOEGYqJEG0XXcPxa+qmSNMwsfxU00k76U/OnDktWfJyguRHKl81D2CKE7N5Ak++EqjILh/XGQDowpBW+GDtTKFUleJ2nrDHDhags0/i0TGIBMKmEwTMFw=</SignatureValue>
  15. <KeyInfo>
  16. <KeyValue>
  17. <RSAKeyValue>
  18. <Modulus>j6nvW00TDked5W/t/o8ot1qIWWkOfQCIF3Q3De37MLwW0DIZcVAoEPYJz88cPWgiaCUjjAKyLkUQJ42oVcG5z1u2JvUE9hCuSloQMtmmNaIo8fFrcZRaEHPMjOzB7jk0GyPYipxJcW2PlgREBeECV8pveLjOuVq3xnnkDpU/Ths=</Modulus>
  19. <Exponent>AQAB</Exponent>
  20. </RSAKeyValue>
  21. </KeyValue>
  22. <X509Data>
  23. <X509Certificate>MIIGSjCCBTKgAwIBAgIKdQNmhgAAAAH4tzANBgkqhkiG9w0BAQUFADCB0jELMAkGA1UEBhMC
  24. Q0wxHTAbBgNVBAgTFFJlZ2lvbiBNZXRyb3BvbGl0YW5hMREwDwYDVQQHEwhTYW50aWFnbzEUMBIGA1UEChMLRS1DR
  25. VJUQ0hJTEUxIDAeBgNVBAsTF0F1dG9yaWRhZCBDZXJ0aWZpY2Fkb3JhMTAwLgYDVQQDEydFLUNFUlRDSElMRSBDQS
  26. BGSVJNQSBFTEVDVFJPTklDQSBTSU1QTEUxJzAlBgkqhkiG9w0BCQEWGHNjbGllbnRlc0BlLWNlcnRjaGlsZS5jbDA
  27. eFw0xNDEyMzExMjExNTVaFw0xNzEyMzAxMjExNTVaMIHMMQswCQYDVQQGEwJDTDEjMCEGA1UECBMaTUVUUk9QT0xJ
  28. VEFOQSBERSBTQU5USUFHTyAxETAPBgNVBAcTCFNhbnRpYWdvMRYwFAYDVQQKEw1PbnZpc2lvbiBTLkEuMR4wHAYDV
  29. QQLExVTT0xVQ0lPTkVTIERFIE5FR09DSU8xJTAjBgNVBAMMHEFORFJFUyBJVsOBTiBMT1lPTEEgIE5BR0VMSVMxJj
  30. AkBgkqhkiG9w0BCQEWF3N1c2FuYS5sZWFsQG9udmlzaW9uLmNsMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC
  31. Pqe9bTRMOR53lb+3+jyi3WohZaQ59AIgXdDcN7fswvBbQMhlxUCgQ9gnPzxw9aCJoJSOMArIuRRAnjahVwbnPW7Ym
  32. 9QT2EK5KWhAy2aY1oijx8WtxlFoQc8yM7MHuOTQbI9iKnElxbY+WBEQF4QJXym94uM65WrfGeeQOlT9OGwIDAQABo
  33. 4ICqDCCAqQwCwYDVR0PBAQDAgTwMB0GA1UdDgQWBBT1Ls5ax1j9TJ1tPBhcseV9jU/ZmjAfBgNVHSMEGDAWgBR44T
  34. 6f0hKzejyNzTAOU7NDKQezVTA+BgNVHR8ENzA1MDOgMaAvhi1odHRwOi8vY3JsLmUtY2VydGNoaWxlLmNsL2VjZXJ
  35. 0Y2hpbGVjYUZFUy5jcmwwOwYIKwYBBQUHAQEELzAtMCsGCCsGAQUFBzABhh9odHRwOi8vb2NzcC5pbnRlcmNhcGl0
  36. LmNvbS9vY3NwMD0GCSsGAQQBgjcVBwQwMC4GJisGAQQBgjcVCILcgy+Fk4xmhdWdF4Li3CeB7+w8YYHLnhSGqIJYA
  37. gFkAgEEMCMGA1UdEQQcMBqgGAYIKwYBBAHBAQGgDBYKMDc2NjQwNzAtSzAjBgNVHRIEHDAaoBgGCCsGAQQBwQECoA
  38. wWCjk2OTI4MTgwLTUwggFNBgNVHSAEggFEMIIBQDCCATwGCCsGAQQBw1IFMIIBLjAtBggrBgEFBQcCARYhaHR0cDo
  39. vL3d3dy5lLWNlcnRjaGlsZS5jbC9DUFMuaHRtMIH8BggrBgEFBQcCAjCB7x6B7ABDAGUAcgB0AGkAZgBpAGMAYQBk
  40. AG8AIABGAGkAcgBtAGEAIABTAGkAbQBwAGwAZQAuACAASABhACAAcwBpAGQAbwAgAHYAYQBsAGkAZABhAGQAbwAgA
  41. GUAbgAgAGYAbwByAG0AYQAgAHAAcgBlAHMAZQBuAGMAaQBhAGwALAAgAHEAdQBlAGQAYQBuAGQAbwAgAGgAYQBiAG
  42. kAbABpAHQAYQBkAG8AIABlAGwAIABDAGUAcgB0AGkAZgBpAGMAYQBkAG8AIABwAGEAcgBhACAAdQBzAG8AIAB0AHI
  43. AaQBiAHUAdABhAHIAaQBvMA0GCSqGSIb3DQEBBQUAA4IBAQBtxyJLYFWa7ur5P9NbkpjFUFDH2vakpbsD04U9oxXL
  44. NOZXxLXGAHYUrHtl8eX0srAf5vvMND4jgZxb+dfBBtzYKvHGkRHdUJuHmSH8vBlDt7C/CfYMbCuRFMAH14/6h/KSU
  45. 4yx7d+cfTlZQaDkvuj4pHYmFdvwnas1mL1e+BxYGI607N9EkUm7qg5bvwSQJm/1jGtx5qY+9sLLM610Ks2Kdcffbe
  46. rxCikOxyNwiL2kOMayamv+nXazbThH0Oou9PugyQp3lSsEKgoyT42ZMvG2YamY+FiIgymoaRyUPtziyIDl+cOYdhO
  47. tg09L5bKU3cwpIV2DDSY+WiZPH5lU4zlp</X509Certificate>
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Salu2
audax
Perlero nuevo
Perlero nuevo
 
Mensajes: 56
Registrado: 2013-06-03 13:16 @594

Publicidad

Re: Firmar un XML

Notapor audax » 2016-08-19 13:15 @593

Después de mucho batallar, perdí la guerra. Al final logré instalar la librería XML::Sig en Windows, pero esta librería necesitaba otras librería más que no pude instalarlo. Lo solucioné creando una aplicación de consola en C#, y desde Perl le paso el xml para que lo firme.
audax
Perlero nuevo
Perlero nuevo
 
Mensajes: 56
Registrado: 2013-06-03 13:16 @594


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron