PHP Forum - Coding Board
Juni 19, 2018, 08:54:41 *
Willkommen Gast. Bitte einloggen oder registrieren.

Einloggen mit Benutzername, Passwort und Sitzungslänge
News:
 
   Übersicht   Hilfe Suche Einloggen Registrieren  
Seiten: [1]
  Drucken  
Autor Thema: [Frage] Xor Verschl?sselung  (Gelesen 204 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
Zerenda
Newbie
*
Beiträge: 14


Profil anzeigen E-Mail
« am: Oktober 29, 2008, 10:03:11 »

Guten Abend allerseits,

Mein Problem l?sst sich schwer beschreiben , ich hoffe ihr versteht mich.
Angemerkt sei nebenbei das ich delphi bis jetzt nur in der schule habe, also noch nicht der Pro bin.Es handelt sich um Api Crypten.

Ich habe diesen Code Vorliegen.

Zitat
   function Decrypt(Str : String; Key: string): String;
    var
      X, Y : Integer;
      A : Byte;
    begin
      Y := 1;
      for X := 1 to Length(Str) do
      begin
        A := (ord(Str[X]) and $0f) xor (ord(Key[Y]) and $0f);
        Str[X] := char((ord(Str[X]) and $f0) + A);
        Inc(Y);
        If Y > length(Key) then Y := 1;
      end;
      Result := Str;
    end;

Und hier die gecrypteten:

Zitat
   DLLHandle := LoadLibrary(pChar(deCrypt('hfpohn?7-gnm', 'scramble')));
       DLLHandle2 := LoadLibrary(pChar(deCrypt('mwfma,hio', 'scramble')));
        @VirtualAllocEx      := GetProcAddress(DLLHandle, PChar(deCrypt('Ujpuxc`DoombHz', 'scramble')));
        @VirtualProtectEx      := GetProcAddress(DLLHandle, PChar(deCrypt('Ujpuxc`UqlvdnvI}', 'scramble')));
        @ZwUnmapViewOfSection      := GetProcAddress(DLLHandle2, PChar(deCrypt('YtWo`c|SjfuNkQifwjmo', 'scramble')));

Meine Frage ist nun,
Wie bekomme ich heraus, wenn ich den Key "Scramble" ?ndere, wie dieses dan encrypted aussieht?(in dem ersten falle ja hfpohn?7-gnm)

w?hre f?r jede hilfe dankbar

Zerenda

PS: mir gef?llt eure Seite
Gespeichert
Steve
Full Member
***
Beiträge: 135


318417307
Profil anzeigen E-Mail
« Antworten #1 am: Oktober 30, 2008, 12:37:38 »

Denke das sollte dir helfen Zwinkernd N?chstes Mal vorher Google benutzen Smiley

http://www.delphipraxis.net/topic30831.html
Gespeichert

Wer die Freiheit aufgibt, um Sicherheit zu gewinnen, wird am Ende beides verlieren.
Hamtaro
Newbie
*
Beiträge: 19


Profil anzeigen E-Mail
« Antworten #2 am: Oktober 30, 2008, 11:39:47 »

die ein kleines Nebenprojekt erstellen und dann einfach dir die Ergebnisse ausgeben lassen?
Oder habe ich dein Problem jetzt falsch verstanden?
Gespeichert
Zerenda
Newbie
*
Beiträge: 14


Profil anzeigen E-Mail
« Antworten #3 am: Oktober 30, 2008, 01:55:16 »

Danke ich werde es mir zu gem?te f?hren Smiley

und @ Hamtaro , du hast mein problem richtig verstanden , jedoch fehlt mir noch die erfahrung wie ich dieses umformuliere.Ich werde mir erstmal die gepostete erkl?rung durchlesen , dann eventuell noch was hierrein editieren,


EDIT:
Also leider hilft mir der link nicht weiter, k?nntest du mir vill ein kleines beispiel daf?r geben wie ich mir so ein Tool basteln k?nnte?
Also mit den Feldern etc zur ausgabe ist klar, jedoch was muss ich mit dem Source teil machen?


thx
Zerenda
Gespeichert
Zerenda
Newbie
*
Beiträge: 14


Profil anzeigen E-Mail
« Antworten #4 am: Oktober 31, 2008, 06:54:33 »

So,
Ich habe nun folgendes gebastelt

Zitat
function encrypt(Str : String; Key: string): String;
var
  X, Y : Integer;
  A : Byte;
begin
  Y := 1;
  for X := 1 to Length(Str) do
  begin
    A := (ord(Str[X]) and $0f) xor (ord(Key[Y]) and $0f);
    Str[X] := char((ord(Str[X]) and $f0) + A);
    Inc(Y);
    If Y > length(Key) then Y := 1;
  end;
  Result := Str;
end;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.Text:=(encrypt('hfpohn?7-gnm','scramble'))

dies gibt mir nun die gecryptete dll aus (Kernel32.dll)

Nun w?rde ich gerne eine kleine ?nderung oben im Verfahren machen, was ja auch kein problem darstellt, bis auf jenes, wenn ich aus dem
Zitat
begin
  Y := 1;
  for X := 1 to Length(Str) do
ein
Zitat
begin
  Y := 2;
  for X := 1 to Length(Str) do
Mache bekomme ich nat?rlich ein anderes ergebniss.

Ich brauche also nach m?glichkeit eine l?sung wo ich im endeffect mein gew?nschtes "wort" eintrage und den "Key" der zum verschl?sseln notwendig ist und es mir dann den verschl?sselten string ausgibt.

Wie realisiere ich dies?

W?hr f?r jede hilfe dankbar!
Gespeichert
Seiten: [1]
  Drucken  
 
Gehe zu:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines | New Look by Nolt Prüfe XHTML 1.0 Prüfe CSS