AGB  ·  Datenschutz  ·  Impressum  







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

Hash mit DEC: wie und welchen

Ein Thema von Davidb · begonnen am 20. Nov 2005 · letzter Beitrag vom 11. Sep 2007
Antwort Antwort
Seite 1 von 2  1 2      
Davidb

Registriert seit: 11. Nov 2005
Ort: Hamburg
15 Beiträge
 
Delphi 2005 Personal
 
#1

Hash mit DEC: wie und welchen

  Alt 20. Nov 2005, 21:50
Moin,
also ich versuche jetzt schon seit einiger Zeit mit dem DEC einen Hash von einem string
zu erstellen. Ich habe mich erstmal für MD5 entschieden. Das problem ist jetzt, dass ich bei
THash_MD5.create() immer folgende meldung bekomme:
[Error] test.pas(82): E2035 Not enough actual parameters
ist ja eigentlich auch klar weil THash_MD5.create() den parameter TProtection erwartet ("sagt" mir zumindest delphi).
Es ist nur so, dass ich keine ahnung habe was das für ein parameter sein soll.

würde mich sehr über hilfe freuen,
david

Ps: würdet ihr mir überhaupt MD5 empfehlen oder ist eine der anderen hash functionen besser?
::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::Es gibt immer mehrere::::::::::::
:::::::::::::::Versionen von der:::::::::::::::
::::::::::::::::::::Wahrheit::::::::::::::::::::
  Mit Zitat antworten Zitat
Davidb

Registriert seit: 11. Nov 2005
Ort: Hamburg
15 Beiträge
 
Delphi 2005 Personal
 
#2

Re: Hash mit DEC: wie und welchen

  Alt 21. Nov 2005, 13:22
Nach einigen gesuche in Hagens beispielen habe ich es jetzt halbwegs selbst hinbekommen, allerdings werden jetzt dauernd
exceptions gemeldet und der hash sieht auch immer gleich aus.
vielleicht könnt ihr mir ja sagen was ich alles falsch gemacht habe.
hier mal der Code:
Delphi-Quellcode:
procedure TForm1.codierenClick(Sender: TObject);
    var
      PHash: THash_MD5;
      s: string;
      i: Integer;
      j: Integer;
      n: Integer;
      Hpass: string;
      Format: Integer;
begin
    Format :=fmtHEXL;

    PHash := THash_MD5.create(nil);
    PHash.Init;
    Hpass := PHash.CodeString(pass, paEncode, Format);
    Inhalt.Text := eingabe;
    if length(pass) > 10 then begin
        j := 1;
        s := Inhalt.Text;
        for i := 0 to length(s) do begin
            j := i mod length(Hpass);
            n := Ord(Hpass[j]);
            n := n mod 31;
            s[i] := char(n Xor Ord(s[i]));
         end;

        Inhalt.Text := s;
        eingabe := s;
        PHash.Free;
    end
    else
        Inhalt.Text := 'Sie müssen ein Passwort mit mehr als 10 Zeichen eingeben';
        PHash.Free;
end;
könnte ja auch sein, dass es an meiner XOR methode liegt.
wäre über jede hilfe dankbar,
david

Ps: ich weiß, dass XOR so wie ich es hier benutze sehr unsicher ist, ist bis jetzt jedoch gewollt
david
::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::Es gibt immer mehrere::::::::::::
:::::::::::::::Versionen von der:::::::::::::::
::::::::::::::::::::Wahrheit::::::::::::::::::::
  Mit Zitat antworten Zitat
Benutzerbild von dahead
dahead

Registriert seit: 16. Mai 2005
620 Beiträge
 
#3

Re: Hash mit DEC: wie und welchen

  Alt 21. Nov 2005, 13:56
also wenn du wirklich nur md5 brauchst, warum verwendest du nicht bpsw. diese Unit?

hier wird beschrieben wie das funktioniert.

wenn der hash immer gleich aussieht, darf ich fragen, wie er aussieht? vielleicht ist der string dauernd empty?

wo kriegst du exceptions?
  Mit Zitat antworten Zitat
Davidb

Registriert seit: 11. Nov 2005
Ort: Hamburg
15 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Hash mit DEC: wie und welchen

  Alt 21. Nov 2005, 16:17
