Re: [DNSOP] [internet-drafts@ietf.org: I-D Action: draft-rescorla-tls-esni-00.txt]

Kazuho Oku <kazuhooku@gmail.com> Thu, 19 July 2018 19:04 UTC

Return-Path: <kazuhooku@gmail.com>
X-Original-To: dnsop@ietfa.amsl.com
Delivered-To: dnsop@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6B200130DC6; Thu, 19 Jul 2018 12:04:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 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, 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 gXkcre5UOaRO; Thu, 19 Jul 2018 12:04:50 -0700 (PDT)
Received: from mail-lf1-x142.google.com (mail-lf1-x142.google.com [IPv6:2a00:1450:4864:20::142]) (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 E032D130F50; Thu, 19 Jul 2018 12:04:30 -0700 (PDT)
Received: by mail-lf1-x142.google.com with SMTP id y200-v6so178729lfd.7; Thu, 19 Jul 2018 12:04:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=O/V9lCHiDSJtRkq/vqjAHWyoyuR2DfqaBEYyH9whTQI=; b=cKWA9GTv/jSw33Lni6WoAb3Rud2MMSlJCitI5Fst1DvGepLSamTjhmQ+SiGnOFHxEk J2sV5gHtvi3QNuXoKzsRCnOhbqZ3yXJsk10OZWjaY3GzYWGAwmJ+oehn2c5KUPqXYZ2x yLGYWwC4yLBFyotvmBGI33NVHlCx0qeknt6fBc4P+L/7ew8x+uC9xXB6pka+SzyR2YWT DuoMa7J8Av8jW/gEPsRwoi64e8rHDiNsLjv3fcYEbDAW4J6LGbFohmJIhl2ciGcIZttD 4sVOaV29XzQ5UoKoQRK+15wW+RVrZfYCdJ9L9zdUmQbMNLfX1lWxqERWNd0VHcC8gNXF Y91w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=O/V9lCHiDSJtRkq/vqjAHWyoyuR2DfqaBEYyH9whTQI=; b=MZDH5l2LZDJb2Y7gJAosN3v13VI5SNyZEqAqorAmRoCSCPK9cZHquBkZywJenzK6C9 mg7hObTNGP3ufE7ShmBdJvRD5nI4R2isRve1SN6CLdjKPqY2ePzmEPjE66NPmBjuix2f zYW6zNmuXFuuyZnEuCMUY6R901jsXuF4YO454UVfA5uRWi+v9dMt2IuVJjbwaZtV5rd1 EwyHu8qjvu7bXmqQ1JZgm/HVteLXy92AGSgaUzrFop8mb02z4QowQv43fs3dohVqSivF HPn2diPknWBIfG/J0XPwgQwJwTRuGFuOKvmFfMPEQB01eXzAI6EBFrXFI3KzMea2LdFd vQsg==
X-Gm-Message-State: AOUpUlE62UigWjhRRuvZbQ/QnXN/B0HgWa8IrvUp5xyhOf1maj+q/AUa js6TNTrTO23ph53t845sDdlgyf8C1YBG9c3W/AM=
X-Google-Smtp-Source: AAOMgpflGmnN/CII6BJ1c1nUgFM3yWDCR6FC+AGahJMji8nLrOWZYepMzFAmWgQzpRv95eRwHeYlmAF7nCE9Yq9us08=
X-Received: by 2002:a19:d44a:: with SMTP id l71-v6mr7215833lfg.28.1532027069109; Thu, 19 Jul 2018 12:04:29 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a2e:8996:0:0:0:0:0 with HTTP; Thu, 19 Jul 2018 12:04:28 -0700 (PDT)
In-Reply-To: <CAM1xaJ8nsqreqBz7f2fG_HOaB6dc5JOS_S9Oxj5pyiOaPiyvsA@mail.gmail.com>
References: <20180707191900.7jjaxklib3tlixgb@nic.fr> <CAM1xaJ_jcMunvfuqqgoe-5hTSE1t=A4ELWF1j0SBsztoZ_1S=w@mail.gmail.com> <CAOdDvNpWs3_+c3=pdYjxm+UrEfBUawcTKXY4ks0VbuGSts+q7Q@mail.gmail.com> <CADyWQ+HwNsvgs0BnQ3NqnEob6xZrcbmk_qVOX58UCW4rFrmahg@mail.gmail.com> <CAOdDvNq65kGho6oCX=mMw+qebHOqzJq6qJ7kAWdO53wAKeyj2A@mail.gmail.com> <CAM1xaJ8nsqreqBz7f2fG_HOaB6dc5JOS_S9Oxj5pyiOaPiyvsA@mail.gmail.com>
From: Kazuho Oku <kazuhooku@gmail.com>
Date: Thu, 19 Jul 2018 15:04:28 -0400
Message-ID: <CANatvzz5podSFi_hdbFEwgVZF+9jMatLAxuf_FA81PBg7goQ3g@mail.gmail.com>
To: Jan Včelák <jv@fcelda.cz>
Cc: Patrick McManus <pmcmanus@mozilla.com>, tjw.ietf@gmail.com, dnsop@ietf.org, draft-rescorla-tls-esni@ietf.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/tRbhVhY3hrZagG4UMRjp96YVV24>
Subject: Re: [DNSOP] [internet-drafts@ietf.org: I-D Action: draft-rescorla-tls-esni-00.txt]
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.27
Precedence: list
List-Id: IETF DNSOP WG mailing list <dnsop.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dnsop>, <mailto:dnsop-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnsop/>
List-Post: <mailto:dnsop@ietf.org>
List-Help: <mailto:dnsop-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dnsop>, <mailto:dnsop-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 19 Jul 2018 19:04:54 -0000

2018-07-19 14:48 GMT-04:00 Jan Včelák <jv@fcelda.cz>:
> Patrick, I believe my understanding of the SNI consumer side is the
> same. I'm talking about inability to use DNS wildcard on SNI producer
> side:
>
> Let's say I get domain example.com and wildcard certificate
> *.example.com. I want to run a couple of services on the subdomains of
> example.com and I want to use ESNI. If a TLS client want's to connect
> for instance to www.example.com, it will resolve www.example.com
> A/AAAA record to get server IP and _esni.www.example.com TXT to get
> the key to encrypt SNI. Is that right or did I miss something about
> your draft?
>
> If the above true, then my objection is that I cannot use DNS wildcard
> for _esni record and I will have to create explicit one for each
> subdomain (service) on example.com. Another annoying thing is that
> existence of _esni.www.example.com TXT record will prevent expansion
> of *.example.com A/AAAA for www.example.com. The solution would be to
> request new DNS RR type for ESNI which could be used with
> *.example.com DNS name.

I agree that the issue exists. Thank you for pointing that out.

I can see that using a dedicated type resolves the issue for the case
where the DNS and TLS servers are operated by the same entity.
However, that would not solve the issue if the servers are operated by
different entities. Do you have any suggestions on how we can support
that case as well?

Background: In ESNI, we would like to support two types of
deployments: 1) DNS and TLS servers operated by same entity, 2) DNS
and TLS server operated by separate entities.

