ForHosting KIT · Entwickler-Tools

Buchchiffre

Verstecken Sie eine Nachricht in einem Text, den Sie mit jemandem teilen: Mit einem Schlüssel aus 13 Wörtern wird aus „quick fox river“ die Folge 2 4 12, und diese Zahlen ergeben wieder dieselben Wörter. Gedacht für Rätsel und Unterricht. 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
Aktion
Encrypt
Erhalten Sie
Ergebnis
2 4 12
Anzahl der Schlüsselwörter
13
Positionen
2, 4, 12
Wörter
quick, fox, river

Eine Buchchiffre verbirgt eine kurze Nachricht, indem sie auf Wörter zeigt, die bereits in einem gemeinsamen Abschnitt stehen, statt ein Substitutionsalphabet zu erfinden. Fügen Sie einen Schlüsseltext ein, den Sie und Ihr Gegenüber beide besitzen—einen Absatz, ein Gedicht oder eine gedruckte Seite—und verschlüsseln Sie eine Phrase zu einer Liste von Wortpositionen ab 1, oder entschlüsseln Sie diese Zahlen wieder zu den ursprünglichen Wörtern. Der Abgleich ist groß-/kleinschreibungsunabhängig, führende und abschließende Interpunktion wird beim Tokenisieren entfernt, und Nachrichtwörter, die im Schlüssel fehlen, werden aufgelistet, damit Sie den Abschnitt erweitern oder den Klartext umformulieren können. Die Engine ist rein und deterministisch: derselbe Schlüssel und dieselbe Nachricht liefern stets dieselben Positionen, ohne Netzaufrufe, Zufallsseed oder Uhren.

Wie die Buchchiffre Wortpositionen nutzt

Klassische Buchchiffren behandeln einen gemeinsamen Text als Codebuch. Statt Buchstaben durch andere Buchstaben zu ersetzen, wird jede Einheit der Geheimnachricht als Zeiger in diesen Text geschrieben—meist ein Wortindex vom Anfang des Abschnitts an. Dieses Werkzeug setzt eine klare, lehrbare Form dieser Idee um: der Schlüsseltext wird an Leerzeichen zerlegt, jedes Token verliert führende und abschließende Interpunktion, und die entstehende Folge wird ab eins nummeriert.

Beim Verschlüsseln wird jedes Wort der Nachricht groß-/kleinschreibungsunabhängig gegen das erste Vorkommen desselben Worts in der Schlüsselliste gesucht; die Chiffre ist die durch Leerzeichen getrennte Liste dieser Positionen (Basis 1). Beim Entschlüsseln wird das Feld message als ganze Zahlen gelesen, getrennt durch Leerzeichen, Kommas oder Semikolons; jede Zahl wird zum Wort an diesem Index im Schlüssel aufgelöst. Weil nur der erste Treffer zählt, bleiben Verschlüsseln und Entschlüsseln eindeutig, auch wenn sich ein Wort später im Abschnitt wiederholt.

Nicht-Buchstaben außerhalb von Wort-Tokens werden nie selbst zu Positionen, sodass Sie stets in ganzen Wörtern denken. Diese Konstruktion ist bewusst schwächer als moderne Kryptografie und dient dem Unterricht, freizeitlichen Rätseln, CTF-Aufwärmungen und leichter umkehrbarer Verschleierung—nicht dem Schutz echter Geheimnisse unterwegs oder im Ruhezustand. Häufigkeit und Kontext lecken weiterhin, wenn der Schlüssel ein bekanntes öffentliches Buch ist; behandeln Sie den gemeinsamen Abschnitt nur im Geist eines klassischen Salontricks als gemeinsames Geheimnis, nicht als authentifizierten Kanal.

Kryptogeschichte im Unterricht

Zeigen Sie Lernenden, wie ein gemeinsamer Abschnitt zum Codebuch wird und wie Wortindizes ohne Buchstaben-Substitutionsalphabet ver- und entschlüsseln.

Rätsel- und Escape-Room-Design

Kodieren Sie kurze Hinweise als Positionslisten, die sich nur öffnen, wenn die Spieler denselben gedruckten Absatz oder dasselbe Gedicht besitzen.

CTF und Hobby-Chiffren

Erzeugen Sie umkehrbare Buchchiffre-Herausforderungen und melden Sie fehlende Schlüsselwörter, damit Autoren den Abschnitt vor der Veröffentlichung abstimmen.

Welche Eingaben braucht die Buchchiffre?

Encrypt erwartet Klartextwörter; decrypt erwartet Positionsnummern mit Basis 1.

Was geschieht, wenn ein Nachrichtwort nicht im Schlüssel steht?

Erweitern Sie den Schlüsselabschnitt oder formulieren Sie die Nachricht um.

Was enthält eine erfolgreiche Antwort?

Result sind leerzeichengetrennte Positionen beim encrypt und leerzeichengetrennte Wörter beim decrypt.

