Imam neki string koji bi trebalo da enkriptujem. Recimo hoce korisnik da se loguje i tu njegovu sifru treba da nekako zastiti. Kako to najlakse da odradim? Kako mogu recimo DANIJEL03 da konvertujem u neke brojeve pa onda te brojeve recimo podelim i oduzmem sa nekim iznosom i tako dobijen rezultat skladistim a kada hocu da vratim nazad onda saberem i pomnozim i pretvorim opet u slova? Kako to mogu najlakse da odradim, ako moze neki primer..
Kako da enkriptujem ovo ?
Zaključano
Zakačeno
Bar toga na netu ima ko pleve, i to gomile sos kda koji vrsi enkripciju po svim znanim i neznanim metodama.
Za kriptovanje lozinke koristi neku od hash metoda, recimo md5. Kriptovanu lozinku sačuvaš. Kada hoćeš da proveriš autentičnost korisnika, tražiš mu lozinku, opet primeniš istu metodu hashovanja i rezultat uporediš sa snimljenim.
Potpis
"The best code is no code at all."
- Zidar (ES član)
"Biggest obstacle to learning
SQL is unlearning procedural
programming." - Joe
Celko
"Minimize code, maximize data."
- A. Neil Pappalardo
- Zidar (ES član)
"Biggest obstacle to learning
SQL is unlearning procedural
programming." - Joe
Celko
"Minimize code, maximize data."
- A. Neil Pappalardo
Ne znam za novije Delphije, ali stariji (D6, ja ga još uvek koristim) nema neki native md5, zato ja koristim ovo:
http://www.fipe-vanus.com/download/md5.pas
Ovaj unit ubaciš u uses listu, i onda zoveš:
http://www.fipe-vanus.com/download/md5.pas
Ovaj unit ubaciš u uses listu, i onda zoveš:
Code:
MD5Print(MD5String('string :)'));
MD5Print(MD5String('string :)'));
Potpis
Evo ti prosti hash algoritam koji jos uvek koristim
:
Code:
function MakeHash(const AString : String) : DWORD;
var
C1 : Integer;
begin
result := 0;
For C1 := 1 to Length(AString) Do
result := result + (Ord(AString[C1]) shl Ord(AString[C1 + 1])) or
(Ord(AString[C1]) shr Ord(AString[C1 + 1]));
end;
function MakeHash(const AString : String) : DWORD;
var
C1 : Integer;
begin
result := 0;
For C1 := 1 to Length(AString) Do
result := result + (Ord(AString[C1]) shl Ord(AString[C1 + 1])) or
(Ord(AString[C1]) shr Ord(AString[C1 + 1]));
end;
Veoma jednostavno za korišćenje i veoma korisno:
http://sourceforge.net/projects/tplockbox/
LockBox is a cross-platform toolkit for data encryption. It contains routines & components for use with Borland Delphi, C++Builder, & Kylix. It provides support for Blowfish, RSA, MD5, SHA-1, DES, triple- DES, Rijndael, & digital signing of messages.
http://sourceforge.net/projects/tplockbox/
LockBox is a cross-platform toolkit for data encryption. It contains routines & components for use with Borland Delphi, C++Builder, & Kylix. It provides support for Blowfish, RSA, MD5, SHA-1, DES, triple- DES, Rijndael, & digital signing of messages.
Potpis
viking ®
uzmes ord (valjda tako beshe) od svako slovo pa onda xor?