[ Diagnostics & resources ]

DKIM checker guide: start with the actual selector

Plan a DKIM check from the actual signature and selector, keeping public-key availability, message verification and DMARC alignment separate.

By the EmailAuth research team · 6 min read

[ Key points ]

  • Extract d= and s= from a real signature or identify a confirmed configuration source.
  • Preserve TXT record boundaries and query failures rather than returning a generic missing-key result.
  • Apply DKIM algorithm updates and declare the verifier’s actual capabilities.
  • This guide does not satisfy the catalogue’s working-tool or message-to-query evidence gates.
On this page

Begin with the signature that needs explaining

A useful DKIM checker starts with a particular signature or a confirmed sending configuration. Asking only for a domain invites the checker to guess a selector and then report an absence that may be irrelevant. The first question is which message, signing domain and selector the reader is investigating. If those inputs are unavailable, the honest result is that the target key cannot yet be identified.

This guide specifies a proposed diagnostic approach. It does not provide or demonstrate a working EmailAuth checker. No message was imported, DNS request sent or signature verified. The exact catalogue implementation gate remains open: Implement and test the promised function. An article, mock-up or specification alone is not a working tool.

Preserve the evidence before extracting fields

For a later authorized investigation, retain the received message in a controlled location before making a redacted working copy. Record its origin and collection time. Copying only a visually displayed header may discard folding, repeated fields or the body bytes required for cryptographic verification. The diagnostic view should explain which input was supplied and whether it is sufficient for the claimed check.

Locate each DKIM-Signature field separately. Read its d= signing domain and s= selector without replacing either with the visible From address or a provider's familiar default. Other tags describe the algorithm, canonicalization and signed material. Multiple signatures deserve separate rows; selecting only the first can conceal another signature relevant to DMARC. RFC 6376 defines the signature fields.

Construct the exact public-key question

The lookup owner is formed from the selector, the _domainkey label and the signing domain. In a purely fictional example, d=sender.example and s=mail2026 imply mail2026._domainkey.sender.example. That is a constructed name, not an executed query or an observed key. A confirmed provider configuration can supply these values when a message is not available, but that path proves configuration intent rather than live signing.

Retain the input fields beside the constructed owner and TXT record type so another reviewer can check the derivation. Preserve any alias chain and resolution status rather than presenting only the final text. A network timeout, refused query or server failure is not a finding that the selector has no key. DNS response semantics and resolver context matter. RFC 6376 key lookup and RFC 1035.

Explain the key record without collapsing distinct outcomes

A TXT record can contain several character strings that together form its value. That differs from receiving multiple separate key records. The proposed checker should preserve record boundaries, parse the DKIM tags and report malformed or ambiguous data explicitly. An empty p= value indicates revocation, not a missing DNS response. A public key's presence alone does not establish that the sending application possesses or uses the matching private key.

Algorithm interpretation must include updates to the original DKIM specification. RFC 8301 prohibits rsa-sha1 for signing and verification and updates RSA key requirements. RFC 8463 adds Ed25519-SHA256. A tool should state its supported algorithms and version instead of turning an unsupported implementation into a universal claim that a key is invalid. No library, algorithm implementation or installed tool has been tested here. RFC 8301 and RFC 8463.

Separate lookup, verification and alignment

Use three distinct conclusions: key material was observed, the supplied signature verified, and the resulting signing identity aligned with the author domain. Each needs different evidence. Cryptographic verification needs the relevant message bytes, signature parameters and key. A current key lookup may also differ from what a receiver saw when an older message arrived, particularly around rotation or revocation.

A trusted Authentication-Results assertion can document what a receiver reported, but it is not interchangeable with independently re-verifying an altered message. Identify the receiver and trust boundary before relying on that assertion. Conversely, redacting a signed header or body can change the verification input; a failure on the derivative does not automatically prove the original failed. RFC 8601 and RFC 6376.

Under current RFC 9989, a passing DKIM signature contributes to DMARC when its authenticated identifier aligns with the author domain. A valid signature from an unrelated domain is therefore not enough by itself. The checker should label the alignment mode and evaluated identities instead of converting any DKIM pass into a DMARC pass. RFC 9989.

Design a result that leads to a bounded next step

A useful proposed result contains the supplied message reference, extracted d= and s= values, exact query owner, observation time, record parsing outcome, verification scope and alignment assessment. Add the evidence supporting each conclusion and explain what was not checked. Do not invent a green live-signing badge from a successful DNS lookup.

If the selector was guessed, request a real signature or confirmed configuration before advising a DNS correction. If the key is available but verification fails, investigate message modification, wrong key selection and sender configuration before recommending a replacement. Keep private keys out of the checker entirely. Obtaining a customer message, querying a domain, sharing evidence and changing DNS each require their own authorized scope.

