Einzelnen Beitrag anzeigen

LCC

Registriert seit: 28. Feb 2008
2 Beiträge
 
#1

Verschlüsselung nach Trithemius

  Alt 28. Feb 2008, 19:38
Hallo liebe Delphi-Programmierer,
ich habe in der Schule die Aufgabe bekommen, ein Programm zu schreiben, welches Texte mit Hilfe des Trithemius Verfahrens ver- und entschlüsseln kann. Leider habe ich nur sehr geringe Grundkenntnisse, was Programmierung in Delphi angeht.

Verschlüsselung nach Johannes Trithemius
Johannes Trithemius (1462-1516) verwendete für seine polyalfabetische Verschlüsselung eine Tabelle mit den 26 verschiedenen Cäsarcodes. Die Verschlüsselung erfolgte nun in der folgenden Art. Der erste Buchstabe wird gemäss dem ersten Cäsarcode, der zweite Buchstabe gemäss dem zweiten Cäsarcode usw. chiffriert.

Als erstes habe ich mir ein Konzept der Umsetzung auf Papier überlegt:
  • Die Buchstaben des Textes müssen gezählt werden
  • Ich brauche 26 verschiedene Cäsarverschlüsselungen
  • Buchstabe 1 wird nach Cäsar 1 verschlüsselt
  • Buchstabe 2 wird nach Cäsar 2 verschlüsserl usw.
  • Buchstabe 27 wird nach Cäsar 1 verschlüsselt
  • Ausgabe des Verschlüsselten Textes
  • Das Selbe nur rückwärts als Entschlüsselung

Mein Anfang:
Delphi-Quellcode:
unit Trithemius;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Buttons;

type
  TForm1 = class(TForm)
    Trithemiusverschluesselung: TPanel;
    Eingabe: TGroupBox;
    Ausgabe: TGroupBox;
    EingabeText: TEdit;
    AusgabeText: TEdit;
    Schiessen: TBitBtn;
    Verschluesseln: TBitBtn;
    Entschluesseln: TBitBtn;
    InfGkS2: TLabel;
    procedure SchiessenClick(Sender: TObject);
    procedure VerschluesselnClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.SchiessenClick(Sender: TObject);
begin
  close;
end;

procedure TForm1.VerschluesselnClick(Sender: TObject);
var text,text2: string;
    zaehler: integer;

begin
  text:=Eingabe.text;
  text2:=uppercase(text);

  for zaehler:= 1 to length(text) do
    begin
        
    end;
end;

end.
Ist der Ansatz überhaupt richtig? Kann mir jemand helfen, wie ich am Einfachsten vorgehe. Das Problem ist, dass ich recht wenig Ahnung von Delphi habe.

Link zum Herunterladen des Codes und Bild: http://lennartcremer.le.funpic.de/downloads/Trithemius

Danke im Voraus
  Mit Zitat antworten Zitat