Atualmente tenho sido cobrado por todos os lados a respeito de soluções para Nota Fiscal Eletrônica (NF-e). Os clientes precisam adequar seus sistemas, a empresa precisa fornecer solução imediata, os leitores querem saber mais sobre o tema.
A NF-e é um documento emitido e armazenado eletronicamente, com validade
jurídica garantida por processo de assinatura digital. O principal objetivo da
implantação desta nova modalidade é o acompanhamento em tempo real das operações
comercias pelo Fisco e a substituição do modelo atual de emissão de documentos
fiscais em papel, de forma a simplificar uma série de obrigações do
contribuinte. Maiores informações podem ser obtidas através do portal nacional
em
www.nfe.fazenda.gov.br
Nesta série de artigos abordaremos os inúmeros conceitos envolvidos no
desenvolvimento e implantação de soluções para NF-e. Neste artigo, no entanto,
daremos foco ao processo de assinatura digital de NF-e emitidas, utilizando
certificados emitidos pela empresa certificadora CertSign (
www.certisign.com.br )
.
Descrição Simplificada do Processo
De maneira simplificada o modelo operacional da NF-e pode ser assim descrito:
1. A empresa emissora da NF-e gera um arquivo eletrônico contendo as
informações fiscais da operação comercial em questão.
a. O arquivo eletrônico tem extensão .XML (Extensible
Markup Language) e deve ser gerado conforme padrão pré-estabelecido vigente.
b. Este documento eletrônico contém informações
equivalentes às informações contidas no modelo atual de notas fiscais em papel.
2. O documento da NF-e emitido deve ser assinado digitalmente, de maneira
a garantir a integridade dos dados, a autoria do emissor e a validade jurídica
do documento.
a. O processo de assinatura digital deve ser feito
utilizando-se certificado digital tipo A1 ou A3 emitido por autoridade
certificadora credenciada pela Infra-estrutura de Chaves Públicas
Brasileira – ICP-Brasil (
www.icpbrasil.gov.br ).
b. Neste artigo foram utilizados certificados emitidos
pela empresa CertSign (
www.certisign.com.br ), devidamente credenciada no ICP-Brasil.
c. A escolha do fornecedor do certificado abordado
neste artigo se deu primeiramente pela CertSign ser devidamente certificada no
ICP-Brasil e também pelo fato de ser uma das empresas líderes deste mercado e
dispor de Autoridade de Registro (AR) sediada em nossa cidade, Salvador – Ba. No
entanto sinta-se o leitor livre para escolher entre qualquer uma das empresas
disponíveis no mercado, todas elas dispõem de processos semelhantes aos
apresentados e toda a teoria mostrada no que tange a NF-e continua sendo válida.
3. O arquivo deve então ser transmitido, via Internet, para a Secretaria
da Fazenda do Estado (SEFAZ) onde reside o contribuinte emissor.
4. Após receber o arquivo, a SEFAZ realiza um processo de pré-validação e
devolve uma Autorização de Uso, permitindo com isso o trânsito da mercadoria e a
continuação da transação comercial.
5. Para acompanhar o trânsito da mercadoria o sistema deve imprimir, em
papel comum, geralmente em única via, uma representação gráfica simplificada da
NF-e, chamada de DANFE (Documento Auxiliar da Nota Fiscal Eletrônica)
a. O DANFE deve conter impressa uma chave de acesso
que possibilita a consulta da NF-e na internet, de forma que qualquer pessoa
possa confirmar as informações impressas com as informações contidas no site da
SEFAZ.
b. O DANFE não é uma nota fiscal, nem a substitui,
servindo apenas como instrumento auxiliar para consulta da NF-e na internet.
Atualmente, conforme consta no FAQ disponível no portal da NF-e, o protocolo
ICMS 30/07 alterou o Protocolo ICMS 10/07 e estabeleceu a obrigatoriedade de
utilização NF-e a partir de 1º de abril de 2008, para os seguintes tipos de
contribuintes que estejam localizados nos Estados signatários deste protocolo:
· fabricantes e distribuidores de cigarros
· distribuidores, produtores, formuladores e importadores de
combustíveis líquidos, assim definidos e autorizados por órgão federal
competente;
· transportadores e revendedores retalhistas – TRR - assim
definidos e autorizados por órgão federal competente.
Para os demais contribuintes, a estratégia de implantação nacional é que estes,
voluntariamente e gradualmente, independente do porte, se interessem por emitir
Nota Fiscal Eletrônica.
Certificados Digitais
Os certificados digitais são documentos eletrônicos que identificam pessoas
físicas ou jurídicas e através do uso de criptografia asseguram a
confiabilidade, privacidade, integridade, inviolabilidade e autenticidade de
informações de transações realizadas via Internet.
O processo de assinatura digital utilizando certificados digitais nas operações
via Internet tem validade jurídica para ser utilizado como assinatura de próprio
punho, comprovando que seu proprietário concorda com o documento assinado.
Os tipos mais comuns de certificados digitais são:
· Certificados tipo A3 oferecem maior segurança, já que seu
certificado é gerado, armazenado e processado em cartão inteligente (SmartCard)
ou token (espécie de hardlock para conexão na porta USB), que permanece assim
inviolável e único. Apenas o detentor da senha de acesso, criada no momento da
validação, pode utilizar a chave privada. O certificado digital tipo A3 possui
validade de 3 anos.
· Certificados tipo A1 são gerados e armazenados no
computador pessoal do usuário, não sendo necessário o uso de cartões
inteligentes ou tokens. Os dados podem ser protegidos por uma senha de acesso,
criada pelo usuário. Somente com esta senha é possível acessar, mover e copiar
sua chave privada. Por medida de segurança, recomenda-se que um único computador
armazene o par de chaves tipo A1 e apenas uma cópia de segurança seja criada. A
validade deste tipo de certificado é de 01(um) ano, contado a partir de sua data
de emissão.
A escolha do tipo de certificado a ser utilizado no desenvolvimento da sua
aplicação depende muito das suas necessidades e possibilidades financeiras.
Os certificados tipo A1 são mais baratos, no entanto são menos flexíveis, pois
estão instalados em uma única máquina, têm prazo de validade reduzido e são
considerados menos seguros.
Os certificados tipo A3 do tipo SmartCard têm um custo intermediário, mas num
primeiro momento, dependem da aquisição de um leitor de cartão que deve estar
instalado na máquina onde o cartão será utilizado. A vantagem, no entanto é que,
após o prazo de 3 anos da compra do primeiro cartão, não será necessário
adquirir novo leitor de cartão, o que torna o custo a longo prazo mais
interessante.
Os certificados tipo A3 do tipo token USB têm maior flexibilidade quando
comparados aos outros formatos pois depende apenas da disponibilidade de uma
porta USB na máquina onde o mesmo será utilizado, facilitando e muito o processo
de desenvolvimento. O custo, no entanto, é o mais elevado tendo em vista que o
prazo de validade é o mesmo quando comparado ao modelo SmartCard.
Acessando o site da CertSign no link específico de certificados digitais para
emissão de NF-e, temos acesso aos seguintes custos, por tipo de certificado,
conforme mostrado na Figura 01.

