AGB  ·  Datenschutz  ·  Impressum  







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

Verschlüsselung

Ein Thema von Curby · begonnen am 29. Sep 2003 · letzter Beitrag vom 30. Sep 2003
Antwort Antwort
Seite 1 von 2  1 2      
Curby

Registriert seit: 29. Sep 2003
17 Beiträge
 
#1

Verschlüsselung

  Alt 29. Sep 2003, 18:58
Ich bin Anfänger und bin grad dabei ein Verschlüsselungsprogramm zu schreiben. Codieren klappt bestens, aber das decodieren will mir nicht gelingen. Ich kann machen was ich will, aber mit dieser Prozedur will das einfach nicht klappen - wird wahrscheinlich ziemlich falsch sein, aber ich bin eben Anfänger...
Nun meine Bitte an Euch - Helft mir, denn ich komm nicht mehr weiter und mein Latein ist am Ende...
Kann mir bitte jemand diese Prozedur so umschreiben, dass ich damit Texte decodieren kann?
Vielen Dank für Eure Hilfe


Delphi-Quellcode:
var
  i : integer;
  EncodedKey : string;
  Key : Char;
  Geheimtext : Array[65..90] OF String
  = ('XZYJVPQ','XYJVPQZ', 'JXZYVPQ', 'XZYJQVP', 'XZJVPQY', 'XZYVJPQ', 'JVPQXZY', 'ZYJVXPQ',
   'JVPXZYQ','XVZYJPQ', 'XZYQJVP', 'XZJVYPQ', 'XZYJPVQ', 'XZYJVQV', 'XYJZVPQ', 'XYJVZPQ', 'YJVPQXZ'
    ,'QXZYJVP', 'XZYPJVQ','ZYJVPQX', 'XZYVJPQ' , 'XZJYVPQ','XZYJVQP','ZYJXVPQ', 'XZYJPQV' ,'XZYVPQJ');

begin
  Klartext := '' ;
  Vorbehandeln(Geheimtext);

  For i:=65 TO 90 DO

     if Geheimtext = Geheimtext[i] then
        begin
                result := Chr(i);
                exit;
        end;
                result := '*';
        end;

Case Key of
'XZYJVPQ': EncodedKey:= 'A';
'XYJVPQZ': EncodedKey:= 'B';
'JXZYVPQ': EncodedKey:= 'C';
'XZYJQVP': EncodedKey:= 'D';
'XZJVPQY': EncodedKey:= 'E';
'XZYVJPQ': EncodedKey:= 'F';
'JVPQXZY': EncodedKey:= 'G';
'ZYJVXPQ': EncodedKey:= 'H';
'JVPXZYQ': EncodedKey:= 'I';
'XVZYJPQ': EncodedKey:= 'J';
'XZYQJVP': EncodedKey:= 'K';
'XZJVYPQ': EncodedKey:= 'L';
'XZYJPVQ': EncodedKey:= 'M';
'XZYJVQV': EncodedKey:= 'N';
'XYJZVPQ': EncodedKey:= 'O';
'XYJVZPQ': EncodedKey:= 'P';
'YJVPQXZ': EncodedKey:= 'Q';
'QXZYJVP': EncodedKey:= 'R';
'XZYPJVQ': EncodedKey:= 'S';
'ZYJVPQX': EncodedKey:= 'T';
'XZYVJPQ': EncodedKey:= 'U';
'XZJYVPQ': EncodedKey:= 'V';
'XZYJVQP': EncodedKey:= 'W';
'ZYJXVPQ': EncodedKey:= 'X';
'XZYJPQV': EncodedKey:= 'Y';
'XZYVPQJ': EncodedKey:= 'Z';
end;

Klartext := Klartext + EncodedKey;

  end;

end;
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#2

Re: Verschlüsselung

  Alt 29. Sep 2003, 19:05
Hallo und herzlich Willkommen in der DP!

Schau Dir dochmal diesen Thread an, im prinzip machst Du da auch nichts anderes.
Vielleicht bringt es Dir ja was...
  Mit Zitat antworten Zitat
Curby

Registriert seit: 29. Sep 2003
17 Beiträge
 
#3

Re: Verschlüsselung

  Alt 29. Sep 2003, 19:44
Stimmt, ist im Prinzip das gleiche, aber ich kenne einige Befehle nicht, deshlab hilft es mir nicht unbedingt weiter...

Könntest du mir nicht die Prozedur richtig stellen?
Ich blick da grad nicht mehr durch
  Mit Zitat antworten Zitat
anku

Registriert seit: 13. Sep 2003
51 Beiträge
 
#4

Re: Verschlüsselung

  Alt 29. Sep 2003, 20:17
anscheinend hast du den variablennamen "geheimtext" doppelt benutzt. das musst du schonmal ändern. du kannst in einer case abfrage nicht einfach strings benutzen, das müssen schon zahlen sein. fals du doch mit case arbeiten willst, würd ich dir ne stringlist empfehlen. da kannst du dann den index abfragen.

mfg
  Mit Zitat antworten Zitat
Curby

Registriert seit: 29. Sep 2003
17 Beiträge
 
#5

