Einzelnen Beitrag anzeigen

g1o2k4

Registriert seit: 29. Aug 2006
57 Beiträge
 
#1

Teilstrings abgleichen...

  Alt 28. Jan 2007, 23:29
hallo

folgendes problem:
ich habe ein programm das strings ver und entschlüsselt. beim entschlüsseln (brute force) wird das aktuelle ergebnis der entschlüsslung mit einer wordlist (TStringlist) abgeglichen. diese funktion sieht im moment so aus:

Delphi-Quellcode:
for l := 1 to length(s) do //string entschlüsseln (i ist der key der getestet wird)
          begin
            s[l] := char(i Xor ord(s[l]));
          end;

          for d := 0 to w.count-1 do //Abgleich mit der Wordlist
          begin
            if s = w.Strings[d] then
            begin
              g := true;
            end;
            if g = true then //wenn erfolgreich -> break
            begin
              break;
            end;
          end;

das problem ist wenn das entschlüsselte wort (variable: s) zum beispiel "teste" lautet, was nicht in der wordlist vorkommt, war der entschlüsslungsvorgang nicht erfolgreich ! ich möchte aber, dass er dann nachschaut welcher teilstring im wort teste bzw in welchem wort aus der wordlist das entschlüsselte wort drin steckt.
Beispiel: entschlüsseltes wort "teste" -> gibts nicht in der stringlist -> misserfolg -> aber es gibt das wort "test" in der stringlist -> teilstring gefunden "test"

also irgendwie if s = w.Strings[d] then umschreiben für teilstrings. habt ihr ne idee ?

grüße g1o
  Mit Zitat antworten Zitat