Re: [TLS] PR#28: Converting cTLS to QUIC-style varints

Martin Thomson <> Wed, 07 October 2020 00:24 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 246A73A1578 for <>; Tue, 6 Oct 2020 17:24:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Status: No, score=-2.001 tagged_above=-999 required=5 tests=[BAD_CREDIT=0.1, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key) header.b=FoPbu8wu; dkim=pass (2048-bit key) header.b=IH1HpXop
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 0yMOAQRhJcGm for <>; Tue, 6 Oct 2020 17:24:10 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 6E0FC3A1576 for <>; Tue, 6 Oct 2020 17:24:10 -0700 (PDT)
Received: from compute1.internal (compute1.nyi.internal []) by mailout.west.internal (Postfix) with ESMTP id A9B58A22 for <>; Tue, 6 Oct 2020 20:24:09 -0400 (EDT)
Received: from imap10 ([]) by compute1.internal (MEProxy); Tue, 06 Oct 2020 20:24:09 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; h=mime-version:message-id:in-reply-to:references:date:from:to :subject:content-type; s=fm3; bh=KvPRIbiaDpmvKoOdfPA00j28zfpWUXZ FiYmiUCy41Vw=; b=FoPbu8wuRxVnJ30p4X17sNaPvDCTR78k4JTl7psDHI2Twg5 y7xfnrARow+V0rJa34h5TV3AcB/YPNFITm9HV0au6AV+3Pk5JKjAAkVia5JclyMm dmVP4n1s6TwK8DFpIieoBCl/yoBAguaYZeotnM3foFWw8iuYrMChhv783aFqeYOU xvHYHc6PIg9soniyN98xxAy9BwDGq/56rSQE+t4aFkM4uH5xCDesWiBnfdhG0qbJ i5oF/3pidFn4BFoM3DgGi/nB0PXdiIcCXOUjY8+8+m9Ubb66wDd50DNmSK9VbvXM m6O38N7Dk9YEGcZi5x74se0D7sHj3GHbGva1XyQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=KvPRIb iaDpmvKoOdfPA00j28zfpWUXZFiYmiUCy41Vw=; b=IH1HpXopvQYUmDlGiX8a4Q m6EutSs4uAjx5oiUKdrazcAm6IJwKRGH+1l46HBTP+Guy0cyjJ6d5h6IFxDAiOoP Qsl2FrMAan+5lmF9Qr7FNcLQiwvcV9DnAQlNIwsH8NkZlgn+CsS8hAQha2ZFNqSb MLwgQHdT380uqHY7MnvwbHxU6WGB9ilkCck91UblOmm1O5k32jpwo2eLqC6FXN2H Rk0m7nBwfpMcWb32VRVgF4dbG4IXUfGBNMI4Be0Y7YgN6rmhcJifqGgJER++9A0J uj2H3oEAr7HCYhhLw/V/CyDNKNCW/cB7AnyXtfrGREhs5YYrnq/njuK3tygW9spw ==
X-ME-Sender: <xms:qAp9X6SOX1iF_GhlmNc7fpqFUF5C6sTStFzpAA8P_K2q9cARKLRMHw> <xme:qAp9X_wv_XmAAFNp8K234iOC6RirvjgamtFYAia1JR9cySEzqLd0cCnhLyqhk33ud CjxN6HTMZ53RwpQwwQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedujedrgeehgdeffecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecunecujfgurhepofgfggfkjghffffhvffutgesthdtre dtreertdenucfhrhhomhepfdforghrthhinhcuvfhhohhmshhonhdfuceomhhtsehlohif vghnthhrohhphidrnhgvtheqnecuggftrfgrthhtvghrnhepkeetueeikedtkeelfeekve fhkeffvedvvefgkefgleeugfdvjeejgeffieegtdejnecuvehluhhsthgvrhfuihiivgep tdenucfrrghrrghmpehmrghilhhfrhhomhepmhhtsehlohifvghnthhrohhphidrnhgvth
X-ME-Proxy: <xmx:qAp9X30umiWy9ecVYp9nMGAQko0vsFG9yvgY2_xm4NuekCK_MaWbIw> <xmx:qAp9X2CFiQ5rLSFgOBMkhnaDWJuI3HUftK3_bssFBeSylOMswV5aHA> <xmx:qAp9XzjOJS9vgP7vRPl0UBtn_sP6Pb6GzqQFD-uwkiBdvcvMmf1miA> <xmx:qQp9X-up7cMQwLZYY9E1qF156Ce_Q24S4eboWQd4Y6jeUCyHbgpXCg>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 75A1C20066; Tue, 6 Oct 2020 20:24:08 -0400 (EDT)
X-Mailer: Webmail Interface
User-Agent: Cyrus-JMAP/3.3.0-407-g461656c-fm-20201004.001-g461656c6
Mime-Version: 1.0
Message-Id: <>
In-Reply-To: <>
References: <> <> <> <> <> <> <> <> <>
Date: Wed, 07 Oct 2020 11:23:48 +1100
From: "Martin Thomson" <>
Content-Type: text/plain
Archived-At: <>
Subject: Re: [TLS] PR#28: Converting cTLS to QUIC-style varints
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 07 Oct 2020 00:24:12 -0000

On Wed, Oct 7, 2020, at 04:12, Christian Huitema wrote:
> * Receiver side: receive the message, save it, parse and process, and
> when it is time to verify the signature go back to the original message
> and check the signature.

I think that you mean:

receive the message, check the signature, then parse and process if that passes

> If we do that, then there is no reason to mandate minimal length
> encoding. And TLS already does that. For example, we do not reorder
> extensions according to some canonical rules before placing them in the
> transcript.

This I agree with.  But cTLS doesn't work that way because the signature - such as it is - applies at the next layer, which appears after the encoding is erased.  And that is important here.  The encoding we're talking about is a compression function only.  Not having a canonical form means adding an inefficiency, but it has little bearing on the process you describe, which would be modified to:

receive the message, decompress the message, check the signature, then parse and process if that passes

In TLS we don't follow that ordering either because we all routinely process tons of stuff before we get to the Finished/CertificateVerify.  Having those at the end makes a ton of sense, for a variety of reasons, but it does mean that we build a protocol on credit.  And we have plenty of experience, I hope, in dealing with bad credit in TLS.