Vous êtes sur la page 1sur 5

Programa <AssinadorRS>

(Atualizado em: 23/03/2009)

01. FUNO:
O programa <AssinadorRS.exe> tem as funes que seguem:
Assinatura digital de Nota Fiscal Eletrnica (NF-e) e Conhecimento de Transporte Eletrnico (CT-e), doravante
denominados Documento Fiscal Eletrnico (DF-e), no padro XML Signature da W3C, conforme especificao
dos projetos NF-e e CT-e;
Verificao da Assinatura digital de Documento Fiscal Eletrnico;
Gerao de Lotes de Documento Fiscal Eletrnico, a partir de DF-e selecionados;
Visualizao de Documento Fiscal Eletrnico;
Validao do Schema de todas as mensagens previstas nos Projeto NF-e e CT-e;
Assinatura e verificao de assinatura de qualquer documento XML, no padro de assinatura previsto nos
Projetos NF-e e CT-e.

02. FRAMEWORK MICROSOFT


O programa foi desenvolvido na plataforma .NET da Microsoft e precisa da instalao prvia do Framework 2.0
para poder ser executado.
O Microsoft .NET Framework Version 2.0 Redistributable Package (x86) pode ser obtido na internet no site da
prpria Microsoft no link: http://www.microsoft.com/downloads/details.aspx?familyid=0856EACB-4362-4B0D8EDD-AAB15C5E04F5&displaylang=en
Aps o download, deve ser feita a instalao do framework, executando o programa baixado (programa
<dotnetfx.exe>).

03. PACOTE DE INSTALAO


O pacote de instalao cria o diretrio <C:\Arquivos de programas\DFE>, contendo as sub-pastas e arquivos que
seguem:
Pasta <Certificados>
Contm os Certificados Digitais de teste (Certificados frios) utilizados na aplicao.
Os Certificados de teste esto nos arquivos:
<associacaoNFe.pfx>
<condominioNFe.pfx>
Pasta <DFe a Assinar>
Contm exemplos de arquivos XML de Documentos Fiscais Eletrnicos que podem ser utilizados para efetuar as
assinaturas.
Pasta <DFe Assinada>
Diretrio vazio que ser utilizado para salvar DF-e assinadas pelo programa AssinadorRS.
Pasta <Schema>
Contm os Schemas (arquivo .xsd) utilizados.
Adicionalmente, o instalador cria um atalho no menu Iniciar para facilitar a execuo do programa AssinadorRS:
Iniciar Programas Secretaria da Fazenda RS DFe AssinadorRS

04. INSTALAO DO CERTIFICADO DIGITAL


Os Certificados Digitais frios utilizados foram gerados para testes e contm toda a cadeia de certificao necessria.
Foram disponibilizados 2 conjuntos de Certificados do padro e-CNPJ, tipo A1 (certificado em arquivo).
Cada arquivo com extenso <.pfx> contm:
Certificado Digital do Estabelecimento fictcio:
NFe - Associacao NF-e (SENHA:associacao)
NFe - Condominio NF-e (SENHA:condominio)
Certificado de AC Intermediria (NFe - AC Intermediaria 1) e
Certificado de AC Raiz (NFe - AC Raiz).

Instalao do Certificado:
Dar duplo-clique no arquivo do Certificado, acionando o Assistente de Importao de Certificados do Windows.
O Assistente ir se encarregar de efetuar a instalao do Certificado na rea de armazenamento de certificados do
prprio Windows. Responder as opes de instalao sempre com Avanar, Avanar, ... e Concluir.
Os Certificados apresentados sero armazenados na rea de usurio do Windows, nas pastas:
<Pessoal>: Certificado do Estabelecimento (Certificado com a chave privada a ser utilizada na assinatura);
<Autoridades de Certificao intermedirias>: Certificado NFe - AC Intermediaria 1;
<Autoridades de Certificao Raiz>: Certificado NFe - AC Raiz.
Nota: Para visualizar os Certificados armazenados no Windows execute o Internet Explorer e acione:
Menu Ferramentas / Opes da Internet / aba Contedo / boto Certificados

05. ARQUIVOS XML: LOTE OU DF-e INDIVIDUAL


