![]() |
Kryptographie
Hallo,
Ich schreibe morgen eine Klausur über Kryptographie und habe dieses Programm geschrieben. In der Schule hat es funktioniert. Es geht um Transposition, also dass der Text in Zeilen aufgeteilt wird und dann von oben nach unten aufgeschrieben wird. Nun funktioniert das Programm auf einmal nicht mehr, ich versteh es nicht, ich finde kein Fehler. Kann mir bitte jemand helfen? :( Der Fehler muss im unteren Teil beim Verschlüsseln liegen, denn das Leerzeichen löschen, etc. läuft einwandfrei.
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var text1,text2,text3: string; i,laenge,laenge2,schluessel,anzahl,i2,i3 : integer; begin text1 := memo1.Lines.Text; i := 1; laenge := length(text1) + 1; repeat if text1[i] = ' ' then i := i + 1 else begin text2 := text2 + text1[i]; i := i + 1; end; until i = laenge; text2 := uppercase(text2); text2 := stringreplace(text2,chr(10),'',[rfreplaceall]); text2 := stringreplace(text2,chr(13),'',[rfreplaceall]); schluessel := strtoint(edit1.Text); repeat laenge2 := length(text2); if laenge2 mod schluessel > 0 then text2 := text2 + 'X' ; until laenge2 mod schluessel = 0; anzahl := laenge2 div schluessel; i := 1; text3 := ''; for i2 := 1 to schluessel do begin i3 := 0; repeat begin text3 := text3 + text2[i]; i3 := i3 + 1; i := i + schluessel; end until i3 = anzahl; i := i2 + 1; end; memo2.Lines.Text := text3; end; |
AW: Kryptographie
Zitat:
|
AW: Kryptographie
Also die erste Schleife kann man einsparen durch ein weiteres
![]() Bernhard |
AW: Kryptographie
Wenn Du statt repeat Schleifen for-Schleifen verwenden würdest, wäre viel leichter zu durchschauen, was das Programm genau macht. So ist es extrem undurchsichtig, aber auch auf den zweiten Blick ist kein Fehler zu erkennen. Wenn Du uns verraten würdest, was das Programm falsch macht, könnte man Dir vielleicht eher helfen.
|
AW: Kryptographie
@rollstuhlfahrer STRG + D
außer dem entfernen von einigen Whitespaces, Uppercase und dem anhängen von n "X" tut das Programm doch nichts, wo ist die Verschlüsselung? |
AW: Kryptographie
Zitat:
Zitat:
Bernhard |
AW: Kryptographie
Strg+D ist, "nur" in Delphi XE der CodeFormatter.
Also leider vollkommen "nutzlos" für jemanden ohne XE. |
AW: Kryptographie
Eines meiner Lieblingszitate: "Grad ging es noch", nur noch getoppt von "Ich hab nix gemacht!".
Wenn es wirklich so ist, bleiben nur noch die Parameter, die sich ändern können, also der Text und der Schlüssel. Der Schlüssel wird ungeprüft aus einem Textwert gebildet. Das kann schon mal krachen, falls es keine (Ganz)Zahl ergibt. Vielleicht funktioniert das "Verschlüsseln" nicht, wenn die Textlänge kleiner ist als die Schlüsselzahl. |
AW: Kryptographie
Zitat:
|
AW: Kryptographie
Zitat:
Zitat:
Dann bräuchte man ja nur diese Programmteile in einer so undurchschaubar gehaltenen Programmschleife verstecken, um eine höchstmögliche Sicherheit zu erreichen, auch dann, wenn es natürlich eine absolute Sicherheit niemals geben kann. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz