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
função cripto em xharbour
Moderador: Moderadores
-
lapinhazzz
- Usuário Nível 3

- Mensagens: 130
- Registrado em: 20 Abr 2009 10:52
- Localização: LAGOA
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7929
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Re: função cripto em xharbour
Olha, isso não é aconselhavel porque vai ter que descriptografar todo o DBF quando for trabalhar com ele....que faça criptrografar um dbf...
Pode usar esse recurso....seja o campo password com 16 de tamanho.
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
Itamar M. Lins Jr.
Ps: tem também as funções do RDD da SIX.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
-
lapinhazzz
- Usuário Nível 3

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

- Mensagens: 130
- Registrado em: 20 Abr 2009 10:52
- Localização: LAGOA
Re: função cripto em xharbour
Amigo do forum tenho um problema
o codigo que voce me deu com uma pequena alteração nao funciona
Mas não funciona
Me post aqui hei-de fazer com o campo secre do ficheiro xxxx.
obrigado
lapinhazzz
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
Me post aqui hei-de fazer com o campo secre do ficheiro xxxx.
obrigado
lapinhazzz
- alaminojunior
- Colaborador

- Mensagens: 1717
- Registrado em: 16 Dez 2005 21:26
- Localização: Ubatuba - SP
Re: função cripto em xharbour
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...
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
MySQL c/ SQLRDD
HwGui + GTWVG
-
lapinhazzz
- Usuário Nível 3

- Mensagens: 130
- Registrado em: 20 Abr 2009 10:52
- Localização: LAGOA
Re: função cripto em xharbour
Para descompilar com a função que me deram aqui vai a dica para decryptar.
Para criptar é fazer o inverso
Reparem que o rtrim remove os brancos da direita senão não funciona
Obrigado a todos
Espero que esta dica sirva.
Lapinhzzz
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)
Obrigado a todos
Espero que esta dica sirva.
Lapinhzzz