ForHosting KIT · Entwickler-Tools

Drehgitter-Chiffre

Aus ATTACKATDAWN wird mit einem 4×4-Gitter ATTCXAKAXXDTXAWN: Die Buchstaben gehen durch die Löcher der Maske, die sich viermal um eine Vierteldrehung weiterdreht, dann wird das volle Quadrat zeilenweise gelesen. Nur die Reihenfolge ändert sich. Kostenlos in Ihrem Browser.

  • Kostenlos
  • Läuft in Ihrem Browser
  • Ohne Anmeldung
  • Ihre Daten bleiben auf Ihrem Gerät
Nutzen Sie es über WebAPIE-MailTelegramApp bald
Wenn Sie eingeben
Text
ATTACKATDAWN
Größe
4
Berechnungsmodus
Encrypt
Erhalten Sie
Text
ATTCXAKAXXDTXAWN
Anzahl der Löcher
4
Länge
16
Anzahl der Füllzeichen
4

Die Drehgitter-Chiffre, auch Fleissner-Gitter genannt, ist ein klassisches Transpositionssystem, das die Reihenfolge und nicht die Buchstabenwerte verbirgt. Sie legen eine quadratische Pappmaske mit ausgeschnittenen Löchern auf ein leeres Gitter, schreiben die nächsten Klartextbuchstaben durch die Öffnungen, drehen die Maske um neunzig Grad und wiederholen das, bis das Gitter voll ist; das zeilenweise Lesen des gefüllten Quadrats liefert den Geheimtext. Diese Fähigkeit setzt den Vorgang deterministisch um: Sie liefern den Text, eine gerade Gittergröße, das Basis-Lochschnittmuster und den Modus Ver- oder Entschlüsseln. Die Engine prüft, dass vier Drehungen im Uhrzeigersinn jede Zelle genau einmal abdecken, und meldet ein ungültiges Gitter, wenn Löcher überlappen, Lücken lassen, außerhalb des Bretts liegen oder die falsche Anzahl haben. Leerzeichen und Satzzeichen wandern mit den Buchstaben; kurzer Klartext wird mit einem einzigen Füllzeichen aufgefüllt, damit die Nachricht ganze Quadrate füllt.

So funktioniert das Drehgitter

Ein Drehgitter ist keine Substitutionschiffre: Jedes Zeichen behält seine Identität und ändert nur die Position. Legen Sie eine gerade Seitenlänge n fest, sodass das Brett n zum Quadrat Zellen hat. Eine gültige Maske für vier Vierteldrehungen hat genau ein Viertel dieser Zellen offen — n zum Quadrat geteilt durch vier Löcher — so gewählt, dass das Drehen der Öffnungen um neunzig Grad im Uhrzeigersinn viermal jede Zelle einmal und nie zweimal besucht.

Diese kombinatorische Bedingung ist das Herz des Systems: Jede Rotationsbahn unter der zyklischen Gruppe des Quadrats liefert genau ein Loch in der Basismaske. Die Verschlüsselung durchläuft die vier Orientierungen der Reihe nach. In jeder Orientierung werden die sichtbaren Löcher zeilenweise sortiert, die nächsten Klartextzeichen durch sie geschrieben und die Maske gedreht.

Nach allen vier Drehungen ist das Gitter voll und der Geheimtext die Verkettung der Zeilen von oben nach unten, links nach rechts. Die Entschlüsselung füllt dasselbe Gitter aus dem Geheimtext zeilenweise und liest die Buchstaben dann durch dieselbe Folge rotierter Löcher zurück, wodurch die ursprüngliche Reihenfolge einschließlich etwaiger Füllung für den letzten Block wiederhergestellt wird. Eine ungerade Seitenlänge lässt eine feste Mittelzelle unter Rotation und wird als ungültiges Gitter für dieses Viertouren-Modell abgelehnt.

Überlappende Bahnen, doppelte Basislöcher, Koordinaten außerhalb des Bereichs oder falsche Lochanzahl scheitern ebenfalls an der Validierung, bevor ein Zeichen bewegt wird, sodass Aufrufer stets wissen, ob die Maske ein legaler Schlüssel ist.

