Página 2 de 17
Enviado: 05 Jul 2007 11:25
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.
Enviado: 05 Jul 2007 13:11
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.
Enviado: 05 Jul 2007 13:26
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
Enviado: 05 Jul 2007 13:29
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.
Enviado: 05 Jul 2007 14:03
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.
Boa informação!
Enviado: 05 Jul 2007 14:11
por DinhoNetGomes
Grato pela dica!
[]s
Enviado: 05 Jul 2007 16:23
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.
Para manter aceso este tópico.
Enviado: 06 Jul 2007 14:13
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!
Enviado: 06 Jul 2007 14:31
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
Toda Ajuda é bem vinda!
Enviado: 06 Jul 2007 14:48
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!
Link da Microsoft
Enviado: 06 Jul 2007 14:55
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.
Enviado: 06 Jul 2007 15:34
por Maligno
Tem absoluta certeza de que o caminho é esse?
Enviado: 06 Jul 2007 16:13
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!
Enviado: 06 Jul 2007 16:23
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.
Enviado: 06 Jul 2007 22:40
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.