ich würde schon gerne das DEC verwenden, weil ich vielleicht auch noch andere verschlüsselungsfunktionen nutzten möchte, oder
zb den zufallsgenerator.
und das der string aus dem der hashwert erzeugt wird leer ist glaube ich nicht, weil die hashwerte schon unterschiedlich sind nur aber nur wenn ich das programm neustarte.
im moment wäre es mir auch wichtiger wenn mir jemand sagen könnte warum mein code dauernd acces violations ausgibt.
grüße, david
::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::Es gibt immer mehrere::::::::::::
:::::::::::::::Versionen von der:::::::::::::::
::::::::::::::::::::Wahrheit::::::::::::::::::::
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Hash mit DEC: wie und welchen

  Alt 21. Nov 2005, 16:36
Hai Davidb,
ich versuche mal deinen Code zu "beurteilen".

[quote="Davidb"]...
Delphi-Quellcode:
procedure TForm1.codierenClick(Sender: TObject);
    var
      PHash: THash_MD5;
      s: string;
      i: Integer;
      j: Integer;
      n: Integer;
      Hpass: string;
      Format: Integer;
begin
    Format :=fmtHEXL; // Was möchtest du mit "Format" machen? Wenn musst Du es deiner Instanz von THash zuweisen
    PHash := THash_MD5.create(nil); // So, hier erzeugst Du keine Instanz von THash.
    PHash.Init; // Init ist okay.
    Hpass := PHash.CodeString(pass, paEncode, Format); //Und jetzt? Du versuchst deiner Instanz einen Hashstring zu zuweisen.
    Inhalt.Text := eingabe; // Wo kommt den Inhalt her?
    if length(pass) > 10 then begin /pass ist hier auch nicht vorhanden
.
.
end;
Zitat:
könnte ja auch sein, dass es an meiner XOR methode liegt.
Warum denn jetzt XOR? Ich dachte Du möchtest die Hash-Funktionen des DEC von Hagen benutzen?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

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

Re: Hash mit DEC: wie und welchen

  Alt 21. Nov 2005, 16:47
Schau mal in Hash.pas rein

    class function CalcString(const Data: String; Protection: TProtection; Format: Integer): String; Wie du siehst eine Klassen Methode. Ich weis ein sehr unübliches Design aber ein kompaktes und einfaches. Denn so ist es richtig



Result := THash_MD5.CalcString(Value, nil, fmtHEX); fertig und Gruß Hagen
  Mit Zitat antworten Zitat
Davidb

Registriert seit: 11. Nov 2005
Ort: Hamburg
15 Beiträge
 
Delphi 2005 Personal
 
#7

Re: Hash mit DEC: wie und welchen

  Alt 21. Nov 2005, 17:13
danke hagen das wars, jetzt funktioniert es alles wunderbar.

grüße,
david
::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::Es gibt immer mehrere::::::::::::
:::::::::::::::Versionen von der:::::::::::::::
::::::::::::::::::::Wahrheit::::::::::::::::::::
  Mit Zitat antworten Zitat
dominikkv

Registriert seit: 30. Sep 2006
Ort: Gundelfingen
1.109 Beiträge
 
Delphi 2007 Professional
 
#8

Re: Hash mit DEC: wie und welchen

  Alt 10. Sep 2007, 13:53
hmm...hat sich hier etwas geändert?
Mein Delphi 2007 kennt kein fmtHex, außerdem sieht die deklaration nun so aus:
class function CalcFile(const FileName: String; Format: TDECFormatClass = nil; const Progress: IDECProgress = nil): Binary;
Dominik
Wer anderen eine Grube gräbt, hat ein Gruben-Grab-Gerät!
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#9

Re: Hash mit DEC: wie und welchen

  Alt 10. Sep 2007, 13:57
Hi,

imho heißt es jetzt sowas wie TFormat_Hex.
  Mit Zitat antworten Zitat
dominikkv

Registriert seit: 30. Sep 2006
Ort: Gundelfingen
1.109 Beiträge
 
Delphi 2007 Professional
 
#10

Re: Hash mit DEC: wie und welchen

  Alt 10. Sep 2007, 13:58
Zitat von Die Muhkuh:
Hi,

imho heißt es jetzt sowas wie TFormat_Hex.
das hab ich auch schon ausprobiert...
Zitat:
[DCC Fehler] ULastFM.pas(173): E2010 Inkompatible Typen: 'IDECProgress' und 'Class reference'
Dominik
Wer anderen eine Grube gräbt, hat ein Gruben-Grab-Gerät!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 23:45 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