Re: [openpgp] AEAD Chunk Size

"Neal H. Walfield" <neal@walfield.org> Wed, 10 April 2019 13:03 UTC

Return-Path: <neal@walfield.org>
X-Original-To: openpgp@ietfa.amsl.com
Delivered-To: openpgp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 52E7612012A for <openpgp@ietfa.amsl.com>; Wed, 10 Apr 2019 06:03:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=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 40qZAzGV4oMy for <openpgp@ietfa.amsl.com>; Wed, 10 Apr 2019 06:03:50 -0700 (PDT)
Received: from mail.dasr.de (mail.dasr.de [217.69.77.164]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7093F1202DB for <openpgp@ietf.org>; Wed, 10 Apr 2019 06:03:50 -0700 (PDT)
Received: from p57b22663.dip0.t-ipconnect.de ([87.178.38.99] helo=grit.huenfield.org.walfield.org) by mail.dasr.de with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.86_2) (envelope-from <neal@walfield.org>) id 1hECtE-0004bj-1m; Wed, 10 Apr 2019 13:03:44 +0000
Date: Wed, 10 Apr 2019 15:03:43 +0200
Message-ID: <87d0lu2es0.wl-neal@walfield.org>
From: "Neal H. Walfield" <neal@walfield.org>
To: Jon Callas <joncallas=40icloud.com@dmarc.ietf.org>
Cc: "\"Conrado P. L. Gouvêa\"" <conradoplg@gmail.com>, "openpgp@ietf.org" <openpgp@ietf.org>, Justus Winter <justuswinter@gmail.com>, Jon Callas <joncallas@icloud.com>, Peter Gutmann <pgut001@cs.auckland.ac.nz>
In-Reply-To: <DE54BC71-696D-4213-987E-42A548218492@icloud.com>
References: <87mumh33nc.wl-neal@walfield.org> <878swzp4fb.fsf@europa.jade-hamburg.de> <E65F6E9D-8B0B-466D-936B-E8852F26E1FF@icloud.com> <87zhpd21d3.wl-neal@walfield.org> <D9D1ACD4-4944-495C-A058-1AA5D25FF8CF@icloud.com> <1554001112803.75759@cs.auckland.ac.nz> <CAHTptW_zrrSQtzyw5-_ThF9FqYE3hBzvSxDfKtvbZa0KaGW4-w@mail.gmail.com> <DE54BC71-696D-4213-987E-42A548218492@icloud.com>
User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM/1.14.9 (Gojō) APEL/10.8 EasyPG/1.0.0 Emacs/24.5 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO)
MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue")
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: base64
Archived-At: <https://mailarchive.ietf.org/arch/msg/openpgp/ovbchvt-9_64S5F6BJj94cdFAhQ>
Subject: Re: [openpgp] AEAD Chunk Size
X-BeenThere: openpgp@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Ongoing discussion of OpenPGP issues." <openpgp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/openpgp>, <mailto:openpgp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/openpgp/>
List-Post: <mailto:openpgp@ietf.org>
List-Help: <mailto:openpgp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/openpgp>, <mailto:openpgp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Apr 2019 13:03:53 -0000

On Tue, 02 Apr 2019 19:42:50 +0200,
Jon Callas wrote:
> > On Apr 2, 2019, at 6:12 AM, Conrado P. L. Gouvêa <conradoplg@gmail.com> wrote:
> > 
> > On Sat, Mar 30, 2019 at 11:59 PM Peter Gutmann
> > <pgut001@cs.auckland.ac.nz> wrote:
> >> I'm not saying remove it, just get some data to support making a decision in
> >> some way.  In particular, AEAD is a good thing, but there's no evidence that
> >> chunking with AEAD, which complicates things greatly, is useful or necessary.
> >> 
> > 
> > I know you're tired of hearing about it... but EFail.
> > Even if PGP used AEAD, but without chunks, EFail would probably still
> > happen. If the AEAD data is arbitrarly large, then implementations
> > would be forced to provide a streaming API that discloses
> > unauthenticated plaintext, and the same thing would happen.
> 
> No, no, it’s okay, because this why I was saying, “Let’s not talk about Efail.” The AEAD discussion is good, and there are many reasons to upgrade to allow its use. If one of those reasons is complex, then having that be the major reason means that there’s a counter-argument that is essentially, “if this isn’t the silver bullet claimed, then maybe we shouldn’t do it,” and worse, it’s a completely reasonable counter-argument. 

I agree that EFail is not the only reason to consider AEAD.  And, I
think that the complexity counter argument is a convincing one.  Like
Ferguson, Schneier and Kohno said in "Cryptography Engineering":

  The more complex a system, the more likely it has security problems.
  Indeed, we like to say that complexity is the worst enemy of
  security.

But, once we decide that we want AEAD, I think it is fair to apply the
same counter argument to any proposals.

In our case, parameterizing the chunk size adds complexity.  It
standardizes not a single algorithm, but a family of algorithms.  I've
already shown how this parameterization can be abused.  But whether
you think my attack is relevant or not, I think we agree that the
burden of justification ought to be on those defending the complexity,
i.e., allow multiple chunk sizes, or allow large chunk sizes.

Currently, I think the only extant argument in favor of large chunks
is your argument in <BFC5E4EE-01D8-4552-BBB0-F6B09D511160@icloud.com>
or a variant thereof:

  I believe that the more you believe tight security is necessary, then
  the more *willing* you ought to be to allow people with special needs
  to go off in the weeds on their own.

But, we don't prohibit people from experimenting!  That's why we have
a private name space.  If someone really has such special needs, they
can use, e.g., Tag 61, for an AEAD variant with large chunks.  If it
turns out those needs are not so special, we can standardize that
variant.

(Tobias has proposed foregoing chunking.  That's a different argument,
and one that I think is not interesting for us since it prevents
streaming.)

If there are other unaddressed arguments in favor of large chunk
sizes, please state them.  If I missed them, please repeat them and
accept my apologies.

Thanks!