Ist die Buchchiffre deterministisch und sicher?

Es ist eine klassische Positionschiffre für Unterricht und Rätsel, keine moderne kryptografische Sicherheit.

Was passiert, wenn ein Wort im Schlüsseltext mehrmals vorkommt?

Es zählt immer das erste Vorkommen, daher hat jedes Wort genau eine Position. So bleiben Ver- und Entschlüsselung eindeutig, auch wenn das Wort später im Text noch einmal steht.

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/book-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/book-cipher \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"key_text":"The quick brown fox jumps over the lazy dog near the river bank","message":"quick fox river"}'
{
  "key_text": "The quick brown fox jumps over the lazy dog near the river bank",
  "message": "quick fox river"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.book_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 sie kostenlos im Browser für Unterrichtsdemos und Rätseldesign, oder rufen Sie die identische Logik über die API zu $0.002 pro erfolgreicher Anfrage auf.

Verschlüsseln, entschlüsseln und fehlende Wörter

Beim Verschlüsseln wird die Nachricht wie der Schlüssel in Wörter tokenisiert; jedes Wort wird seiner ersten Schlüsselposition zugeordnet, sofern es vorkommt. Fehlende Wörter brechen einen erfolgreichen Verschlüsselungsaufruf nicht ab: sie werden gemeldet, damit Autoren den Schlüsselabschnitt erweitern oder seltenes Vokabular streichen können, ohne zu raten, welches Token scheiterte. Entschlüsseln erfindet nie fehlendes Vokabular: jede Zahl mappt auf ein Schlüsselwort oder lehnt die Anfrage ab. Ein Roundtrip encrypt und danach decrypt mit demselben Schlüssel stellt die Oberflächenformen des Schlüssels für jedes vorhandene Wort wieder her; die Großschreibung kann vom Originalklartext abweichen, die Wörterbucheinträge bleiben dieselben. Senden Sie eine Pflichtzeichenkette key_text und eine Pflichtzeichenkette message und setzen Sie action optional auf encrypt oder decrypt (encrypt ist die Voreinstellung). Die Antwort enthält die normalisierte action, wie viele Wörter der Schlüssel hat, die Originalnachricht, eine result-Zeichenkette mit durch Leerzeichen getrennten Positionen für jedes gefundene Wort, parallele Arrays von positions und Oberflächenformen aus dem Schlüssel, eine Liste missing_words für Tokens, die im Schlüssel nie vorkommen, sowie die Zähler words_found und words_total. Beim Entschlüsseln darf message nur positive ganzzahlige Positionen enthalten; ein nichtnumerisches Fragment oder eine Position größer als die Wortzahl des Schlüssels scheitert sofort mit invalid_input und benennt das Problem. Leerer key_text nach Tokenisierung, leere message nach Tokenisierung beim encrypt, fehlende Felder und ungültige action-Werte scheitern ebenfalls mit invalid_input und werden nicht berechnet.

API-Nutzung, Preise und praktische Tipps

Verwenden Sie action decrypt, wenn die Nachricht bereits eine für denselben Schlüssel erzeugte Positionsliste ist. Verwenden Sie nie die Seite eines öffentlichen Romans so, als wäre sie ein moderner Schlüssel: wer das Buch errät, kann dieselben Nachschlageversuche starten. Der Status ist beta, solange die öffentliche Oberfläche stabilisiert wird, aber die Positionszuordnungsregeln folgen dieser festen klassischen Konstruktion und ändern sich bei identischen Eingaben nicht. Rufen Sie die Fähigkeit mit key_text und message als Pflichtfeldern auf. Der Preis der gehosteten API beträgt pauschal $0.002 pro erfolgreicher Anfrage; Validierungsfehler wie fehlender key_text, leerer Abschnitt, nichtganzzahliges Entschlüsselungstoken oder Position außerhalb des Bereichs werden nicht berechnet. Bevorzugen Sie einen Abschnitt, der lang genug ist, um Ihr Vokabular abzudecken, damit missing_words leer bleibt, und eine markante Formulierung, damit Erstvorkommen-Indizes von Hand prüfbar sind. In Pipelines senden Sie jede Nachricht als eigene Aufgabe und sammeln Ergebnisse über Ihren üblichen Webhook- oder signierten-Link-Fluss. Halten Sie Feldnamen explizit, statt freie Prosa in einen Block zu packen: der Vertrag bleibt an OpenAPI, SDK-Typen und Formularsteuerelemente ausgerichtet und vermeidet die mehrdeutige Trennung von Schlüssel und Chiffretext.

Was kostet die Buchchiffre-API?

Jeder erfolgreiche API-Aufruf kostet $0.002. Dieselbe Engine läuft kostenlos in Ihrem Browser ohne Konto. Ungültige Eingaben werden nicht berechnet.

Vollständige KIT-Dokumentation lesen →