função cripto em xharbour

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

lapinhazzz
Usuário Nível 3
Usuário Nível 3
Mensagens: 130
Registrado em: 20 Abr 2009 10:52
Localização: LAGOA

função cripto em xharbour

Mensagem por lapinhazzz »

Bom Dia a Todos.

Alguém conhece algum comando ou função no xharbrou que faça criptrografar um dbf ou seja o campo password com 16 de tamanho.

E depois a função ou o comando para descriptrografar..

Cumprimentos a Todos e Boas Festas e Feliz Ano Novo

Lapinhazzz
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7929
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Re: função cripto em xharbour

Mensagem por Itamar M. Lins Jr. »

...que faça criptrografar um dbf...
Olha, isso não é aconselhavel porque vai ter que descriptografar todo o DBF quando for trabalhar com ele.
...seja o campo password com 16 de tamanho.
Pode usar esse recurso.

Código: Selecionar todos

PROCEDURE Main
      LOCAL cText := "Hello world"
      LOCAL cKey  := "xHarbour"
      LOCAL cCipher

      cCipher := HB_Crypt( cText, cKey )

      ? cCipher

      ? HB_Decrypt( cCipher, cKey )
   RETURN
Saudações,
Itamar M. Lins Jr.

Ps: tem também as funções do RDD da SIX.
Saudações,
Itamar M. Lins Jr.
lapinhazzz
Usuário Nível 3
Usuário Nível 3
Mensagens: 130
Registrado em: 20 Abr 2009 10:52
Localização: LAGOA

Re: função cripto em xharbour

Mensagem por lapinhazzz »

Bom Dia

Obrigado Itamar, Valeu

Lapinhazzz
lapinhazzz
Usuário Nível 3
Usuário Nível 3
Mensagens: 130
Registrado em: 20 Abr 2009 10:52
Localização: LAGOA

Re: função cripto em xharbour

Mensagem por lapinhazzz »

Amigo do forum tenho um problema



o codigo que voce me deu com uma pequena alteração nao funciona

Código: Selecionar todos


PROCEDURE Main
      LOCAL cText := "Hello world"
      LOCAL cKey  := "xHarbour"
      LOCAL cCipher
use xxxx
      cCipher := HB_Crypt( cText, cKey )
replace secre with cCipher
      ? cCipher

      ? HB_Decrypt( secre, cKey )
   RETURN


Mas não funciona

Me post aqui hei-de fazer com o campo secre do ficheiro xxxx.


obrigado


lapinhazzz
Avatar do usuário
alaminojunior
Colaborador
Colaborador
Mensagens: 1717
Registrado em: 16 Dez 2005 21:26
Localização: Ubatuba - SP

Re: função cripto em xharbour

Mensagem por alaminojunior »

O que o colega poderia fazer e aliás é o mais aconselhável, é não guardar o password mesmo criptografado no campo, e sim o seu hash.
No meu caso, eu pego a senha digitada que é uma string com 6 posições e gero o seu md5. Note que a senha continua sendo 6 posições, porém o campo no dbf possui as 32 posições do hash md5.
E não precisa ficar criptografando ou descriptografando, apenas submeta o que foi digitado à função e depois compare.
Existem outros como crc32 e etc...
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
lapinhazzz
Usuário Nível 3
Usuário Nível 3
Mensagens: 130
Registrado em: 20 Abr 2009 10:52
Localização: LAGOA

Re: função cripto em xharbour

Mensagem por lapinhazzz »

Para descompilar com a função que me deram aqui vai a dica para decryptar.
Para criptar é fazer o inverso

Código: Selecionar todos

LOCAL cKey  := "lapinha26889"
   LOCAL acesso
   LOCAL acessokey
   set cursor off
   USE XXXX
   TENT:=1
   COLUNA:=32
   INTRO:=0
   codi:=""
   digi:=0
   FLAG:=1
   acessokey=rtrim(secre)
   acesso=HB_Decrypt( acessokey, ckey )
ACESSO:=RTRIM(ACESSO)

Reparem que o rtrim remove os brancos da direita senão não funciona

Obrigado a todos

Espero que esta dica sirva.

Lapinhzzz
Responder