Playfair-Chiffre
Mit dem Schlüsselwort MONARCHY wird INSTRUMENTS zu GATLMZCLRQXA: Die Buchstaben werden in Paare geteilt, ein X füllt das ungerade Ende, und jedes Paar wird in einem Quadrat aus fünf mal fünf Feldern getauscht. Mit demselben Schlüsselwort entschlüsseln Sie es wieder. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Text
- INSTRUMENTS
- Schlüssel
- MONARCHY
- Berechnungsmodus
- Encrypt
- Ergebnis
- GATLMZCLRQXA
- Eingabe
- INSTRUMENTS
- Verwendeter Schlüssel
- MONARCHY
- Normalisiert
- INSTRUMENTS
Die Playfair-Chiffre ist ein klassisches Digraph-Substitutionsverfahren, das lange vor der modernen Kryptografie für den Feldeinsatz erfunden wurde: statt Buchstaben einzeln abzubilden, arbeitet sie mit Buchstabenpaaren aus einem fünf-mal-fünf-Quadrat, das Sie aus einem geheimen Schlüsselwort aufbauen. Geben Sie ein nicht leeres Schlüsselwort, den Text, den Sie schützen oder wiederherstellen möchten, und einen Modus encrypt oder decrypt ein; das Werkzeug normalisiert Buchstaben, führt J mit I zusammen, um ins Fünfundzwanzig-Zellen-Gitter zu passen, fügt den traditionellen X-Füller zwischen wiederholten Buchstaben und am Ende ungerader Nachrichten ein und wendet dann die drei Playfair-Regeln an — Verschiebung in einer Zeile, Verschiebung in einer Spalte oder die beiden anderen Ecken des Rechtecks, das die beiden Buchstaben bilden.
So funktionieren Schlüsselquadrat und Digraph-Regeln
Playfair beginnt damit, Ihr Schlüsselwort in eine fünf-mal-fünf-Matrix über dem lateinischen Alphabet zu verwandeln, wobei I und J eine Zelle teilen und fünfundzwanzig verschiedene Symbole bleiben. Buchstaben des Schlüsselworts werden von links nach rechts und von oben nach unten geschrieben, Duplikate übersprungen und jedes J als I behandelt; die übrigen ungenutzten Alphabetbuchstaben füllen den Rest des Gitters der Reihe nach.
Klartext wird nur auf Großbuchstaben reduziert und dann in Digraphe gepackt: enthält ein mögliches Paar denselben Buchstaben zweimal, wird nach dem ersten Vorkommen ein X eingefügt, um das Paar zu trennen, und hat der endgültige Strom ungerade Länge, wird ein abschließendes X angehängt.
Die Verschlüsselung läuft jedes Paar ab: liegen beide Buchstaben in derselben Zeile, wandert jeder eine Zelle nach rechts mit Wrap-around; liegen beide in derselben Spalte, wandert jeder eine Zelle nach unten mit Wrap-around; sonst definieren die beiden Buchstaben ein Rechteck und jeder wird durch den Buchstaben derselben Zeile, aber der Spalte des anderen ersetzt. Die Entschlüsselung kehrt die Zeilen- und Spaltenverschiebungen um — eine Zelle nach links oder oben — während die Rechteckregel ihre eigene Inverse ist.
Praktische Tipps, Grenzen und verwandte Suchen
Wählen Sie ein Schlüsselwort mit mehreren unterschiedlichen Buchstaben, damit das Quadrat nicht fast alphabetisch ist; kurze einprägsame Wörter reichen für Demos, aber lange Phrasen mit einzigartigen Buchstaben mischen die Matrix stärker. Denken Sie daran, dass Leerzeichen, Satzzeichen und Ziffern vor der Verschlüsselung entfernt werden, sodass Telefonnummern oder gemischte Labels ihre Trenner im Buchstabenstrom verlieren — segmentieren oder kodieren Sie diese separat, wenn Sie sie später brauchen. Zum Entschlüsseln übergeben Sie den nur-Buchstaben-Chiffretext (gerade Länge nach Normalisierung); wenn noch Leerzeichen von einem gedruckten Arbeitsblatt vorhanden sind, ignoriert sie der Solver.
Round-Trip-Prüfungen sind der beste Sanity-Test: verschlüsseln Sie eine Phrase, entschlüsseln Sie das Ergebnis mit demselben Schlüssel und vergleichen Sie mit dem normalisierten Klartext inklusive Füller. Bevorzugen Sie diese Fähigkeit, wenn Sie transparente klassische Digraph-Kryptografie für Bildung oder Rätsel brauchen; für echte Geheimhaltung nutzen Sie stattdessen eine moderne authentifizierte Chiffre.
Anwendungsfälle
CTF- und Puzzle-Write-ups
Challenge-Autoren prüfen Playfair-Verschlüsselungs- und Entschlüsselungsschritte für ein veröffentlichtes Schlüsselwort ohne separates Offline-Skript.
Historische Krypto-Demos
Museen und Blog-Demos zeigen live, wie Digraph-Chiffren sich von monoalphabetischer Substitution unterscheiden, indem Besuchersätze mit geteiltem Schlüsselwort verschlüsselt werden.
Häufige Fragen
Was ist die Playfair-Chiffre?
Eine klassische Digraph-Chiffre: Buchstaben werden paarweise mit einem aus einem Schlüsselwort gebauten 5×5-Quadrat verschlüsselt. Regeln decken gleiche Zeile, gleiche Spalte und Rechteck ab.
Warum sind I und J gleich?
Ein 5×5-Gitter hat fünfundzwanzig Zellen für sechsundzwanzig Buchstaben. Klassisches Playfair führt I und J in einer Zelle zusammen, damit jeder lateinische Buchstabe abgebildet bleibt.
Was passiert, wenn der Schlüssel leer ist?
Ein Schlüsselwort mit mindestens einem A–Z-Buchstaben ist nötig, um das Quadrat zu bauen.
Wie funktionieren Doppelbuchstaben und ungerade Länge?
Beim Verschlüsseln wird ein X zwischen zwei identische Buchstaben eingefügt, die ein Paar bilden würden, und ein abschließendes X füllt einen ungeraden Buchstabenstrom, damit jede Einheit ein Digraph ist.
Wie entschlüssele ich eine Playfair-Nachricht?
Geben Sie den Geheimtext mit demselben Schlüsselwort ein und wählen Sie Entschlüsseln. Buchstaben derselben Zeile rücken dann eine Stelle nach links, derselben Spalte eine nach oben, und die Rechteckregel gilt unverändert. Eingefügte X bleiben im Ergebnis stehen.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/enc/playfair \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"HIDE THE GOLD","key":"MONARCHY"}'const res = await fetch("https://api.kit.forhosting.com/enc/playfair", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "HIDE THE GOLD",
"key": "MONARCHY"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/playfair",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "HIDE THE GOLD",
"key": "MONARCHY"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/playfair", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"HIDE THE GOLD","key":"MONARCHY"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"HIDE THE GOLD","key":"MONARCHY"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/playfair", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"text": "HIDE THE GOLD",
"key": "MONARCHY"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.playfair",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_chars | 100000 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Leere Schlüsselwörter werden mit einem klaren invalid_input-Fehler abgelehnt, damit ein leeres Formularfeld niemals stillschweigend eine sinnlose Identitätsabbildung erzeugt.
So rufen Sie die API auf und was zurückkommt
Text muss ebenfalls mindestens einen Buchstaben ergeben, nachdem Nicht-Buchstaben entfernt wurden. Senden Sie einen JSON-Body mit zwei Pflicht-Stringfeldern text und key sowie einem optionalen mode, der bei Weglassen standardmäßig encrypt ist. Akzeptierte Aliase für text sind unter anderem input, value, data, message, plaintext und ciphertext; key akzeptiert auch keyword, passphrase, secret und k; mode akzeptiert operation, op, direction und action und erkennt gängige Synonyme wie encode oder decode. Der key muss nicht leer sein und nach Normalisierung mindestens einen A–Z-Buchstaben enthalten; eine leere Zeichenkette oder ein nur aus Ziffern und Satzzeichen bestehender Schlüssel ist invalid_input und wird nie berechnet. Bei Erfolg spiegelt die Antwort den ursprünglichen text und key, meldet key_used als die unterschiedlichen Schlüsselbuchstaben in Quadratreihenfolge, mode als encrypt oder decrypt, normalized als den nur-Buchstaben-Strom, digraphs als das Array der tatsächlich verarbeiteten Zwei-Buchstaben-Einheiten, result und text als Chiffretext oder wiederhergestellte Buchstaben, square als die fünf Zeilen mit je fünf Buchstaben, pairs als Digraphenanzahl, length als Ausgabezeichenanzahl, formula als kurze Regelmnemonik und message als einzeilige Zusammenfassung. Die Preisgestaltung ist ein pauschales $0.002 pro erfolgreicher Anfrage mit Einheit item und null marginalem Stückpreis.
Praktische Tipps, Grenzen und verwandte Suchen
Halten Sie Payloads unter dem veröffentlichten Maximum von hunderttausend Zeichen, damit der Arbeitsspeicher des Workers begrenzt bleibt. Beim Unterrichten kombinieren Sie Beispiele: ein klassisches Schlüsselwort wie MONARCHY mit einer kurzen Phrase zeigt Rechteck- und Zeilenbewegungen; ein Doppelbuchstabenwort demonstriert den X-Füller; und ein leerer Schlüssel demonstriert den harten invalid_input-Pfad. Diese Seite richtet sich an Personen, die nach einer Playfair-Chiffre, einem Digraph-Verschlüsseler oder einem Schlüsselquadrat-Tool online suchen; sie ist nicht AES, kein modernes Passwort-Tresor, nicht ROT13 und kein Polybius-Klopfcode-Übersetzer. Fehlgeschlagene Aufgaben, die invalid_input zurückgeben, verbrauchen kein vorausbezahltes Guthaben, was explorative Skripte günstig hält, wenn Clients leere Schlüssel testen.
Integrationsbeispiele
Klassische-Chiffre-Labore im Unterricht
Schüler bauen von Hand ein Schlüsselquadrat, verschlüsseln einen kurzen Satz und vergleichen Digraphe und Endstrom mit dem deterministischen API-Ergebnis.
Technische Fragen
Ist die Playfair-Chiffre kostenlos?
Das Browser-Werkzeug ist gratis und läuft lokal. API-Aufrufe nutzen vorausbezahltes KIT-Guthaben zu $0.002 pro erfolgreicher Anfrage; fehlgeschlagene Aufgaben werden nie berechnet.