Como encriptar e decriptar no harbour
Moderador: Moderadores
- clodoaldomonteiro
- Usuário Nível 4

- Mensagens: 821
- Registrado em: 30 Dez 2006 13:17
- Localização: Teresina-PI
- Contato:
Como encriptar e decriptar no harbour
Olá!
Eu uso as funções de encriptar e decreptar da lib do GAS, mas como essa lib é 16 bits, não dá para compilar com o xharbour, por isso queria saber se tem outra função para fazer isso.
Valeu a atenção.
Eu uso as funções de encriptar e decreptar da lib do GAS, mas como essa lib é 16 bits, não dá para compilar com o xharbour, por isso queria saber se tem outra função para fazer isso.
Valeu a atenção.
Editado pela última vez por clodoaldomonteiro em 31 Out 2007 21:41, em um total de 1 vez.
At. Clodoaldo Monteiro
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
Pegue um help (básico) do XHarbour na minha página. Nele tem tudo ou quase tudo o que você precisa saber. Não deve ser a última versão, mas acho que pode ajudar.
Link: http://www.buzinello.com/pub/index.php? ... tutorials/
Link: http://www.buzinello.com/pub/index.php? ... tutorials/
[]'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!
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!
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Opa,
Sugiro usar a função hb_md5(), porém não tem volta.
Falou!
Sugiro usar a função hb_md5(), porém não tem volta.
Falou!
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
- sygecom
- Administrador

- Mensagens: 7131
- Registrado em: 21 Jul 2006 10:12
- Localização: Alvorada-RS
- Contato:
Re: Como encriptar e decreptar no harbour
Exemplo do Help:clodoaldomonteiro escreveu:Olá!
Eu uso as funções de encriptar e decreptar da lib do GAS, mas como essa lib é 16 bits, não dá para compilar com o xharbour, por isso queria saber se tem outra função para fazer isso.
Valeu a atenção.
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
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
xHarbour.org + Hwgui + PostgreSql
MD5 é hash. Não é pra essa finalidade. Por isso não tem volta.Stanis Luksys escreveu:Sugiro usar a função hb_md5(), porém não tem volta.
[]'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!
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!
-
TerraSoftware
- Usuário Nível 3

