Interface IDkimPublicKeyRecordResolver
- Namespace
- MailFathom.Application.Mail
- Assembly
- MailFathom.Application.dll
Resolves the key record a signing domain publishes for one DKIM selector.
public interface IDkimPublicKeyRecordResolver
Remarks
The port exists so that the one place MailFathom reaches the network to judge a sender is a named, replaceable seam rather than a call buried in a parser. What crosses it is a selector, a domain, and the record's text — no resolver type, no MIME type, and no cryptographic type, so an implementation may answer from DNS, from a cache, or from a fixture without any of that reaching the verification above it.
Every implementation is bounded and answers rather than raises. A record that does not exist, a nameserver that cannot be reached, and a lookup that outlives its deadline are all ordinary outcomes of asking a stranger's nameserver a question, and each of them answers with no record. Extraction runs over whatever arrives in a mailbox, so a resolver that threw or stalled would turn somebody else's DNS trouble into a folder that never advances past one message.
What is disclosed by a call is <selector>._domainkey.<domain> and nothing else: a low-cardinality
name the signing domain published in order to be asked for, carrying nothing about this message, this mailbox, or
this recipient. It is resolved when a message is stored rather than when one is read, so no lookup is ever
correlated with somebody opening their mail.
Methods
- ResolveAsync(string, string, CancellationToken)
Resolves what a signing domain publishes for one selector.