Text ist die Klar- oder Geheimtextzeichenkette; nichts wird entfernt oder in der Groß-/Kleinschreibung vereinheitlicht, sodass gemischte Schreibweise, Leerzeichen und Satzzeichen an der Transposition wie jedes andere Zeichen teilnehmen. Size ist eine gerade Ganzzahl von zwei bis sechzehn einschließlich — die Seite des Quadrats. Holes ist ein Array von Objekten mit ganzzahligen Indizes row und col ab null; die Länge dieses Arrays muss size zum Quadrat geteilt durch vier betragen.

Führen Sie den Hin- und Rückweg aus, indem Sie mit gegebener size und Lochmuster verschlüsseln und mit demselben Paar entschlüsseln; eine andere Maske ergibt eine andere Permutation und stellt den Originaltext nicht wieder her. Leerer Text wird abgelehnt. Bevorzugen Sie diesen Endpunkt, wenn die Suchabsicht speziell ein Drehgitter, Fleissner-Gitter oder eine rotierende Pappmasken-Chiffre ist und nicht eine spaltenweise oder Rail-Fence-Transposition.

Unterricht, CTF, Produkt und Kosten

Geschichts- und Kryptografiekurse nutzen das Drehgitter, um geometrische Schlüssel und Bahnargumente vor modernen Chiffren einzuführen: Lernende entwerfen ein legales Vielloch-Muster auf einem vier mal vier Brett, verschlüsseln einen kurzen Slogan, geben Geheimtext und Maskenbeschreibung an eine Partnerin oder einen Partner weiter und stellen den Slogan nur wieder her, wenn beide dieselben Öffnungen teilen. Capture-the-Flag-Autorinnen und -Autoren verstecken Flags unter einem veröffentlichten oder teilweisen Gitter und prüfen Einreichungen gegen dieselbe deterministische Routine. Dokumentationsautorinnen und -Autoren betten Ver- und Entschlüsselungspaare in Tutorials ein, ohne Rotations-Permutationstabellen für jede Drehung von Hand zu pflegen.

Behandeln Sie ein Drehgitter nicht als Vertraulichkeit für echte Geheimnisse — es ist Lehr- und Rätselwerkzeug — behandeln Sie jedoch Lochmuster und Größe als die geheimen Parameter des Spielsystems.

CTF- und Rätselautorinnen und -autoren

Verstecken Sie kurze Challenge-Zeichenketten unter einem veröffentlichten oder teilweisen Drehgitter und prüfen Sie Einreichungen gegen dasselbe deterministische Ver-/Entschlüsselungspaar.

Docs und klassische Chiffren-Spielplätze

Erzeugen Sie stabile Geheimtextbeispiele für Fleissner- und Drehgitter-Tutorials, ohne Rotationstabellen für jede Brettgröße von Hand zu pflegen.

Was ist eine Drehgitter-Chiffre?

Eine klassische Transpositionschiffre, die Buchstaben durch Löcher einer Quadratmaske schreibt, die Maske dreimal um 90° weiterdreht, um das Gitter zu füllen, und das Quadrat dann zeilenweise liest. Buchstabenwerte bleiben; nur die Reihenfolge ändert sich.

Warum muss size gerade sein?

Diese Umsetzung nutzt vier 90°-Drehungen ohne feste Mittelzelle.

Was macht ein Gitter ungültig?

Falsche Lochanzahl (nicht size²/4), doppelte oder außerhalb liegende Öffnungen oder jede Zelle, die nach vier Drehungen mehr als einmal abgedeckt oder unbedeckt bleibt. Die Fehlermeldung enthält die Phrase invalid grille.

Was kostet es?

Die interaktive Seite läuft kostenlos in Ihrem Browser.

Wie entschlüssle ich eine Drehgitter-Nachricht?

