Nfe - Tags (cNF) e (nNF)

1,195 views
Skip to first unread message

Secaio

unread,
Jul 18, 2017, 2:46:56 PM7/18/17
to dug...@googlegroups.com
Pessoal boa tarde!

Essa tarde um escritório contábil me encaminhou essa mensagem:

"Identificamos uma fragilidade no sistema de emissão de notas fiscais de sua empresa: o uso do próprio número da Nota Fiscal no campo “cNF” (Código Numérico que compõe a Chave de Acesso). Essa prática possibilita que qualquer pessoa, mesmo não autorizada, tenha acesso aos dados das notas fiscais da empresa, uma vez que não foi adotado o código secreto (cNF)."

Nos exemplos que me baseei quando implementei a Nfe para esse cliente, essas duas tags eram preenchidas com o número de NFe, fiz da mesma forma e como funcionou tudo tranquilo nunca mais olhei... até hoje hehe.

Pelo que entendi devo gerar um número aleatório para cada NFe toda vez para preencher a tag (cNF) é isso mesmo?  Se for isso, minha duvida é existe algum "range" (intervalo) para esse número que devo gerar? Ele pode repetir?

--
Secaio

Secaio

unread,
Jul 18, 2017, 3:12:12 PM7/18/17
to dug...@googlegroups.com
Resolvido...

  Randomize;
  CodigoNFChave := Random(999999999) + 1;

guardei no banco esse numero e recupero depois na hora de gerar o XML


 Ide.cNF   := NOTA.CodigoNFChave.AsInteger; 


Acho q era isso... 
--
Secaio

Anderson Dapper Rocha

unread,
Jul 21, 2017, 4:10:35 PM7/21/17
to dug...@googlegroups.com

Cara eu tive esse problema também e resolvi de outra forma.

 

O que me permitiu não precisar guardar o valor do código no banco.

 

Eu gerei a Chave com o código sendo igual ao número da NF.

 

Montei uma rotina de HASH que gera um cálculo para chegar em um valor de 8 dígitos baseado na chave que passo como parâmetro.

 

Com isso tenho o cNF “aleatório”, na realidade um cálculo para que ele não seja sequencial e sempre que eu precise recalcular dê o mesmo valor.

--
--
Você recebeu esta mensagem porque está inscrito no "DUG-RS -
Delphi Users Group Rio Grande do Sul" em Grupos do Google.
Acesse o nosso BLOG em http://www.dug-rs.org e contribua com a comunidade Delphi do Rio Grande do Sul
Para postar neste grupo, envie um e-mail para dug...@googlegroups.com
Para cancelar a sua inscrição neste grupo, envie um e-mail para
dug-rs-un...@googlegroups.com
Para ver mais opções, visite este grupo em
http://groups.google.com.br/group/dug-rs?hl=pt-BR
 
Twitter: @dugrs
http://www.facebook.com/groups/dugrs/
http://www.Vimeo.com/dugrs

---
You received this message because you are subscribed to the Google Groups "DUG-RS - Delphi Users Group Rio Grande do Sul" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dug-rs+un...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Eric

unread,
Jul 24, 2017, 3:35:39 PM7/24/17
to dug...@googlegroups.com

Boa tarde.

Implementei recentemente NFC-e. Eu optei por armazenar esse número, realizando a geração aleatória (como indica o manual).

Como é uma implementação nova, isolei dados fiscais e populo uma tabela com todas as informações de NF-e exatamente como foram enviadas e utilizando como base os campos necessário no envio da nota.

Para evitar problemas futuros, te sugeriria armazenar esse número também.

Att.,
Eric Alves

Livre de vírus. www.avast.com.
Reply all
Reply to author
Forward
0 new messages