[Ietf-dkim] Re: New I-D: A Deployment Profile for DKIM2 via Milter Interface
Vittorio <v.moccia@itb.it> Sat, 18 April 2026 14:21 UTC
Return-Path: <v.moccia@itb.it>
X-Original-To: ietf-dkim@mail2.ietf.org
Delivered-To: ietf-dkim@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 79AC6DED4E36 for <ietf-dkim@mail2.ietf.org>; Sat, 18 Apr 2026 07:21:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1776522065; bh=PwoMkIaseIZRl+2mKStDHCXDvBWKTp2h4Ad58NhswgQ=; h=Date:From:To:Subject:Reply-To:In-Reply-To:References; b=xOb6lykr8ZKyrxBADyrFpfLw7WnaT55IGLrn390dL9zOgmra+qUHLd+cmNFZMlXj7 vph6wfPb5EOgkocpUePrUBELp0RasGgv1NKWvYfNPnO1ZaLVm280BIbMIDtUcQbjAS sJP5I5lxM9ogYnt5wiWbfUQCwYRfPPPvOXaMlOpc=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (1024-bit key) header.d=itb.it
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ctXzQ9NFsSTd for <ietf-dkim@mail2.ietf.org>; Sat, 18 Apr 2026 07:21:04 -0700 (PDT)
Received: from dns.itb.it (dns.itb.it [5.134.126.114]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id E8D85DED4E31 for <ietf-dkim@ietf.org>; Sat, 18 Apr 2026 07:21:03 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=itb.it; s=default; t=1776522063; bh=vaI0ILBmFBwc/rWUDeEorWsRvaPLF905C62CPIwOXq0=; h=Date:From:To:Subject:Reply-To:In-Reply-To:References:From; b=e8bXL/813zATsHp671JFxRgZGpA8eWfGZwxQ5d42zenTvb++cvAlUe41xQVH45Ui0 ltaULPKryM3wtftCcO9sMKaC+2N6usvsELZQ1SF1eNjTqh69I8FexBjssMm2xFwQO3 kGPO/Hx+UMCuA/d0WbEACnpayB8iBTwP2ZASCuJs=
Received: from mail.itb.it (localhost [127.0.0.1]) by dns.itb.it (8.18.1/8.18.1/Debian-6) with ESMTP id 63IEL2Qx3534170 for <ietf-dkim@ietf.org>; Sat, 18 Apr 2026 16:21:02 +0200
MIME-Version: 1.0
Date: Sat, 18 Apr 2026 16:21:02 +0200
From: Vittorio <v.moccia@itb.it>
To: Ietf Dkim <ietf-dkim@ietf.org>
Mail-Reply-To: v.moccia@itb.it
In-Reply-To: <wuCfdLBHe44pFAq1@highwayman.com>
References: <f57b6ebedadedc5f6dbdf07e2de5e824@itb.it> <CAL0qLwa9=WkyFF4QmscaG5p93pZso7g7oq5yp1zW=-t1sN9jCA@mail.gmail.com> <7b41024e-8155-4289-8150-54dc4dff1a87@inveigle.net> <CAL0qLwYHXd9b+JTOEtJMnJ4UUEhzh631+stPzpPOepW0vpGv0A@mail.gmail.com> <79ca14fb9642f590200989ecf86e12c5@itb.it> <CAL0qLwawxwJwkhsNtoC_ZYQ9g6w2L+Sy+qLC_eB0XqWP1CCQSA@mail.gmail.com> <f6dedd54b45376041ddbcc6df82aa705@itb.it> <b4bf2c35-9ee6-4818-96c8-75c93c07eccc@app.fastmail.com> <CAL0qLwZR5SGS=g5j_gnKB+D8Y3d0hXrmVSpoZVTqG+ACH8AHdQ@mail.gmail.com> <1d79f5afee229c3ff8c038cdfd290c12@itb.it> <e71d34a3-9d5f-47e2-af95-13927dbca90e@app.fastmail.com> <CACfBKehWCBuxXfR92dAMxJufYVfCWFCGi0zToQo8P6zn5ASVvQ@mail.gmail.com> <b0d6b4372f757076d53f6ef411ebe506@itb.it> <3P+OVUE3OY4pFApj@highwayman.com> <5e4a835b9bd9f60be82e0a25225f052b@itb.it> <zSzfCvEBEl4pFA47@highwayman.com> <d258ad06c0d9a7b64a0cf2cf919d2f07@itb.it> <wuCfdLBHe44pFAq1@highwayman.com>
Message-ID: <d015cb266ecdd7f791a72571d561a8f5@itb.it>
X-Sender: v.moccia@itb.it
Content-Type: text/plain; charset="US-ASCII"; format="flowed"
Content-Transfer-Encoding: 7bit
ARC-Authentication-Results: i=1; dns.itb.it; spf=none; dmarc=none; dkim=none; arc=none
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=itb.it; s=arc1; bh=vaI0ILBmFBwc/rWUDeEorWsRvaPLF905C62CPIwOXq0=; h=from:message-id:date:subject:to; b=Fs16DxTciPXITJStPpzXINnYIoXbWe3SfAuvjkRtmqugsY2mVWyASfeAdk3EwicoNo4EuWAEDo1m5T7MfCzpEkowVOzY5Eq0jjQLY++fqSzidjag/CXKh7h6E3X+b9NP+EnmbVfrS3/Ny5Bw5tJJeFO2qZWqXUnJnmTZ0xfJj9KK0T05QQwMAOKNq4KhMU4LGGgz0iC4J5T4/yo3HFiW9xcnKxZPNL9duMMhCP2KoZYJVoWVPm2WVbjlPFRhlSH8kj0efY1MteT/bmOBot1qxJcaXgwg0cVqOMw6Nuq9Xw7hM5c8LIMaQmF0IDN0xHeztJyOyuz+UWCN11k9V8pQ6A==
ARC-Seal: i=1; a=rsa-sha256; s=arc1; d=itb.it; cv=none; b=KM2JHg/6J5XMIyhceL6tF+BmmN5JEZLDjulmJvOyKWUPHzWoT2sscBP3mM7REyINs6Tth4/u5lD5Mc6BWZTCsqGvuAvn+qLnyN9BI0KZ6e/dKWd1PKwS9paFuFeEnkbbw4e9dtRrOkgy7GtccpIrvn0ECIVvDhCG5GiSqqksvFx+ks/jC4efKjJyZCKA//tRGed3jHShBlJKBNCzItiKk8WsfBVc+CokGk8Ui1FuPlGZG1Hvz6XzVaT8OOAwijacjUxvpcUovoXMRHWACG5pIuPbLA8Yy5wYKgC6pONdY70S0cIOLdBzY/t4u0Mshg26QHAKb5d6kreCxnKa3hEnjA==
X-Signed: DarkARC v0.3
Message-ID-Hash: USM7EUHN775G2WBMGSZIZFKJJ2EVU3WO
X-Message-ID-Hash: USM7EUHN775G2WBMGSZIZFKJJ2EVU3WO
X-MailFrom: v.moccia@itb.it
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-ietf-dkim.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.9rc6
Precedence: list
Reply-To: v.moccia@itb.it
Subject: [Ietf-dkim] Re: New I-D: A Deployment Profile for DKIM2 via Milter Interface
List-Id: IETF DKIM List <ietf-dkim.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf-dkim/xV1zdgHUON1NEuIlnJ6BBVLsGm4>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf-dkim>
List-Help: <mailto:ietf-dkim-request@ietf.org?subject=help>
List-Owner: <mailto:ietf-dkim-owner@ietf.org>
List-Post: <mailto:ietf-dkim@ietf.org>
List-Subscribe: <mailto:ietf-dkim-join@ietf.org>
List-Unsubscribe: <mailto:ietf-dkim-leave@ietf.org>
Richard, We are going in circles. Your attack scenario assumes a node that does not verify the previous signature, which violates the core requirement of hop-by-hop verification in DKIM2-core. Under correct protocol operation the mismatch is detected and the message is rejected before it propagates. You also argue that body recipes help identify a collusive node. But the chain of custody already identifies which domain changed the body hash without requiring reconstruction, without JSON, without state. That is attribution. Reconstruction is a separate property with a separate cost. The -02 draft documents this separation in detail. Regards Vittorio Il 2026-04-18 15:30 Richard Clayton ha scritto: > In message <d258ad06c0d9a7b64a0cf2cf919d2f07@itb.it>, Vittorio > <v.moccia@itb.it> writes > >>> The point of my example was to explain how, when bad people operate a >>> protocol and do not do what they are supposed then good people can >>> draw >>> incorrect conclusions about what has happened >>> In particular my example showed how your proposal for verification >>> drew >>> completely the wrong set of inferences as to what has happened: >>> E concludes that C and D are bad and B is good -- whereas B is the >>> only >>> entity to have altered the body, C and D did not change the body but >>> E >>> incorrectly concludes that they did. >> Bob changes the body, signs with the old bh= and downstream honest >> nodes >> get blamed. But the scenario only works if the next honest node does >> not >> verify Bob's signature against the body it receives. If Charlie >> implements DKIM2 (Core) and verifies hop-by-hop, he detects the bh= >> mismatch at Bob's signature and rejects. > > yes of course > >> If Charlie is a legacy node >> that does not verify, the gap exists equally whether body recipes are >> present or not, a legacy node will not generate recipes either. > > you have changed the topic again ... > > ... but in general if a "legacy node" does not change the body and does > not add any header fields apart from Received (or perhaps some ARC or > DKIM1 signatures) then the issue will be whether or not it has changed > the RFC5321 parameters. Hence, one of those old-fashioned "backup MXs" > that accepts email and forwards it when the main server comes back > online is very likely to do nothing relevant in DKIM2 terms and so it > will not matter that it does not understand DKIM2. > > Large mailbox providers run various delay and forward systems inside > their networks to deal with variations in load. These would also be > "invisible" so far as DKIM2 receivers thereafter were concerned > >> The remaining case is that Charlie is collusive. But a collusive node >> can forge recipes just as easily as it can forge bh= values. > > yes they can .. but it is possible for the ultimate receiver to > determine the last machine in the chain which did any forgery and they > can then cross that machine off their Christmas card list (or take any > other action they deem appropriate going forward) > >> Body >> recipes do not help when the adversary controls a node in the chain, > > No they do and I have just explained (yet again) why > >> they only help when all nodes are honest and cooperating, which is the >> same trust assumption you criticise in ARC. > > my criticism of ARC is far wider than that > >>> they will not be -- the devices you are concerned about operate at >>> the >>> start and end of delivery paths > > [we're now on the "null recipe" topic] > >> In practice, the topology is *not* that clean. Enterprise security >> gateways, DLP systems and antivirus proxies routinely sit between MX >> and >> mailbox, not at the edge. > > they are at "the edge" from the point of view of the wider Internet, > the > clue is in the adjective "Enterprise" -- these devices are within the > network of the entity receiving email from all and sundry. > > That entity has purchased them and has contracts with the suppliers > which will provide details of the relevant signing keys which can be > provided to relevant MTAs with the instruction that they are to be > unconditionally trusted. > > - -- > richard @ highwayman . com "Nothing seems the > same > Still you never see the change from day to > day > And no-one notices the customs slip > away" >
- [Ietf-dkim] New I-D: A Deployment Profile for DKI… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Steffen Nurpmeso
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… John R. Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Al Iverson
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Richard Clayton
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Richard Clayton
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Murray S. Kucherawy
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Inveigle.net
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Murray S. Kucherawy
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… John Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Bron Gondwana
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… John Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Richard Clayton
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Bron Gondwana
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Inveigle.net
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Bron Gondwana
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Richard Clayton
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Emanuel Schorsch
- [Ietf-dkim] Re: body modifications, was =?utf-8?q… John Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Hannah Stern
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Inveigle.net
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… John Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Hannah Stern
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Pete Resnick
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Hannah Stern
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Murray S. Kucherawy
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… John Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Hannah Stern
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Allen Robinson
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Murray S. Kucherawy
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Richard Clayton
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Richard Clayton
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Inveigle.net
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… John Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Richard Clayton
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… John Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Hannah Stern
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Bron Gondwana
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Murray S. Kucherawy
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Hannah Stern
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… John Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Bron Gondwana
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Inveigle.net
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Vittorio
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Wei Chuang
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Vittorio
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Vittorio
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Richard Clayton
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … G.W. Haywood
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Wei Chuang
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Richard Clayton
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Bron Gondwana
- [Ietf-dkim] Re: authorized modifiers, was DKIM2 a… John Levine
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Wei Chuang
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Wei Chuang
- [Ietf-dkim] Re: authorized modifiers, was DKIM2 a… John R Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Hannah Stern
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Emanuel Schorsch
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Emanuel Schorsch
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Wei Chuang
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … G.W. Haywood
- [Ietf-dkim] Re: authorized modifiers, was DKIM2 a… Barry Leiba
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Wei Chuang
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … John Levine
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Vittorio
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Hannah Stern
- [Ietf-dkim] DKIM2 and DMARC (was Re: Re: New I-D:… Wei Chuang
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Todd Herr
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Hannah Stern
- [Ietf-dkim] Re: DKIM2 and DMARC (was Re: Re: New … Bron Gondwana
- [Ietf-dkim] Re: New I-D: A Deployment Profile for… Hannah Stern