Re: [TLS] Working Group Last Call for ECH
涛叔 <hi@taoshu.in> Thu, 14 March 2024 01:40 UTC
Return-Path: <hi@taoshu.in>
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 AABC1C14F60D for <tls@ietfa.amsl.com>; Wed, 13 Mar 2024 18:40:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.375
X-Spam-Level:
X-Spam-Status: No, score=-6.375 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_SOFTFAIL=0.732, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=taoshu.in
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 76icyuT8gcvI for <tls@ietfa.amsl.com>; Wed, 13 Mar 2024 18:40:53 -0700 (PDT)
Received: from mx1.lehu.in (mx1.lehu.in [IPv6:2603:c024:c00c:9e00:1::]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B0A70C14F5E6 for <tls@ietf.org>; Wed, 13 Mar 2024 18:40:53 -0700 (PDT)
DKIM-Signature: a=rsa-sha256; bh=r8zAI/I3nj/cpuRG5Vgu7fiU2sRdhoGsKyItVimJL+w=; c=relaxed/relaxed; d=taoshu.in; h=Subject:Subject:Sender:To:To:Cc:Cc:From:From:Date:Date:MIME-Version:MIME-Version:Content-Type:Content-Type:Content-Transfer-Encoding:Content-Transfer-Encoding:Reply-To:In-Reply-To:In-Reply-To:Message-Id:Message-Id:References:References:Autocrypt:Openpgp; i=@taoshu.in; s=default; t=1710380452; v=1; x=1710812452; b=vDBvXI2bHPhLNMxI/yquqUfhwjVX7IbAcqRGJAWrJ+WQN+Qfa85Whe3fJmNrSRoBzPfZRg3s wlhHOrwtuYBMdqI7SyVsA85NW4pOTEOsWxKbZGZPH0P/5eiMhVQvabC0SF57gqV/FmaWz86xTS3 ArdPMU6n4Zjbn4aZkHK9ROjt79o1mXPn7GCDRzIb5+o6bfg82tx7vvmPhKQXdFGfvAblAlkmK8f JlBwjJWKN9qCVMW5Cwoqkov/9NnowUCE/Q+x9V/wK3BqQ+NAu0ruuugJSbfR5BnuBVoK59XCodB 5wopNVFWJnonRaaNPatxB1Gm7k+s5LPpfsfvqqqYNmwzA==
Received: by mx1.lehu.in (envelope-sender <hi@taoshu.in>) with ESMTPS id db7be5ec; Thu, 14 Mar 2024 01:40:52 +0000
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.300.61.1.2\))
From: 涛叔 <hi@taoshu.in>
In-Reply-To: <CABcZeBP7mbdyGr4ECnfkOMb8Aj9Es_iFddYnv7sq5ZehS1D1dA@mail.gmail.com>
Date: Thu, 14 Mar 2024 09:40:39 +0800
Cc: Amir Omidi <amir@aaomidi.com>, "tls@ietf.org" <tls@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <05CF2DC4-B228-4334-B36C-56BD5FD182AE@taoshu.in>
References: <CAOgPGoD4iiJ7kivRo4xbe0peiMG3YdzUvmVHC2KvqnMOpm+N7Q@mail.gmail.com> <MEYP282MB35643E2F4A977C0FC051D006A32A2@MEYP282MB3564.AUSP282.PROD.OUTLOOK.COM> <CACsn0ckt5k_jJDp_RnWci94Li3AtcBiMfPehuLtdkAN-XoWtdQ@mail.gmail.com> <MEYP282MB3564E419539472CE1B5C5B1EA32A2@MEYP282MB3564.AUSP282.PROD.OUTLOOK.COM> <CABcZeBPK+jdirtxVPJWipXs0odhsqwsG088NC=OPpd4R=q16Zg@mail.gmail.com> <CAOG=JUKSjbPoz-xBHExrdgtSGTKYYTtnvO18o=qTm7eC2Anc4w@mail.gmail.com> <253111710344559@mail.yandex.com> <CABcZeBNMMvn0g_0dO3rvZfiB8K-5DmBWREVuZJL-r4zPjq_YWQ@mail.gmail.com> <CAOG=JUJRCdzbYaEfwP2pJfduE7=ChHTwpqO94=kzNs=8U1L_hA@mail.gmail.com> <CABcZeBP7mbdyGr4ECnfkOMb8Aj9Es_iFddYnv7sq5ZehS1D1dA@mail.gmail.com>
To: Eric Rescorla <ekr@rtfm.com>
X-Mailer: Apple Mail (2.3774.300.61.1.2)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/910SMMqQ3ni46KX17My1U_X4ZAQ>
Subject: Re: [TLS] Working Group Last Call for ECH
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.39
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: Thu, 14 Mar 2024 01:40:57 -0000
Hi, Eric, > On Mar 14, 2024, at 00:45, Eric Rescorla <ekr@rtfm.com> wrote: > > There are two questions here: > > 1. What the specification says > 2. What implementations choose to do within the envelope of that specification. > > The specification needs to prescribe a set of behaviors that promote interoperability, which means that whatever it tells the client to do must be compatible with what it tells servers to do. Presently, the specification tells clients to put whatever is in ECHConfig.public_name in ClientHelloOuter.sni (S 6.1) and tells the server that it may check and reject it otherwise (S 7.1). We extensively debated whether to forbid checking in PR #575 and concluded that we should do so. The primary arguments were the same ones being offered here balanced against the ecosystem benefits of encouraging the client to correctly populate ClientHelloOuter.sni to enable the recovery mechanism. The WG could of course revisit that decision. > > With that said, even if the specification explicitly allowed clients to omit/falsify ClientHelloOuter.sni, I don't believe that generic clients (e.g., the kind of Web browsers that most people use) would choose to do so. The reason is that, as noted above, it would break the recovery mechanism, and that's more important than the modest increment in concealing the public_name of servers on non-shared IPs. One might imagine that some special purpose clients would choose to do so, but that's not the case I'm talking about. The public_name is required, not naturally because it will be used by ECHConfig recovery, but because if the client omit it or fill some none domain value like ensi.test, the observer could identify traffic equipped with ECH or normal TLS traffic. However, the problem we are discussing here is if you want to deploy ECH you have to own a dedicated domain name and get a valid SSL certificate for it so that you can resend the latest ECHConfig to the client that use the outed configuration. The process is only chosen by the draft. But it is not the only way to do it. Here are some immature ideas. One method is to public another public_key for signing along side with ECHConfig, let's call it Recovery Signing Key. This key will only be used to sign the latest ECHConfig during the recovery process. So there is not need to rotate it as frequently as the ECHConfig itself. The client should use DNS to lookup the ECHConfig and the Recovery Signing Key. If the ECHConfig is outdated, the server will respond the latest ECHConfig with signature signed the Recovery Signing Key. By the way, the client could verify whether the recovered ECHConfig is valid. Here is another immature ideas. If the WG insist to use the outer TLS negotiation to recovery ECHConfig, it may works to use the self-signed certificate. In order to let client trust the self-signed certificate only in the process of ECHConfig recovery, we can publish the hash of the self-signed certificate along side the ECHConfig in the HTTPS RR. If the server need to recover the latest ECHConfig, it can finish the outer TLS negotiation with its self-signed certificate. As the client already knows the server's self-signed certificate by the DNS lookup, it can trust it once int this negotiation process and get the latest ECHConfig. By this ways, the public_name in ECHConfig.public_name could not have to be a real domain, and there is no need to own it or buy a SSL certificate for it. It is only an ID of ECHConfig, and just looks like a domain. And we can rotate it and the ECHConfig as soon as need.
- [TLS] Working Group Last Call for ECH Joseph Salowey
- Re: [TLS] Working Group Last Call for ECH Eric Rescorla
- Re: [TLS] Working Group Last Call for ECH Rob Sayre
- Re: [TLS] Working Group Last Call for ECH Rob Sayre
- Re: [TLS] Working Group Last Call for ECH Christopher Patton
- Re: [TLS] Working Group Last Call for ECH Rob Sayre
- Re: [TLS] Working Group Last Call for ECH Watson Ladd
- Re: [TLS] Working Group Last Call for ECH Stephen Farrell
- Re: [TLS] Working Group Last Call for ECH Rob Sayre
- Re: [TLS] Working Group Last Call for ECH Stephen Farrell
- Re: [TLS] Working Group Last Call for ECH Salz, Rich
- Re: [TLS] Working Group Last Call for ECH Stephen Farrell
- Re: [TLS] Working Group Last Call for ECH Arnaud Taddei
- Re: [TLS] Working Group Last Call for ECH Loganaden Velvindron
- Re: [TLS] Working Group Last Call for ECH Martin Thomson
- Re: [TLS] Working Group Last Call for ECH Raghu Saxena
- Re: [TLS] Working Group Last Call for ECH 涛叔
- Re: [TLS] Working Group Last Call for ECH Watson Ladd
- Re: [TLS] Working Group Last Call for ECH Raghu Saxena
- Re: [TLS] Working Group Last Call for ECH Karthikeyan Bhargavan
- Re: [TLS] Working Group Last Call for ECH Christopher Patton
- Re: [TLS] Working Group Last Call for ECH 涛叔
- Re: [TLS] Working Group Last Call for ECH Dennis Jackson
- Re: [TLS] Working Group Last Call for ECH Karthikeyan Bhargavan
- Re: [TLS] Working Group Last Call for ECH A A
- Re: [TLS] Working Group Last Call for ECH Amir Omidi
- Re: [TLS] Working Group Last Call for ECH Eric Rescorla
- Re: [TLS] Working Group Last Call for ECH Raghu Saxena
- Re: [TLS] Working Group Last Call for ECH Raghu Saxena
- Re: [TLS] Working Group Last Call for ECH Eric Rescorla
- Re: [TLS] Working Group Last Call for ECH Salz, Rich
- Re: [TLS] Working Group Last Call for ECH Eric Rescorla
- Re: [TLS] Working Group Last Call for ECH Eric Rescorla
- Re: [TLS] Working Group Last Call for ECH John Mattsson
- Re: [TLS] Working Group Last Call for ECH Eric Rescorla
- Re: [TLS] Working Group Last Call for ECH Amir Omidi
- Re: [TLS] Working Group Last Call for ECH Raghu Saxena
- Re: [TLS] Working Group Last Call for ECH Eric Rescorla
- Re: [TLS] Working Group Last Call for ECH Sean Turner
- Re: [TLS] Working Group Last Call for ECH Joseph Salowey
- Re: [TLS] Working Group Last Call for ECH Russ Housley
- Re: [TLS] Working Group Last Call for ECH Stephen Farrell
- Re: [TLS] Working Group Last Call for ECH Russ Housley
- Re: [TLS] Working Group Last Call for ECH Sean Turner