A princpio, o AssinadorRS est direcionado para assinar e/ou conferir a assinatura digital unicamente do Lote de DF-e
a e/ou do arquivo XML de um Documento Fiscal individual.
A identificao do arquivo de Lote ou do arquivo de DF-e feita utilizando os esquemas XML (arquivo .xsd) definidos
para o Projeto de Nota Fiscal Eletrnica e Conhecimento de Transporte Eletrnico. A identificao do tipo de arquivo
feita pela TAG raiz da estrutura de XML presente no arquivo na forma:
Arquivo de Lote:
raiz = <enviNFe> ou raiz <enviCTe>
Arquivo de DF-e individual: raiz = <NFe> ou raiz <CTe>
Como uma funcionalidade extra do programa AssinadorRS, apresentado na rea de LOG o motivo da rejeio para os
arquivos no validados pelo Schema.

06. VISO GERAL DO PROGRAMA


A interface com o Operador apresenta 4 reas distintas, conforme segue:
Barra de menus e barra de botes
rea de Entrada (redimensionvel)
rea de Sada (redimensionvel)
rea de LOG (redimensionvel)
Atravs da Barra de Menu, o Operador comanda as Tarefas, efetuando as Configuraes e executando as Funes
desejadas. As Configuraes e Funes disponveis so:
A. Configura Diretrio de Entrada
Configura a pasta onde esto os arquivos XML a serem assinados.
B. Configura Diretrio de Sada
Configura a pasta onde sero arquivados os arquivos XML assinados. Se for de interesse do Operador, pode ser
configurado o Diretrio de Sada idntico ao Diretrio de Entrada. Para poder diferenciar os arquivos que foram
assinados pelo AssinadorRS, acrescentado o literal _sign no nome de arquivo de entrada.
C. Configura Diretrio de Schema
Aps a instalao do AssinadorRS, a configurao aponta para o diretrio Schema, disponvel com a verso inicial
dos Schemas XML. O AssinadorRS utiliza os Schemas dos Projetos NF-e e CT-e.
Eventualmente o Comit Gestor dos Projetos NF-e e/ou CT-e libera novas verses dos Schemas. Neste caso, a
atualizao dos Schema para uso do AssinadorRS pode ser feita pelo Operador em uma das formas que seguem:
Inclui no diretrio Schema, a nova verso do Schema desejado;
Cria um novo diretrio para recepcionar as novas verses dos Schemas e configura o AssinadorRS para
utilizar este novo diretrio.
D. Seleciona Certificado
Seleciona o Certificado que ser utilizado na assinatura.
Nota: Os Diretrios e Certificados configurados sero mantidos para as prximas execues do programa.
E. Funo: Assinatura DF-e / Assinatura Lote / Assinatura de outros documentos XML
O arquivo previamente selecionado na rea de Entrada ser assinado com o Certificado configurado e um novo

arquivo, com os dados da assinatura XML, ser disponibilizado na rea de sada. Ser acrescentado o literal _sign
no nome do arquivo de entrada para compor o nome do arquivo no diretrio de sada.
O mesmo processo de assinatura de DF-e pode ser comandado para um Lote de DF-e, gerando um arquivo Lote de
sada, com todos os Documentos Fiscais assinados individualmente.
A rea de LOG apresenta informaes sobre as operaes comandadas.
F. Funo: Valida de SCHEMA e Assinatura DF-e / Lote / Outros documentos Xml
O arquivo previamente selecionado na rea de Sada ter validado o Schema e a assinatura, utilizando o Certificado
Digital presente no mesmo arquivo XML que est sendo verificado.
So verificados tambm os dados bsicos do Certificado, como a data de incio da validade e a data de expirao.
verificada tambm toda a Cadeia de Certificao referente ao Certificado Digital, utilizando os Certificados das
AC de teste presentes na rea de armazenamento de Certificados do Windows.
A validao da Assinatura no est considerando a consulta a Lista de Certificados Revogados (LCR). Est funo
necessita de acesso a internet e nem sempre o equipamento que est executando o programa AssinadorRS tem este
acesso disponibilizado de forma direta (normalmente o equipamento no tem acesso a internet ou possui o acesso
controlado por um proxy).
O mesmo processo de validao da assinatura do DF-e pode ser comandado para um Lote de DF-e, verificando a
assinatura de todos os DF-e constantes no Lote.
A rea de LOG apresenta informaes sobre as operaes comandadas.
Se for selecionado um arquivo na rea de Entrada, ser validado o Schema e, se existente, ser validada tambm a
assinatura.
G. Funo: Gera Lote
Para a gerao do Lote de DF-e necessrio selecionar previamente os arquivos de DF-e que iro compor o Lote.
Conforme a seleo pode ser gerado um Lote de Documentos na rea de Entrada (DF-e no assinados), ou um Lote
de Documentos na rea de Sada (DF-e assinados).
Faz parte do nome do arquivo de Lote um nmero aleatrio para evitar a gerao de arquivos com o mesmo nome.
H. Funo: Visualizar Arquivo
Os arquivos previamente selecionados sero visualizados em janelas especficas para cada arquivo.
I. Funo: Atualiza reas de Entrada e de Sada (Refresh)
O acionamento desta funo causa a atualizao das informaes sobre os arquivos visualizadas nas reas de
Entrada e Sada.
J. Funo: Outras
O acionamento do boto direito do mouse sobre as reas de Entrada e Sada disponibiliza o acesso as funes de
<Selecionar Todos> arquivos, <Desmarcar Todos> ou <Remover> um determinado arquivo selecionado.

