[ DKIM ]

Interpret DKIM none without confusing it with failure

Determine whether the message was unsigned at the reporting boundary before investigating keys or cryptography.

By the EmailAuth research team · 3 min read

[ Key points ]

  • Read dkim=none separately from the bare none result.
  • Establish the trusted evaluation boundary before comparing headers.
  • Fix the actual signing route rather than publishing unrelated keys.
On this page

A dkim=none result is not another spelling of a broken signature. RFC 8601 §2.7.1 defines the DKIM none result as the message not being signed. That distinction changes the investigation: an unsigned message needs a signing-path review, while a signed message that fails needs verification evidence.

Start by confirming what the result belongs to and who supplied it. A tool summary, an Authentication-Results field and the raw message can describe different observations. Trust the result only within a verified receiver boundary, and preserve the original message before trying to reconcile apparent contradictions.

Read the complete result field

In Authentication-Results, dkim=none is a result for the DKIM method. The separate form consisting of an authentication service identifier followed by a bare none indicates that no message authentication was performed. These forms are not interchangeable; see RFC 8601 §2.2. Missing Authentication-Results is also not proof that a message was unsigned; the header may not have been added or retained.

Read the authserv-id and understand which system it identifies. A message can contain results from several hops, including untrusted text inserted before delivery. RFC 8601 §7.1 describes trust-boundary handling because an attacker can write a convincing-looking result field. A pass or none string has meaning only when its provenance and evaluation context are established.

Inspect the signature evidence

Look for DKIM-Signature fields in the preserved raw message. If none are present and the trusted receiver reports dkim=none, investigate whether the sender enabled signing on that route. Check application SMTP, relay connectors and API-generated mail independently of ordinary mailbox mail.

If a signature is present but the result says none, do not immediately accuse the receiver of an error. A later hop may have added the signature, or the available sample may differ from the message evaluated by that receiver. Establish where each result and signature entered the path. The interpretation depends on the observation boundary, not just on the final header list.

Separate three practical cases

Case one: no signature exists at the trusted evaluation boundary. The next action is to confirm the supported signing configuration and route. Publishing another public key does not make the service sign.

Case two: a signature exists but the corresponding key is absent. RFC 6376 §6.1.2 treats this as a no-key verification failure, not an unsigned message. Derive the lookup from the signature's d and s values and investigate DNS publication or retirement.

Case three: the key is retrieved but the covered content does not verify. Investigate body representation, signed headers, key material, damaged signature values and signer/verifier defects; a failure alone does not establish which input changed. An intact DKIM-Signature field does not mean the signature passes. These cases are a diagnostic framework, not a set of live test results.

Keep DMARC separate from the label

Under an applicable DMARC policy, an unsigned message can still pass through passing aligned SPF under RFC 9989 §5.3.5. Conversely, a passing DKIM signature under an unrelated domain might not supply DMARC alignment. Record the From domain, SPF identity and result, each DKIM identity and result, and alignment as distinct observations.

Do not infer delivery or safety from none alone. Receivers apply their own filtering, and DKIM is one input rather than proof that a message is harmless. The operational question is whether the expected authorized sending path has the intended authentication coverage.

Prove the signing repair

If the route should sign, use the provider's supported configuration and test new messages after the change. Verify that the intended d domain and selector appear, that the signature passes at a trusted receiver and that it aligns where required. Include the actual business format and route rather than a different service's test button.

Preserve the before-and-after evidence with timestamps and a route description. Close the issue as signing absent on a named path, missing verification material, or failed integrity verification as appropriate. Precise classification gives the next incident a useful starting point.

Evidence needed for the next decision

For illustration, Authentication-Results: mx.example; dkim=none reports unsigned mail for that method, while Authentication-Results: mx.example; none says no authentication schemes were performed. Neither string is trustworthy merely because mx.example appears in it. If the raw sample later contains a signature, obtain the reporting-hop sample or logs before deciding whether signing was absent there. These are synthetic header examples.

[ Takeaway ]

Read dkim=none separately from the bare none result. Establish the trusted evaluation boundary before comparing headers. Fix the actual signing route rather than publishing unrelated keys.

[ By role ]

What this means for you

Choose your role for practical next steps.

IT / Mail Admin

Respect the reporting boundary

Header order and provenance matter when none appears beside a signature.

Next steps

  1. Read the full result field.
  2. Locate all DKIM-Signature fields.
  3. Separate absent signing from failed verification.

CISO / SecOps

Avoid trusting unverified result text

An Authentication-Results field is not inherently trustworthy just because it appears in a message.

Next steps

  1. Establish the trusted authserv-id.
  2. Review how boundary headers are handled.
  3. Keep DMARC and content safety conclusions distinct.

Founder / Non-technical

Ask whether the expected route signed

An unsigned application route may be overlooked when employee mail works.

Next steps

  1. Identify the affected workflow.
  2. Confirm the provider supports signing it.
  3. Require a before-and-after sample.

[ FAQs ]

Frequently asked questions

What does dkim=none mean?

RFC 8601 defines it as the message not being signed at the relevant evaluation context.

RFC 8601 §2.7.1

Is a bare none the same result?

No. The bare none form in Authentication-Results indicates that no message authentication was performed.

RFC 8601 §2.2

Does an absent result header prove no signature exists?

No. Inspect the raw message and the receiver’s reporting behavior.

Why can I see a signature beside dkim=none?

The signature may have been added later, or the sample and evaluation boundary may differ. Reconstruct the path.

Is a missing public key an unsigned message?

No. A signature with an absent key is a verification problem, not the absence of signing.

RFC 6376 §6.1.2

Can unsigned mail pass DMARC?

Yes, through passing aligned SPF when that path satisfies DMARC.

RFC 9989 §5.3.5

Will publishing a public key enable signing?

No. The sending system must actively sign using the matching private key.

RFC 6376 §5.5

What confirms the repair?

A new controlled message with the intended signature, a trusted passing result and the required alignment.

[ Sources ]

Sources

  1. RFC 6376

    Sections §1 · §3.1 · §3.5 · §3.7 · §5.5 · §6.1 · §6.1.2 · §6.1.3

  2. RFC 8601

    Sections §1.2 · §2.2 · §2.5 · §2.7.1 · §7.1

  3. RFC 9989

    Sections §4.4 · §4.4.1 · §5.3.5

[ Glossary ]

Glossary

DKIM
A domain-associated signature over selected message content, verified using public-key data.

RFC 6376 §1

Selector
The s value used with the d signing domain to find verification data.

RFC 6376 §3.1 RFC 6376 §3.5

DMARC alignment
The required relationship between an authenticated identifier and the Author Domain.

RFC 9989 §4.4

Authentication service identifier
The identifier of the authentication service reporting a result; trust also depends on the receiving boundary.

RFC 8601 §2.5 RFC 8601 §7.1

Enterprise provenance

Why top financial institutions and governments retired their email security dashboards.

Traditional email authentication platforms sell you a dashboard and ask your engineers to do the labour. In high-stakes environments, manual oversight means delayed enforcement, configuration drift and unmonitored shadow domains.

EmailAuth is the agentic email provenance platform. Our agents enforce p=reject, keep third-party senders aligned and move your domains to full RFC 9989 compliance, the new DMARC standard,, with human-in-the-loop auditability.

Governments Large enterprises Tier-1 financial institutions

SaaS · Dedicated tenancy · Air-gapped on-prem · BYOK encryption

Knowledge Base