AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Passwort mit MD5 o. Ä. hashen?

Ein Thema von Postman1986 · begonnen am 25. Jul 2007 · letzter Beitrag vom 25. Jul 2007
Antwort Antwort
Postman1986

Registriert seit: 24. Jul 2007
Ort: Trier
31 Beiträge
 
#1

Passwort mit MD5 o. Ä. hashen?

  Alt 25. Jul 2007, 16:52
Hi,
gibt es hier irgendwo ein anschauliches Beispiel zur Erstellung eines Hash von einem String mit beispielsweise MD5?
Dieses DEC hab ich mir bereits angeguckt, da ich aber noch ein ziemlicher Anfänger bin, habe ich keine Ahnung, wie ich es in mein Programm implementieren soll, geschweige denn, wie man es überhaupt ansteuert (hab dort nur eine seltsame Konsole gefunden, bei der leider nichts von MD5 zu erkennen ist).

Wichtig wäre es außerdem, dass es nur zum Hash eines Strings, nicht einer Datei dient, da ich mehrere Daten in eine Datei speichern will, nicht nur das Passwort.

Gruß Daniel
Daniel
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#2

Re: Passwort mit MD5 o. Ä. hashen?

  Alt 25. Jul 2007, 17:16
ResultAsString := THash_MD5.CalcBinary(Password, TFormat_HEX); Berechnet mit MD5 über den String in Password einen Hash und wandelt diesen Binären Datenwert in einen HEXadezimal formatierten String um. Statt TFormat_HEX kannst du auch

- TFormat_COPY -> ResultAsString ist dann der reale binäre Digest des hash
- TFormat_MIME64 -> ResultAsString ist dann ein INet MIME Base64 formatierter String
- TFormat_UU, TFormat_XX -> UNIX UU/XX Format
- TFormat_PGP, ein nach MIME Base 64 formartierter String der eine prohibitäre 24 Bit Prüfsumme hintendran gehangen bekommt, also sie wie beim PGP
- TFormat_ESCAPE, Escaped String

Schau in Unit DECFmt.pas für die verschiedenen Textformate nach.

Im DEC gibts den Datentyp -> Binary = type LongString. Das ist nichts anderes wie ein String allerdings soll der Name "Binary" darauf hinweisen das in diesem LongString auch nicht darstellbare Zeichen gespeichert sein können. Zb. der Nullterminator #0. Wandelt man so einen String in einen PChar um (zwecks API Aufruf) dann würde der Nullterminator dazu beitragen das man mit abgescnittenen Daten arbeitet. Um das zu signalisieren eben der Binary Datentyp. Man hätte auch ein dynamisches Bytearray benutzen können,das ist richtig. Aber dieser Datentyp ist nich kompatibel zu den Strings. Der Binary Datentyp vereinfacht also vieles, aber der Programmierer hat auch aufzupassen wie er mit dem Binary umgeht. Benutzt du reine Delphi String Operatonen treten keine Fehler damit auf.

Gruß Hagen
  Mit Zitat antworten Zitat
Postman1986

Registriert seit: 24. Jul 2007
Ort: Trier
31 Beiträge
 
#3

Re: Passwort mit MD5 o. Ä. hashen?

  Alt 25. Jul 2007, 17:28
Vielen Dank für die schnelle Antwort, aber leider komme ich damit noch nicht so recht weiter.

1. Was genau, muss ich wo, implementieren, damit ich die Library nutzen kann?
2. Die Unit DECFmt.pas existiert bei mir nicht, liegt es vielleicht daran, dass ich die D7 Version von DEC benutze?

Gruß Daniel
Daniel
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#4

Re: Passwort mit MD5 o. Ä. hashen?

  Alt 25. Jul 2007, 17:59
Also

1.) DEC 5.1c downloaden -> http://www.michael-puff.de/Developer...agen_Reddmann/ Luckie ist so freundlich mich zu hosten.

2.) Datei entpacken mit Ordnern, zb. in D:\DEC\

3.) im Ordner ..\Part_I\ findest du alle Source des Part I vom DEC. Also Unit DECFmt.pas und DECHash.pas.

4.) eigenes projekt öffnen und in Uses Klausel -> DECUtil, DECFmt, DECHash einbauen

4.1/2) eventuell Suchpfad in den Projektoptionen auf d:\dec\part_i\ hinzufügen

5.) obige eine Zeile Source in dein Projekt einbauen

Gruß Hagen
  Mit Zitat antworten Zitat
Postman1986

Registriert seit: 24. Jul 2007
Ort: Trier
31 Beiträge
 
#5

Re: Passwort mit MD5 o. Ä. hashen?

  Alt 25. Jul 2007, 18:16
Danke, genau das was ich wissen wollte!
Daniel
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz