Probieren Sie die Four-Square-Chiffre aus
Nutzen Sie die unten bereitgestellten Tools, um eine Nachricht zu verschlüsseln oder zu entschlüsseln:
Verschlüsseln
Entschlüsseln
Generierte Matrizen
Wunderbare Momente in der Geschichte
Die Four-Square-Chiffre: Historischer Hintergrund und Verschlüsselungsprinzipien
Die Four-Square-Chiffre ist eine symmetrische Verschlüsselungsmethode, die vom Franzosen Félix Delastelle (1840–1902) erfunden wurde und zur modernen Kryptographie gehört. Diese Verschlüsselungsmethode verschlüsselt Buchstaben paarweise mithilfe von vier 5×5-Matrizen, die jeweils 25 Buchstaben enthalten. In der Regel wird der Buchstabe Q ausgelassen oder I und J werden als derselbe Buchstabe betrachtet. Alternativ kann die Methode an die Verwendung von 6×6-Matrizen angepasst werden, um 10 Ziffern einzubeziehen.
Während des Verschlüsselungsprozesses werden zwei englische Wörter als Schlüssel ausgewählt, zum Beispiel "example" und "keyword". Nachdem doppelte Buchstaben entfernt wurden, werden die verbleibenden Buchstaben der Reihe nach in die Matrizen eingeordnet. Diese beiden Matrizen werden in die oberen rechten und unteren linken Ecken platziert, während die oberen linken und unteren rechten Ecken die Reihenfolge von A bis Z verwenden, um die Matrizen zu bilden, wodurch die Four-Square-Chiffre-Matrix entsteht.
Um eine Nachricht zu verschlüsseln, werden die Buchstaben in Paare getrennt, sodass "hello world" zu "he ll ow or ld" wird. Anhand der Positionen in den Matrizen werden die entsprechenden verschlüsselten Buchstaben gefunden. Zum Beispiel beinhaltet der Verschlüsselungsprozess für "he", die Position von "h" in der oberen linken Matrix und "e" in der unteren rechten Matrix zu finden. Dann wird in der oberen rechten Matrix der Buchstabe in derselben Reihe wie "h" und in derselben Spalte wie "e" lokalisiert, und in der unteren linken Matrix wird der Buchstabe in derselben Spalte wie "h" und in derselben Reihe wie "e" gefunden. Diese beiden Buchstaben bilden den verschlüsselten Chiffretext.
Die Schwäche der Four-Square-Chiffre liegt darin, dass, wenn zwei Buchstaben in derselben Spalte stehen, die ursprünglichen Buchstaben verwendet werden, was etwa 20% des Inhalts aufdecken könnte. Da es sich außerdem um eine symmetrische Verschlüsselungsmethode handelt, kann sie leicht durch aufgezeichnete Vergleiche gebrochen werden, was zu einer geringen Sicherheit führt. Ein weiteres Problem besteht darin, dass sie nur eine gerade Anzahl von Zeichen verschlüsseln kann. Wenn es eine ungerade Anzahl gibt, kann das letzte verbleibende Zeichen nicht verschlüsselt werden, und die Verwendung des ursprünglichen Zeichens oder einer Auffüllverschlüsselung macht den Chiffretext anfälliger für Entschlüsselung.
Als Teil der klassischen Kryptographie bietet die Four-Square-Chiffre, obwohl sie nicht die Sicherheit moderner Verschlüsselungsalgorithmen erreicht, aufgrund ihrer Einfachheit und historischen Bedeutung Inspiration für moderne Verschlüsselungsmethoden.
Four-Square-Chiffre Verschlüsselungsanleitung Schritt für Schritt
Im Folgenden finden Sie eine detaillierte Schritt-für-Schritt-Anleitung zur Verschlüsselung mit der Four-Square-Chiffre, unter Verwendung der Schlüsselwörter "Four" und "Cipher" und dem Klartext "Hello World".
Schritt 1: Vorbereitung
- Schlüsselwörter auswählen
- Schlüssel 1 = "Four"
- Schlüssel 2 = "Cipher"
- Klartext vorbereiten
- Der Klartext ist "Hello World".
- Klartext in ein geeignetes Format zur Verschlüsselung umwandeln
- In Großbuchstaben umwandeln und den Buchstaben J durch I ersetzen: Hello World -> HELLOWORLD
- Nicht-alphabetische Zeichen entfernen: HELLOWORLD
- Wenn die Länge des Klartexts ungerade ist, am Ende mit dem Buchstaben X auffüllen.
Schritt 2: Buchstabenquadrate generieren
Verwenden Sie die Schlüsselwörter, um vier 5x5-Buchstabenquadrate zu generieren. Das Alphabet lässt in der Regel den Buchstaben J aus und verwendet stattdessenI.
Funktion zur Erstellung von Buchstabenquadraten
function createSquare(keyword) {
let alphabet = "ABCDEFGHIKLMNOPQRSTUVWXYZ";
let used = {};
let square = "";
keyword = keyword.toUpperCase().replace(/J/g, 'I');
for (let i = 0; i < keyword.length; i++) {
if (!used[keyword[i]]) {
(used[keyword[i]]) = true;
square += keyword[i];
}
}
for (let i = 0; i < alphabet.length; i++) {
if (!used[alphabet[i]]) {
square += alphabet[i];
}
}
return square;
}
Vier Buchstabenquadrate generieren
Quadrat 1 (square1) und Quadrat 4 (square4) unter Verwendung von Schlüssel 1 = "FOUR":
F O U R A
B C D E G
H I K L M
N P Q S T
V W X Y Z
Quadrat 2 (square2) und Quadrat 3 (square3) unter Verwendung von Schlüssel 2 = "CIPHER":
C I P H E
R A B D F
G K L M N
O Q S T U
V W X Y Z
Schritt 3: Verschlüsselungsprozess
Teilen Sie den Klartext in Buchstabenpaare und verschlüsseln Sie jedes Paar. Beispiel-Klartext: HELLOWORLD.
Klartext aufteilen
HELLOWORLD -> HE LL OW OR LD
Jedes Buchstabenpaar verschlüsseln
Verwenden Sie die folgende Funktion, um die Position der Buchstaben in den Quadraten zu finden:
function findPosition(square, char) {
let index = square.indexOf(char);
let row = Math.floor(index / 5);
let col = index % 5;
return [row, col];
}
Verschlüsseln Sie jedes Buchstabenpaar Schritt für Schritt:
- Paar "HE" verschlüsseln
- H befindet sich an Position (2, 0) in Quadrat 1
- E befindet sich an Position (1, 3) in Quadrat 4
- Nehmen Sie (2, 3) aus Quadrat 2 -> M
- Nehmen Sie (1, 0) aus Quadrat 3 -> R
- Ergebnis: HE -> MR
- Paar "LL" verschlüsseln
- L befindet sich an Position (2, 3) in Quadrat 1
- L befindet sich an Position (2, 3) in Quadrat 4
- Nehmen Sie (2, 3) aus Quadrat 2 -> M
- Nehmen Sie (2, 3) aus Quadrat 3 -> M
- Ergebnis: LL -> MM
- Paar "OW" verschlüsseln
- O befindet sich an Position (0, 1) in Quadrat 1
- W befindet sich an Position (4, 1) in Quadrat 4
- Nehmen Sie (0, 1) aus Quadrat 2 -> I
- Nehmen Sie (4, 1) aus Quadrat 3 -> W
- Ergebnis: OW -> IW
- Paar "OR" verschlüsseln
- O befindet sich an Position (0, 1) in Quadrat 1
- R befindet sich an Position (0, 3) in Quadrat 4
- Nehmen Sie (0, 3) aus Quadrat 2 -> H
- Nehmen Sie (0, 1) aus Quadrat 3 -> I
- Ergebnis: OR -> HI
- Paar "LD" verschlüsseln
- L befindet sich an Position (2, 3) in Quadrat 1
- D befindet sich an Position (1, 2) in Quadrat 4
- Nehmen Sie (2, 2) aus Quadrat 2 -> L
- Nehmen Sie (1, 3) aus Quadrat 3 -> D
- Ergebnis: LD -> LD
Endgültiger Chiffretext
Kombinieren Sie die verschlüsselten Buchstabenpaare. Der Chiffretext für HELLOWORLD lautet: MRMMIWHILD
Vergleich der Four-Square-Chiffre, Double-Playfair-Chiffre und Playfair-Chiffre
Ähnlichkeiten
- Polygraphische Substitutionschiffren
- Die Four-Square-Chiffre, die Double-Playfair-Chiffre und die Playfair-Chiffre sind alle polygraphische Substitutionschiffren. Das bedeutet, dass sie Paare oder Gruppen von Buchstaben als Grundeinheit für die Verschlüsselung und Entschlüsselung verwenden, anstatt einzelne Buchstaben.
- Buchstabenmatrizen
- Alle drei Chiffriersysteme verwenden Buchstabenmatrizen für die Verschlüsselung und Entschlüsselung. Jede Methode basiert auf den Positionen der Buchstaben in diesen Matrizen, um Substitutionen oder Transformationen durchzuführen.
- Zielsetzung
- Das Designziel dieser Chiffren besteht darin, die Sicherheit traditioneller einzelner Substitutionschiffren zu erhöhen, indem die Komplexität der Verschlüsselung erhöht wird, um einfache Häufigkeitsanalyseangriffe zu verhindern.
Unterschiede
Four-Square-Chiffre
- Buchstabenmatrizen: Verwendet vier 5x5 Buchstabenmatrizen.
- Verschlüsselungseinheit: Verarbeitet jeweils zwei Buchstaben.
- Schritte:
- Vier Buchstabenmatrizen: Zwei Matrizen werden aus Schlüsselwörtern generiert, und die anderen beiden sind normalerweise in alphabetischer Reihenfolge.
- Den Klartext in Buchstabenpaare aufteilen.
- Die Position jedes Buchstabenpaares in zwei verschiedenen Matrizen finden und dann die entsprechenden verschlüsselten Buchstaben in den anderen beiden Matrizen finden.
- Komplexität: Erhöht die Komplexität und Sicherheit durch die Verwendung von mehr Matrizen im Vergleich zur Playfair-Chiffre.
Double-Playfair-Chiffre
- Buchstabenmatrizen: Verwendet zwei 5x5 Buchstabenmatrizen.
- Verschlüsselungseinheit: Verarbeitet jeweils zwei Buchstaben.
- Schritte:
- Zwei Buchstabenmatrizen werden aus verschiedenen Schlüsselwörtern generiert.
- Den Klartext in Buchstabenpaare aufteilen.
- Die erste Matrix verwenden, um die Position des ersten Buchstabens zu finden, und die zweite Matrix verwenden, um die Position des zweiten Buchstabens zu finden, dann die Buchstaben gemäß den Regeln ersetzen.
- Komplexität: Erhöht die Komplexität und Sicherheit durch die Einführung einer zweiten Matrix im Vergleich zur einfachen Playfair-Chiffre.
Playfair-Chiffre
- Buchstabenmatrizen: Verwendet eine 5x5 Buchstabenmatrix.
- Verschlüsselungseinheit: Verarbeitet jeweils zwei Buchstaben.
- Schritte:
- Eine Buchstabenmatrix wird aus einem Schlüsselwort generiert.
- Den Klartext in Buchstabenpaare aufteilen.
- Die Buchstaben basierend auf ihrer positionalen Beziehung (gleiche Reihe, gleiche Spalte oder verschiedene Reihen und Spalten) ersetzen.
- Komplexität: Erhöht die Komplexität im Vergleich zu einfachen Substitutionschiffren für einzelne Buchstaben, ist jedoch weniger komplex als Double-Playfair- und Four-Square-Chiffren.
Vergleichstabelle
Merkmal | Four-Square-Chiffre | Double-Playfair-Chiffre | Playfair-Chiffre |
---|---|---|---|
Anzahl der Buchstabenmatrizen | 4 | 2 | 1 |
Verschlüsselungseinheit | Zwei Buchstaben gleichzeitig | Zwei Buchstaben gleichzeitig | Zwei Buchstaben gleichzeitig |
Schlüsselwörter | Zwei Schlüsselwörter | Zwei Schlüsselwörter | Ein Schlüsselwort |
Komplexität | Hoch | Mittel | Niedrig |
Verschlüsselungsregeln | Verwendet vier Matrizen zur Ermittlung der Substitutionen | Verwendet zwei Matrizen zur Ermittlung der Substitutionen | Verwendet eine Matrix zur Ermittlung der Substitutionen |
Transposition und Substitution
Das Traité Élémentaire de Cryptographie von Felix Delastelle untersucht eingehend die Methoden der Transposition und Substitution in der Kryptographie. Bei der Transposition werden die Positionen der Buchstaben im Klartext geändert, um die Nachricht zu verschlüsseln. Ein Beispiel dafür ist die Umkehrung der Buchstabenreihenfolge, wie im Fall von "Paul est parti pour Lyon", das zu "NOYLRUOPITRAPTSELUAP" wird. Eine andere Methode ist die Gruppierung, bei der der Klartext in eine vorgegebene Form angeordnet und die Buchstaben dann in einer vereinbarten Reihenfolge extrahiert werden, um den Chiffretext zu bilden.
Original en français:
"L'inversion consiste à transposer ou déplacer les lettres du texte clair suivant une méthode convenue entre les correspondants, de telle sorte qu'il soit facile aux initiés de rétablir l'ordre primitif."
Übersetzung auf Englisch:
"Inversion besteht darin, die Buchstaben des Klartexts nach einer zwischen den Korrespondenten vereinbarten Methode zu transponieren oder zu verschieben, sodass es den Eingeweihten leicht fällt, die ursprüngliche Reihenfolge wiederherzustellen."
Original en français:
Le renversement s'effectue en écrivant les lettres du clair en sens inverse de l'ordre normal, la dernière lettre devenant la première, l'avant-dernière la seconde, l'antépénultième la troisième, etc. Exemple: "Paul est parti pour Lyon" s'écrira "NOYLRUOPITRAPTSELUAP". Le renversement peut s'appliquer soit au texte entier, soit successivement à chaque mot ou à des groupes d'un nombre de lettres convenu. La phrase ci-dessus, divisée en deux groupes de dix lettres, donnerait: "RAPTSELUAPNOYLRUOPIT". Et en quatre groupes de cinq lettres: "ELUAPRAPTSUOPITNOYLR".
Übersetzung auf Englisch:
"Die Umkehrung erfolgt, indem die Buchstaben des Klartexts in umgekehrter Reihenfolge geschrieben werden, wobei der letzte Buchstabe der erste wird, der vorletzte der zweite, der drittletzte der dritte usw. Beispiel: "Paul est parti pour Lyon" würde als "NOYLRUOPITRAPTSELUAP" geschrieben. Die Umkehrung kann entweder auf den gesamten Text angewendet werden oder nacheinander auf jedes Wort oder auf Gruppen von einer vereinbarten Anzahl von Buchstaben. Der obige Satz, in zwei Gruppen von je zehn Buchstaben aufgeteilt, würde ergeben: "RAPTSELUAPNOYLRUOPIT". Und in vier Gruppen von fünf Buchstaben: "ELUAPRAPTSUOPITNOYLR".
Original en français:
"De nombreux systèmes ont été imaginés dans ce but: 1 Renversement des lettres; 2 Groupements divers; 3 Carrés et grilles; 4 Méthodes diverses."
Übersetzung auf Englisch:
"Viele Systeme wurden zu diesem Zweck entwickelt: 1 Umkehrung der Buchstaben; 2 Verschiedene Gruppierungen; 3 Quadrate und Gitter; 4 Verschiedene Methoden."
Original en français:
"Il est évident que le renversement ne donne aucune sécurité au point de vue du secret, les dépêches écrites dans ce système ne résistant pas à un examen un peu sérieux."
Übersetzung auf Englisch:
"Es ist offensichtlich, dass die Umkehrung aus der Sicht der Geheimhaltung keine Sicherheit bietet; Nachrichten, die in diesem System verfasst sind, halten nicht einmal einer leicht ernsthaften Untersuchung stand."