The latter case is actually common; it is often the case for a website
to select different service providers for DNS and CDN. In such case,
we would like to use CNAME to delegate the ESNIKeys entry from the DNS
of the website to that of the CDN (example show below). Otherwise,
there is a risk of the key (which needs to be rotated) getting out of
sync.

_esni.example.com. IN CNAME 3600 _esni.cdn.example.

However, this pattern does not work for wildcards, because CNAME is
not type-specific. We would want to do something like below, but that
is not possible.

*.example.com IN A 192.0.2.1    # IP address provided by CDN
*.example.com IN CNAME _esni.cdn.example. # delegate ESNI records only

My understanding is that ANAME is coming, but that is for address
records only. It cannot be used to delegate a specific type that you
choose.

> Jan
> On Thu, Jul 19, 2018 at 2:27 PM Patrick McManus <pmcmanus@mozilla.com> wrote:
>>
>> the tls server side (aka the cert side) can definitely use a wildcard (or a list of explicit names, or a mix of both!) But that's the SNI consumer. The draft is about the SNI producer which does not use wildcards.
>>
>> e.g. the ESNI work is about what is put in the TLS client handshake (historically the SNI and according this draft a new extension carrying the encrypted SNI) - and that is always an explicit name. And that's also the subject of the DNS query in order to obtain the keys. The DNS query and SNI leak similar amounts of information (although perhaps to different parties), so an encrypted DoT or DoH is an important part of the system.
>>
>>
>> On Thu, Jul 19, 2018 at 1:53 PM, Tim Wicinski <tjw.ietf@gmail.com> wrote:
>>>
>>> Patrick
>>>
>>> Can I go and order a SSL Cert with a standard name and a wildcard name for SNI?  We do that now.
>>>
>>> So, I think Jan is onto something.
>>>
>>>
>>> On Thu, Jul 19, 2018 at 1:47 PM, Patrick McManus <pmcmanus@mozilla.com> wrote:
>>>>
>>>>
>>>> On Thu, Jul 19, 2018 at 1:36 PM, Jan Včelák <jv@fcelda.cz> wrote:
>>>>>
>>>>> Hey,
>>>>>
>>>>> I just scanned the draft and focused mainly on the DNS bits. The
>>>>> described method for publishing encryption keys for SNI in DNS won't
>>>>> allow use of wildcard domain names.
>>>>>
>>>>
>>>> Thanks!
>>>>
>>>> I believe the draft is OK on this point because wildcards aren't needed. While certificates can be valid for wildcard domains, the SNI is always a specific hostname (and the plaintext hostname informs the DNS question)
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> DNSOP mailing list
>>>> DNSOP@ietf.org
>>>> https://www.ietf.org/mailman/listinfo/dnsop
>>>>
>>>
>>



-- 
Kazuho Oku