Murray, et al,

I started this on Jan14 but, well, got distracted...

The draft is moving in a good direction, but I think it still has some points worthy of serious concern.

Some basic points:

1. A charter has 3 audiences:
   The IESG for approval;
   The working group participants for team focus and coherence, and
   adjudicating disagreements about scope and direction; and
   The broader Internet technical community (including its managers,
   who approve time and travel), for expanding participation and
   garnering community support. A charter should be written to be
   useful for this currently-uninvolved, probably-uninformed 'market'.
2. A charter has to explain the problems/opportunities it is targeting
   and make a case for their importance.
3. It can help to include suggestions or draft specifications for
   solutions, but that is value add and not automatically required. 
   However if the reality is that they exist and are expected to
   dominate the working group, it is frankly misleading not to document
   this in the charter. Given that existing work, the charter usually
   indicates the role that pre-existing work is expected to play,
   ranging from something generic like adding to discussion, all the
   way up to providing a base that is expected to be changed only under
   duress, presumably due to community momentum with the existing spec.
4. For cases of an established capability, the charter usually is
   proactive in encouraging incremental enhancement, where possible. 
   Switching costs from what is existing, to something new, is usually
   much, much higher than advocates appreciate.  In other words, it is
   difficult to move a global, operational base.
5. A charter needs to be very careful about its language, and
   especially being technically precise and accurate; if it isn't, why
   should anyone expect a quality technical output?

If the broader Internet community does not engage during development, the resulting work risks being a mismatch with what that community will accept.  That is, they won't adopt and use it.

The proposed effort involves some features that appear to be easy to obtain as value-add features and practices, on top of existing DKIM.  WG efforts should attempt to achieve that rather than wholesale replacement, since they permit incremental specification and incremental adoption and use.  Having DKIM Replay protection appears to be a good example, by simply defining a replica of the SMTP RCPT-TO address in the header, and defining a common practice of including that header field it in the signature.

The proposal for mandating forward and/or backward hop-by-hop behavior reintroduces a form of source-routing.  This might be a good idea, but it has been operationally demonstrated to be a very high-risk approach. Note that it is largely deprecated in services that used it.  As an obvious example, consider End-to-End Arguments.  DKIM is a protocol between end-systems, requiring no awareness or support from the email infrastructure.  The proposed hop-by-hop behavior is an infrastructure play.  Very, very different costs to achieve, and very different risk.


As for the v4 draft charter detailed comments...


On 1/14/2025 6:40 PM, Murray S. Kucherawy wrote:
An Internet message (email) may, from creation to final delivery, pass through multiple intermediaries, some of which simply handle and route the message, others affecting an interim delivery and re-injection into the ecosystem.  There are complexities with this handling model, such as evaluation, filtering, intentional mutation, and even malicious activities.

A basic problem, throughout this entire discussion, has been the effort to treat simple relaying through MTAs, and a multiple-posting/delivering forwarding sequence such as with mailing lists, as the same thing.

They aren't and never have been.

Treating them the same is a fundamental architectural change, at best  The above language hides this reality.

Mailing lists managers are not MTAs. Not architecturally, not as software, and not operationally.



The core email protocols do not provide for authentication of the identities in the message

"identities in the message" is too broad and too vague. A random name in the body is not relevant, but this language would include it.

I suggest the reference be more explicit and constrained, such as:

   "identities recorded for authorship, receipt, or handling of the
   message".

(quibble:  we keep saying identities when we usually mean identifiers. at the least, this is an example of the need to be a lot more careful about language.)


or evaluation of the content for any sort of validity or safety.

I have no idea what providing for evaluation of the content for validity or safety means.  Nor, I believe, is there any widespread history of discussion of that, in those terms.

