Firma XML, incluida la factura electrónica (NF-e)
Consulte la documentación técnica del HSM
|
byte[] | SignXML (cadena KeyId, HASH_ALG AlgId, cadena CertId, cadena UnsignedXml, cadena Filter) |
| Firma digitalmente un documento XML utilizando los estándares de firma digital XML del W3C. Recibe parámetros en formato de cadena.
|
|
byte[] | SignXML (string KeyId, HASH_ALG AlgId, string CertId, byte[] byUnsignedXml, byte[] byFilter) |
| Firma digitalmente un documento XML utilizando los estándares de firma digital XML del W3C. Recibe parámetros en formato de matriz de bytes.
|
|
byte[] | SignXML(HASH_MODE HashMode, Int32 Flags, string KeyId, string CertId, byte[] byUnsignedXml, byte[] byFilter) |
| Firma digitalmente un documento XML utilizando los estándares de firma digital XML del W3C. Recibe parámetros en formato de matriz de bytes.
|
|
bool | VerifySignedXML (cadena CertId, cadena SignedXml, cadena Filter) |
| Comprueba la firma de un documento XML firmado digitalmente. Recibe parámetros en formato de cadena.
|
|
bool | VerifySignedXML (cadena CertId, byte[] bySignedXml, byte[] byFilter) |
| verifica la firma de un documento XML firmado digitalmente. Recibe parámetros en formato de matriz de bytes.
|
|
◆ SignXML() [1/3]
byte[] SignXML |
( |
string | KeyId, |
|
|
HASH_ALG | AlgId, |
|
|
string | CertId, |
|
|
string | UnsignedXml, |
|
|
string | Filter ) |
|
inline |
Firma digitalmente un documento XML utilizando los estándares de firma digital XML del W3C. Recibe parámetros en formato de cadena.
- Ver también
- SignXML(string KeyId, HASH_ALG AlgId, string CertId, byte[] byUnsignedXml, byte[] byFilter)
- Parámetros
-
KeyId | Identificador interno del HSM que hace referencia a la clave que se utilizará para firmar el documento XML. |
AlgId | Algoritmo hash utilizado. Ver: HASH_ALG |
CertId | Identificador interno del HSM que hace referencia al certificado digital que se utilizará para firmar el documento XML. |
UnsignedXml | Parámetro que contiene el XML que se va a firmar. |
Filter | Filtro para firmar digitalmente partes del documento XML. El uso del filtro es opcional. Consulte Uso de filtros XML. |
- Devolución
- Matriz de bytes que contiene el documento XML original firmado digitalmente en el formato especificado.
- Excepciones
-
- Ejemplos
- signxml.cs.
◆ SignXML() [2/3]
byte[] SignXML |
( |
string | KeyId, |
|
|
HASH_ALG | AlgId, |
|
|
string | CertId, |
|
|
byte[] | byUnsignedXml, |
|
|
byte[] | byFilter ) |
|
inline |
Firma digitalmente un documento XML utilizando los estándares de firma digital XML del W3C. Recibe parámetros en formato de matriz de bytes.
- Parámetros
-
KeyId | Identificador interno del HSM que hace referencia a la clave que se utilizará para firmar el documento XML. |
AlgId | Algoritmo hash utilizado. Ver: HASH_ALG |
CertId | Identificador interno del HSM que hace referencia al certificado digital que se utilizará para firmar el documento XML. |
byUnsignedXml | Parámetro que contiene el XML que se va a firmar.(*) |
byFilter | Filtro para firmar digitalmente partes del documento XML. El uso del filtro es opcional. Consulte Uso de filtros XML. |
- Devolución
- Matriz de bytes que contiene el documento XML original firmado digitalmente en el formato especificado.
- Excepciones
-
El documento XML original, indicado por byUnsignedXml
El archivo puede comprimirse según el estándar gzip descrito en las RFC 1950 (formato zlib), 1951 (formato deflate) y 1952 (formato gzip). HSM reconoce automáticamente la compresión. Si el documento XML original está comprimido, el documento XML firmado devuelto también se comprimirá utilizando el mismo estándar gzip. Las operaciones de descompresión, firma y compresión son independientes en HSM, por lo que si se produce un error interno tras firmar el XML y no es posible devolver el documento XML firmado comprimido, el documento XML firmado se devolverá en texto sin formato (sin compresión). Aunque es muy poco probable que se produzca un error interno de este tipo, la aplicación debe estar preparada para afrontarlo.
Comprimir el documento XML no conlleva necesariamente una ganancia de rendimiento en las operaciones de firma. La principal ganancia puede venir de una reducción significativa del uso del ancho de banda de la red. A la hora de adoptar la compresión de documentos XML deben analizarse las circunstancias específicas de cada entorno.
◆ SignXML() [3/3]
byte[] SignXML |
( |
HASH_MODE | HashMode, |
|
|
Int32 | Flags, |
|
|
string | KeyId, |
|
|
string | CertId, |
|
|
byte[] | byUnsignedXml, |
|
|
byte[] | byFilter ) |
|
inline |
Firma digitalmente un documento XML utilizando los estándares de firma digital XML del W3C. Recibe parámetros en formato de matriz de bytes.
- Parámetros
-
HashMode | Algoritmo hash y canonización utilizados. Véase: MODO_HASH |
Flags | Algoritmo hash y canonicalización utilizados. Puede ser 0 o DinamoApi.XML_SIGN_FLAGS_NOL. |
KeyId | Identificador interno del HSM que hace referencia a la clave que se utilizará para firmar el documento XML. |
CertId | Identificador interno del HSM que hace referencia al certificado digital que se utilizará para firmar el documento XML. |
byUnsignedXml | Parámetro que contiene el XML que se va a firmar.(*) |
byFilter | Filtro para firmar digitalmente partes del documento XML. El uso del filtro es opcional. Consulte Uso de filtros XML. |
- Devolución
- Matriz de bytes que contiene el documento XML original firmado digitalmente en el formato especificado.
- Excepciones
-
El documento XML original, indicado por byUnsignedXml
El archivo puede comprimirse según el estándar gzip descrito en las RFC 1950 (formato zlib), 1951 (formato deflate) y 1952 (formato gzip). HSM reconoce automáticamente la compresión. Si el documento XML original está comprimido, el documento XML firmado devuelto también se comprimirá utilizando el mismo estándar gzip. Las operaciones de descompresión, firma y compresión son independientes en HSM, por lo que si se produce un error interno tras firmar el XML y no es posible devolver el documento XML firmado comprimido, el documento XML firmado se devolverá en texto sin formato (sin compresión). Aunque es muy poco probable que se produzca un error interno de este tipo, la aplicación debe estar preparada para afrontarlo.
Comprimir el documento XML no conlleva necesariamente una ganancia de rendimiento en las operaciones de firma. La principal ganancia puede venir de una reducción significativa del uso del ancho de banda de la red. A la hora de adoptar la compresión de documentos XML deben analizarse las circunstancias específicas de cada entorno.
◆ VerifySignedXML() [1/2]
bool VerifySignedXML |
( |
string | CertId, |
|
|
string | SignedXml, |
|
|
string | Filter ) |
|
inline |
Comprueba la firma de un documento XML firmado digitalmente. Recibe parámetros en formato de cadena.
- Parámetros
-
CertId | Identificador interno del HSM que hace referencia a la cadena PKCS#7 -almacenada internamente en el HSM- del certificado utilizado para firmar el documento XML. |
SignedXml | XML firmado digitalmente en UTF-8. |
Filter | Filtro para comprobar la firma digital de partes del documento XML en UTF-8. El uso del filtro es opcional. Consulte los comentarios para obtener más información sobre los filtros. |
- Devolución
- Verdadero si la comprobación se realiza correctamente.
- Excepciones
-
- Ejemplos
- signxml.cs.
◆ VerifySignedXML() [2/2]
bool VerifySignedXML |
( |
string | CertId, |
|
|
byte[] | bySignedXml, |
|
|
byte[] | byFilter ) |
|
inline |
verifica la firma de un documento XML firmado digitalmente. Recibe parámetros en formato de matriz de bytes.
- Parámetros
-
CertId | Identificador interno del HSM que hace referencia a la cadena PKCS#7 -almacenada internamente en el HSM- del certificado utilizado para firmar el documento XML. |
bySignedXml | XML firmado digitalmente |
byFilter | Filtro para comprobar la firma digital de partes del documento XML. El uso de filtros es opcional. Consulte los comentarios para obtener más información sobre los filtros. |
- Devolución
- Verdadero si la comprobación se realiza correctamente.
- Excepciones
-