Sie brauchen dieselbe Gittergröße und dieselben Löcher wie beim Verschlüsseln. Der Geheimtext wird Zeile für Zeile ins Gitter geschrieben und dann in derselben Drehfolge durch die Löcher wieder ausgelesen.

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.

POSThttps://api.kit.forhosting.com/enc/grille-cipher

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/enc/grille-cipher \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"ATTACKATDAWN","size":4,"holes":[{"row":0,"col":0},{"row":0,"col":1},{"row":0,"col":2},{"row":1,"col":1}],"mode":"encrypt"}'
{
  "text": "ATTACKATDAWN",
  "size": 4,
  "holes": [
    {
      "row": 0,
      "col": 0
    },
    {
      "row": 0,
      "col": 1
    },
    {
      "row": 0,
      "col": 2
    },
    {
      "row": 1,
      "col": 1
    }
  ],
  "mode": "encrypt"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.grille_cipher",
  "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.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Nutzen Sie das Werkzeug kostenlos auf dieser Seite oder rufen Sie denselben reinen Algorithmus per API zu $0.002 pro Anfrage für Unterrichtsdemos, CTF-Hilfen und reproduzierbare Dokumentationsbeispiele auf.

API aufrufen und Ergebnis lesen

Senden Sie text, size, holes und mode. Das optionale pad_char ist ein einzelnes Zeichen, das nur beim Verschlüsseln verwendet wird, wenn die Nachrichtenlänge kein Vielfaches von size zum Quadrat ist; Standard ist großes X. Fehlende Pflichtfelder, ein text, der keine Zeichenkette ist, eine ungerade size, Löcher außerhalb des Bereichs, eine überlappende oder unvollständige Maske, ein unbekannter Modus oder eine Entschlüsselungslänge, die kein Vielfaches der Zellenzahl ist, scheitern alle mit invalid_input und einer Meldung, die das Problem benennt — die Formulierung invalid grille erscheint, sobald die Maske selbst die Ursache ist. Bei Erfolg enthält das JSON text (die transformierte Zeichenkette), mode (kanonisch encrypt oder decrypt), size, holes (normalisiert und sortiert), holes_count, length des Ergebnisses, pad_count (wie viele Füllzeichen beim Verschlüsseln angehängt wurden, null beim Entschlüsseln) und blocks (wie viele volle Quadrate verarbeitet wurden).

Unterricht, CTF, Produkt und Kosten

Produktteams, die Spielplätze für klassische Chiffren anbieten, können die API für serverseitige Prüfungen aufrufen, während Besuchende im Browser kostenlos experimentieren. Weil die Arbeit reines Parse-Zeit-Indexieren ohne externen Dienst ist, bleibt die Latenz niedrig und das Kostenmodell einfach: unbegrenzte Umwandlungen kostenlos auf dieser Seite, danach identische Eingaben zu $0.002 pro erfolgreichem Element aus dem vorausbezahlten KIT-Guthaben automatisieren, wenn Sie aus Skripten oder Backend-Diensten integrieren. Diese Parität hält Hausaufgabenlösungen, Continuous-Integration-Goldens und Produktionsdemos ausgerichtet. Ordnen Sie UI-Steuerelemente size, einem Zeileneditor für holes und Ver- versus Entschlüsseln zu; validieren Sie clientseitig gerade size und Lochanzahl, wenn möglich, und zeigen Sie invalid_input-Meldungen neben dem Gittereditor, wenn Nutzende überlappende Öffnungen oder eine ungerade Seitenlänge senden.

Kryptografie-Unterrichtslabore

Lernende entwerfen eine gültige Lochmaske auf einem geraden Gitter, verschlüsseln einen Satz in vier Drehungen und stellen ihn mit derselben size und denselben holes wieder her — Geometrie ist der Schlüssel.

Braucht die Entschlüsselung dieselben holes und size?

Ja. Ver- und Entschlüsseln nutzen dieselbe gerade size und dasselbe Basis-Lochschnittmuster. Eine andere Maske wendet eine andere Permutation an und stellt den Originaltext nicht wieder her.

Vollständige KIT-Dokumentation lesen →