Begriff
Token
Warum wichtig?
Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.
Das Wort "Token" hat in der IT drei völlig verschiedene Bedeutungen.
- Sicherheit (wie eine Eintrittskarte): Wenn du dich bei Google einloggst, gibt dir Google ein "Token" (ein langes Passwort). Damit darfst du Gmail öffnen. Du musst dein echtes Passwort nicht jedes Mal neu eingeben.
- KI (wie eine Silbe): ChatGPT liest keine ganzen Wörter. Es zerhackt Text in "Tokens". Ein Token ist etwa 4 Zeichen lang (z. B. "Apfel" = 1 Token, "Donaudampfschifffahrt" = 5 Tokens).
- Krypto (wie eine Münze): Ein digitaler Vermögenswert auf einer Blockchain (z. B. ein NFT oder ERC-20 Token).
Merksatz: Eine digitale Zeichenfolge, die entweder für eine Berechtigung (Auth), eine textliche Einheit (AI) oder einen Wert (Blockchain) steht.
Auth Token (Bearer Token):
curl -H "Authorization: Bearer abcd123..." https://api.github.com/user
Wenn du das Token verlierst, kann jeder deinen Account nutzen (wie Bargeld).
LLM Token: User: "Erkläre Quantenphysik." OpenAI API: "Das kostet 50 Tokens." Als Entwickler bezahlst du pro 1000 Tokens (ca. 0,002 $).
Praxisroutine
In der Praxis lernst du Token, indem du mit einem kleinen, kontrollierten Beispiel beginnst. Baue zuerst einen Minimalfall, prüfe das Ergebnis, veraendere genau eine Sache und beobachte, was sich ändert. Notiere dir Eingabe, Aktion, Ausgabe und typischen Fehler.
Übung: Erstelle ein Beispiel aus deinem Alltag, fuehre den Ablauf gedanklich Schritt für Schritt durch und markiere die Stelle, an der du Feedback oder ein Log brauchst. Wenn du diese Stelle benennen kannst, verstehst du den Begriff praktisch.
1. JWT (JSON Web Token)
Der Standard für Auth Tokens.
Es ist ein Token, das Daten enthält (Payload), die kryptografisch unterschrieben sind.
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Wenn du es decodierst (base64), steht da: {"user_id": 123, "role": "admin"}.
Vorteil: Stateless. Der Server muss nicht in der Datenbank nachsehen ("Ist Session 123 noch gültig?"). Er prüft nur die Signatur. Das skaliert unendich.
Nachteil: Man kann es schwer widerrufen (Revocation Problem), bevor es abläuft.
2. Tokenization in LLMs (BPE)
Wie macht GPT aus Text Zahlen?
Algorithmus: Byte Pair Encoding (BPE).
Es sucht häufige Zeichenfolgen ("ing", "the", "sch").
"Hello World" -> [15496, 2159].
Warum wichtig?
Mathematik-Schwäche von LLMs kommt oft daher. "100" ist ein Token, "1" und "0" und "0" sind drei Tokens. Das Modell "sieht" die Zahl manchmal nicht richtig.
3. CSRF & Tokens
Um Formulare im Web zu schützen (CSRF Attack), nutzt man ein "Anti-CSRF Token".
Ein verstecktes Feld im Formular <input type="hidden" value="random123">.
Der Angreifer kann zwar einen Link schicken ("Klick hier für Geld"), aber er kennt das geheime Zufalls-Token nicht. Der Server lehnt die Anfrage ab.
1. Opaque vs. Structured Tokens
- Opaque Token (Undurchsichtig): Eine zufällige Zeichenfolge (
s7f2k...). Nur der Server weiß, was sie bedeutet. Er muss bei jedem Request in der Datenbank nachsehen. Vorteil: Maximale Sicherheit, da der Client null Infos hat. - Structured Token (JWT (JSON Web Token)): Enthält die Infos direkt in sich selbst. Vorteil: Der Server spart sich den Datenbank-Check. In modernen Systemen kombiniert man beides: Das Frontend erhält ein JWT, aber für hochkritische Aktionen (z.B. Passwort ändern) wird ein Reference Token (Opaque) genutzt, das der Server sofort ungültig machen kann.
2. Token Revocation (Die Datenbank-Problem)
Das Problem von JWTs: Man kann sie nicht "löschen", bevor sie abgelaufen sind, weil sie "stateless" sind. Wenn ein User sein Handy verliert, ist das Token für den Finder noch 1 Stunde lang gültig. Lösung 1: Eine Blacklist in Redis führen (Token-IDs, die gesperrt sind). Nachteil: Damit wird das JWT wieder "stateful" und man verliert den Performance-Vorteil partially. Lösung 2: Extrem kurze Ablaufzeiten (Short Lived Tokens) von 5-10 Minuten nutzen und den User über Refresh-Tokens immer wieder unauffällig neu authentifizieren.
3. WordPiece & Tiktoken (Die AI-Mechanik)
Verschiedene KI-Modelle nutzen unterschiedliche "Tokenizer".
- BERT nutzt WordPiece.
- GPT-4 nutzt Tiktoken (eine sehr effiziente BPE-Variante). Ein wichtiger Faktor für Entwickler: Da die Context Window (z. B. 128k Tokens) begrenzt ist, musst du deine Texte vorher lokal "tokenisieren", um zu berechnen, ob sie noch in die Anfrage passen. Wenn dein System "RAG" (Retrieval Augmented Generation) nutzt, musst du Tokens sparen, um mehr relevante Dokumente als Kontext mitsenden zu können. Tokens sind die "Währung" der KI-Effizienz.
Quick-Check
Refresh Token?
Ein Access Token lebt kurz (1 Stunde). Ein Refresh Token lebt lang (30 Tage). Wenn das Access Token abläuft, nutzt die App das Refresh Token, um ein neues zu holen. So muss sich der User nicht neu einloggen, aber ein gestohlenes Access Token richtet nur kurz Schaden an.Hardware Token?
Ein physisches Gerät (YubiKey, RSA SecurID), das alle 30 Sekunden einen Code anzeigt (OTP). Gilt als "Besitz"-Faktor in MFA.Token Bucket?
Ein Algorithmus für Rate Limiting. "Du darfst 5 Requests pro Sekunde machen." Man füllt Tokens in einen Eimer. Jeder Request kostet ein Token. Wenn leer -> Fehler 429.