Assinatura XML, incluindo Nota Fiscal Eletronica (NF-e)
Consulte a documentação técnica do HSM
|
byte[] | SignXML (string KeyId, HASH_ALG AlgId, string CertId, string UnsignedXml, string Filter) |
| Assina digitalmente um documento XML usando os padrões de assinatura digital XML do W3C. Recebe os parâmetros no formato string.
|
|
byte[] | SignXML (string KeyId, HASH_ALG AlgId, string CertId, byte[] byUnsignedXml, byte[] byFilter) |
| Assina digitalmente um documento XML usando os padrões de assinatura digital XML do W3C. Recebe os parâmetros no formato de byte array.
|
|
byte[] | SignXML (HASH_MODE HashMode, Int32 Flags, string KeyId, string CertId, byte[] byUnsignedXml, byte[] byFilter) |
| Assina digitalmente um documento XML usando os padrões de assinatura digital XML do W3C. Recebe os parâmetros no formato de byte array.
|
|
bool | VerifySignedXML (string CertId, string SignedXml, string Filter) |
| Verifica a assinatura de um documento XML assinado digitalmente. Recebe os parâmetros no formato string.
|
|
bool | VerifySignedXML (string CertId, byte[] bySignedXml, byte[] byFilter) |
| verifica a assinatura de um documento XML assinado digitalmente. Recebe os parâmetros no formato byte array.
|
|
◆ SignXML() [1/3]
byte[] SignXML |
( |
string | KeyId, |
|
|
HASH_ALG | AlgId, |
|
|
string | CertId, |
|
|
string | UnsignedXml, |
|
|
string | Filter ) |
|
inline |
Assina digitalmente um documento XML usando os padrões de assinatura digital XML do W3C. Recebe os parâmetros no formato string.
- Veja também
- SignXML(string KeyId, HASH_ALG AlgId, string CertId, byte[] byUnsignedXml, byte[] byFilter)
- Parâmetros
-
KeyId | Identificador interno ao HSM referente a chave a ser utilizada para assinatura do documento XML. |
AlgId | Algoritmo de hash utilizado. Veja: HASH_ALG |
CertId | Identificador interno ao HSM referente ao certificado digital a ser utilizado para assinatura do documento XML. |
UnsignedXml | Parâmetro contendo o XML a ser assinado. |
Filter | Filtro para assinatura digital de partes do documento XML. A utilização de filtro é opcional. Veja Uso dos filtros XML. |
- Retorna
- Array de bytes contendo o documento XML original assinado digitalmente no formato especificado.
- Exceções
-
- Exemplos
- signxml.cs.
◆ SignXML() [2/3]
byte[] SignXML |
( |
string | KeyId, |
|
|
HASH_ALG | AlgId, |
|
|
string | CertId, |
|
|
byte[] | byUnsignedXml, |
|
|
byte[] | byFilter ) |
|
inline |
Assina digitalmente um documento XML usando os padrões de assinatura digital XML do W3C. Recebe os parâmetros no formato de byte array.
- Parâmetros
-
KeyId | Identificador interno ao HSM referente a chave a ser utilizada para assinatura do documento XML. |
AlgId | Algoritmo de hash utilizado. Veja: HASH_ALG |
CertId | Identificador interno ao HSM referente ao certificado digital a ser utilizado para assinatura do documento XML. |
byUnsignedXml | Parâmetro contendo o XML a ser assinado.(*) |
byFilter | Filtro para assinatura digital de partes do documento XML. A utilização de filtro é opcional. Veja Uso dos filtros XML. |
- Retorna
- Array de bytes contendo o documento XML original assinado digitalmente no formato especificado.
- Exceções
-
O documento XML original, indicado por byUnsignedXml
, poderá ser compactado de acordo com o padrão gzip descrito nas RFCs 1950 (zlib format), 1951 (deflate format) e 1952 (gzip format). O reconhecimento da compactação é automático pelo HSM. Caso o documento XML original esteja compactado, o documento XML assinado retornado também estará compactado pelo mesmo padrão gzip. As operações de descompactação, assinatura e compactação são independentes no HSM, caso ocorra um erro interno após a assinatura do XML e não seja possível devolver o documento XML assinado compactado, será retornado o documento XML assinado em texto claro (sem compactação). Embora um erro interno desta natureza seja bastante improvável, a aplicação precisa estar preparada para tratá-lo.
A compactação do documento XML não necessariamente traz um ganho de desempenho nas operações de assinatura. O ganho principal pode vir de uma redução sensível no uso de banda da rede. As circunstancias específicas de cada ambiente devem ser analisadas para a adoção da compactação do documento XML.
◆ SignXML() [3/3]
byte[] SignXML |
( |
HASH_MODE | HashMode, |
|
|
Int32 | Flags, |
|
|
string | KeyId, |
|
|
string | CertId, |
|
|
byte[] | byUnsignedXml, |
|
|
byte[] | byFilter ) |
|
inline |
Assina digitalmente um documento XML usando os padrões de assinatura digital XML do W3C. Recebe os parâmetros no formato de byte array.
- Parâmetros
-
HashMode | Algoritmo de hash e canonicalização utilizados. Veja: HASH_MODE |
Flags | Algoritmo de hash e canonicalização utilizados. Pode ser 0 ou DinamoApi.XML_SIGN_FLAGS_NOL. |
KeyId | Identificador interno ao HSM referente a chave a ser utilizada para assinatura do documento XML. |
CertId | Identificador interno ao HSM referente ao certificado digital a ser utilizado para assinatura do documento XML. |
byUnsignedXml | Parâmetro contendo o XML a ser assinado.(*) |
byFilter | Filtro para assinatura digital de partes do documento XML. A utilização de filtro é opcional. Veja Uso dos filtros XML. |
- Retorna
- Array de bytes contendo o documento XML original assinado digitalmente no formato especificado.
- Exceções
-
O documento XML original, indicado por byUnsignedXml
, poderá ser compactado de acordo com o padrão gzip descrito nas RFCs 1950 (zlib format), 1951 (deflate format) e 1952 (gzip format). O reconhecimento da compactação é automático pelo HSM. Caso o documento XML original esteja compactado, o documento XML assinado retornado também estará compactado pelo mesmo padrão gzip. As operações de descompactação, assinatura e compactação são independentes no HSM, caso ocorra um erro interno após a assinatura do XML e não seja possível devolver o documento XML assinado compactado, será retornado o documento XML assinado em texto claro (sem compactação). Embora um erro interno desta natureza seja bastante improvável, a aplicação precisa estar preparada para tratá-lo.
A compactação do documento XML não necessariamente traz um ganho de desempenho nas operações de assinatura. O ganho principal pode vir de uma redução sensível no uso de banda da rede. As circunstancias específicas de cada ambiente devem ser analisadas para a adoção da compactação do documento XML.
◆ VerifySignedXML() [1/2]
bool VerifySignedXML |
( |
string | CertId, |
|
|
string | SignedXml, |
|
|
string | Filter ) |
|
inline |
Verifica a assinatura de um documento XML assinado digitalmente. Recebe os parâmetros no formato string.
- Parâmetros
-
CertId | Identificador interno ao HSM referente a cadeia PKCS#7 – armazenada internamento no HSM - do certificado utilizado na assinatura do documento XML |
SignedXml | XML assinado digitalmente em UTF-8. |
Filter | Filtro para checagem da assinatura digital de partes do documento XML em UTF-8. A utilização de filtro é opcional. Consulte observações para maiores informações sobre filtros. |
- Retorna
- Verdadeiro se a checagem for efetuada com sucesso.
- Exceções
-
- Exemplos
- signxml.cs.
◆ VerifySignedXML() [2/2]
bool VerifySignedXML |
( |
string | CertId, |
|
|
byte[] | bySignedXml, |
|
|
byte[] | byFilter ) |
|
inline |
verifica a assinatura de um documento XML assinado digitalmente. Recebe os parâmetros no formato byte array.
- Parâmetros
-
CertId | Identificador interno ao HSM referente a cadeia PKCS#7 – armazenada internamento no HSM - do certificado utilizado na assinatura do documento XML |
bySignedXml | XML assinado digitalmente |
byFilter | Filtro para checagem da assinatura digital de partes do documento XML. A utilização de filtro é opcional. Consulte observações para maiores informações sobre filtros. |
- Retorna
- Verdadeiro se a checagem for efetuada com sucesso.
- Exceções
-