WinFuture-Forum.de: Turbo Pascal - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 2 Seiten +
  • 1
  • 2

Turbo Pascal Buchstaben eines Textes in Variablen


#1 _moep_

  • Gruppe: Gäste

geschrieben 21. Februar 2005 - 16:37

Hallo,

ich wollte in Pascal 5.5 einen Text einlesen oder mehr die Buchstaben dieses Textes, um sie dann zu "verschlüsseln" (ganz billig mit sowas wie: a=> d,...).
Mein Problem:
Ich weiß nicht, wie man die Buchstaben des Textes einzeln in eine Variable einlesen kann.
Im Moment springt das Program nach jedem Buchstaben in die nächste Zeile (logisch weil ich readln verwende) und ich muss nach jedem Buchstaben ein Return eingeben (nervt).
Wenn ich es mit 'read' versuche liest er nur einen Buchstaben ein und das Program beendet sich.
Kennt jemand einen anderen Befehl oder weiß ich das Problem umgehen kann?

Kurze Anmerkung:
wenn man '#' wird die "ver/entschlüsselung" gestoppt.

program verschlüsseln;

uses crt;

var
x:string;
y:string;
s:integer;


begin

clrscr;

y:='';
x:=' ';
s:=1;

writeln ('verschlüsseln');
While s = 1 do
 begin
  readln (x);
  if x = '' then
  begin
   x := ' ';
  end

  else
  if x = '#' then
  begin
   s := 2;
   x := ' ';
  end

  else
  if x = 'a' then
  begin
   x:='n';
  end
   ...
  else
  if x='z' then
  begin
   x:='m';
  end;

  y:=y+x;
 end;
 writeln(y);
 readln;
end.


Ich kann auch den ganzen Quelltext posten falls nötig.
0

Anzeige



#2 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.533
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 21. Februar 2005 - 16:42

Ist wahrscheinlich kein Wunder, weil du wie verrückt if-then-else schachtelst anstatt ein switch-case zu nehmen - und dann fehlt wohl ein end;.

Außerdem ist es keine Verschlüsselung, sondenr nur eine Kodierung.

Dieser Beitrag wurde von Rika bearbeitet: 21. Februar 2005 - 16:43

Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#3 _moep_

  • Gruppe: Gäste

geschrieben 21. Februar 2005 - 16:48

Vielen Dank, kannte den Befehl leider nicht.

Ok dann ist es eine Kodierung. :)
0

#4 Mitglied ist offline   AlienSearcher 

  • Gruppe: aktive Mitglieder
  • Beiträge: 399
  • Beigetreten: 06. Juli 04
  • Reputation: 0

geschrieben 21. Februar 2005 - 17:45

Und selbst wenn es eine Verschlüsselung wäre, wäre sie nicht sehr effektiv, da sie wohl ein Grundschüler mit Block und Stift lösen könnte, wenn man ihm dafür ein Eis verspricht :)

Wenn du was einfaches machen willst, dann verknüpfe lieber die einzelnen Zeichen des zu verschlüsselnden Textes per logischer XOR-Verknüpfung mit einem Zeichen aus dem "Passwort".
0

#5 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.533
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 21. Februar 2005 - 18:28

Du meinst den Vignere-Chiffre, der bereits im 19. Jahrhundert geknackt wurde?
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#6 Mitglied ist offline   AlienSearcher 

  • Gruppe: aktive Mitglieder
  • Beiträge: 399
  • Beigetreten: 06. Juli 04
  • Reputation: 0

geschrieben 21. Februar 2005 - 19:47

Ich weis jetzt nicht, wie er heist und ob er geknackt wurde. Ich weis, dass er nicht viel taugt, aber zumindest besser als eine "Verschlüsselung" durch einfaches Ersetzen.

Wenn er jetzt eine .Net-Sprache hätte, könnte er wohl auf System.Security.Cryptography zurückgreifen :)

Edit: Wenn ich nur das zugehörige Tutorial nochmal finden würde, war auf irgendeiner Visual Basic Seite. Aber ich verwende das ja eh nicht mehr...

Dieser Beitrag wurde von AlienSearcher bearbeitet: 21. Februar 2005 - 19:51

0

#7 Mitglied ist offline   stefanra 

  • Gruppe: aktive Mitglieder
  • Beiträge: 6.208
  • Beigetreten: 13. September 04
  • Reputation: 1

geschrieben 21. Februar 2005 - 19:50

Zitat

