AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Kryptologie Projekt in Delphi... HILFE !!!
Thema durchsuchen
Ansicht
Themen-Optionen

Kryptologie Projekt in Delphi... HILFE !!!

Ein Thema von Jacqybaby · begonnen am 21. Mär 2006 · letzter Beitrag vom 23. Mär 2006
Antwort Antwort
Seite 3 von 3     123   
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#21

Re: Kryptologie Projekt in Delphi... HILFE !!!

  Alt 22. Mär 2006, 21:48
Delphi-Quellcode:
procedure TForm1.verschluesselnClick(Sender: TObject);
var
    i,j,s:integer;
begin
 
  s:=strtoint(schluessel.text);
  for j:=1 to s do
    begin
      for i:=0 to memo3.Lines.Count-1 DO
        begin
          memo4.text:=memo4.text+memo3.lines.strings[i][j];
        end;
    end;
end;
so sollte es gehen...
alles in einer zeile

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Jacqybaby

Registriert seit: 21. Nov 2005
25 Beiträge
 
#22

Re: Kryptologie Projekt in Delphi... HILFE !!!

  Alt 22. Mär 2006, 22:58
so ich hab mal einen verbalen Algirithmus für das entschlüsseln formuliert:

1. Ermittle Anzahl der Zeilen(memmo.lines.count)
2. Beginne mit dem 1. Buchstaben des verschluesselten textes.
3. (Springe 4 Stellen weiter, schreibe den (an dieser Stelle stehenden) Buchstaben)* schlüssel
4. (Gehe eine Stelle weiter, wiederhole 3.) solange bis length(verschluesselter text) .

Das müsste eigentlich funktionieren. Die Schwierigkeit ist jetzt aber das in Delphi zu formulieren.

Ich hab schon was versucht:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var s,z,i,j:integer;
    vtext:string;
begin
z:=memo3.lines.count;
s:=strtoint(schluessel.Text);
vtext:=memo4.Text;
memo3.Lines.Clear;
  for i:=0 to length(vtext) do
  begin
    for j:=1 to s Do
    begin
    XXXXXXXXX//hier müsste das innere der Klammer aus 3. und 4. formuliert werden...
    end;
  end;
end;
an der Stelle komme ich nicht weiter...
  Mit Zitat antworten Zitat
Benutzerbild von Jan
Jan

Registriert seit: 24. Sep 2002
Ort: Magdeburg
491 Beiträge
 
Delphi 7 Enterprise
 
#23

Re: Kryptologie Projekt in Delphi... HILFE !!!

  Alt 23. Mär 2006, 02:51
Ich verstehe nicht ganz, wo das problem ist..
Wenn das verschluesseln nun schon klappt, dann ist das entschluesseln doch bei diesem Algorithmus ein Kinderspiel, man invertiert einfach den Verschluesselungsalgo.

Delphi-Quellcode:
procedure TForm1.verschluesselnClick(Sender: TObject);
var
    i,j,s:integer;
begin
  //zunaechst memo3 leeren.
  s:=strtoint(schluessel.text);
  for j:=1 to s do
    begin
      for i:=0 to memo4.Lines.Count-1 DO
        begin
          memo3.text:=memo3.text+memo4.lines.strings[i][j];
        end;
    end;
end;
dazu muss natuerlich auch das memo4 in der spaltenform sein.

Gruss
Jan
Jan
Wenn die Sonne der Kultur tief steht, werfen auch kleine Gestalten lange Schatten.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#24

Re: Kryptologie Projekt in Delphi... HILFE !!!

  Alt 23. Mär 2006, 08:32
setzt aus einem verschlüsselten String wieder den Originaltext zusammen.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var s,i,j,z:integer;
    vtext,otext:string;
begin
  s:=strtoint(schluessel.Text); // Schlüssellänge
  z:=length(vtext) div s // Anzahl der "Spalten"
  vtext:=memo4.Text;
  otext:='';
  for i:=1 to z do // durchlaufe die Spalte, äußere Schleife
    for j:=1 to s do //durchlaufe die Zeilen, innere Schleife
      otext:=otext+vtext[((j-1)*z)+i)] // klartext zeichen an position (j-1)*zeilenanzahl + spaltennummer
end;
trockendurchlauf:
vtext = dsBiiteeeeilsis*inp*
mit s = 5
z = 4
spalte 1
otext:=otext+vtext[(0*4)+1] otext=d
otext:=otext+vtext[(1*4)+1] otext=di
otext:=otext+vtext[(2*4)+1] otext=die
otext:=otext+vtext[(3*4)+1] otext=dies
otext:=otext+vtext[(4*4)+1] otext=diesi

spalte2
otext:=otext+vtext[(0*4)+2] otext=diesis
otext:=otext+vtext[(1*4)+2] otext=diesist
otext:=otext+vtext[(2*4)+2] otext=diesiste
otext:=otext+vtext[(3*4)+2] otext=diesistei
otext:=otext+vtext[(4*4)+2] otext=diesistein

spalte3
...
spalte4
otext:=otext+vtext[(0*4)+4] otext=diesis..i
otext:=otext+vtext[(1*4)+4] otext=diesist..ie
otext:=otext+vtext[(2*4)+4] otext=diesiste..iel
otext:=otext+vtext[(3*4)+4] otext=diesistei..*
otext:=otext+vtext[(3*4)+4] otext=diesistei..**

Hoffe, es ist diesmal kein Denkfehler drin.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 03:10 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