Die Beschreibung des Solitaire-Analyse-Dialogs finden Sie hier: Solitaire-Analyse-Dialog
Für das Solitaire-Verschlüsselungsverfahren steht ein Angriff (Angriffsszenario Ciphertext-only-Angriff) in Form der automatisierten bzw. halbautomatisierten Schlüsselsuche zur Verfügung. Hierfür ist es notwendig, das Ausgangsdeck sowie den zugehörigen (Ciphertext) zu kennen.
Da der Algorithmus sehr stark reversibel ist, kann anhand der Umkehrung der einzelnen Schritte das Ausgangsdeck ermittelt und somit der symmetrische Schlüssel erzeugt werden. Mit Hilfe dieses Schlüssels kann der Ciphertext entschlüsselt werden. Das Problem bei der Analyse besteht darin, dass der Algorithmus nicht hundertprozentig reversibel ist und somit nicht jeder Schritt eindeutig rückgängig gemacht werden kann. Schlägt man den falschen Weg ein, so ist die weitere Analyse falsch.
Die Analyse operiert in drei Schritten:
1. Ermittlung des Initialdecks
2. Erzeugung des Schlüsselstroms
3. Entschlüsselung des Ciphertextes
1. Ermittlung des Initialdecks
Der Solitaire-Algorithmus wird für jedes Ciphertextzeichen einmal rückwärts durchlaufen. Das bedeutet es wird mit Schritt 5 begonnen, dann folgt Schritt 4, Schritt 3, Schritt 2 und Schritt 1. Diese einzelnen Schritte werden entgegengesetzt zu Solitaire durchgeführt.
Schritt 5:
Es wird kein Zeichen notiert. Es wird lediglich geprüft, ob eine Nullrunde auftaucht. Ist dies der Fall, muss der Algorithmus ein zusätzliches Mal rückwärts durchlaufen werden.
Schritt4:
Die Karten, die bei Schritt vier vor der letzten Karte einsortiert wurden, müssen wieder an den Anfang gesetzt werden. Die Anzahl wird durch die letzte Karte angegeben.
Schritt3:
Vertausche den Stapel vor dem ersten Joker mit dem Stapel hinter dem zweiten Joker.
Schritt2:
Joker B wird zwei Karten vorher einsortiert.
Schritt1:
Joker A wird eine Karte vorher einsortiert.
Nachdem der Algorithmus für jedes Ciphertextzeichen und jede Nullrunde rückwärts durchlaufen wurde, ist das Initialdeck erzeugt. Da Schritt 1 und 2 nicht immer eindeutig umgekehrt werden kann, ist der Algorithmus nicht vollständig reversibel. Wird in den Schritten 1 bzw. 2 der Joker A bzw. Joker B falsch einsortiert, so erhält man nach dem Entschlüsseln nicht den korrekten Klartext.
Von hier an ist das Vorgehen analog zum Entschlüsseln mit Solitaire
2. Erzeugung des Schlüsselstroms
Auf das Initialdeck wird nun für jedes Ciphertextzeichen und für jede Nullrunde einmal der Solitaire-Algorithmus angewendet (Solitaire-Schlüsselstromerzeugung ). Dadurch erhält man den Schlüsselstrom, mit dem der Klartext verschlüsselt wurde.
3. Entschlüsselung des Ciphertextes
Der Ciphertext wird mit diesem Schlüsselstrom entschlüsselt (Solitaire-Beschreibung).