Wenn er jetzt eine .Net-Sprache hätte, könnte er wohl auf System.Security.Cryptography zurückgreifen :)

Wäre auch meine Empfehlung. Obwohl MD5 und SHA1, derzeit wohl noch die Standardmechanismen, ja auch schon geknackt wurden.
0

#8 Mitglied ist offline   AlienSearcher 

  • Gruppe: aktive Mitglieder
  • Beiträge: 399
  • Beigetreten: 06. Juli 04
  • Reputation: 0

geschrieben 21. Februar 2005 - 19:52

MD5 und SHA1 taugen aber nur zum Bilden eines Hash-Wertes, nicht zur Verschlüsselung. Außerdem sollte SHA256 (noch) sicher sein.
0

#9 Mitglied ist offline   stefanra 

  • Gruppe: aktive Mitglieder
  • Beiträge: 6.208
  • Beigetreten: 13. September 04
  • Reputation: 1

geschrieben 21. Februar 2005 - 19:55

Das auf jeden Fall. Und bis SHA256 geknackt ist, dauert es wohl doch noch 'ne Weile. :)
0

#10 Mitglied ist offline   AlienSearcher 

  • Gruppe: aktive Mitglieder
  • Beiträge: 399
  • Beigetreten: 06. Juli 04
  • Reputation: 0

geschrieben 21. Februar 2005 - 19:56

Ja das hoffe ich doch mal :)
0

#11 _moep_

  • Gruppe: Gäste

geschrieben 21. Februar 2005 - 20:14

Ich hab das eigentlich nur geschrieben weil manche Texte mit dieser Kodierung kodiert sind und ich wollt einfach mal schauen ob ich das nicht mal als Program schreiben kann.
Ja das gibts bestimmt auch viel besser im Netz aber darum gings mir nicht.

@AlienSearcher falls du das Tutorial noch findest wäre nett wenn du es (Link reicht natürlich) mal posten würdest.
Mich würde das alles nämlich schon mal interessieren also falls jemand gute Tutrials hat nur her damit (egal in welcher Programmiersprache oder falls sie allgemein sind)
0

#12 Mitglied ist offline   AlienSearcher 

  • Gruppe: aktive Mitglieder
  • Beiträge: 399
  • Beigetreten: 06. Juli 04
  • Reputation: 0

geschrieben 21. Februar 2005 - 20:36

Ich finde jetzt nichtmehr genau den selben Artikel, aber das hier ist vielleicht ganz interessant, da da z.B. auch die Arbeitsweise von RSA erklärt wird :)

Edit: Sorry, habe ich in der Hektik ganz vergessen... http://www.activevb....cryptology.html

Dieser Beitrag wurde von AlienSearcher bearbeitet: 21. Februar 2005 - 20:49

0

#13 _moep_

  • Gruppe: Gäste

geschrieben 21. Februar 2005 - 20:40

Tut mir leid wenn ich mich jetzt dumm anstelle aber ich seh da keinen Link oder sowas? :)

Edit: Kein Problem bin ja froh das du dir die Mühe gemacht hast also noch mal vielen dank

an alle anderer falls noch ihr noch andere Links haben nur her damit

Dieser Beitrag wurde von moep bearbeitet: 21. Februar 2005 - 20:52

0

#14 _moep_

  • Gruppe: Gäste

  geschrieben 27. Februar 2005 - 00:33

Sry aber ich brauch nochmal hilfe:
Also ich mein Problem ist eigentlich immer noch das selbel, ich will wenn ich "ab" eingebe, dass er mir dann für a in die Variable y ein "a" schreibt und für b eine "b". Am Ende soll er dann ab ausgeben(in diesem Fall) leider bekomme ich nur "a" als Ausgabe. Weiß jemand was ich anders machen muss oder welchen Befehl ich brauche?
Sieht jetzt in der stark vereinfachten Form etwa so aus:
program kodieren; {;-)}
var
x:char;
y:string;
s:integer;

Begin
 y:='';
 s:=1;
 Writeln('Text:');
 While s = 1 Do
 begin
  Readln(x);
  case x of
   'a': y:=y+x;
   'b': y:=y+x;
   '#': s := 2;
  end;
 end;
 writeln(y);
 readln;
End.

0

#15 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.533
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 27. Februar 2005 - 00:44

Zitat

x:char;
y:string;
y:=y+x;

-> Boink.

Char ist kein String[1], sondern ein signed Byte.
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

Thema verteilen:


  • 2 Seiten +
  • 1
  • 2

2 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 2, unsichtbare Mitglieder: 0