Cupom Fiscal

Fórum sobre desenvolvimento de software para atender as exigências da legislação fiscal e tributária (NFe, NFCe, NFSe, SPEED, Projeto ACBr, TEF, ECD, EFD, etc.)

Moderador: Moderadores

Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

pringles escreveu:Pessoal, pelo que eu vi na portaria, as impressoras Bematech (que meus clientes usam) laser já têm um aplicativo da própria Bematech pra fazer gerar o que eles precisam. A questão é que a maioria de meus cliente utilizam a MP-25FI, que é o modelo anterior à laser. Sendo assim, tenho realmente que fazer a criptografia.
Não entendi. Se nesse modêlo mais novo é acrescentado um aplicativo que já faz o que precisa ser feito, significa que ele lê o arquivo inteiro, gera o MD5, cria a chave e "assina" o MD5 calculado. Então, é de se imaginar que você pode usar esse mesmo aplicativo. Ou não?
Maligno, você tem algum "prg" pronto pra isso, ou conhece alguém que tenha? Nem que eu tenha que pagar pelo fonte, pelo menos tenho menor "dor de cabeça".
Assinatura digital pelo algoritmo RSA de chaves públicas? Não tenho. O mais perto que já passei disso foi na literatura a respeito e esses fontes que têm de monte na Net. Pra Clipper então, nem se fala.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
pringles
Usuário Nível 3
Usuário Nível 3
Mensagens: 278
Registrado em: 29 Mai 2007 16:35
Localização: Botucatu-SP

Mensagem por pringles »

Na verdade, Maligno, o modelo mais novo que comentei não precisa fazer todo esse processo (RSA). Li na portaria que só é necessário fazer tudo isso para as impressoras que não emitem a memória de fita detalhe (MFD). No caso das mais novas elas emitem, já as anteriores (maioria dos meus clientes) não emitem, por isso preciso do RSA. Pelo que pude perceber, esse processo da chave pública é realmente muito complexo, ainda mais sendo em Clipper. Por isso perguntei se tem alguma sugestão de onde posso conseguir o fonte pronto, nem que tenha que pagar por ele. Como meu tempo livre é curto, preciso de uma solução mais fácil pra não ter que desenvolver essa chave. Se tiver alguma sugestão, me avisa. Obrigado.
Avatar do usuário
Clipper
Colaborador
Colaborador
Mensagens: 1334
Registrado em: 23 Ago 2004 00:04
Localização: Recife/PE

Mensagem por Clipper »

Prezado Pringles

Eu sei que não é o local correto, mas estou curioso para saber se conseguiu detectar/corrigir o problema de tela cheia, se sim, poste no tópico para que assim outros colegas possam ter acesso, isso é importante no fórum.

Até logo.

Marcelo
Programador que é programador, quando tá de folga vai inventar função nova, fazer testes, ou seja... se divertir
Cobra 210 - Drive de 8" 1.024 KB - 64 KB RAM - Impressora de Linha Cobra - Visicalc - Fortran - Dialog - Sistema Operacional SP/M (é sp/m mesmo - era o cp/m da cobra)
DinhoNetGomes
Usuário Nível 2
Usuário Nível 2
Mensagens: 99
Registrado em: 14 Nov 2005 09:36

Mensagem por DinhoNetGomes »

Caros Amigos,

Na Portaria Cat 052/07 no 1o. Artigo:
Parágrafo único - A gravação do arquivo digital, conforme exigido no inciso II, será efetuada mensalmente, englobando informações compreendidas entre o primeiro e o último dia do mês correspondente.

Pelo que entendi, quem não puder usar uma interface do fabricante que gere o arquivo automaticamente (caso da Bematech) deve fazê-lo como consta neste parágrafo.

Ou seja, ao invés de diário, fazer mensal, mas de qualquer maneira este arquivo mensal tem que ter a assinatura digital RSA pelo hash do MD5.