Keep the promised demonstration outstanding

The exact original-evidence requirement is: Show the message-to-query chain and distinguish key availability from live signing. The fictional derivation above explains the method but does not meet that operational requirement. A working implementation would need retained tests for real selector extraction, record boundaries, errors, supported algorithms and message verification before its results could be trusted.

Sources were reviewed on 8 November 2026. This article remains documentary preparation with independent review, human technical and privacy approval, implementation evidence, visual checks and owner publication release pending. It reports no completed lookup, test or product capability.

[ Takeaway ]

A correct key lookup answers a narrower question than whether a live sender signed or a received message verified.

[ By role ]

What this means for you

Choose your role for practical next steps.

Messaging investigator

Tie each result to its signature

Begin with a controlled message reference and keep signatures separate. A provider guess cannot replace the selector and signing domain actually under investigation.

Next steps

  1. Record the origin of d= and s= and the exact derived TXT owner.
  2. Label whether the input supports key inspection, receiver-result interpretation or full verification.
  3. Investigate conflicting evidence before proposing a replacement key.

Checker developer

Represent uncertainty in the data model

A boolean DKIM-health result cannot express missing input, DNS failure, revoked key, unsupported implementation or cryptographic failure accurately.

Next steps

  1. Keep record boundaries, resolution status and timestamps in the proposed result model.
  2. Declare algorithm support against RFC 8301 and RFC 8463 as well as RFC 6376.
  3. Provide independent fixtures before presenting any claimed implementation as tested.

Domain owner

Keep diagnosis separate from authority

A lookup can support a diagnosis without authorizing changes or disclosure. Private signing material has no place in a public-key checker.

Next steps

  1. Approve any real message collection and external analysis destination separately.
  2. Use the sender owner to confirm active configuration and selector history.
  3. Require an approved exact change and verification plan before DNS remediation.

[ FAQs ]

Frequently asked questions

Why is the visible From domain not enough to select a DKIM key?

The key lookup uses the DKIM signature’s signing domain and selector, not automatically the visible author domain. Those identities may differ. Without the actual signature or confirmed configuration, the checker should leave the target unresolved.

What should a checker do when no selector was supplied?

Ask for the signature’s s= value or a confirmed sender configuration. A guessed default can be shown only as a clearly limited exploratory choice, never as proof that the domain has no DKIM key. No exploratory lookup is performed here.

Does an empty p= value mean the same thing as a DNS timeout?

No. An empty DKIM public-key value indicates revocation. A timeout means the lookup did not obtain the required response and cannot by itself establish key absence or revocation. Preserve those outcomes separately.

Can a header-only upload prove that the whole DKIM signature verifies?

Not by itself. Verification requires the relevant message body and signed header material under the signature’s canonicalization rules. A header-only view can explain tags or a receiver’s assertion, but must label that narrower scope.

How should an older rsa-sha1 signature be reported?

RFC 8301 prohibits rsa-sha1 for signing and verification and treats such historic-algorithm signatures as permanently failed. The implementation should apply the update rather than relying only on the original RFC 6376 algorithm text.

Is a currently available key proof that an old message verified on arrival?

No. DNS can change after reception, and a current lookup does not reconstruct the receiver’s historical key observation. Preserve the message time, current lookup time and any trusted contemporaneous receiver evidence.

Does any passing DKIM signature establish a DMARC pass?

A DKIM-authenticated identifier must also align with the author domain under the applicable mode. A pass from an unrelated signing domain is not enough on its own; multiple signatures should be evaluated separately.

Has this guide delivered the promised working DKIM checker?

No. It supplies proposed interpretation and an illustrative name derivation, not software or executed tests. The exact message-to-query demonstration and the separate implementation gate remain open.

[ Sources ]

Sources

  1. RFC 1035: Domain Names, Implementation and Specification
  2. RFC 6376: DomainKeys Identified Mail Signatures
  3. RFC 8301: DKIM Cryptographic Algorithm and Key Usage Update
  4. RFC 8463: A New Cryptographic Signature Method for DKIM
  5. RFC 8601: Authentication-Results Header Field
  6. RFC 9989: Domain-Based Message Authentication, Reporting, and Conformance

[ Glossary ]

Glossary

Signature selector
The s= value in a DKIM signature that selects a key namespace beneath the signing domain; it is not reliably inferred from a provider name.
Signing domain
The d= identity associated with a DKIM signature, which is evaluated separately from the message’s visible author domain.
Revoked DKIM key
A key record whose empty p= value signals revocation rather than a successful usable public-key publication.
Verification input
The relevant original message bytes, signature parameters and public key needed to evaluate a DKIM signature, not merely a DNS name.
Key-observation time
The recorded time at which a public-key response was obtained, which may differ from the time a receiver evaluated an older message.

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