[Delphi] SHA1

0

witam..

dysponuje ktos kodem funkcji do kodowania SHA1? ;> albo komponentem...

0

yh.. no coz, szukalem na googlach, ale zaden kod sie niekompilowal -.-

ten sie kompiluje ale dziwny jest...

SHA1.Init();
SHA1.Update();
SHA1.Final();

jak z tego mam zakodowac w edicie txt? -.- moje pomysly sie wyczerpaly.. a te demo jakies dziwne jest

0

Ja się z tym nie bawiłem ale jeśli chcesz to napisać to powinien Ci wystarczyć opis algorytmu z wikipedii.
http://pl.wikipedia.org/wiki/Sha1#Opisy_Algorytmu
Zapis w pascalu. Do czego chcesz go użyć? Bo to jest algorytm hashujący a nie kodujący-dekodujący...A ta druga strona z poprzedniego posta to moduł który musisz zaimplementować w swoim programie i potem jak ze standardową biblioteką inicjalizujesz potem wykonujesz co chcesz i finalizacja. Ja Ci za dużo nie pomoge bo sie tym nie bawiłem i nie zanosi sie żebym miał czas na to w najbliższym czasie ;] ale zaglądnij jeszcze tutaj ;)
http://www.google.com/codesearch?as_q=sha1&btnG=Wyszukaj+kod&hl=pl&as_lang=pascal&as_license_restrict=i&as_license=&as_package=&as_filename=&as_case=
ew. spróbuj w wyszukiwarce www.google.com/codesearch wpisać nazwy procedur lub funkcji z tej biblioteki i zobaczyć w jaki sposób są wywoływane ;)

Powodzenia!!

0

Oj GieKaA, zobacz co Ci zwraca SHA1Final. Opis. Możesz tez użyć MD5

//Znowu wyprzedzony

0

niemoge uzyc md5 bo autoryzacja tlen.pl koduje ID+8 bitowy hash hasla do SHA1 :)

z tym komponentem to all ok.. tyle, ze nie wiem jak to uzyc -.- w demie koduje dobrze.. ale musze podac plik do zakodowania, a zakodowany tekst podaje w edicie, z pliku czyta funckja BLockRead -.- a tego nierozumiem...

0

Ja zrobiłem to przy pomocy DCPcrypt:

function HashSHA1(Str:string):string;
var
  h:TDCP_sha1;
  digest:array [0..19] of byte;
  res:string;
  i:byte;
begin
  h:=TDCP_sha1.Create(nil);
  try
    h.Init;
    h.UpdateStr(Str);
    h.Final(digest);
  finally
    h.Free;
  end;

  res:='';
  for i:=0 to High(digest) do
    res:=res+IntToHex(digest[i],2);
  result:=res;
end;

żeby zahaszować tekst w edicie:

Hash:=HashSHA1(Edit1.Text);
0

dziala, dzieki ;-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1