Figura 01:
Certificados para emissão de NF-e no site da CertSign
Para o desenvolvimento do projeto de NF-e, optei pelo certificado tipo A3,
modelo token USB, devido à sua flexibilidade e praticidade, principalmente
considerando o ambiente de desenvolvimento do projeto realizado vários
desenvolvedores diferentes e o processo de atendimento na sede do cliente quando
utilizamos notebooks.
O processo de aquisição foi feito através do site da CertSign com pagamento em 2
vezes via cartão de crédito. Para a geração da chave, a certificadora exige
documentação da empresa e de um dos sócios e a entrega da mesma foi realizada
somente com a presença física do mesmo na sede da representante, aqui em nossa
cidade (Salvador - Bahia), a Autoridade de Registro (AR) de nome Dossier Digital
(
www.dossierdigital.com.br ).
Todo o processo de pagamento, entrega de documentação e aquisição da chave foi
realizado em 2 dias úteis. A Figura 02 apresenta o material recebido da
certificadora.

Figura 02:
Certificado digital tipo A3 modelo token USB adquirido na CertSign
Uma vez com o certificado em mãos, é possível realizar a instalação do CD que
acompanha o mesmo, através de wizard de instalação, conforme apresentado na
Figura 03.

Figura 03: Wizard
de instalação do certificado digital CertSign
Concluída a instalação, reinicia-se o computador, e sempre, ao conectar o token
na porta USB, é apresentada a mensagem conforme mostrado na Figura 04, indicando
a correta detecção do dispositivo por parte do sistema operacional.

