GARANTIR DESCONTO

Fórum Criptografia diferente só com letras e numeros? #313200

15/02/2006

0

Boa Noite,

pesquise no forum algo que me possa criptografar um valor digitado com numero e letras com uma certa quantidade de caracteres e me retornasse também numeros e letras com a mesma quantidade de caracteres mas não encontrei nada, será que alguém pode me ajudar?

Exemplo: c10b15c5
Resposta: a7i6e13u

Obrigado


Juniorprog

Juniorprog

Responder

Posts

16/02/2006

Motta

Deve ter coisa melhor na web :

308 - Encriptar/Desencriptar strings
Esta função permite encriptar e desencriptar strings. O código de encriptação é bastante simples, por isso pode ser melhorado, sendo este apenas um exemplo de como fazê-lo em Delphi.

function EnDecryptString(StrValue : String; Chave: Word) : String;
var
I: Integer;
OutValue : String;
begin
OutValue := ´´;
for I := 1 to Length(StrValue) do
OutValue := OutValue + char(Not(ord(StrValue[I])-Chave));
Result := OutValue;
end;
Exemplo de utilização:

Iniciar um novo projecto, copiar a função para uma unit, colocar três TEdit (Edit1, Edit2, Edit3) e dois TButton (Button1 e Button2) na form.

No evento OnClick do Button1 deve chamar a função, em que os parâmetros de entrada são o texto do Edit1 e uma chave de encriptação do tipo word.

procedure TForm1.Button1Click(Sender: TObject);
begin
Edit2.text:=EnDecryptString(Edit1.text, 236);
end;
No evento OnClick do Button2 deve chamar a função EnDecryptString, em que os parâmetros de entrada são o texto encriptado do Edit2 a chave de encriptação usada para encriptar a string.

procedure TForm1.Button2Click(Sender: TObject);
begin
Edit3.text:=EnDecryptString(Edit2.text, 236);
end;


2ª Dica
Função para criptografar uma String
A função Criptografia pode ser usada para criptografar a senha acesso ao sistema. Ela é usada nos dois sentidos, para criptografar e descriptografar, desde que seja usada a mesma chave nas duas operações. ´mStr´ é a String que vai ser criptografada e ´mChave´ é a String que sera usada como base para fazer a criptografia.

function Criptografia(mStr, mChave: string): string;
var
i, TamanhoString, pos, PosLetra, TamanhoChave: Integer;
begin
Result := mStr;
TamanhoString := Length(mStr);
TamanhoChave := Length(mChave);
for i := 1 to TamanhoString do
begin
pos := (i mod TamanhoChave);
if pos = 0 then
pos := TamanhoChave;
posLetra := ord(Result[i]) xor ord(mChave[pos]);
if posLetra = 0 then
posLetra := ord(Result[i]);
Result[i] := chr(posLetra);
end;
end;
3ª Dica
Encripitando uma string
program Crypt;
uses WinCRT;
const
C1 = 52845;
C2 = 22719;
function Encrypt(const S: string; Key: Word): string;
var
I: byte;
begin
Result[0] := S[0];
for I := 1 to Length(S) do
begin
Result[I] := char(byte(S[I]) xor (Key shr 8));
Key := (byte(Result[I]) + Key) * C1 + C2;
end;
end;
function Decrypt(const S: string; Key: Word): string;
var
I: byte;
begin
Result[0] := S[0];
for I := 1 to Length(S) do
begin
Result[I] := char(byte(S[I]) xor (Key shr 8));
Key := (byte(S[I]) + Key) * C1 + C2;
end;
end;
var
S: string;
begin
Write(´>´);
ReadLn(S);
S := Encrypt(S, 12345);
WriteLn(S);
S := Decrypt(S, 12345);
WriteLn(S);
end.

Encripitando uma string (2)
function Encrypt( Senha:String ): String;
Const
Chave : String = ´Jesus´;
Var
x,y : Integer;
NovaSenha : String;
begin
for x := 1 to Length( Chave ) do
begin
NovaSenha := ´´;
for y := 1 to Length( Senha ) do
NovaSenha := NovaSenha + chr( (Ord(Chave[x]) xor Ord(Senha[y])));
Senha := NovaSenha;
end;
result := Senha;
end;



fonte HP:www.lloydsoft.hpg.ig.com.br


Responder

Gostei + 0

17/02/2006

Juniorprog

Obrigado. Funcionou blz


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar