Re: [dmarc-ietf] DMARC ATPS Interop Note

Hector Santos <hsantos@isdg.net> Mon, 11 May 2015 14:05 UTC

Return-Path: <hsantos@isdg.net>
X-Original-To: dmarc@ietfa.amsl.com
Delivered-To: dmarc@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 00E951A8942 for <dmarc@ietfa.amsl.com>; Mon, 11 May 2015 07:05:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -100.537
X-Spam-Level:
X-Spam-Status: No, score=-100.537 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HELO_MISMATCH_COM=0.553, HOST_MISMATCH_NET=0.311, J_CHICKENPOX_34=0.6, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=no
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 ln39JMYkODbS for <dmarc@ietfa.amsl.com>; Mon, 11 May 2015 07:05:06 -0700 (PDT)
Received: from groups.winserver.com (ftp.catinthebox.net [208.247.131.9]) by ietfa.amsl.com (Postfix) with ESMTP id 0DF401A8928 for <dmarc@ietf.org>; Mon, 11 May 2015 07:05:05 -0700 (PDT)
DKIM-Signature: v=1; d=isdg.net; s=tms1; a=rsa-sha1; c=simple/relaxed; l=7549; t=1431353095; h=Received:Received: Received:Received:Message-ID:Date:From:Organization:To:Subject: List-ID; bh=KA3hk9EJfeFBE+4GENJ5jTZczjY=; b=vczdg9vghKcoD+hTBYH1 /tdrInjSBuLGRO/l48fpqSEomJ7xzHGhmigmERrxvtJRinn3XYjfrV8uw6yJvSph si67arqdNVh1OURi8sbmKvJrDk2Aa941kP1n0uZCegqb2D7PA8C9U8PMbS8icvB4 lsZBXCt1zw65cXIL6vxKhXU=
Received: by winserver.com (Wildcat! SMTP Router v7.0.454.4) for dmarc@ietf.org; Mon, 11 May 2015 10:04:55 -0400
Authentication-Results: dkim.winserver.com; dkim=pass header.d=beta.winserver.com header.s=tms1 header.i=beta.winserver.com; adsp=pass policy=all author.d=isdg.net asl.d=beta.winserver.com; dmarc=pass policy=none author.d=isdg.net signer.d=beta.winserver.com (atps signer);
Received: from beta.winserver.com (hector.wildcatblog.com [208.247.131.23]) by winserver.com (Wildcat! SMTP v7.0.454.4) with ESMTP id 768116610.1.2884; Mon, 11 May 2015 10:04:54 -0400
DKIM-Signature: v=1; d=beta.winserver.com; s=tms1; a=rsa-sha256; c=simple/relaxed; l=7549; t=1431352816; h=Received:Received: Message-ID:Date:From:Organization:To:Subject:List-ID; bh=HQNdbGq kkZeb4NEZ66SmO5IAC5GKzSFqTcsRnqiUI6g=; b=dWmCSdmaniInd7sdk5ttsOG 3GqzfuV71pAY9BHsz9uZqmxsYtuedEi/KGzhwqP36jFQw10+c8zBg8JAnbGkSNhx pC7dDob3SRqnBorUy6bxMRgRpcJIa+wEua4mXNMsUZXc/5Ij2IDR5TYgZBPH+BzA SoSCLvqQ0YZykfIxmqiw=
Received: by beta.winserver.com (Wildcat! SMTP Router v7.0.454.4) for dmarc@ietf.org; Mon, 11 May 2015 10:00:16 -0400
Received: from [192.168.1.2] ([99.121.4.27]) by beta.winserver.com (Wildcat! SMTP v7.0.454.4) with ESMTP id 3655352395.9.12888; Mon, 11 May 2015 10:00:15 -0400
Message-ID: <5550B704.4070305@isdg.net>
Date: Mon, 11 May 2015 10:04:52 -0400
From: Hector Santos <hsantos@isdg.net>
Organization: Santronics Software, Inc.
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0
MIME-Version: 1.0
To: "Murray S. Kucherawy" <superuser@gmail.com>, Douglas Otis <doug.mtview@gmail.com>
References: <554BC30F.1020107@isdg.net> <4087F3E9-540E-45C7-9AE1-2B71FC90CB5F@kitterman.com> <CAL0qLwbZo1=xg_AWNT550H25M64Hj9Bg+5WPsNhd4SFV4j1xnQ@mail.gmail.com> <554BE12A.7010606@isdg.net> <26011.1431106173@vindemiatrix.encs.concordia.ca> <554D3D1E.9050509@isdg.net> <27522.1431236028@vindemiatrix.encs.concordia.ca> <CAL0qLwYeWuovoCnK-Fo9PMajmAgRsxjpXav=ZuDL2A7jm2YLuw@mail.gmail.com> <14447.1431266709@vindemiatrix.encs.concordia.ca> <CAL0qLwbE_30cYWyRXCXkFbw4EMjwX-cy=48+o+c4qyrJY4LeLA@mail.gmail.com> <CAL0qLwbH6qTWhWVjpFAKmYU_fTdx8Hyy1PrE0ztLvG=3xmP_TA@mail.gmail.com> <554FEBB4.5050805@gmail.com> <CAL0qLwaVJY8eecoXV_Ctsxu5D5k+K6sg0dsQZtxafA22s4N1Vg@mail.gmail.com>
In-Reply-To: <CAL0qLwaVJY8eecoXV_Ctsxu5D5k+K6sg0dsQZtxafA22s4N1Vg@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/dmarc/hqTC-jNpQ3LO4OYGFb4KBgRDM2s>
Cc: "dmarc@ietf.org" <dmarc@ietf.org>
Subject: Re: [dmarc-ietf] DMARC ATPS Interop Note
X-BeenThere: dmarc@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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: Mon, 11 May 2015 14:05:14 -0000

Murray, a clarification about DSAP.

Of late, I've been using the term DSAP as a general methodology for a 
complete DKIM Signature Authorization Protocol.  DSAP, TPA, ATPS are 
all the basic ideas.  We need a generic term since there are many with 
all the same basic functional principles, but in different syntax 
languages.

However, for the record, there was a 2006 DSAP I-D proposal

    https://tools.ietf.org/html/draft-santos-dkim-dsap-00

that I believe you referred to.  I want to make a clarification above it.

In general, DSAP covered the same policy ideas as with SSP using a 
different language.  SSP covered these polices:

    o=?  WEAK (signature optional, no third party)
    o=~  NEUTRAL (signature optional, 3rd party allowed)
    o=-  STRONG  (signature required, 3rd party allowed)
    o=!  EXCLUSIVE (signature required, no 3rd party)
    o=.  NEVER  (no mail expected)
    o=^  USER

DSAP was more about the protocol methodology covering all the possible 
signature boundary conditions in the Protocol State Machine for two 
signatures; combinations of 1st party with a 3rd party, including the 
lack of the signatures. It described this using two tags:

    4.2.  DSAP Tags: op=<signing-policy>; 3p=<signing-policy>;

    From the viewpoint of the verifier, when a message is received, there
    are two basic pieces of signature information to be of interest when
    analyzing the transaction:

    o  Original Party Signatures (OP)

       *  never expected
       *  always expected
       *  optional

    o  3rd Party Signatures (3P)

       *  never expected
       *  always expected
       *  optional

    When the two signature types are combined, the possible policies are
    listed in this following table:

     +=================================================================+
     | op=         | 3p=        | Domain Policy Semantics              |
     |=================================================================|
     | empty       | empty      | No mail expected                     |
     |-----------------------------------------------------------------|
     | never       | never      | No signing expected                  |
     | never       | always     | Only 3P signing expected             |
     | never       | optional   | Only 3P signing optional             |
     |-----------------------------------------------------------------|
     | always      | never      | OP signature expected                |
     | always      | always     | Both parties expected                |
     | always      | optional   | OP expected, 3P may sign             |
     |-----------------------------------------------------------------|
     | optional    | never      | Only OP signing expected             |
     | optional    | always     | OP expected, 3P expected             |
     | optional    | optional   | Both parties may sign.               |
     +-----------------------------------------------------------------+

                   Figure 4: DSAP Message Signing Policies


But for 3rd party authorization, without a complete satisfactory DNS 
way to do this and a desire to not do another DNS call, a minimal 
smaller scale method was proposed using a "3pl=" record tag:

    4.3.  DSAP Tag; 3pl=<dom-list>;

    The 3pl= is an optional tag that defines a list of 3rd party domains
    who are allowed to DKIM sign the message as a 3rd party signer.  This
    tag is ignored unless 3rd party signing policy is expected or
    optional (3p=always or 3p=optional).

    <dom-list> is a comma delimited list of domain names.

    Example:

    3pl=isp.com,outsource.com,mailinglist.com;


When Doug introduced the TPA hashing idea, it fit the need for larger 
scale needs but it was written too complex.  When you improved the TPA 
idea with ATPS using simple TRUE/FALSE (record exist) semantics and 
also using the same TPA hashing ideas, I implemented ATPS instead.  It 
was just simpler and easier to code, test and explore.

So my implementation of the DKIM policy experiment and exploration was 
with the small scale "3pl" tag now called "asl" for Allowed Signer 
List and the ATPS support for the larger scale DNS lookup:

     [atps=y;] [asl=resigner-domains;]

That was made off ADSP and now off the DMARC record.

It works. DMARC extensions are supported at implementations from a 
parsing standpoint. They won't abort. And for ASL, ATPS supported 
receivers, it works.  As long as you can manage your DNS records, it 
works fine.

I think perhaps what we need to do is step back and think about what 
DMARC should be doing as far as DMARC extension tags to make this all 
optional and available.

I like the SAM idea ("Signer Authorization Method"), Doug called it 
Specific Advisory Method, so a tag that defines the method a signer 
may wish to authorize and I think we have two basic ideas:

    sam=atps      dns lookup (default)
    sam=dsfs      dual signature

I say atps should be default because its the simplest to implement 
without changing dkim engines.

I don't think you should push for Dual Sign method only.

--
HLS

On 5/11/2015 1:08 AM, Murray S. Kucherawy wrote:
> On Sun, May 10, 2015 at 4:37 PM, Douglas Otis <doug.mtview@gmail.com
> <mailto:doug.mtview@gmail.com>> wrote:
>
>     ATPS included an onerous task for any third-party service
>     likely used on a gratis basis. Each third-party was expected
>     to learn specific hash algorithms of each From domain.  A
>     difficult process on top of changing their structure of DKIM
>     signatures repeated tens of thousands of times for each
>     different first party domain. In addition, reputations based
>     on the third-party relationship could not be leveraged
>     because of the optional hashing.
>
>
> I continue to find this repeated claim specious at best.
>
> Section 7 of ATPS describes the structure of the experiment and
> invites feedback from anyone who tries it.  Apart from Hector's recent
> declaration and one hobby user of my open source implementation that
> enabled it, there has been no feedback from the community at large
> that anyone has tried it or any variant of it.
>
> Given the pain point that a widely adopted authorized third-party
> signatures scheme (in general, not just RFC6541) would solve, one
> would think we'd have heard something in this regard in the last three
> years.  Nothing beyond what I just mentioned has materialized.
>
> If you intend to claim that this is because of specific aspects in
> RFC6541 of how the DNS records are generated, I suggest you consider
> that even small operators don't have a problem computing hashes or
> populating DNS zones, because computers are good at automating
> things.  Even if they did see those things as burdens, such operators
> tend to be the sort to provide that kind of feedback even about a
> protocol they ultimately can't use.  Seriously, what person in the
> email space that you've met in the last N years would not take an
> opportunity to provide feedback, constructive or otherwise?  We are a
> rather opinionated bunch and love the sounds of our own voices.
> Someone would've said something by now.  But it hasn't happened.
>
> TPA has existed even longer than ATPS has, and it has enjoyed
> similarly goose-egg-shaped amounts of adoption.  DSAP was around even
> before that, and the story is the same.  What they all have in common
> is that they are not even close to something that serious operators
> would be willing to try.  They are plagued by -- you guessed it -- the
> registration problem.
>
> Absent a change in that posture by the community at large, this is
> manifestly a dead end, and we really, seriously, need to stop burning
> any more of our precious cycles on it.
>
> -MSK
>
>
> _______________________________________________
> dmarc mailing list
> dmarc@ietf.org
> https://www.ietf.org/mailman/listinfo/dmarc
>

-- 
HLS