NET API
HSM Dinamo
Todos Estruturas de dados Namespaces Arquivos Funções Variáveis Enumerações Enumeradores Propriedades Grupos Páginas
signxml.cs

Example of an XML signature with HSM.

See Note on examples.
using System;
using System.Text;
using System.Collections.Generic;
using System.IO;
using Dinamo;
using Dinamo.Hsm;
namespace TesteNF
{
class Program
{
static void Main(string[] args)
{
string address = "127.0.0.1";
string user = "master";
string pass = "12345678";
string keyId = "lab";
string certId = "lab_cert";
string chainId = "lab_chain";
// Indique aqui o xml a ser assinado
string unsignedXML = @"<?xml version=""1.0""?>
<NFe xmlns=""http://www.portalfiscal.inf.br/nfe"">
<infNFe Id=""XFGR143576863578"" versao=""1.01"">
<test>asdfasd</test>
</infNFe>
</NFe>";
// Indique o filtro a ser usado na assinatura xml
string filter = "http://www.portalfiscal.inf.br/nfe|infNFe|XFGR143576863578";
Console.Out.WriteLine("NF Original:\n {0}",unsignedXML);
// Conecta ao servidor
din.Connect(address, user, pass, true, true);
// Assina o xml
byte[] signedXML = din.SignXML(keyId, DinamoClient.HASH_ALG.ALG_SHA2_256, certId, unsignedXML, filter);
Console.Out.WriteLine("\nNF Assinada:\n {0}", System.Text.Encoding.Default.GetString(signedXML));
// Verifica a assinatura do xml
bool isValid = din.VerifySignedXML(chainId, signedXML, System.Text.Encoding.UTF8.GetBytes(filter));
Console.Out.WriteLine("\nA assinatura do XML {0}\n", isValid ? "é válida" : "é INVÁLIDA");
// Desconecta do servidor
din.Disconnect();
}
}
}
Classe de API para acesso às funcionalidades do HSM Dinamo. Nessa classe é possível programar utiliza...
Definição DinamoClient.cs:93
HASH_ALG
Algoritmo de Hash para assinatura.
Definição DinamoClient.cs:137
void Connect(string User, string Password)
Estabelece uma conexão cifrada com o HSM utilizando as configurações de load balance.
Definição DinamoClient.cs:562
void Disconnect(bool flagClose)
Encerra a conexão com o HSM.
Definição DinamoClient.cs:814
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....
Definição DinamoClient.cs:4607
bool VerifySignedXML(string CertId, string SignedXml, string Filter)
Verifica a assinatura de um documento XML assinado digitalmente. Recebe os parâmetros no formato stri...
Definição DinamoClient.cs:4733
Namespace que denota um conjunto de funções para acesso ao HSM Dinamo e suas respectivas exceptions.
Definição DinamoClient.cs:12
Definição DinamoClient.cs:12