Changes for version 1.20261105 - 2026-11-06

  • Don't canonicalize ARC-Seals once the ARC chain has failed, and only match ARC-Authentication-Results at the start of a header field Thanks to Sidney Markowitz <sidney@apache.org> and the Apache SpamAssassin PMC
  • Check ARC signature tags and instance numbers before looking up keys
  • Speed up ARC-Seal canonicalization for long ARC chains
  • Check ARC instance numbers in the ARC signer, and limit it to 50 ARC sets
  • Speed up DKIM header canonicalization for long h= lists
  • ARC signer skips messages with unparseable ARC headers rather than dying, and matches ARC header names case insensitively
  • ARC-Seal canonicalization takes the ARC-Authentication-Results instance from the start of the field
  • ARC verifier fails a chain with a missing or extra ARC-Authentication-Results header, and no longer warns about a missing cv= tag
  • Speed up parsing of long header fields, and of header field names, tag lists, h= lists and policy records with long runs of whitespace Thanks to Sidney Markowitz <sidney@apache.org> and the Apache SpamAssassin PMC
  • Only check test timings under AUTHOR_TESTING, so slow machines don't fail them Thanks to Sidney Markowitz <sidney@apache.org>
  • Speed up verifying messages with many signatures and many header fields, by indexing the header once for all the signatures Thanks to Sidney Markowitz <sidney@apache.org> and the Apache SpamAssassin PMC
  • Fix slow matching of ARC-Seal and ARC-Message-Signature headers with a long run of whitespace and no i= tag
  • ARC verifier fails a chain with an ARC-Authentication-Results header whose instance can't be found or is outside 1..50, rather than ignoring it, so an AAR not covered by the seals can't sit alongside a passing chain; the ARC signer skips such a message

Documentation

computes ARC signatures for an email message
verifies ARC signatures on an email message
computes a DKIM signature for an email message
verifies DKIM signatures on an email message

Modules

Signs/verifies Internet mail with DKIM/DomainKey signatures
Subclass of Mail::DKIM::Signature which represents a ARC-Message-Signature header
represents a ARC-Seal header
generates a DKIM signature for a message
verifies an ARC-Sealed message
base class for DKIM "algorithms"
Base algorithm class
ed25519 sha256 algorithm class
rsa sha1 algorithm class
rsa sha256 algorithm class
represents an Author Domain Signing Practices (ADSP) record
base class for canonicalization methods
dk common canonicalization
dk simple canonicalization
nowsp canonicalization
common canonicalization
arc seal canonicalization
simple canonicalization
Common class for Mail::DKIM
performs DNS queries for Mail::DKIM
represents a DomainKeys Sender Signing Policy record
represents a DomainKeys-Signature header
represents a DKIM Sender Signing Practices record
Represents a DKIM Key
Represents a Key/Value list
Signs/verifies Internet mail with DKIM/DomainKey signatures
abstract base class for originator "signing" policies
a private key loaded in memory for DKIM signing
Represents a DKIM key
represents a DKIM-Signature header
generates a DKIM signature for a message
determines signing parameters for a message
text wrapping module written for use with DKIM
verifies a DKIM-signed message