CertaDNS
Skip to lesson

The Controls as One System · lesson 2 of 3

The dependency graph

After this lesson you can

Draw what depends on what, and identify the controls that cannot be deployed yet.

Assumes you have read Where each control sits.

Some controls cannot be deployed until another is working. Drawing that graph once tells you what is available to you today and what is blocked behind something else.

The graph

reporting (rua, TLS-RPT)
   └── everything else, because every later decision
       is evidence-driven

SPF ─┐
DKIM ┴── DMARC ── enforcement ── BIMI
                       │
                       └── requires full enforcement,
                           pct absent or 100

DNSSEC ── DANE
   (TLSA records are only trustworthy under a
    validated chain, in the zone holding the MX hosts)

HTTPS + valid certificate ── MTA-STS
   (the policy is authenticated by the web PKI)

correct MX ── MTA-STS enforce
   (a policy listing the wrong hosts stops mail)

registrar account security ── everything
   (the account can replace the delegation and
    remove DNSSEC in one action)

Hard dependencies and soft ones

DependencyKindWhat happens if you ignore it
DMARC enforcement before BIMIHardBIMI does not work. The logo never renders and nothing says why.
DNSSEC before DANEHardTLSA records cannot be trusted, so validating senders ignore them entirely.
HTTPS before MTA-STSHardNo policy can be served or authenticated.
Reporting before enforcementSoft, and treat as hardYou can enforce blind. You will reject your own mail and not know which sender.
SPF and DKIM before DMARCSoftA DMARC record with nothing aligned fails everything. Technically deployable, operationally an outage.
Registrar security before anythingSoft, and it outranks everythingEvery control below it can be removed by whoever holds the account.

Reading it as a plan

The graph answers two questions immediately. What can I do today? — anything with no unmet dependency, which is always reporting, registrar security and the free controls. Why can I not do X? — trace back until you find the unmet edge, and that is the actual piece of work.

A vendor proposing BIMI to a domain at p=none

It happens regularly, and it is the clearest test of whether somebody has read the graph. The domain cannot have BIMI until enforcement is reached, so the proposal is a proposal for a DMARC programme with a logo attached at the end — which may be a fine way to fund it, and should be described that way.

Knowledge check

An organisation wants DANE. Their MX points at a mail provider whose zone is unsigned. What is the actual piece of work?

Last reviewed