A TLS certificate normally reaches a client through the TLS handshake, while the client decides whether to trust it using its configured authentication policy. DNS-Based Authentication of Named Entities, or DANE, adds a separate authenticated input: a TLSA record protected by DNSSEC can state which certificate or public key material is acceptable for a specific service endpoint.

The mechanism is not a replacement label for TLS. TLS still provides the handshake, key agreement, encryption, and record protection. DANE supplies authentication data that a client can apply while evaluating the server credential.

TLSA records are scoped to a service endpoint

RFC 6698 defines TLSA records beneath a DNS owner name constructed from a port, transport protocol, and host name. A TLS service on TCP port 443 for www.example.com is represented at:

_443._tcp.www.example.com.

This scope matters. A TLSA record is not a domain-wide declaration for every protocol and port. The owner name binds the association to the named transport endpoint.

A TLSA RDATA value contains four fields:

certificate_usage selector matching_type association_data

Each field changes the validation contract. Interpreting only the association bytes without the three preceding parameters is insufficient.

Certificate usage selects the trust model

The certificate usage field states how the TLSA association participates in authentication. The values defined by RFC 6698 and updated DANE specifications are commonly summarized as:

0  PKIX-TA
1  PKIX-EE
2  DANE-TA
3  DANE-EE

PKIX-TA and PKIX-EE retain PKIX validation as part of the acceptance model. The TLSA record constrains a trust anchor or end-entity certificate while normal public-key infrastructure checks still apply.

DANE-TA and DANE-EE establish DANE authentication modes. In these modes, DNSSEC-authenticated TLSA data supplies the relevant trust relationship rather than requiring the server credential to chain to a trust anchor from the client’s conventional public CA store.

The distinction is operationally significant. A matching association is not, by itself, evidence that every usage mode has succeeded. The client has to apply the validation procedure attached to the selected usage.

The selector chooses certificate material

The selector field identifies the material from the certificate that enters the matching step:

0  full certificate
1  SubjectPublicKeyInfo

Selecting the full certificate couples the TLSA association to the encoded certificate. Reissuance that changes certificate bytes can therefore require a DNS update even when the key remains the same.

Selecting SubjectPublicKeyInfo, often abbreviated SPKI, associates the record with the certificate’s public-key structure instead. A newly issued certificate can continue to match when it carries the same SPKI and the rest of the applicable validation policy is satisfied.

That flexibility also changes rollover planning. Replacing the key changes SPKI, so deployments that pin SPKI material need DNS data covering the intended transition.

The matching type controls representation

The matching type states how the selected material is represented in association_data:

0  exact selected bytes
1  SHA-256 digest
2  SHA-512 digest

For a digest form, the client extracts the material selected by the selector, hashes those bytes with the specified function, and compares the result with the TLSA association data.

A compact representation is:

certificate
    |
 selector
    v
selected bytes
    |
 matching type
    v
exact value or digest
    |
 compare with TLSA association_data

The hash does not authenticate the DNS answer on its own. DNSSEC validation is what authenticates the TLSA RRset and its DNS context. The digest only defines how certificate material is compared with the association value.

DNSSEC validation is a security precondition

DANE depends on authenticated DNS data. A TLSA answer received over ordinary DNS without a validated DNSSEC chain cannot carry the same security meaning merely because its syntax is valid.

The validating component must distinguish secure DNSSEC data from insecure, bogus, or otherwise nonvalidated results according to the resolver architecture in use. A forged TLSA RRset accepted without DNSSEC validation could direct credential acceptance toward attacker-selected material.

This creates an important boundary between transport and validation. Encrypting the DNS query to a resolver can protect the resolver connection, but encryption alone does not turn unsigned DNS data into DNSSEC-authenticated data. Conversely, DNSSEC authenticates DNS data; it does not provide confidentiality for the DNS query.

DANE-EE can authenticate the presented end entity directly

Usage 3, DANE-EE, associates the TLSA record with the end-entity credential presented by the service. When the DNSSEC and TLSA validation conditions for DANE-EE are met, authentication is based on that association rather than on building a conventional public-CA certification path.

That does not make certificate parsing irrelevant. The client still has to process the TLS handshake and the certificate representation required by the protocol. It also does not convert DANE into a general authorization system. The record authenticates credential material for the named service endpoint; application authorization remains a separate concern.

Usage 2, DANE-TA, has a different shape. It identifies trust-anchor material used to validate a certification path. Treating DANE-TA as if it were a direct end-entity pin can produce an incorrect validation procedure even when the bytes happen to resemble expected material.

Rollover needs overlap, not an instantaneous swap

TLSA deployment joins two independently cached systems: DNS data and TLS credentials. DNS TTLs can keep an older RRset active after an authoritative update, while servers may also be updated at different times.

A safe credential rollover therefore has to account for cached TLSA data and the set of credentials that clients can encounter. One common pattern is to publish associations that cover both the current and next credential, wait for the relevant DNS cache interval, deploy the new credential, and later retire the old association after stale paths have expired.

The exact sequence depends on the selected usage, selector, matching type, TTL, service topology, and deployment process. DANE does not remove rollover state; it makes that state explicit across DNS and TLS.

Absence and validation failure are different states

A client policy must not collapse every missing or unusable TLSA result into the same condition. A securely established absence of TLSA data, an insecure DNS delegation, a DNSSEC validation failure, and a transport timeout carry different security semantics.

For protocols with a specified DANE profile, that profile defines how these states affect authentication and fallback. SMTP DANE, for example, has protocol-specific rules beyond the generic TLSA record format.

This is also where deployment policy matters. Opportunistic TLS and strict authenticated TLS have different failure behavior. A generic implementation should not invent fallback semantics from the presence of a TLSA parser alone.

DANE and public CA validation can coexist

DANE is sometimes described as a binary alternative to public CA validation, but the certificate usage field explicitly supports mixed models. PKIX usages keep PKIX in the validation path while DNSSEC-authenticated TLSA data adds a constraint.

That property is useful when separating two questions:

Does the certificate satisfy the configured PKIX policy?
Does the certificate material satisfy the authenticated TLSA association?

For PKIX usages, both parts participate according to the usage definition. For DANE usages, the DNSSEC-backed association supplies a different trust basis.

The record format therefore encodes more than a pin. It identifies which trust model applies, which certificate bytes are selected, and which comparison representation is used.

Operational checks belong on both DNS and TLS sides

A DANE deployment can fail even when each subsystem appears healthy in isolation. The DNS zone can be correctly signed while the TLS service presents credential material that no longer matches. The server can present the intended certificate while a stale or incorrect TLSA RRset remains published.

Useful verification follows the full chain:

service name + port + transport
            |
            v
TLSA owner name
            |
            v
DNSSEC validation
            |
            v
usage + selector + matching type
            |
            v
presented TLS credential
            |
            v
association result

Monitoring only certificate expiry misses DNS association errors. Monitoring only DNSSEC signatures misses a mismatched server deployment.

DANE’s security boundary is precise: DNSSEC authenticates the TLSA policy data, and TLSA maps that data to certificate or public-key material for a particular service endpoint. The resulting authentication decision remains dependent on the record’s usage, selector, matching type, protocol profile, and current DNSSEC validation state.