Isso significa que no meu caso "ganhei um tempo" até 31/07.

Estou considerando a hipótese de ter um executável que faça a redução Z com geração automática do arquivo digital, mas isso só será possível na marca Bematech, nas outras marcas, tem que ser no braço.

Enfim: qualquer coisa que dada uma chave MD5 gere uma assinatura digital RSA tá bem vinda.

até mais amigos.
MARINI
Usuário Nível 3
Usuário Nível 3
Mensagens: 288
Registrado em: 06 Jul 2004 08:06
Localização: Pindamonhangaba SP

Mensagem por MARINI »

O arquivo digital é gerado diariamente a cada redução Z.
Mensalmente, todos os arquivos gerados diariamente serão gravados em mídia ótica não regravável, contendo as informações entre o primeiro e o último dia do mês.
Sds
Marini
DinhoNetGomes
Usuário Nível 2
Usuário Nível 2
Mensagens: 99
Registrado em: 14 Nov 2005 09:36

Boa informação!

Mensagem por DinhoNetGomes »

Grato pela dica!

[]s
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

DinhoNetGomes escreveu:Enfim: qualquer coisa que dada uma chave MD5 gere uma assinatura digital RSA tá bem vinda.
Pelo que eu vi, gerar a assinatura é fácil. Na pior das hipóteses, um programa externo. O que pega é COMO gerar a chave que o algoritmo RSA deve usar para "assinar" o MD5.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
DinhoNetGomes
Usuário Nível 2
Usuário Nível 2
Mensagens: 99
Registrado em: 14 Nov 2005 09:36

Para manter aceso este tópico.

Mensagem por DinhoNetGomes »

Olá caros amigos,

Estou apenas postando para dizer que ainda estou tentando construir um programa que gere arquivo digital da Portaria CAT 052/07.

Tb está pendente como gerar a assinatura digital com criptografia RSA.

Até breve!
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Buenas...pessoal não toh acompanhado esse Topico...pq nunca trabalhei com cupom fiscal e espero nunca ter que trabalhar...mas se eu poder ajudar em algo prendam o grito....no xharbour nos temos algumas coisa de Criptografia...um exemplo da pasta Tests do xharbour:

Código: Selecionar todos

PROCEDURE Main()
   LOCAL cKey:= space(30), cSource:= Space(65), cCrypt
   LOCAL cResult
   LOCAL GetList := {}

   CLEAR SCREEN
   @2,25 SAY "X H A R B O U R - Cryptografia de Dados"

   @6,3 SAY "Inserir uma senha maior que 8 caracter:" GET cKey
   @8,3 SAY "Text: " GET cSource
   READ

   IF Len( Trim(cSource) ) < 8 .or. Len( Trim(cKey) ) < 8
      @10, 3 SAY "A senha Tem que ser maior que o solicitado."
      Inkey( 0 )
      @10, 3 SAY Space( 80 )
   ENDIF

   cCrypt  := HB_Crypt  ( Trim(cSource), Trim(cKey) )
   cResult := HB_Decrypt( cCrypt,  Trim(cKey) )
   cSource := Space( 65 )
   @12,1 SAY "Crypt:   " + Space( 65 )
   @15,1 SAY "Decrypt: " + Space( 65 )
   @12,1 SAY "Crypt:   " + cCrypt
   @15,1 SAY "Decrypt: " + cResult
   @16,1 SAY " "
   @17,1 SAY " "
   @18,1 SAY " "
   @19,1 SAY " "
   @20,1 SAY " "
   Inkey( 0 )
RETURN
E temos tb...sobre o HB_MD5()...que até pouco tempo atras eu não conhecia...
ex:

Código: Selecionar todos

csenha := hb_md5(string)
csenha:= hb_md5file("nomearquivo")  // uso em arquivo
Bom resumindo...se for para o bem de todos podemos fazer um executavel em xharbour para criptografar e ser chamado pelo Run no clipper....claro se isso resolve podemos fazer...se não resolve...apenas tentei ajudar....boa sorte a todos...

Abraços
Leonardo Machado
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
DinhoNetGomes
Usuário Nível 2
Usuário Nível 2
Mensagens: 99
Registrado em: 14 Nov 2005 09:36

Toda Ajuda é bem vinda!

Mensagem por DinhoNetGomes »

Caro Leonardo

Sobre sua citação:
Bom resumindo...se for para o bem de todos podemos fazer um executavel em xharbour para criptografar e ser chamado pelo Run no clipper....claro se isso resolve podemos fazer...se não resolve...apenas tentei ajudar....boa sorte a todos...
Toda ajuda é bem vinda, mas no nosso caso (que estamos sendo obrigados a gerar este arquivo) o MD5 é parte do problema, Maligno já forneceu uma lib que faz isso, ainda não usei, pq preciso da 2a parte.

Após gerar Md5 do arquivo, o hash criado (MD5) tem ser criptografado pelo algoritmo assimétrico RSA gerando uma 2a chave de 1024 bits (256 bytes).

Bom, é aí que enroscou o negócio. Ninguém teve uma solução pra isso até agora...

Já sei que no .Net já tem essa criptografia RSA sob forma de função (VB, Java, etc). Talvez se for gerado um executável que receba um parametro, gere a criptografia e devolva sob forma de arquivo texto resolva nosso problema.

Estou recebendo q.q. dica e ainda tentando resolver essa parada.

Tá difícil pq quem obriga a fazer isso (a secretaria do governo) dá suporte ZERO no assunto...

Grato a todos até aqui!
DinhoNetGomes
Usuário Nível 2
Usuário Nível 2
Mensagens: 99
Registrado em: 14 Nov 2005 09:36

Link da Microsoft

Mensagem por DinhoNetGomes »

Caros colegas:

segue o link da Microsoft sobre criptogradia no .Net

.NET Framework Developer's Guide
Generating Keys for Encryption and Decryption

http://msdn2.microsoft.com/en-us/librar ... s.80).aspx

Se algum expert do .Net puder auxiliar num modo de usar isso de acordo com Portaria CAT 052/07, estamos agradecidos.

Segue o link da Portaria:
http://info.fazenda.sp.gov.br/NXT/gatew ... 522007.htm

Grato a todos.
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Tem absoluta certeza de que o caminho é esse?
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
DinhoNetGomes
Usuário Nível 2
Usuário Nível 2
Mensagens: 99
Registrado em: 14 Nov 2005 09:36

Mensagem por DinhoNetGomes »

Maligno escreveu:Tem absoluta certeza de que o caminho é esse?
Não! rsss...

Por isso estou postando mensagens e mantendo o topico em dia, pq acredito que muito mais programadores estão passando por isso.

O único suporte (fora aquele para prateleiras) tá sendo aqui e no suporte da Bematech, mas na bematech nada de código aberto... quem quiser arquivo digital chama a Bemafi32.dll e dane-se quem estiver em DOS...

Estou contando com o apoio da comunidade do fórum e buscando toda informação possível.

Confesso que estou meio perdido (prá não dizer outra coisa). Vou fazer o arquivo digital até a parte do registro com assinatura RSA. Aí vamos ver o que é que vira...

Até mais!
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Obrigado pelas informações, Janis. Mas isso tudo já foi visto. O problema está na correta interpretação da forma de composição da assinatura que constará no registro EAD. Quem redigiu o documento não foi claro o suficiente.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
pringles
Usuário Nível 3
Usuário Nível 3
Mensagens: 278
Registrado em: 29 Mai 2007 16:35
Localização: Botucatu-SP

Mensagem por pringles »

Maligno, você talvez não tem alguma rotina pronta em C para a criptografia ou até em outra linguagem? Pergunto porque posso rodar meu sistema e usar um a parte para fazer o RSA. Obrigado.
Responder