- Mensagens: 353
- Registrado em: 28 Jul 2004 13:14
- Localização: Cianorte-PR
- Contato:
Faz assim:
Criptografar:
var1:="Terra Software"
var2:=crypt(var1,"minha senha")
Descriptografar:
var3:=crypt(var1,"minha senha")
Observer que a funcao crypt faz tanto a criptografia como a descriptografia e ainda vc pode usar nivel de senha. Acho otima, uso muito, até hoje naum apresentou problemas. Só tomo cuidado com espaços vazios. Por exemplo, se vc tem uma variavel no banco com 20 caracteres e vc criptografa uma palavra com 14 caracteres e grava no banco, ao descriptografar a variavel do banco vc tera outro resultado diferente do original. Para evitar este problema, eu sempre criptografo a variavel inteira. Ex:
var1:="Terra Software"
var2:=var1+space(20-len(var1))
replace no_nome with crypt(var2,"senha")
Criptografar:
var1:="Terra Software"
var2:=crypt(var1,"minha senha")
Descriptografar:
var3:=crypt(var1,"minha senha")
Observer que a funcao crypt faz tanto a criptografia como a descriptografia e ainda vc pode usar nivel de senha. Acho otima, uso muito, até hoje naum apresentou problemas. Só tomo cuidado com espaços vazios. Por exemplo, se vc tem uma variavel no banco com 20 caracteres e vc criptografa uma palavra com 14 caracteres e grava no banco, ao descriptografar a variavel do banco vc tera outro resultado diferente do original. Para evitar este problema, eu sempre criptografo a variavel inteira. Ex:
var1:="Terra Software"
var2:=var1+space(20-len(var1))
replace no_nome with crypt(var2,"senha")
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Amiguinho
Voce poderá encriptar/decriptar nativamente no Harbour usando as funções da SIX Library contidas na HBSIX.LIB, bastando para isto liga-la na compilação:
sxEncrypt() e sxDecrypt()
Consulte o manual da SIX 3 para saber como usa-las.
Voce poderá encriptar/decriptar nativamente no Harbour usando as funções da SIX Library contidas na HBSIX.LIB, bastando para isto liga-la na compilação:
sxEncrypt() e sxDecrypt()
Consulte o manual da SIX 3 para saber como usa-las.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Sempre usei para criptografar senhas e nunca tive problemas. Aliás é uma prática bem comum. Inclusive é bem sadio que não se possa descriptografar uma senha, e que o desenvolvedor do software não tenha acesso a ela, mantendo a privacidade do usuário.Maligno escreveu:MD5 é hash. Não é pra essa finalidade. Por isso não tem volta.
Agora se estes dados realmente necessitam ser descriptografados depois, então realmente não serve.
Editado pela última vez por Stanis Luksys em 31 Out 2007 17:20, em um total de 1 vez.
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Desculpe, Stanis. Mas encriptação sempre pressupõe a reversão para obtenção do original. Criptografia sempre tem duas mãos, ao contrário do que ocorre com o hash, que não encripta nada; apenas mistura. Mas essa confusão é até comum. Como o resultado do hash é ininteligível, confunde-se com encriptação.
E, por incrível que pareça, o hash pode sim ser revertido. E se o dado original for de tamanho pequeno, como uma senha, nem demora tanto. Mas aí é só por força bruta, claro.
E, por incrível que pareça, o hash pode sim ser revertido. E se o dado original for de tamanho pequeno, como uma senha, nem demora tanto. Mas aí é só por força bruta, claro.
[]'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!
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!
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Sim, eu entendo o que você quer dizer, não é de fato criptografia, mas é apenas o uso do termo. No final as vantagens por não ter volta são maiores, no caso de senhas.
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Eu sei. Os termos acabam meio que misturados. Mas isso só causa confusão. Pra quem nem nunca ouviu falar, fica mais confuso ainda. Mais por isso que intervi.Sim, eu entendo o que você quer dizer, não é de fato criptografia, mas é apenas o uso do termo.
Outro dia, apenas pra teste, peguei um hash que eu havia calculado e consegui recuperar uma senha alfanumérica de seis dígitos em menos de quatro horas. Então, o termo "não tem volta" é um tanto relativo. Por isso que sempre recomendo "anexar" uma string qualquer de segurança. Aí sim, não tem jeito mesmo.No final as vantagens por não ter volta são maiores, no caso de senhas.
[]'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!
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!
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Eu mesmo me sinto inseguro, quando estou navegando num site e entro no "esqueci minha senha" e me enviam ela por e-mail do jeitinho que cadastrei.
Lembro de uma rotina de criptografia, que dava pra abrir o DBF e aplicar a senha criptografada com a que eu tinha cadastrado, e o resultado era a palavra-chave. Mesmo que se esteja usando uma função de encriptação, se algum maluco descobrir a palavra-chave, descobre a senha de todos os usuários.
Sem contar o lance da privacidade do usuário.
Mas claro que isso que falei só se aplica a senhas, outros dados, nem sempre.
Lembro de uma rotina de criptografia, que dava pra abrir o DBF e aplicar a senha criptografada com a que eu tinha cadastrado, e o resultado era a palavra-chave. Mesmo que se esteja usando uma função de encriptação, se algum maluco descobrir a palavra-chave, descobre a senha de todos os usuários.
Sem contar o lance da privacidade do usuário.
Mas claro que isso que falei só se aplica a senhas, outros dados, nem sempre.
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Ah, sim. Mas esse esquema de enviar senha por eMail é só pra coisas de baixo nível de segurança. Além do que, basta interceptar sua conexão com um monitor de tráfego e mesmo com SSL, a senha aparece bonitinha lá. Não dá pra confiar em eMail.
Mas falando em MD5 é diferente. O simples cuidado que mencionei já faz o algoritmo super-seguro. E por um simples motivo: não se pressupõe que a string retornada seja a soma da senha com a palavra-chave. E como a string aumenta de tamanho, o tempo de tentativa-e-erro aumenta exponencialmente.
Mas falando em MD5 é diferente. O simples cuidado que mencionei já faz o algoritmo super-seguro. E por um simples motivo: não se pressupõe que a string retornada seja a soma da senha com a palavra-chave. E como a string aumenta de tamanho, o tempo de tentativa-e-erro aumenta exponencialmente.
[]'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!
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!
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
O MD5 também não é uma fortaleza, apesar de ser uma possibilidade muitíssimo remota, duas strings diferentes podem ocasionar o mesmo resultado final, o que torna um pouco mais fácil de se aplicar o algorítmo do contrário, pois qualquer que seja o resultado que você encontre, conseguirá burlar, mesmo até não sendo a senha que o cara cadastrou!!
Mas isso é quase impossível. É bem seguro sim.
Mas isso é quase impossível. É bem seguro sim.
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