Figura 04: Mensagem
apresentada sempre após a conexão do token.
O processo de instalação cria duas pastas no menu Iniciar do Windows que dão
acesso principalmente à documentação de ajuda e ao aplicativo eToken Properties,
mostrado na Figura 05.
Figura 05: Programa
eToken Properties
O aplicativo eToken Properties permite a visualização das informações
armazenadas no token, bem como diversas características do mesmo.
Clicando no botão “etoken PRO” do lado esquerdo da tela e depois clicando no
botão “Advanced”, é solicitada uma senha para acesso às configurações avançadas
do token, conforme mostrado na Figura 06.

Figura 06: Login
para acesso a configurações avançadas do token.
No momento da aquisição do token, uma senha de acesso ao mesmo deve ser
fornecida, e é muito importante ressaltar que a certificadora informa que, caso
a senha seja digitada incorretamente por 10 vezes consecutivas, todo o conteúdo
do token é apagado e perdido, inutilizando o mesmo para qualquer tipo de
aplicação e sendo necessária a aquisição de novo certificado frente à
certificadora.
Então, muita atenção, não erre a senha por 10 vezes
consecutivas!
Figura 07: Telas de
configurações avançadas do token
Na paleta “Certificate & Keys” pode-se visualizar todos os certificados
armazenados no token e que serão utilizados para assinar digitalmente os
documentos de NF-e emitidos.
Gerando uma NF-e para testes de
assinatura
Para testar a assinatura digital em uma NF-e de teste, utilizamos o aplicativo
disponibilizado no site
http://www.igara.com.br/produto.php?cod_produto=114 . O aplicativo mostrado
da Figura 08 é um demo desenvolvido em Delphi, totalmente funcional que permite
a geração de NF-e a partir de informações digitadas pelo usuário em campos de
texto que seguem o layout específico vigente.
Após abrir o aplicativo, clicamos no botão “Nova NF-e” e depois no botão “Salvar
NF-e”. Por fim selecionamos o diretório onde desejamos salvar o arquivo .xml
gerado. O aplicativo sugere um nome para o arquivo gerado e este nome não deve
ser alterado, pois segue padrão de nomenclatura específico exigido com base no
conteúdo da NF-e em questão.

Figura 08:
Aplicativo em Delphi para geração de NF-e
O arquivo gerado pode ser visualizado no Internet Explorer ou em qualquer outro
browser de internet com suporte a XML, e o resultado é conforme mostrado na
Figura 09.
Neste artigo não entraremos em detalhes sobre o processo de geração da NF-e,
pois este será o tema de outros artigos que virão.

Figura 09: Arquivo
.xml de NF-e visualizado no Internet Explorer
Até o momento, o arquivo gerado não tem valor jurídico, pois ainda não foi
assinado de forma que o emissor possa certificar a validade das informações
fornecidas, bem como não há nada que garanta que este documento não foi alterado
por terceiros sem o conhecimento prévio do emitente. Para tanto é preciso
assinar este documento e para isso vamos utilizar o aplicativo de assinatura de
NF-e disponibilizado para download gratuito no portal oficial em
www.nfe.fazenda.gov.br
.
Após fazer o download e instalação do aplicativo siga os seguintes passos:
·
Menu> Tarefas> Configura Diretório de Entrada. Selecione esta opção para indicar
o diretório onde estão localizadas as NF-e que você deseja assinar.
· Menu> Tarefas> Configura Diretório de Saída. Selecione esta
opção para indicar o diretório onde serão armazenadas as NF-e assinadas.
· Menu> Tarefas> Configura Diretório de Schemas. Selecione
esta opção para indicar o diretório onde se encontram armazenados os schemas que
determinam o layout vigente da NF-e. O download do schema vigentes pode ser
feito no portal e deve-se operar sempre com o layout mais novo.
Uma vez configurados os diretórios, antes de realizar o processo de assinatura,
faz-se necessário selecionar qual certificado será usado no processo. Para isso
acesse a opção Menu> Tarefas> Seleciona Certificado e selecione o
certificado contido no token conforme mostrado na Figura 10.

