TSIG
# TSIG

Ziel von TSIG (Transaction SIGnature) ist es, Authentizität von DNS-Partnern sicherzustellen und die Datenintegrität bei Transaktionen zu gewährleisten. Ein DNS-Teilnehmer soll damit verifizieren können, dass der Partner, mit dem er kommuniziert auch tatsächlich der ist, der er vorgibt zu sein und dass empfangene DNS-Nachrichten auf dem Transportweg nicht verfälscht wurden. TSIG wird hauptsächlich bei der Server-Server-Kommunikation eingesetzt und weniger bei der Client-Server-Kommunikation (Ausnahme: Dynamic Updates).

Eine Verschlüsselung von DNS-Daten ist im Rahmen von TSIG nicht vorgesehen. Da DNS-Informationen grundsätzlich der Öffentlichkeit zur Verfügung gestellt werden, würde eine Verschlüsselung keinen Sicherheitsgewinn bedeuten.

## Überblick

Bei TSIG besitzen zwei oder mehr DNS-Server, die miteinander kommunizieren, den gleichen Schlüssel (symmetrischer Schlüssel, geteiltes Geheimnis), der manuell konfiguriert wird. Werden zwischen TSIG-Servern Daten ausgetauscht (z. B. beim Zonentransfer oder bei rekursiven Abfragen), so wird von jedem übertragenen DNS-Paket der MD5-Hash gebildet und in einem speziellen TSIG Resource Record angehängt. Der Empfänger führt mit seinem Schlüssel die gleiche MD5-Operation durch und vergleicht die beiden Unterschriften. Sind sie identisch, so stammen die Daten vom gewünschten Partner und wurden nicht verfälscht.

## TSIG Resource Record

Beim TSIG-RR handelt es sich um einen so genannten Meta-RR, der dynamisch vor Absenden einer DNS-Message erzeugt und nach Empfang und Auswertung verworfen wird. Er taucht weder in Zonenfiles noch in DNS-Caches auf.

Ein TSIG Resource Record besteht aus den folgenden Feldern:

* Name (Name des Schlüssels)
* Typ (immer TSIG)
* Class (immer ANY)
* TTL (immer 0)
* Länge
* Daten (digitale Unterschrift und weitere Angaben)

Anhand des Namens kann zwischen verschiedenen Schlüsseln unterschieden werden. Es ist dadurch möglich, zwischen zwei Partnern mehrere Schlüssel zu vereinbaren. Das hat vor allem bei Änderungen Sinn, da man dadurch eine Zeit lang den alten und den neuen Schlüssel parallel verwenden kann.

## Bewertung

TSIG ist deutlich einfacher zu handhaben als DNSSEC und bietet sich in Umgebungen mit nur wenigen Servern an. Sind zu viele Server beteiligt, steigt der Administrationsaufwand stark an. Hier haben Public-Key-Verfahren wie etwa DNSSEC Vorteile, da die Schlüsselverteilung sehr viel einfacher ist.

