Bron,

I read with interest the proposal published at https://www.ietf.org/id/draft-gondwana-dkim2-motivation-01.html I think it could contribute to the development, with all due respect to DKIM technology, the core approach already deserves it. But there are a few points that should be mentioned that I'm missing.

DKIM provides, like ARC, the ability to verify the authenticity of the sender. But all this verification is useless unless the organisation also has the ability to specify a signature policy. So, the following options:
- NONE: not specified or explicitly stated that there is no signature
- MAY: can be signed
- MUST: all must be signed
- DISCARD: all must be signed and those that are not signed are counterfeit and must be discarded - DISABLED: if it should be complete, there should also be the ability to disable the signature, but I can't think of a reason to do it This in particular is a fairly topical pain that simply cannot be dealt with. I know there is a daily distribution of spam under the headers of existing companies that are sent "like" from the company, but due to the existing gaps between SPF, DKIM and DMARC there is nothing that can be done about it. All past efforts like ADSP and the like have fizzled out, they have been called unnecessary, historic and there is no chance to enforce the policy. DMARC is a solution that supports SPF or DKIM, the recipient can verify the information, but that's about it. At the moment, DKIM relies on DMARC, which accesses either SPF or DKIM, I only need one. Even in DMARC, it is not possible to enforce this signature. So, maybe I'm asking silly, but why is there such a signature anyway? Is it there for decoration, to make it look nice, or is it to fulfil the purpose required by the organisation? And if it is to fulfil this purpose, the organisation should also have a tool to manage it. If it is to have meaning, then the meaning must be quite clear. So do I want to sign or not? If I want to sign, how much do I want to sign, or do I want to sign everything? And if I want to sign everything, do I want to throw away what is unsigned? With these rules, the deployment of cryptographic protection is starting to make sense. The policy must not be part of a separate extension, but part of the RFC for DKIM. Otherwise, it will be overlooked and it will never be possible to enforce its implementation. As a result, it will die just like the ADSP.

In addition to managing the rules for signatures, there is also a need to collect information about the evaluation of signatures and possible errors. The original design for DKIM reporting, which would have included return codes for signature errors, is outdated, did not allow the centralization of the reception of reports for multiple domains. Moreover, almost no one collects the reported reports. Still, I would often welcome information about how many emails were sent and signed with a specific key, how many were evaluated erroneously due to a key material error (public key in DNS), a signature error (content manipulation, unknown algorithm, etc...). At the moment, TLS reports, DMARC reports are available, and although the DKIM report is defined in the extension, no one uses it. This is precisely because it is part of the extension, not DKIM.

The basic ARC error is relying on a trusted first hop. More precisely, the first signed hop. This is designed to verify the validity of the sender and is also a weakness of the whole approach. It would be advisable to avoid a similar trap. In my opinion, it is not important whether the first step on the path is trusted. What is important is whether the first step on the path signs the previous path with its key and announces that the email has actually arrived from this address. This makes it possible to trace where the email left from and potentially block the first unsigned servers.

Last and most important, especially recently, is the support for algorithms. Currently, existing digital signature algorithms are in decline. The RSA algorithm is still currently secure, but for how long. An alternative is Ed25519, where the vast majority of organisations providing software for receiving and sending e-mail have not been able to implement it since 2018 and still do not support it. Although it is faster, more economical in terms of signature etc. Into this situation comes a new wave of cryptography, which should be resistant to attacks led by quantum computers (preferably quantum FPGAs). According to the standards and roadmap in Europe and the USA, there should be a transition to algorithms for key exchange by 2030 and for digital signature by 2035. For critical infrastructure by 2027. At that point, there will be pressure to move from e-mail to another communication channel, although I do not know what the alternative might be.
Standards in this area:
- FIPS 203 ML-KEM (Krystal Cyber, Key Exchange Mechanism, SVP+LWE)
- FIPS 204 ML-DSA (Krystal Dilithium, Digital Signature Algorithm, SVP+LWE)
- FIPS 205 SHL-DSA (Stateless Hash Based DSA, Digital Signature Algorithm, uses stateless hash trees) - draft FIPS 206 FN-DSA (Falcon - Fast-fourier transform over NTRU-lattice based DSA, Digital Signature Algorithm, uses stateless hash trees)
- RFC 8391: XMSS: eXtended Merkle Signature Scheme
- RFC 8554: Leighton-Micali Hash-Based Signatures

In my opinion, only FIPS 205 and FIPS 206 could be usable in the DKIM signature at this point. For use with DKIM, it is advisable to avoid possible problems and use stateless methods for simplification. I can imagine a system using state schemes, but these changes could also have an impact on the whole architecture of the system.

A very good overview of the levels of nervousness, consternation and panic from quantum computers can be found at https://www.gsma.com/newsroom/post-quantum-government-initiatives-by-country-and-region/

And the transition to quantum-resistant mechanisms may be an opportunity to cut into the structure of DKIM as well. In the next few years, RSA and ECC will be fully shut down, so backward compatibility can be forgotten. More specifically, policy definitions will have to be extended to deal with outdated technologies that are potentially dangerous. This is a huge opportunity to do the right thing. But, please, do not implement RSA again. It is a waste of time.

I apologize for this extensive contribution

Jan



Dne 28. 11. 24 v 1:15 Dave Crocker napsal(a):
On 11/21/2024 1:21 AM, Bron Gondwana wrote:
I have made a second pass at it. Text below, or see the raw copy at:

https://notes.ietf.org/YGynIPpYS7yqg5G7ZeSQeA