A.

CONSIDERAES TCNICAS

A01. VNCULO ASSINATURA COM DADOS


Conforme o padro do W3C, a associao da assinatura XML com os dados que forem assinados pode ser feita das
formas que seguem:
<Enveloped>: tag de assinatura aps os dados;
<Enveloping>: os dados so envelopados dentro da assinatura;
<Detached>: a assinatura compe um arquivo XML externo.
O modelo adotado no Projeto Nota Fiscal Eletrnica o <Enveloped>.

A02. CADEIA DE CERTIFICAO


A conferncia completa da assinatura compreende os passos:
conferncia da assinatura do arquivo utilizando o Certificado do Contribuinte;
conferncia do Certificado do Contribuinte;
conferncia dos demais Certificados envolvidos na Cadeia de Certificao.
Os Certificados podem estar presente ou no no arquivo XML recebido, conforme as opes:
<none>: Certificado no incluso no arquivo XML;
<EndCertOnly>: incluso no arquivo somente o Certificado do Contribuinte (Certificado que assinou);
<ExcludeRoot>: todos os Certificados da cadeia de certificao so inclusos no XML, menos o Certificado de
Root (ICP-Brasil);
<WholeChain>: todos os Certificados da cadeia de certificao so inclusos no XML.
O modelo adotado no AssinadorRS o EndCertOnly.
Os demais Certificados da Cadeia de Certificao devero estar residentes na rea de Armazenamento de Certificados
do equipamento que far a conferncia das assinaturas.

A03. X509 Data Elements


O Certificado Digital que efetuou a assinatura da NF-e consta no arquivo XML e j contm os principais elementos do
padro X509, inclusive o valor da Chave Pblica, tornando desnecessria a sua representao individualizada. No so
includos no arquivo XML assinado os elementos abaixo:
<X509SubjectName>
<X509IssuerSerial>
<X509IssuerName>
<X509SerialNumber>
<X509SKI>
<KeyValue>
<RSAKeyValue>
<Modulus>
<Exponent>
Tambm no deve ser includo o elemento <X509CRL> no arquivo XML assinado, j que a implementao dos
Projetos NF-e e CT-e pela SEFAZ dever sempre verificar a Lista de Certificados Revogados no momento da
conferncia da Assinatura.
A supresso destes elementos leva a reduo do tamanho do arquivo da NF-e assinada.

A04. PreserveWhiteSpaces
Opcionalmente, devem ser eliminados os espaos e caracteres de tabulao na Nota Fiscal assinada, com a incluso da
propriedade:
preserveWhiteSpace = false
Esta opo leva a reduo do tamanho do arquivo da NF-e assinada.

A05. Assinatura Parcial do Arquivo XML


O Projeto prev a assinatura parcial do arquivo XML do DF-e, somente para a TAG <infNFe> ou <infCTe>. Esta TAG
engloba todos os dados de interesse das SEFAZ, previstos no layout regulamentado.
As vantagens desta implementao so:
Permite a incluso de campos no DF-e que no sero assinados, podendo ser enviados ou no para o Fisco;
Permite a verificao das assinaturas dos DF-e ainda na estrutura de Lote (caso contrrio, primeiro o Lote deve
ser desmanchado, para permitir a verificao individual das assinaturas);
Permite a assinatura dos DF-e dentro da estrutura de Lote, o que pode ser interessante para as empresas, por
questes de performance.
Para efetuar esta assinatura utilizada a URI, referenciando o atributo Id da TAG <infNFe> ou <infCTe>.

A06. Transformao
O processo de assinatura digital primeiro passa pela gerao de um resumo (digest) a ser assinado.
Antes da gerao deste digest so aplicadas transformaes sobre os dados a serem resumidos e o AssinadorRS
implementa as transformaes previstas no Projeto da NF-e, na forma:
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
<Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />

Vous aimerez peut-être aussi