DKIM-Signature: .... c=relaxed/relaxed; // dupe
DKIM-Signature: .... c=relaxed/relaxed; // dupe
DKIM-Signature: .... c=relaxed/relaxed; // dupe
DKIM-Signature: .... c=simple/relaxed; // other signer
DKIM-Signature: .... c=relaxed/relaxed; // other signer
You need two header and one body canonicalizations in that example. And that
presumes there's no "l=", which creates another dimension in the matrix of
canonicalizations you need to run.
I don't see much benefit for saving the header hash, since it depends on
the order that the headers are listed in the h= header.
On the other hand, doing both the simple and relaxed body hashes in a pass
over the body would handle about 99.999% of the signatures that anyone
cares about. I haven't seen many l= signatures, other than from Cisco,
and I don't think I've seen any where the l= didn't cover the whole
message.
R's,
John
_______________________________________________
NOTE WELL: This list operates according to
http://mipassoc.org/dkim/ietf-list-rules.html