I suggest breaking this point out and writing something very different, to set up the concern.  (I don't understand the am not sufficiently clear about what is intended here to be able to draft possible wording.)


DKIM [STD 76] extended the basic messaging function

No it didn't. It added a useful feature to the messaging landscape but is not part of 'basic' messaging. Perhaps:

   DKIM [STD 76] defines a means of associating a domain name with a
   message stream and validating its use. This permits evaluating the
   stream, with a high probability the owner of that name has some
   responsibility for the handling of the message.

There is a continuing mis-statement that DKIM validates the 'source' or the 'sender' or the 'author' of a message.  It does none of that.  Really, it doesn't.

The assertion does describe the signing behavior of some platforms, but it is not DKIM's semantic, nor does it cover the behavior of all signers.

Note for example that when a message passing through a handler like Proofpoint, they might sign the message as it passes, but they are not the source or sender or author of the message.



by providing assurance that a message was not modified between a signing agent and a verifying agent by affixing a domain-specific signature.

DKIM makes no such assertion, and it is not true as stated here.

All DKIM was designed to do was to reliably and authentically affix /some/ identifier to /some/ parts of a message.  This creates a noise-free message stream that uses the identifier.

A side-effect of DKIM's technology is that the fields that are covered by the signature -- and only those fields -- are protected in transit.

Other portions of the message are not.



Still, there exist known shortcomings in the email model that DKIM alone is not designed to address, including the following:

There are additional needs.  They are new.  Or, at least, they were not previously a priority.  Since they were not needs when DKIM was developed, they are not 'shortcomings'.

   https://dictionary.cambridge.org/dictionary/english/shortcoming

When something goes beyond a design goal, it is not reasonable to characterize what is now needed as a failing of the existing system.

If you have a two bedroom house and the family grows so that the family needs more bedrooms, the problem is not a 'shortcoming' of the house, but a changed demand by the family.

dictionary.cambridge.org

shortcoming <#>

SHORTCOMING definition: 1. a fault or a failure to reach a particular standard: 2. a fault or a failure to reach a…. Learn more.

🔗 https://dictionary.cambridge.org/dictionary/english/shortcoming <https://dictionary.cambridge.org/dictionary/english/shortcoming>

Focus the concern where it belongs:  a new set of requirements.


* There is a desire to confirm that a message received truly originated from, or with the approval of, the identity claiming to have done so.  Mutations of a message in transit interfere with the validity of DKIM signatures, which stymies such efforts.  If a message is modified after DKIM signing, it is generally not possible to determine what was modified, or which agent in the handling chain made which change(s); these would be useful inputs to a more robust evaluation.

Perhaps:

   There is a desire to maintain validation of a message's signing
   identifier, across common transit and forwarding modifications. When
   a message goes through a re-posting, such as through a mailing list,
   the validation signature typically does not survive and cannot be
   recovered.

The idea of annotating reversible changes is in the weeds of solution space, not the basics of need.

While mentioning a possible solution path might be useful, taking the ability to do something that has no operational history at scale as something implicitly expected and necessary is problematic to the health of a working group.


* A DKIM signature is independent of the true set of (envelope) recipients of the message,

'true'?  DKIM has nothing to do with recipient addresses, as such.

Instead of casting this as a DKIM issue, cast it as a new functional goal.  Because it is.


meaning that the same message and signature can be sent to arbitrarily many recipients, across one or many independent injections into the ecosystem, and those recipients can not tell if the signer intended to include them as recipients.

The charter needs to define DKIM Replay, since the term is over- and mis-used, to claim a scope of concern much broader than reasonable.  So,

   DKIM Replay exploits the absence of a protected recipient address,
   wheret an authorized user of a site sends a message that is signed
   by that site, to a collaborating receiver than then re-sends the
   message to other recipients, not in the original set of recipients,
   but without any indication that the message has been re-posted. 
   This way, the domain name of the DKIM signature is intended to
   result in a positive reputation analysis that will obtain deliveries
   that otherwise would not succeed.  Note that the author of the
   message is authorized by the site with the author domain.


* “Backscatter” can result from unauthorized use of the (envelope) sender of a message, where bulk failure notifications go to an address that is not responsible for such unauthorized use.

No optimal or preferred remedy to any of the above is provided by any contemporary technology.

good to include this.



Objectives

The working group will observe the success of current technologies, primarily DKIM, reusing its techniques where applicable, to develop a new technology suite that seeks to address these concerns.  Early experience from the deployment of ARC [RFC 8617] will also be considered.  In particular, this technology will:

Rather:

   The working group will pursue incremental enhancements to DKIM
   and/or DKIM use, where possible.  It will pursue parallel or
   replacement mechanisms only where incremental change is not feasible.



* Provide stronger assurances against unauthorized use of the (envelope) sender, reducing the success of direct domain name misuse and improving the value of delivery status notifications;

The concept of authorized use of the Mail From exists in SPF and nowhere else.  As such, the premise of this objective is problematic.



* Identify message mutations made by any handling agent; and

I suspect this means identification of common mutations, rather than all mutations, since there is no limit to the latter. This text needs elaboration, for clarity and precision.




* Attach annotations in transit of the intended chain of handling to assure accountability for each delivery.

   Attach annotations specifying changes that were made in transit, as
   part of an authenticated chain of handling, to aid accountability of
   a message's handling


The working group will strongly prefer output that, when deployed, does not disturb the deployed ecosystem.

Given the presumption of DKIM replacement, this sentence is surprising.  With the incremental approach I'm advocating, it might be reasonable to retain.


It may, however, through the normal course of evolution, replace technologies such as DKIM and ARC.

The draft specification this work is currently based on requires replacement.



To allow for widespread adoption, proposed solutions are expected to be robust in terms of interoperability and scalability.

I believe there are no IETF specifications lacking this as a requirement.  As such, it isn't meaningful to include, absent some sort of technical details' being required or metrics attached.




Deliverables

The working group will produce multiple documents:

* An overview document describing the problem area and proposed mechanism (Informational)

* One or more documents on implementation of the mechanism (Standards Track)

huh?  A standards track document about implementation?  Seems odd.

I suspect what is meant a /specification/ of the required mechanisms.



* An Applicability Statement guiding implementation during any deployment period, in which interoperability with existing mechanisms needs to be maintained (Standards Track)

Given that 'implementation' is an ambiguous term, differently referring to writing code, versus deploying, I suggest not using the word.  I think the intent here is "guiding deployment and use".


d/

--

Dave Crocker
Brandenburg InternetWorking
bbiw.net
***  bluesky: @dcrocker.bsky.social  ***
mast: @dcrocker@mastodon.social
_______________________________________________
Ietf-dkim mailing list -- ietf-dkim@ietf.org
To unsubscribe send an email to ietf-dkim-le...@ietf.org

Reply via email to