Re: Verschlüsselung

  Alt 29. Sep 2003, 20:26
Kann ich die Case Schleife nicht z.B. in eine While Schleife umändern?
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#6

Re: Verschlüsselung

  Alt 29. Sep 2003, 20:26
Zitat von anku:
du kannst in einer case abfrage nicht einfach strings benutzen, das müssen schon zahlen sein.
"Key: Char;" und somit geht das ganze schon
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Verschlüsselung

  Alt 29. Sep 2003, 20:28
[edit]Irgendwie ist das hier im falschen Thread gelandet! [/edit]

Chris
  Mit Zitat antworten Zitat
daniel-volk

Registriert seit: 16. Jul 2003
170 Beiträge
 
Delphi 6 Enterprise
 
#8

Re: Verschlüsselung

  Alt 29. Sep 2003, 20:48
Hi,

sag mal, welche Art von Verschlüsselung soll das denn sein? Gibt man da gar keinen Schlüssel ein? Dass würd ich schon eher XOR verschlüsseln:

Klartext ist der Klartext, Result ist (im Endeffekt) der Geheimtext, Passwd das Passwort:

Delphi-Quellcode:
function TForm1.CodeText(Klartext, Passwd : string):string;
var
  i : longword;
begin
  for i := 0 to length(Klartext)-1
  do begin
       Result := Result + Char(ord(Klartext[i]) xor ord(Passwd[i mod length(passwd)]));
     end;
end;
Diese function musst du natürlich noch deklarieren
function CodeText(Klartext, Passwd : string):string;
indem du obige Zeile unterhalt von type in der Rubrik private einfügst.

Jetzt kannst du dir ein Memo-Feld, ein Edit-Feld und 'nen Button bauen.

Dann bekommt der Button folgende Funktion:
Memo1.Text := CodeText(Memo1.Text,Edit1.Text); Und schon geht das

Du kannst bei XOR übrigens Entschlüsseln, indem zu den verschlüsselten Text wieder verschlüsselst!

Noch etwas: Der oben genannte Code sollte funzen, ich hab ihn aber nur aus dem Kopf geschrieben. Wenn es nicht geht, dann sag bescheid.

MfG,
Daniel.
  Mit Zitat antworten Zitat
Curby

Registriert seit: 29. Sep 2003
17 Beiträge
 
#9

Re: Verschlüsselung

  Alt 29. Sep 2003, 22:14
Das ist meine Verschlüsselung - läuft bestens

Delphi-Quellcode:
var
  i : integer;
  EncodedKey : string;
  Key : Char;

begin
  Geheimtext := '' ;
  Vorbehandeln(Klartext);

  For i:=1 to length(Klartext) do

  begin
     key:=Klartext[i];

Case Key of
'A': EncodedKey:= 'XZYJVPQ';
'B': EncodedKey:= 'XYJVPQZ';
'C': EncodedKey:= 'JXZYVPQ';
'D': EncodedKey:= 'XZYJQVP';
'E': EncodedKey:= 'XZJVPQY';
'F': EncodedKey:= 'XZYVJPQ';
'G': EncodedKey:= 'JVPQXZY';
'H': EncodedKey:= 'ZYJVXPQ';
'I': EncodedKey:= 'JVPXZYQ';
'J': EncodedKey:= 'XVZYJPQ';
'K': EncodedKey:= 'XZYQJVP';
'L': EncodedKey:= 'XZJVYPQ';
'M': EncodedKey:= 'XZYJPVQ';
'N': EncodedKey:= 'XZYJVQV';
'O': EncodedKey:= 'XYJZVPQ';
'P': EncodedKey:= 'XYJVZPQ';
'Q': EncodedKey:= 'YJVPQXZ';
'R': EncodedKey:= 'QXZYJVP';
'S': EncodedKey:= 'XZYPJVQ';
'T': EncodedKey:= 'ZYJVPQX';
'U': EncodedKey:= 'XZYVJPQ';
'V': EncodedKey:= 'XZJYVPQ';
'W': EncodedKey:= 'XZYJVQP';
'X': EncodedKey:= 'ZYJXVPQ';
'Y': EncodedKey:= 'XZYJPQV';
'Z': EncodedKey:= 'XZYVPQJ';
end;

Geheimtext := Geheimtext + EncodedKey;

  end;

end;

@ Daniel B: "Key: Char;" und somit geht das ganze schon"
Key: Char hab ich doch geschrieben, aber funzen tut das ganze trotzdem nicht!


@ Daniel-Volk:
Das ist ne Caesar- Verschlüsselung, die wir für die Schule machen müssen.
Eine andere, wo man den Schlüssel eingibt, haben wir bereits gemacht - läuft auch.
Aber die will absolut nicht funktionieren und ich komm einfach nicht mehr weiter...

Übrigens Caesar - Bedeutet: Verschlüsseln durch tauschen von Buchstaben
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#10

Re: Verschlüsselung

  Alt 29. Sep 2003, 22:17
Zitat von Curby:
@ Daniel B: "Key: Char;" und somit geht das ganze schon"
Key: Char hab ich doch geschrieben, aber funzen tut das ganze trotzdem nicht!
anku war damit gemeint.
  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 18:27 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