Re: [TLS] Refactoring the negotiation syntax

Ilari Liusvaara <ilariliusvaara@welho.com> Mon, 18 July 2016 16:19 UTC

Return-Path: <ilariliusvaara@welho.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 767C312DA2F for <tls@ietfa.amsl.com>; Mon, 18 Jul 2016 09:19:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.187
X-Spam-Level:
X-Spam-Status: No, score=-3.187 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.287] autolearn=ham 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 4efKnfEMyUgh for <tls@ietfa.amsl.com>; Mon, 18 Jul 2016 09:19:43 -0700 (PDT)
Received: from welho-filter1.welho.com (welho-filter1.welho.com [83.102.41.23]) by ietfa.amsl.com (Postfix) with ESMTP id 3B0CA12DAC1 for <tls@ietf.org>; Mon, 18 Jul 2016 09:19:41 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by welho-filter1.welho.com (Postfix) with ESMTP id 93F47115C; Mon, 18 Jul 2016 19:19:40 +0300 (EEST)
X-Virus-Scanned: Debian amavisd-new at pp.htv.fi
Received: from welho-smtp2.welho.com ([IPv6:::ffff:83.102.41.85]) by localhost (welho-filter1.welho.com [::ffff:83.102.41.23]) (amavisd-new, port 10024) with ESMTP id RaXvimBi5xiY; Mon, 18 Jul 2016 19:19:40 +0300 (EEST)
Received: from LK-Perkele-V2 (87-100-177-32.bb.dnainternet.fi [87.100.177.32]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by welho-smtp2.welho.com (Postfix) with ESMTPSA id 404B721C; Mon, 18 Jul 2016 19:19:40 +0300 (EEST)
Date: Mon, 18 Jul 2016 19:19:36 +0300
From: Ilari Liusvaara <ilariliusvaara@welho.com>
To: Eric Rescorla <ekr@rtfm.com>
Message-ID: <20160718161936.GA13192@LK-Perkele-V2.elisa-laajakaista.fi>
References: <CABcZeBPh+BGtnBb725G+YzZZzdSUh5KtViqh3Z339apSKRpygg@mail.gmail.com> <CAJU8_nXwuyLgNGpyvAsmyAq4e_nR9U0g3vtrj3tNR2tHmSqPkQ@mail.gmail.com> <20160718150750.GA13139@LK-Perkele-V2.elisa-laajakaista.fi> <CABcZeBP3Ufi7_s9GcU4Us2VNYyTW+kGgoLJ1heY1tgcBDiNTKA@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
In-Reply-To: <CABcZeBP3Ufi7_s9GcU4Us2VNYyTW+kGgoLJ1heY1tgcBDiNTKA@mail.gmail.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Sender: ilariliusvaara@welho.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/lFXiIMWKeg7UrIwJA2Wx3RhJXJM>
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Refactoring the negotiation syntax
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <tls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tls>, <mailto:tls-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tls/>
List-Post: <mailto:tls@ietf.org>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tls>, <mailto:tls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 18 Jul 2016 16:19:45 -0000

On Mon, Jul 18, 2016 at 06:03:08PM +0200, Eric Rescorla wrote:
> On Mon, Jul 18, 2016 at 5:07 PM, Ilari Liusvaara <ilariliusvaara@welho.com>
> wrote:
> 
> > I think the end result was insane. The problem that makes it so difficult
> > is that legacy signature types, group types and protection/PRFs interact,
> > so not all supported offers that server has enabled are actually possible
> > to chose.
> >
> 
> Can you say more about this?

I was referring to the scheme in TLS 1.2 and 1.3-14.

The problem is, that even if X is "locally" possible (enabled on both sides,
the algorithm and its "class" is advertised) does not guarantee that X is
"globally" possible (there is actual configuration using X that meets all
TLS constraints and algorithm enables).

> I spent some time mocking up an implementation locally and it was pretty
> clean.
> 
> Perhaps what made it easier is that I did:
> 
> 1. Define new cipher suites that were totally agnostic about the key
> exchange and signature.
> 
> 2. Assume everything was orthogonal except for the PSK/signature/key
> exchange interaction...

Both should eliminate the really nasty parts, as it would mean that
unless server wanted to, any X is "locally" valid is also "globally"
valid. Modulo key exchange types, but those aren't that bad usually.


-Ilari