Autor Beitrag
rolandt4088
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 122

WINDOWS XP
Delphi 7, CodeGear RAD Studio
BeitragVerfasst: Mo 11.05.09 18:16 
Hallo,

folgende Procedure benutze ich um ein Passwort zu verschlüsseln.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
procedure Tf_scy.JvXPButton1Click(Sender: TObject);
var
  MD5: TDCP_md5;
  Digest: array [0..15of Byte;  // MD5 produces a 128bit digest (16bytes)
  Reslt: String;
  Index: Integer;
begin
 MD5 := TDCP_md5.Create(Self);    // create the hash
  MD5.Init;                       // initialize it  
  MD5.UpdateStr(e_passwort.Text);      // hash the string  
  MD5.Final(Digest);              // produce the digest  
  MD5.Free;  
    
  Reslt := '';  
  for Index := 0 to 15 do
    Reslt := Reslt + IntToHex(Digest[Index], 2);
 //Ergebnis
 edit1.Text := reslt;
end;

Wie bekomme ich nun die Verschlüsselung wieder entschlüsselt?

Für einen Tipp bin ich sehr dankbar
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mo 11.05.09 18:20 
MD5 ist keine Verschlüsselung..
MD5 bildet einen Hashwert von einer Datei, um z.B. beim Empfänger zu vergleichen, dass die Datei korrekt angekommen ist. Diesen KANNST du nicht wieder "entschlüsseln".

_________________
PROGRAMMER: A device for converting coffee into software.
rolandt4088 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 122

WINDOWS XP
Delphi 7, CodeGear RAD Studio
BeitragVerfasst: Mo 11.05.09 18:23 
Vielen Dank für Deine schnelle Antwort.
Ich dacht ich könnte damit Passwörter unkenntlich machen.

Gibt es denn etwas womit man z.B. Passwörter kodieren kann?

mfg
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mo 11.05.09 18:26 
Ja, für Passwörter verwendet man das auch.
Du bildest einen MD5 Hash von einem Passwort, und speichert diesen Hash. Bei der Eingabe vergleichst du den Hash von dem eingegebenen Passwort, mit dem gespeicherten Hash. Somit hast du das "Passwort" zwar gespeichert, aber mann es nicht (bzw. nur seeehr schwer) auf das richtige Klartext Passwort zurückrechnen.

Das ganze ist wesentlich sicherer, als wenn du das Passwort selber abspeicherst.

_________________
PROGRAMMER: A device for converting coffee into software.
rolandt4088 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 122

WINDOWS XP
Delphi 7, CodeGear RAD Studio
BeitragVerfasst: Mo 11.05.09 18:30 
Vielen Dank für die Hilfe und dem Denkanstoß

mfg
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Di 12.05.09 08:53 
Ich fass den aktuellen Stand bzgl. Hashverfahren einmal zusammen:
SHA1 ist angeknackt, MD5 gebrochen und CRC32 in der Versenkung ;-)

Und die netten bunten Tabellen (Rainbow Tables) auch nicht vergessen ...

Verwende bitte ausschließlich Salted Hashs für deine Anwendungen. MD5 bitte komplett meiden (allein für Legacy-Anwendungen), Neuentwicklungen sollten SHA256/512 oder Whirlpool verwenden (Die RIPE hat auch ein paar nette Algos, da hab ich aber keine Papers zu deren Sicherheit verfügbar).

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
Xearox
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 260
Erhaltene Danke: 3



BeitragVerfasst: Mo 01.02.10 13:39 
Wo bekommt man den Code den zur verschlüssellung von SHA 512 her?
um es im Programm zu implementieren?


Edit: Oops...sehe grade, dass das Thema, nun ja, schon was älter ist...lol
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Mo 01.02.10 15:24 

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
acnut
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 172
Erhaltene Danke: 3

Windows 7, Windows Vista, Windows XP, Ubuntu, Kubuntu, Pardus
Delphi 2010 SV, Java Editor, VS 2010 SV
BeitragVerfasst: Mo 01.02.10 15:27 
Hier
[url]
www.example-code.com..._hash_algorithms.asp
[/url]

____________________
Zitat:

Verwende bitte ausschließlich Salted Hashs für deine Anwendungen. MD5 bitte komplett meiden (allein für Legacy-Anwendungen), Neuentwicklungen sollten SHA256/512 oder Whirlpool verwenden (Die RIPE hat auch ein paar nette Algos, da hab ich aber keine Papers zu deren Sicherheit verfügbar).

warum md5 meiden?

mfg
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Mo 01.02.10 16:26 
Frage:
user profile iconacnut hat folgendes geschrieben Zum zitierten Posting springen:
warum md5 meiden?

Antwort:
user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
SHA1 ist angeknackt, MD5 gebrochen und CRC32 in der Versenkung ;-)

Jürgen
acnut
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 172
Erhaltene Danke: 3

Windows 7, Windows Vista, Windows XP, Ubuntu, Kubuntu, Pardus
Delphi 2010 SV, Java Editor, VS 2010 SV
BeitragVerfasst: Mo 01.02.10 16:37 
user profile iconJüTho hat folgendes geschrieben Zum zitierten Posting springen:
Frage:
user profile iconacnut hat folgendes geschrieben Zum zitierten Posting springen:
warum md5 meiden?

Antwort:
user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
SHA1 ist angeknackt, MD5 gebrochen und CRC32 in der Versenkung ;-)

Jürgen



:( ok hab jetzt news darüber gelesen:)


mfg
Tobi482
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 135



BeitragVerfasst: Mo 01.02.10 17:43 
Hi,

ich habe zwar nicht soviel Ahnung welche Funktion wann und wo bereits durch Rainbow-Tables gecrackt worden ist, jedoch gibt es bestimmt noch viele andere Einwegfunktionen (also Funktionen die "schwer" umkehrbar sind) für die es noch keine Rainbow-Tables gibt.


Vielleicht Hilft dir die Idee des Salted-Hash weiter.
de.wikipedia.org/wiki/Salted_Hash


Ahh sorry habe überlesen, das BenBE das bereits geschrieben hatte.
Dann vergiss was ich gesagt habe^^

Mit freundlichen Grüßen
Tobi
Xearox
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 260
Erhaltene Danke: 3



BeitragVerfasst: Mo 01.02.10 18:01 
user profile iconacnut hat folgendes geschrieben Zum zitierten Posting springen:
Hier
[url]
www.example-code.com..._hash_algorithms.asp
[/url]

____________________
Zitat:

Verwende bitte ausschließlich Salted Hashs für deine Anwendungen. MD5 bitte komplett meiden (allein für Legacy-Anwendungen), Neuentwicklungen sollten SHA256/512 oder Whirlpool verwenden (Die RIPE hat auch ein paar nette Algos, da hab ich aber keine Papers zu deren Sicherheit verfügbar).

warum md5 meiden?

mfg


user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
GIDF --> home.netsurf.de/wolf...ardt/crchash_de.html



hab die beiden sachen schon vorher im Net gefunden, aber verstehe NULL davon
Xearox
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 260
Erhaltene Danke: 3



BeitragVerfasst: Mo 01.02.10 18:10 
in der Zip, die man beim Post von BenBE downloaden kann, da ist die SHA512 fehlerhaft.
kann da jemand mal nach schauen?
Jakob_Ullmann
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1747
Erhaltene Danke: 15

Win 7, *Ubuntu GNU/Linux*
*Anjuta* (C, C++, Python), Geany (Vala), Lazarus (Pascal), Eclipse (Java)
BeitragVerfasst: Mo 01.02.10 18:24 
Schau doch einfach hier, kann man direkt so abschreiben (auch wenn da nur SHA-256 und nicht SHA-512 beschrieben ist): en.wikipedia.org/wiki/SHA_hash_functions

EDIT: Warum erzeugt man nicht für die Salted Hashes Rainbow-Tables? Sollte doch in linearer Zeit schaffbar sein. :wink:
Xearox
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 260
Erhaltene Danke: 3



BeitragVerfasst: Mo 01.02.10 18:36 
ich habe null ahnung davon...ich brauche aber eine gute verschlüsselung...
deswegen wollte ich doch nur wissen, was in der zip bei SHA512 falsch ist....
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Mo 01.02.10 18:46 
Die Art, wie Du's in deinem Source nutzt. Aber das gehört in einen anderen Thread.

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.