5. Der DS-Ressourceneintrag (The DS Resource Record)
Der DS-Ressourceneintrag verweist auf einen DNSKEY RR und wird im DNS-DNSKEY-Authentifizierungsprozess verwendet. Ein DS RR verweist auf einen DNSKEY RR, indem er das Key Tag, die Algorithmusnummer und einen Digest (Prüfsumme) des DNSKEY RR speichert. Beachten Sie, dass zwar der Digest ausreichen sollte, um den öffentlichen Schlüssel zu identifizieren, das Speichern von Key Tag und Schlüsselalgorithmus jedoch dazu beiträgt, den Identifizierungsprozess effizienter zu gestalten. Durch Authentifizierung des DS-Eintrags kann ein Resolver den DNSKEY RR authentifizieren, auf den der DS-Eintrag verweist. Der Schlüsselauthentifizierungsprozess wird in [RFC4035] beschrieben.
Der DS RR und sein entsprechender DNSKEY RR haben denselben Besitzernamen, werden aber an unterschiedlichen Orten gespeichert. Der DS RR erscheint nur auf der oberen (elterlichen) Seite einer Delegation und ist autoritative Daten in der Elternzone. Zum Beispiel wird der DS RR für "example.com" in der Zone "com" (der Elternzone) statt in der Zone "example.com" (der Kindzone) gespeichert. Der entsprechende DNSKEY RR wird in der Zone "example.com" (der Kindzone) gespeichert. Dies vereinfacht die DNS-Zonenverwaltung und Zonensignierung, führt aber spezielle Antwortverarbeitungsanforderungen für den DS RR ein; diese werden in [RFC4035] beschrieben.
Die Typnummer für den DS-Eintrag ist 43.
Der DS-Ressourceneintrag ist klassenunabhängig.
Der DS RR hat keine besonderen TTL-Anforderungen.
5.1. DS RDATA Wire Format
Das RDATA für einen DS RR besteht aus einem 2-Oktett-Key Tag-Feld, einem 1-Oktett-Algorithm-Feld, einem 1-Oktett-Digest Type-Feld und einem Digest-Feld.
1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Key Tag | Algorithm | Digest Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/ /
/ Digest /
/ /
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5.1.1. Das Key Tag-Feld (The Key Tag Field)
Das Key Tag-Feld listet das Key Tag des DNSKEY RR auf, auf das der DS-Eintrag verweist, in Netzwerk-Byte-Reihenfolge.
Das von DS RR verwendete Key Tag ist identisch mit dem von RRSIG RRs verwendeten Key Tag. Anhang B beschreibt, wie ein Key Tag berechnet wird.
5.1.2. Das Algorithm-Feld (The Algorithm Field)
Das Algorithm-Feld listet die Algorithmusnummer des DNSKEY RR auf, auf den der DS-Eintrag verweist.
Die von DS RR verwendete Algorithmusnummer ist identisch mit der von RRSIG- und DNSKEY RRs verwendeten Algorithmusnummer. Anhang A.1 listet die Algorithmusnummertypen auf.
5.1.3. Das Digest Type-Feld (The Digest Type Field)
Der DS RR verweist auf einen DNSKEY RR, indem er einen Digest dieses DNSKEY RR einschließt. Das Digest Type-Feld identifiziert den Algorithmus, der zum Konstruieren des Digest verwendet wurde. Anhang A.2 listet die möglichen Digest-Algorithmustypen auf.
5.1.4. Das Digest-Feld (The Digest Field)
Der DS-Eintrag verweist auf einen DNSKEY RR, indem er einen Digest dieses DNSKEY RR einschließt.
Der Digest wird berechnet, indem die kanonische Form (canonical form) des vollständig qualifizierten Besitzernamens des DNSKEY RR mit dem DNSKEY RDATA verkettet und dann der Digest-Algorithmus angewendet wird.
digest = digest_algorithm( DNSKEY owner name | DNSKEY RDATA);
"|" bezeichnet Verkettung
DNSKEY RDATA = Flags | Protocol | Algorithm | Public Key.
Die Größe des Digest kann je nach Digest-Algorithmus und DNSKEY RR-Größe variieren. Zum Zeitpunkt dieses Schreibens ist der einzige definierte Digest-Algorithmus SHA-1, der einen 20-Oktett-Digest erzeugt.
5.2. Verarbeitung von DS RRs bei der Validierung von Antworten (Processing of DS RRs When Validating Responses)
Der DS RR verbindet die Authentifizierungskette über Zonengrenzen hinweg, daher erfordert der DS RR besondere Sorgfalt bei der Verarbeitung. Der im DS RR referenzierte DNSKEY RR MUSS ein DNSSEC-Zonenschlüssel sein. Die DNSKEY RR-Flags MÜSSEN Bit 7 der Flags gesetzt haben. Wenn die DNSKEY-Flags keinen DNSSEC-Zonenschlüssel anzeigen, DÜRFEN der DS RR (und der DNSKEY RR, auf den er verweist) NICHT im Validierungsprozess verwendet werden.
5.3. DS RR Präsentationsformat (The DS RR Presentation Format)
Das Präsentationsformat des RDATA-Teils ist wie folgt:
Das Key Tag-Feld MUSS als vorzeichenlose Dezimalzahl dargestellt werden.
Das Algorithm-Feld MUSS als vorzeichenlose Dezimalzahl oder als Algorithmus-Mnemonik dargestellt werden, wie in Anhang A.1 spezifiziert.
Das Digest Type-Feld MUSS als vorzeichenlose Dezimalzahl dargestellt werden.
Der Digest MUSS als Sequenz von groß-/kleinschreibungsunabhängigen Hexadezimalziffern dargestellt werden. Leerzeichen sind im Hexadezimaltext erlaubt.
5.4. DS RR Beispiel (DS RR Example)
Das folgende Beispiel zeigt einen DNSKEY RR und seinen entsprechenden DS RR.
dskey.example.com. 86400 IN DNSKEY 256 3 5 ( AQOeiiR0GOMYkDshWoSKz9Xz
fwJr1AYtsmx3TGkJaNXVbfi/
2pHm822aJ5iI9BMzNXxeYCmZ
DRD99WYwYqUSdjMmmAphXdvx
egXd/M5+X7OrzKBaMbCVdFLU
Uh6DhweJBjEVv5f2wwjM9Xzc
nOf+EPbtG9DMBmADjFDc2w/r
ljwvFw==
) ; key id = 60485
dskey.example.com. 86400 IN DS 60485 5 1 ( 2BB183AF5F22588179A53B0A
98631FAD1A292118 )
Die ersten vier Textfelder geben den Namen, TTL, Klasse und RR-Typ (DS) an. Der Wert 60485 ist das Key Tag für den entsprechenden DNSKEY RR "dskey.example.com.", und der Wert 5 bezeichnet den von diesem DNSKEY RR "dskey.example.com." verwendeten Algorithmus. Der Wert 1 ist der Algorithmus, der zum Konstruieren des Digest verwendet wurde, und der Rest des RDATA-Textes ist der Digest in Hexadezimal.
Navigation verwandter Kapitel: