(Sorry for the late reply. Was out sick for a bit.)

On Thu, Aug 11, 2022 at 4:06 PM Mike West <mk...@google.com> wrote:

> I'm excited to see this! One question inline about timelines:
>
> On Thursday, August 11, 2022 at 9:55:48 PM UTC+2 David Benjamin wrote:
>
>> Contact emailsdavi...@chromium.org, dad...@google.com
>>
>> ExplainerNone
>>
>> Specificationhttps://datatracker.ietf.org/doc/html/draft-ietf-tls-esni
>>
>> Summary
>>
>> The TLS Encrypted ClientHello (ECH) extension enables clients to encrypt
>> ClientHello messages, which are normally sent in cleartext, under a
>> server’s public key. This allows websites to opt-in to avoid leaking
>> sensitive fields, like the server name, to the network by hosting a special
>> HTTPS RR DNS record. (Earlier iterations of this extension were called
>> Encrypted Server Name Indication, or ESNI.)
>>
>>
>> Blink componentInternals>Network>SSL
>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Internals%3ENetwork%3ESSL>
>>
>> Search tagsech <https://chromestatus.com/features#tags:ech>, esni
>> <https://chromestatus.com/features#tags:esni>, tls
>> <https://chromestatus.com/features#tags:tls>, ssl
>> <https://chromestatus.com/features#tags:ssl>
>>
>> TAG reviewNot applicable; this is a protocol under IETF
>>
>> TAG review statusNot applicable
>>
>> Risks
>>
>>
>> Interoperability and Compatibility
>>
>> As a networking protocol, interoperability risks look different from a
>> web platform API: This is a draft of a developing protocol, so the final
>> standard will differ from what we ship now. We manage this as in other
>> protocol work: the draft uses different codepoints in the DNS record and
>> ClientHello, set up to not conflict with the final standard. There is also
>> a risk of breaking buggy servers or network middleware. ECH is DNS-gated,
>> so non-ECH servers won't be exposed to ECH itself. We do implement ECH's
>> GREASE mechanism (section 6.2 of the draft), but this should appear as any
>> normal unrecognized extension to non-ECH servers. Servers and network
>> elements that are compliant with RFC 8446, section 9.3, should not be
>> impacted. We will be monitoring for these issues as part of the experiment,
>> comparing error rates and handshake times both for HTTPS servers as a
>> whole, and the subset of those that advertise ECH in DNS.
>>
>>
>> *Gecko*: In development (
>> https://blog.mozilla.org/security/2021/01/07/encrypted-client-hello-the-future-of-esni-in-firefox
>> )
>>
>> *WebKit*: No signal
>>
>
> It would be reasonable to ask via
> https://github.com/WebKit/standards-positions/issues.
>

Filed https://github.com/WebKit/standards-positions/issues/46


>
>> *Web developers*: Positive (
>> https://blog.cloudflare.com/encrypted-client-hello)
>>
>> *Other signals*:
>>
>> Ergonomics
>>
>> ECH is part of TLS, so it is largely abstracted away from web platform
>> APIs themselves.
>>
>>
>> Activation
>>
>> This is a network protocol and thus inherently requires server software
>> changes. It also requires keys deployed in the HTTPS DNS record. At this
>> stage in the process, we do not expect ECH to be deployed beyond a few
>> early adopters. Rather, this experiment is part of real-world testing for
>> the developing protocol. The connection with the DNS record is of
>> particular note. It is possible that, due to DNS caching, etc., that the
>> DNS record we fetch is out of sync with the server instance we talk to. ECH
>> has a built-in recovery mechanism to repair these mismatches. One of the
>> aims of the experiment will be to validate this mechanism.
>>
>>
>> Security
>>
>> See
>> https://datatracker.ietf.org/doc/html/draft-ietf-tls-esni-14#section-10
>> for security considerations in the specification
>>
>>
>> WebView application risks
>>
>> Does this intent deprecate or change behavior of existing APIs, such that
>> it has potentially high risk for Android WebView-based applications?
>>
>> No WebView-specific risks
>>
>>
>>
>> Goals for experimentation
>>
>> This is a new extension to TLS. As part of the standardization process,
>> we wish to validate the design, and ensure it works, performs well, etc.
>> This is also the first time a TLS extension has been gated on DNS. This
>> introduces a new set of deployment risks. ECH includes mechanisms to
>> mitigate these risks, which we also aim to validate with this experiment.
>> We'll do this by A/B testing clients with and without ECH enabled, and
>> comparing error rates and latency across all TLS connections, and across
>> just connections to hostnames with ECH keys in DNS. We'll also be looking
>> at how often the recovery flow is used.
>>
>>
>> Reason this experiment is being extended
>>
>> n/a
>>
>>
>> Ongoing technical constraints
>>
>> None
>>
>>
>> Debuggability
>>
>> Servers that use ECH are visible in the DevTools security panel.
>>
>>
>> Will this feature be supported on all six Blink platforms (Windows, Mac,
>> Linux, Chrome OS, Android, and Android WebView)?Yes
>>
>> While supported on all platforms, ECH requires keys fetched via DNS in
>> the new HTTPS record. Chrome can currently fetch the HTTPS record over DoH
>> and over our built-in DNS resolver. As of writing, the built-in DNS
>> resolver is not yet enabled on Windows (https://crbug.com/1317948) and
>> Linux (https://crbug.com/1350321).
>>
>>
>> Is this feature fully tested by web-platform-tests
>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>> ?No (see https://github.com/web-platform-tests/wpt/issues/20159)
>>
>> Flag nameencrypted-client-hello
>>
>> Requires code in //chrome?False
>>
>> Tracking bughttps://crbug.com/1091403
>>
>> Launch bughttps://crbug.com/1349902
>>
>> Estimated milestones
>> DevTrial on desktop 105
>> DevTrial on Android 105
>>
>
> When do you plan to end the experiment? M109, perhaps?
>

Didn't have a particular set end time... depends on how long it takes to
answer our questions and how things shake out I suppose. We can tentatively
say M109 if we need an end date. (Although at this point I suspect a lot of
the milestones will get shifted over anyway.)


>
>>
>> Link to entry on the Chrome Platform Status
>> https://chromestatus.com/feature/6196703843581952
>>
>> Links to previous Intent discussionsIntent to prototype:
>> https://groups.google.com/a/chromium.org/g/blink-dev/c/YEo4LqB7nWI
>>
>>
>> This intent message was generated by Chrome Platform Status
>> <https://chromestatus.com/>.
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAF8qwaBMRLPbGetrB4gZ%3DMoW11Yx3FjkbLs_%2BHXaC0oFXGBk_w%40mail.gmail.com.

Reply via email to