Estoy teniendo muchos problemas a la hora de firmar las facturas, ¿Alguien lo ha conseguido en C#?
Empecé adaptando la aplicación que ofrecen en PAe y he logrado firmar XMLs con una estructura muy similar a la que muestran en el ejemplo oficial, no obstante algunas etiquetas como "<DataObjectFormat>" parecen tener algunos campos distintos, (Podría ser un problema) pero en general creo que podría dar el pego.
El caso es que siempre recibo el siguiente error:
"org.apache.axis.types.URI$MalformedURIException: No scheme found in URI"
Lo que no es de extrañar ya que el campo donde se encuentra la URI <xades:Identifier> y los tres de la política de firma no hay donde entenderlos, en cada documento dicen unos valores distintos...
Actualmente la política la genero así:
Código:
<xades:SignaturePolicyIdentifier>
<xades:SignaturePolicyId>
<xades:SigPolicyId>
<xades:Identifier>Politica de firma TicketBAI 1.0</xades:Identifier>
<xades:Description/>
</xades:SigPolicyId>
<xades:SigPolicyHash>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>6NrKAm60o7u62FUQwzZew24ra2ve9PRQYwC21AM6In0=</ds:DigestValue>
</xades:SigPolicyHash>
<xades:SigPolicyQualifiers>
<xades:SigPolicyQualifier>
<xades:SPURI>https://www.gipuzkoa.eus/documents/2456431/12093238/TicketBAI_Pol%C3%ADtica_firma_v_1_0.pdf/3c6e5431-bb1d-34ed-5b26-206aaf085452</xades:SPURI>
</xades:SigPolicyQualifier>
</xades:SigPolicyQualifiers>
</xades:SignaturePolicyId>
</xades:SignaturePolicyIdentifier>
Algunas preguntas
¿Qué datos insertasteis?, ¿Usasteis algún algoritmo concreto?, ¿Dónde hay documentación medio clara sobre el tema?
En fin, cualquier ayuda es bien recibida, gracias de antemano.