Am Beispiel der einfachen Substitution wird
gezeigt, wie man in Pascal Texte zur Chiffrierung bearbeiten kann.
Aus CAESAR wissen
wir, dass die Chiffrierung grundsätzlich so abläuft:
GTA.Wert = (KTA.Wert + key) MOD 26
Klartext und Geheimtext sind als string deklariert;
das ist in DELPHI intern ein dynamisches ARRAY[0..n] of char.
Klartext
Geheimtext |
D |
A |
S |
I |
S |
T |
G |
A |
N |
Z |
G |
E |
H |
E |
I |
M |
| |
umwandeln in |
3 |
KT-Zeichenwert |
+ 3 |
Schlüsselwert addieren |
= 6 |
GT-Zeichenwert |
| |
umwandeln in Zeichen |
G |
D |
V |
. |
. |
. |
. |
. |
. |
. |
. |
. |
. |
. |
. |
. |
[0] |
[1] |
[2] |
[3] |
[4] |
[5]. |
[..]. |
. |
. |
. |
. |
. |
. |
. |
. |
. |
|
Der Grobalgorithmus läuft so:
Wiederhole mit i von 0 bis Textlänge
Zeichen <= Klartext[i]
Verwandle Zeichen in
Zeichenwert // das tut die
Standardfunktion ORD (z : char);
Berechne GT-Zeichenwert
Verwandle GT-Zeichenwert in
Zeichen // das tut die Standardfunktion CHR
(x : integer);
Hänge das Zeichen an den
Geheimtext an
---------------
Die genaue Beschreibung aller wichtigen String-Funktionen
steht unter ../Unterrichtsmaterial/Delphi
|