Summary:

 * As provided, this is an extremely broad and extremely vague
   statement of work.  It continues to sound far more appropriate for
   the IRTF than the IETF, especially absent a concete draft
   specification to take as input.  (It's not as if the IETF hasn't
   accepted charters like this.  But it /is/ as if such working groups
   have typically not fared well. Stated more baldly, "let's charter a
   group and then figure out what we are going to do" has a bad history
   in the IETF.)
 * The draft seems to include a target of 'trust relationships' which
   is an open research topic that DKIM only indirectly relates to,
   except for trusting a signature.
 * IETF Internet Mail handling really only covers a single
   posting/delivery sequence.  It touches on more elaborate sequences,
   but only piecemeal. And draft charter does not really note or deal
   with this difference in scope. So the proffered 'holistic' effort is
   a very considerable increase in scope from something labeled DKIMbis
   or DKIM2.


Detailed comments:


  DKIM2 Draft Charter


    // <https://notes.ietf.org/#Background>Background

Emails often flow indirectly through multiple systems, undergoing redirection, expansion into multiple copies via aliases and mailing lists, as well as rewriting and filtering before eventually arriving at a mailbox or being processed by a receiving software agent.

The opening sentence sets a stage that matches many end-user experience views of email, but misses the basic technical distinction that is the essence of the enhancement being sought. *As described in that sentence, email is delivered more than once, before it is 'finally' delivered.*

So instead, perhaps:

   It is common for an email to go through multiple posting/delivery
   sequences,  before eventually arriving at a 'final' mailbox or being
   processed by a 'final' receiving software agent. Examples of such
   'indirect' flow include redirection through an alis, expansion into
   multiple copies via an alias or a mailing list, as well as rewriting
   and filtering before eventually arriving at a mailbox or being
   processed by a receiving software agent.

I left 'rewriting' in but actually don't know what it refers to, nor why 'filtering' is relevant to DKIM signature survival.

(By the way, I thought that posting from an ESP was also classed as an indirect flow.  Is this not correct?)



DKIM provides a way to detect that the content of a message was not altered between the signing domain and its eventual destination.

This sounds correct but can be misleading, given the 'eventual'.

DKIM was designed to work from one posting to one delivery.  It was never intended to survive the vagaries of what can happen between a delivery and a next posting.  That it sometimes does survive is nice, but was not a design goal.

So what is being sought here is a very basic and very substantial increase in scope for DKIM.



Several attempts have been made to address the issues that arise with alterations made by intermediate systems. For various reasons, these technologies have failed to provide the information to reliably distinguish between legitimate mail, and replay or alteration of messages by bad actors.

DKIM does not attempt to distinguish 'legitimate' mail from mail that is not legitimate.

As for 'replay' it needs to be precisely defined here, especially since there are different views about what it refers to.

As for alteration by bad actors, I was not aware that that is considered a problem for DKIM. In fact I thought it was /not/ a problem.  So this needs to be explained and documented.



    Objectives

This working group will take a holistic approach to the underlying problems of message alterations, error handling, and trust relationships between the systems involved in handling an email - from its inception to arrival at its final destination.

There are problems with error handling?  What are they?  I don't recall seeing discussion of this.  What is the actual work to be done?  What goals for improvement are sought?

Trust relationships are far -- very far -- beyond the scope of DKIM, other than whether a DKIM signature can be trusted.

Given the considerable increase of scope for DKIM and range of topics cited here for improvement, the charter should have a concrete proposal to take as input, if only to provide an example of how one might approach dealing with these topics.



The working group will use the mechanisms of DKIM as a basis, extending and modifying them to solve problems that have been identified in real-world usage.

Since they have been identified, they should be documented here, clearly enough to aid the working group in knowing whether something is in-scope our out of scope.



It will be necessary for any new design to work in parallel with the existing mechanisms, and have a clear upgrade path.

If it is parallel, it is independent.  So I don't know what it means 'to work' in parallel.  And I don't know what it means to not work in parallel.



To achieve its goals, this work requires a wide scope. The design may supersede, modify, or replace many parts of the current email infrastructure and associated reporting mechanisms - while retaining the ability to support existing use-cases.

Oh.  In parallel with existing /email/.  You want to replace the current Internet Mail infrastructure.  Gosh...

Forgive me, but, again, this is something for the IRTF, not the IETF.



    Deliverables

To gain widespread adoption, it is expected that proposed solutions will be tested during the development of specifications. The working group will favor designs which have been tested for interoperability at scale.

This working group will produce multiple documents, at least:

  * A overview document describing the problem area and proposed
    mechanism (informational)
  * One or more documents on implementation of the mechanism
    (standards track)
  * A guide for implementation during the changeover period, in which
    interoperability with existing mechanisms needs to be maintained
    (informational)

This working group will also liaise with the DMARC working group on adding this as a recognised authentication mechanism.


    Milestones

  * WG Formation: Dec 2024
  * Overview document adopted: Jan 2025

You think it will take only one month to complete the overview document, given what time-frames other email work has been taking?



  * Mechanism document draft(s) adopted: Mar 2025

Only two more months for a stable specification effort?  Really?


  * Experiments and updated drafts: Apr 2025 - Nov 2025
  * Implementation guide adopted: Nov 2025
  * Group of documents sent to IESG: Dec 2025


d/

--
--
-- --- ----- -
Jan Dušátko

Tracker number: +420 602 427 840
e-mail:         j...@dusatko.org
GPG:            https://keys.dusatko.org/2E7D58B90FC2867C.asc

_______________________________________________
Ietf-dkim mailing list -- ietf-dkim@ietf.org
To unsubscribe send an email to ietf-dkim-le...@ietf.org

Reply via email to