Hi all,
You may know already that SignedXml class in .NET doesn't support the XML Advanced Electronic Signatures (XAdES) standard (more info here: Which standards does SignedXml support?)
Fortunatelly my colleagues in Microsoft France developed a XAdES library for .NET (Microsoft.Xades.dll) that they published on this French site: Kit de démarrage « Signature avancée (XAdES) pour Microsoft .NET Framework v3.5 (et ultérieur)
Disclaimer: I don't speak French, so I don't understand the license for this library and cannot tell if any restrictions come with it.
I hope this helps.
Regards,
Alex (Alejandro Campos Magencio)
Use Google translator to understand the french.
Hi Alex,
Thanks for the info and link. You can read the license (CeCILL-B) in english here:
www.cecill.info/.../Licence_CeCILL-B_V1-en.txt
Regards.
Great post indeed. I really like that you are providing information on .NET for freshers , Being enrolled at www.wiziq.com/.../57-fresher-training-projects i found your information very helpful indeed. Thanks for it.
Hi, I've tested the xades library and I can validate the signature with the test program. The problem is that I'm receiving a message from the legal entity that says: the node "comprobante" is not signed.
What could be wrong?
This is original xml that I want to sign using xades-bes standard:
<?xml version="1.0" encoding="utf-8"?>
<factura id="comprobante" version="1.0.0">
<infoTributaria>
<ambiente>1</ambiente>
<tipoEmision>1</tipoEmision>
<razonSocial>SOLUCIONES DE GESTION DOCUMENTAL</razonSocial>
<nombreComercial>SG DOCs</nombreComercial>
<ruc>1792359627001</ruc>
<claveAcceso>0502201301179235962700111000010000000111234567815</claveAcceso>
<codDoc>01</codDoc>
<estab>001</estab>
<ptoEmi>001</ptoEmi>
<secuencial>000000011</secuencial>
<dirMatriz>Quito</dirMatriz>
</infoTributaria>
<infoFactura>
<fechaEmision>03/02/2013</fechaEmision>
<dirEstablecimiento>Quito</dirEstablecimiento>
<contribuyenteEspecial>11111</contribuyenteEspecial>
<obligadoContabilidad>SI</obligadoContabilidad>
<tipoIdentificacionComprador>04</tipoIdentificacionComprador>
<guiaRemision>100-123-000000001</guiaRemision>
<razonSocialComprador>CEMEX</razonSocialComprador>
<identificacionComprador>1792359627001</identificacionComprador>
<totalSinImpuestos>272019.38</totalSinImpuestos>
<totalDescuento>30224.38</totalDescuento>
<totalConImpuestos>
<totalImpuesto>
<codigo>2</codigo>
<codigoPorcentaje>2</codigoPorcentaje>
<baseImponible>272019.38</baseImponible>
<tarifa>12.00</tarifa>
<valor>32642.33</valor>
</totalImpuesto>
</totalConImpuestos>
<propina>0.00</propina>
<importeTotal>291060.74</importeTotal>
<moneda>DOLAR</moneda>
</infoFactura>
<detalles>
<detalle>
<codigoPrincipal>22ZZTE0361</codigoPrincipal>
<codigoAuxiliar>1001</codigoAuxiliar>
<descripcion>CCM DE BAJA TENSION 1 CEMEX</descripcion>
<cantidad>1.00</cantidad>
<precioUnitario>302243.76</precioUnitario>
<descuento>30224.38</descuento>
<precioTotalSinImpuesto>272019.38</precioTotalSinImpuesto>
<impuestos>
<impuesto>
<tarifa>12</tarifa>
</impuesto>
</impuestos>
</detalle>
</detalles>
<infoAdicional>
<campoAdicional nombre="4">Delivery Note: 200013738</campoAdicional>
</infoAdicional>
</factura>