5.1. Specific Compatibility Notes on ASN.1 (Spezifische Kompatibilitätshinweise zu ASN.1)
5.1. Specific Compatibility Notes on ASN.1 (Spezifische Kompatibilitätshinweise zu ASN.1)
Overview (Überblick)
Dieser Abschnitt behandelt spezifische ASN.1-Kodierungs- und Kompatibilitätsfragen, die Implementierer kennen müssen, um Interoperabilität zu gewährleisten.
5.1.1. ASN.1 Distinguished Encoding Rules (Auszeichnungskodierungsregeln, DER)
Alle Kerberos-Nachrichten verwenden Distinguished Encoding Rules (DER) zur Kodierung. DER ist eine Teilmenge der Basic Encoding Rules (BER) und stellt für jeden Wert eine eindeutige Kodierung sicher.
Key Requirements (Zentrale Anforderungen)
- Verwendung der DER-Kodierung für alle Nachrichten
- Keine optionalen Kodierungsvarianten
- Definite length encoding (Kodierung mit fester Länge) ist erforderlich
- Spezifische Regeln für die Reihenfolge bei SET und SET OF
5.1.2. Optional Integer Fields (Optionale Integer-Felder)
Optionale Integer-Felder in Kerberos-Nachrichten unterliegen bestimmten Kodierungsregeln:
- Wenn vorhanden, müssen sie kodiert werden
- Wenn abwesend, müssen sie vollständig weggelassen werden
- Nullwerte sollten explizit kodiert werden, wenn das Feld vorhanden ist
- Implementierungen müssen sowohl Anwesenheit als auch Abwesenheit korrekt behandeln
5.1.3. Empty SEQUENCE OF Types (Leere SEQUENCE-OF-Typen)
Wenn ein SEQUENCE-OF-Typ keine Elemente enthält:
- Einige Implementierungen kodieren mit Länge null
- Andere lassen das Feld vollständig weg
- Implementierungen müssen beide Formen akzeptieren
- Bei der Erzeugung sind die DER-Regeln zu befolgen
5.1.4. Unrecognized Tag Numbers (Nicht erkannte Tag-Nummern)
Beim Auftreten nicht erkannter Tag-Nummern:
- Empfänger SOLLTEN die Kodierung beibehalten
- Empfänger SOLLTEN das Vorhandensein ignorieren
- Empfänger DÜRFEN die Nachricht nicht allein wegen unbekannter Tags ablehnen
- Ausnahme: Unbekannte authorization data (Autorisierungsdaten) können eine besondere Behandlung erfordern
5.1.5. Tag Numbers Greater Than 30 (Tag-Nummern größer als 30)
ASN.1-Tag-Nummern größer als 30 verwenden mehrbyteige Kodierung:
- Implementierungen müssen mehrbyteige Tags unterstützen
- Long-form tag encoding (Tag-Kodierung in Langform) muss korrekt verarbeitet werden
- Damit ist die Erweiterbarkeit des Protokolls gewährleistet
Implementation Guidance (Implementierungshinweise)
- ASN.1-Dekodierung sorgfältig validieren
- Unbekannte Erweiterungen nach Möglichkeit beibehalten
- DER-Kodierungsregeln strikt einhalten
- Mit verschiedenen ASN.1-Encodern/-Decodern auf Kompatibilität testen
Reference (Referenz)
Vollständige technische Details finden sich in RFC 4120 Abschnitt 5.1.