Re: [dmarc-ietf] indeterminisim of ARC-Seal b= value

Scott Kitterman <sklist@kitterman.com> Tue, 28 March 2017 04:49 UTC

Return-Path: <sklist@kitterman.com>
X-Original-To: dmarc@ietfa.amsl.com
Delivered-To: dmarc@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8595A12987B for <dmarc@ietfa.amsl.com>; Mon, 27 Mar 2017 21:49:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.002
X-Spam-Level:
X-Spam-Status: No, score=-2.002 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=kitterman.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Pc9CRBmJVSGx for <dmarc@ietfa.amsl.com>; Mon, 27 Mar 2017 21:49:21 -0700 (PDT)
Received: from mailout03.controlledmail.com (mailout03.controlledmail.com [IPv6:2607:f0d0:3001:aa::2]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3C908127241 for <dmarc@ietf.org>; Mon, 27 Mar 2017 21:49:21 -0700 (PDT)
Received: from kitterma-e6430.localnet (static-72-81-252-22.bltmmd.fios.verizon.net [72.81.252.22]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mailout03.controlledmail.com (Postfix) with ESMTPSA id 027A5C40293 for <dmarc@ietf.org>; Mon, 27 Mar 2017 23:49:19 -0500 (CDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=kitterman.com; s=201409; t=1490676559; bh=jhUqbbkqe933UHJ6Q/ZyXoT/tDbEfR5qsyKahTxcR6o=; h=From:To:Subject:Date:In-Reply-To:References:From; b=W7tpcywnp2j+PGTJ4UHGElRE5WHfxKEbwU+/ApcoaEVZcHlhb9qG6ppO5OF6HKzvn Q6ytJRX0gvQCw01M71L8t5N9qERRI7IO/BXluzDqV9GufPTuJWVy6GYXWXs8ic4Vdx ZV9RGA8tHkYwZLmGQ6H0QGvOXtIfmvHD/9rRZoH4=
From: Scott Kitterman <sklist@kitterman.com>
To: dmarc@ietf.org
Date: Tue, 28 Mar 2017 00:49:17 -0400
Message-ID: <2978391.eJVbVTHBlo@kitterma-e6430>
User-Agent: KMail/4.13.3 (Linux/3.13.0-112-generic; KDE/4.13.3; x86_64; ; )
In-Reply-To: <CAOj=BA0YKHYrkseR=wwgZn0_GNBKfdL7jmHehgBRzxqGKV6C1g@mail.gmail.com>
References: <CANtLugO_D1Mz_v_341pc5O1mZ7RhOTrFA3+Ob5-onp72+5uRfA@mail.gmail.com> <alpine.OSX.2.20.1703272118210.2533@ary.local> <CAOj=BA0YKHYrkseR=wwgZn0_GNBKfdL7jmHehgBRzxqGKV6C1g@mail.gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dmarc/nDMabGxE3BGVyW9BTh269m6ZsOk>
Subject: Re: [dmarc-ietf] indeterminisim of ARC-Seal b= value
X-BeenThere: dmarc@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "Domain-based Message Authentication, Reporting, and Compliance \(DMARC\)" <dmarc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dmarc>, <mailto:dmarc-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dmarc/>
List-Post: <mailto:dmarc@ietf.org>
List-Help: <mailto:dmarc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dmarc>, <mailto:dmarc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 28 Mar 2017 04:49:32 -0000

What's more difficult to is identify all the ways that things get reordered, 
mangled, etc as they transit the various elements of the mail architecture.  
If you over specify the allowed order, aren't you risking increasing the 
brittleness of the solution.

If test cases are automatically generated, then they are cheap and we 
shouldn't worry about unduly constraining things to keep the number small.  As 
long as, at some point, the test cases are validated against multiple 
implementations, I think it's fine.  If you've got a handful of 
implementations, then the risk of them all having the same bug is pretty low.

In addition to Perl, I'd expect something in Ruby to appear in due course.

Scott K

On Monday, March 27, 2017 07:54:43 PM Peter Goldstein wrote:
> John,
> 
> I'm familiar with the definition of the FWS in the ABNF, as well as the
> generic definition ABNF for message headers.  I'm also aware of the
> challenges with trying to normalize such headers, and how that can impact
> email authentication - breaking forwarded DKIM signatures and such.  But
> none of that is actually relevant here - we are not interested in arbitrary
> messages.
> 
> We are interested in creating a set of valid input messages and ensuring
> that these messages are signed in a consistent, reliable way by any valid
> ARC implementation.  This is an extremely narrow case - so yes, I do think
> the above is basically all it would take to make such signature headers
> identical.  Perhaps I'll be disappointed, but based on the sample messages
> I have on hand from existing implementations, that seems unlikely.
> 
> As for the hypothetical developers who will be adapting DKIM libraries to
> do ARC signing, we've been talking about them since M3AAWG in October
> 2015.  So far they haven't materialized.  Honestly, it's not even clear to
> me that there are that many DKIM libraries out there to adapt.
> 
> Instead we've seen ~5 implementations (Google, AOL, Dkimpy, OpenARC,
> MailerQ), with potential support for implementations in 1-2 additional
> languages (e.g. Perl) probably driven by one or more of the implementers of
> the existing implementations.  It should be relatively easy to coordinate
> such a change across the small number of existing implementations.
> 
> Best,
> 
> Peter
> 
> On Mon, Mar 27, 2017 at 7:21 PM, John R Levine <johnl@taugh.com> wrote:
> > I think tightening up some currently allowed ambiguity in the ARC
> > 
> >> specification is a much simpler and much better solution.  I'm not sure
> >> why
> >> there's such concern about canonicalizing the format and ordering of some
> >> tag/value pairs.
> > 
> > If you think that's all it would take to make signature headers perfectly
> > identical, you will be deeeply disappointed.  (Take a look at FWS in the
> > ABNF and all of the other generic ABNF for message headers.)
> > 
> > I think what we've been saying is that the SMTP mail ecosystem has never
> > tried to make stuff bit-for-bit reproducible, and even if you could hammer
> > on the spec to make super strict rules for one particular header, it's
> > unlikely that the people who are adapting their DKIM code would pay
> > attention.
> > 
> > R's,
> > John