Re: [TLS] Proposed Change to Certificate message (#654)

Nick Sullivan <nicholas.sullivan@gmail.com> Fri, 23 September 2016 23:05 UTC

Return-Path: <nicholas.sullivan@gmail.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 F084A12B65D for <tls@ietfa.amsl.com>; Fri, 23 Sep 2016 16:05:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level:
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 vMfdGwHXhuz4 for <tls@ietfa.amsl.com>; Fri, 23 Sep 2016 16:05:23 -0700 (PDT)
Received: from mail-it0-x231.google.com (mail-it0-x231.google.com [IPv6:2607:f8b0:4001:c0b::231]) (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 81F2312B5B0 for <TLS@ietf.org>; Fri, 23 Sep 2016 16:05:23 -0700 (PDT)
Received: by mail-it0-x231.google.com with SMTP id r192so28324935ita.0 for <TLS@ietf.org>; Fri, 23 Sep 2016 16:05:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=OQm/Qm5nDhyKnfnti2/kZ4tYuW3vAekF1TcBq77o7mI=; b=0B53sA93gEV3dEOn61i+18SIdfbI7OWTQ9CbAMFHDhFJnZIg0UM/X4COfJZj7Wa8Jv 7Lk/WS3XBykp4b1agVsJ1vj3HN6L2BmEXPX7KlHSbZt/mco+DKKdq/4yffYRaQupmCMM 5RcWA3kOGHFJUgMmRURLPrjdypHXWTHAjJp71j1iNRG/2rY9AsuLZFKCDto8TxKUKnNP YcNVcvgHtdxZ8TPNR1dj7S3GK+0snuJvbAoSGDz62cXIffI2dqZ039kv+abvQKOZJ3zz 49bYgkwh/VpjBglpp0Qv+HeCvA6D4rRYaaBManSyxPkgnDNR9IgVCOIIKbAHB8+C9M5q soag==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=OQm/Qm5nDhyKnfnti2/kZ4tYuW3vAekF1TcBq77o7mI=; b=A/JwmEdoP7AWfbD+l+ek5nCr6fXgyx//4GgfG89TZgXeYr8S8OlTU36e5OL6k9kxs5 fNQROsvwoqgea597tHS0YppV2oqGLjxR1BE4giUj//tkhMkrt7WDApS/kVXGd9J+JTKu VJl0vuhySD7KvuKVrW7kBxg4O07d7ht5ncZhcdufAJZg15SV5L1YkqdXPhUiCf1m8fok UdNBtJzx35VIKKHp2ElEtcVmueQSshfpnVwhOUq7DrectYdocD4bLaaHXV3pbFgDyesQ 76Dprd7VsTtO4qPR498BrPOkhu6kxnOndx/vsgKBe6C94/VAzwsXh4ajwqI/v3V02DIe 9Sug==
X-Gm-Message-State: AA6/9RnDsw46ebRrWc/zl2H6pqdUf+jYVtcZuUcreiJUX5Uz2sue64QYcJO2dumE7L0wLmSBF+xIX3EouO+X5Q==
X-Received: by 10.36.47.6 with SMTP id j6mr6097291itj.82.1474671922395; Fri, 23 Sep 2016 16:05:22 -0700 (PDT)
MIME-Version: 1.0
References: <CAOjisRyDx0Wa5tcFT3gN496jhf-AjLfDH4JNN+w70r8jBsxt5g@mail.gmail.com> <CAFewVt4SOTU18xj45i_Eox2g5zaZyTyD6SP86cjBciXpuC+sDw@mail.gmail.com> <CAOjisRwcR3NUCnCsA+kauGNiOz-TAezskYzM8g3V9nxUCFoaWw@mail.gmail.com> <CABcZeBPOsBXv3yCoVrQmfM99JvaD0P=7Wy0EG5wY_d=dTH_Oug@mail.gmail.com> <CAAZdMacihp1pxk76UY2n66ZqDvcOeqS8vm0n3mObkSBVY0PwBg@mail.gmail.com>
In-Reply-To: <CAAZdMacihp1pxk76UY2n66ZqDvcOeqS8vm0n3mObkSBVY0PwBg@mail.gmail.com>
From: Nick Sullivan <nicholas.sullivan@gmail.com>
Date: Fri, 23 Sep 2016 23:05:10 +0000
Message-ID: <CAOjisRwHUSEthSt6Tt6hYRRnhW6snWiZrCS+sN17VnCRz=e5ow@mail.gmail.com>
To: Victor Vasiliev <vasilvv@google.com>, Eric Rescorla <ekr@rtfm.com>
Content-Type: multipart/alternative; boundary="001a1144130c19def2053d34d028"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/N-1moFAdKSuOHKpmGNA14lfmBS4>
Cc: "tls@ietf.org" <TLS@ietf.org>
Subject: Re: [TLS] Proposed Change to Certificate message (#654)
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: Fri, 23 Sep 2016 23:05:26 -0000

Thanks for the suggestions. I've restructured my PR to include an array of
SingleCertificate objects in the Certificate structure.

Ilari: I agree that the post-hanshake auth mechanism as currently described
is a bit lacking, but I'd like to sort this out first.

Victor: For cached_info, OCSP responses are relatively long-lived and the
server should know whether or not a cached OCSP is close to expiration, so
cached_info is still useful, but I agree that this makes it less useful.


On Fri, Sep 23, 2016 at 2:53 PM Victor Vasiliev <vasilvv@google.com> wrote:

> The version where each certificate gets its own extension sounds like a
> step in the right direction.
>
> One concern I have is the way this would interact with cached_info
> extension.  Currently, it allows the entire Certificate message to be
> cached -- which just meant the entire chain in 1.2.  With the suggested
> change, this makes less sense: while you still want to cache SCTs, this
> might be much less desirable for OCSP responses.
>
> On Fri, Sep 23, 2016 at 3:49 PM, Eric Rescorla <ekr@rtfm.com> wrote:
>
>> This seems like a reasonable direction.
>>
>> -Ekr
>>
>>
>> On Thu, Sep 22, 2016 at 7:26 PM, Nick Sullivan <
>> nicholas.sullivan@gmail.com> wrote:
>>
>>> This suggestion makes sense to me.
>>>
>>> Both the SCT and OCSP v2 extension allow for multiple objects in order
>>> to cover multiple certificates in a chain, but your suggestion makes the
>>> grouping much more explicit and obviates the need for OCSPv2. I'd
>>> definitely consider a modification like this.
>>>
>>> Nick
>>>
>>> On Thu, Sep 22, 2016 at 7:17 PM Brian Smith <brian@briansmith.org>
>>> wrote:
>>>
>>>> Nick Sullivan <nicholas.sullivan@gmail.com> wrote:
>>>>
>>>>> PR: https://github.com/tlswg/tls13-spec/pull/654
>>>>>
>>>>
>>>>> This change adds a set of extensions to the Certificate message. With
>>>>> this change, the Certificate message can now hold all extension messages
>>>>> that are certificate-specific (rather than connection-specific). This
>>>>> change also resolves the anomaly of OCSP messages appearing before
>>>>> certificates in the handshake.
>>>>>
>>>>
>>>> There are two ways that such a thing could be done. How your proposal
>>>> suggests:
>>>>
>>>>     opaque ASN1Cert<1..2^24-1>;
>>>>     struct {
>>>>         opaque certificate_request_context<0..2^8-1>;
>>>>         ASN1Cert certificate_list<0..2^24-1>;
>>>>         Extension extensions<0..2^16-1>;
>>>>     } Certificate;
>>>>
>>>> or:
>>>>
>>>>     opaque ASN1CertData<1..2^24-1>;
>>>>     struct {
>>>>         ASN1CertData cert_data;
>>>>         Extension extensions<0..2^16-1>;
>>>>     }
>>>>
>>>>     struct {
>>>>         opaque certificate_request_context<0..2^8-1>;
>>>>         ASN1Cert certificate_list<0..2^24-1>;
>>>>     } Certificate;
>>>>
>>>> I think you are right that the SCT and the OCSP response are
>>>> per-certificate. In particular, they are not per-certificate-chain, so to
>>>> me the latter form, where each certificate in the chain gets its own
>>>> extension list, makes more sense to me. Would you consider changing the
>>>> proposal to the second form?
>>>>
>>>> Cheers,
>>>> Brian
>>>> --
>>>> https://briansmith.org/
>>>>
>>>>
>>> _______________________________________________
>>> TLS mailing list
>>> TLS@ietf.org
>>> https://www.ietf.org/mailman/listinfo/tls
>>>
>>>
>>
>> _______________________________________________
>> TLS mailing list
>> TLS@ietf.org
>> https://www.ietf.org/mailman/listinfo/tls
>>
>>
>