Cryptography Reference
In-Depth Information
Wie aus dem Ergebnis der Kodierung ersichtlich ist, werden anstelle der 13
Eingabezeichen nur 8 Kodewörter ausgegeben.
Es folgen noch einige Erläuterungen zur Tabellendarstellung (die auch über-
sprungen werden können):
Da vereinbarungsgemäß alle Quellenzeichen bereits im Wörterbuch eingetragen
sind (somit auch als bekannte Muster anzusehen sind), sucht der Algorithmus
immer nach bekannten Zeichenketten, die mindestens zwei Zeichen enthalten.
Deshalb wird das erste eingelesene Zeichen z = b als Präfix w mit dem nächs-
ten Zeichen z = a (in der nächsten Tabellenzeile) konkateniert. Jetzt wird
festgestellt, dass zwar b , aber nicht die Zeichenkette ba ein bekanntes Muster
ist. Also wird ba =4 als unbekanntes Muster ins Wörterbuch eingetragen,
Zeichen b bzw. sein Kodewort < 2 > ausgegeben und a als Präfix w = a für
den folgenden Kodierungsschritt gespeichert.
Betrachten wir noch die Tabellenzeile nach der Ausgabe des Kodewortes < 3 > :
Präfix w = b wird mit dem aktuellen z = a konkateniert. Ein Durchsuchen
des Wörterbuches zeigt, dass die gebildete Zeichenkette ba bereits eingetragen
ist. Um aber festzustellen, ob sie das längste bekannte Muster ist, muss sie
als w = ba zwischengespeichert und mit z = c zur Zeichenkette bac verknüpft
werden. Da bac kein bekanntes Muster ist, wird bac =8 neu eingetragen und
ba als Kodewort < 4 > ausgegeben.
Nach dem Ende des Eingabestrings erfolgt noch die Ausgabe des bekannten
Musters w = cba als Kodewort < 9 > .
Zusammenfassend kann folgender Kodierungsalgorithmus angegeben wer-
den:
1. Lies erstes Zeichen z und setze Präfix w := z .
2. Lies nächstes Zeichen z und konkateniere w ◦ z .
3. Stelle fest, ob Zeichenkette wz bereits im Wörterbuch steht,
wenn ja : Setze w := wz ,
wenn nein : 1. Trage wz ins Wörterbuch ein.
2. Gib w aus.
3. Setze w := z .
4. Stelle fest, ob aktuelles z das letzte Zeichen des Eingabestrings ist,
wenn nein :
G e h .,
wenn ja :
ib w aus und Stopp.
Search WWH ::




Custom Search