Figura 10: Tela de
seleção do certificado que será usado para a assinatura digital
Clicando no botão “Mostrar o Certificado” é possível visualizar informações
detalhadas do mesmo através do visualizador de certificados padrão do Windows,
mostrado na Figura 11 a seguir.

Figura 11:
Visualizador de certificados padrão do Windows
Uma vez realizados corretamente todo o processos de configuração, estamos
prontos para assinar nossa primeira NF-e. Conforme mostrado na Figura 12,
visualizamos no grid do lado esquerdo todas as NF-e disponíveis a serem
assinadas. Marcando o check-box das NF-e desejadas, basta então clicar na opção
Menu> Tarefas> Efetuar Assinatura XML, para que todas as NF-e
selecionadas sejam devidamente assinadas, utilizando o certificado selecionado.
A NF-e assinada será armazenada no diretório indicado anteriormente e é possível
visualizá-la no grid do lado direito do aplicativo, conforme mostrado na Figura
12.

Figura 12:
Aplicativo de assinatura de NF-e disponibilizado no portal oficial da NF-e
A diferença entre o arquivo não assinado e o arquivo assinado digitalmente
estará no conteúdo das últimas chaves do arquivo XML em questão, que
anteriormente estavam sem preenchimento, e após a assinatura terão um conteúdo
conforme, mostrado na Figura 13.

Figura 13: Arquivo
.xml de NF-e após o processo de assinatura
Após o processo de assinatura, os campos de DigestValue, SignatureValue e
X509Certificate passaram a conter dados criptografados que identificam
unicamente o arquivo .xml em questão e atestam que o mesmo foi assinado somente
por pessoa detentora do token.
Neste momento fica claro que o token, por ter validade
jurídica para assinatura de documentos, deve ser manipulado somente por pessoas
devidamente autorizadas. Portanto, todo cuidado é pouco!
Uma vez assinada, podemos abrir e visualizar a NF-e, utilizando outro aplicativo
oficial disponível para download no portal da NF-e em
www.nfe.fazenda.gov.br
, o aplicativo Visualizador de NF-e.
Após fazer o download e instalação do aplicativo basta clicar em Menu> Nota
Fiscal> Abrir e selecionar o arquivo XML da NF-e assinada, e o resultado
final será conforme mostrado na Figura 14.

Uma vez aberta a NF-e,
podemos ainda verificar a assinatura digital da mesma clicando em Menu>
Verificar> Assinatura Digital.
Um bom teste a ser feito pelo leitor é abrir a NF-e no NotePad ou qualquer outro
editor de texto e alterar o conteúdo de qualquer nó do arquivo XML, mesmo que
seja apenas uma letra. O que acontece se você pedir para verificar a Assinatura
Digital novamente? O resultado do teste da assinatura digital será inválido!
É possível ainda verificar outras questões como Estrutura e Conteúdo do Arquivo
e Situação do mesmo frente à SEFAZ.
Pronto! O arquivo da NF-e está pronto para ser enviado! Mas, por enquanto, é só,
pois o processo de envio da NF-e será tema de outros artigos que virão. Continue
acompanhando a coluna que em breve teremos mais artigos sobre o tema.
Conclusão
Com este artigo abordamos conceitos gerais de certificação digital e
assinatura digital no que tange a nota fiscal eletrônica e vimos como é fácil
emitir e assinar tais documentos. A NF-e já é uma realidade, e muito em breve
todos serão obrigados a adotar este novo formato, e mesmo as empresas não
obrigadas, estão interessadas em ter seus sistema atualizados para trabalhar
nesta nova modalidade de emissão de documentos fiscais.
Mostramos como fazer a assinatura usando como exemplo o certificado digital
emitido pela empresa CertSign. No entanto, apesar das informações apresentadas
envolverem dados específicos do fabricante, os conceitos abordados são
semelhantes independente da certificadora escolhida. Sendo assim o conhecimento
adquirido pode ser de grande utilidade na implementação da comunicação com
outras marcas e modelos.
Victory Fernandes é Professor do Departamento de Engenharia da UNIFACS,
Engenheiro Mestrando em Redes de Computadores, e desenvolvedor sócio da TKS
Software - Soluções de Automação e Softwares Dedicados. Pode ser contatado em
victory@igara.com.br , ou através dos
sites www.igara.com.br
–
www.igara.com.br/victory
|