Re: [hybi] Experiment comparing Upgrade and CONNECT handshakes

Scott Ferguson <ferg@caucho.com> Mon, 29 November 2010 17:43 UTC

Return-Path: <ferg@caucho.com>
X-Original-To: hybi@core3.amsl.com
Delivered-To: hybi@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 7325928C155 for <hybi@core3.amsl.com>; Mon, 29 Nov 2010 09:43:17 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.711
X-Spam-Level:
X-Spam-Status: No, score=-2.711 tagged_above=-999 required=5 tests=[AWL=1.888, BAYES_00=-2.599, GB_I_LETTER=-2]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 55DfRlQZaRl3 for <hybi@core3.amsl.com>; Mon, 29 Nov 2010 09:43:16 -0800 (PST)
Received: from nm24.bullet.mail.ac4.yahoo.com (nm24.bullet.mail.ac4.yahoo.com [98.139.52.221]) by core3.amsl.com (Postfix) with SMTP id 7638C28C197 for <hybi@ietf.org>; Mon, 29 Nov 2010 09:43:16 -0800 (PST)
Received: from [98.139.52.191] by nm24.bullet.mail.ac4.yahoo.com with NNFMP; 29 Nov 2010 17:44:23 -0000
Received: from [98.139.52.137] by tm4.bullet.mail.ac4.yahoo.com with NNFMP; 29 Nov 2010 17:44:23 -0000
Received: from [127.0.0.1] by omp1020.mail.ac4.yahoo.com with NNFMP; 29 Nov 2010 17:44:23 -0000
X-Yahoo-Newman-Id: 616049.54569.bm@omp1020.mail.ac4.yahoo.com
Received: (qmail 5273 invoked from network); 29 Nov 2010 17:44:22 -0000
Received: from [192.168.1.11] (ferg@66.92.8.203 with plain) by smtp114.biz.mail.mud.yahoo.com with SMTP; 29 Nov 2010 09:44:22 -0800 PST
X-Yahoo-SMTP: L1_TBRiswBB5.MuzAo8Yf89wczFo0A2C
X-YMail-OSG: jU3H.IsVM1lomlX9rizsfBk2zgjKXb6DJdJJE6WYg1ZjPs4 c2xrNJwMc.SWm3qoK0zWe8BrH6kBhBsKbii7M1SViq7HHsKWpyoTJJOntPqa Be4F3NPByNSilrQU_sQGbBtpLgq9RKXsvyPfvqOmcibT2qKuB2T1utlK7jJR xVm9RUc.QqNWqPv4WcXn56xJLJyR71vJfX4WNMmcIkKb9hqgwfyucufH2Vqa vGINaxrCNWsBf1uFiKb5.B65Gt9BifD_644QWs5xleza5ZBvlYesoUQqgZyN cH78xGNs58iCGmNVxIA7XjIwEMfeuuxT.fYONLpa0izd8y6L6bxVzl9Do5SK hJ75n
X-Yahoo-Newman-Property: ymail-3
Message-ID: <4CF3E676.8040001@caucho.com>
Date: Mon, 29 Nov 2010 09:44:22 -0800
From: Scott Ferguson <ferg@caucho.com>
User-Agent: Thunderbird 2.0.0.24 (X11/20100411)
MIME-Version: 1.0
To: Adam Barth <ietf@adambarth.com>
References: <AANLkTim_8g-Cb01si00EkvCK5BtXUx3zHsUee1F6JqsD@mail.gmail.com> <AANLkTimSu1fOGCg0gqX2EFh4v-MkpZuY_-onm3+TO_Z0@mail.gmail.com> <AANLkTimYpdp-75BQSmhAUfyrQv19LvzF1ouznst+ANUG@mail.gmail.com> <AANLkTikbycTS51Ein9ybbZ52zcrViFCNBjCmpRGD3yCk@mail.gmail.com> <AANLkTim=_Ey_7tSJ0H8OKzip-UcwtJ=YMG5wf_f_qnty@mail.gmail.com> <20101127071644.GB26428@1wt.eu> <AANLkTi=Rqu-hm=Jy-GFf706smD8zEHbeD-oP7dNCN6Ro@mail.gmail.com> <20101127161638.GE26428@1wt.eu> <AANLkTi=snwcb8F89KjpD8tQUYSSBr6YF1OdaGgr1e9Xa@mail.gmail.com> <AANLkTi=2M1ubEgR44PL7JpydkaZaOwwimuvhJq=E30+A@mail.gmail.com> <4CF1EFF9.7040803@caucho.com> <AANLkTimotYL70P3Rqwz3uFbf=G3JERkUJqqdEhU6eMEb@mail.gmail.com>
In-Reply-To: <AANLkTimotYL70P3Rqwz3uFbf=G3JERkUJqqdEhU6eMEb@mail.gmail.com>
Content-Type: text/plain; charset="ISO-2022-JP"
Content-Transfer-Encoding: 7bit
Cc: Hybi <hybi@ietf.org>
Subject: Re: [hybi] Experiment comparing Upgrade and CONNECT handshakes
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hybi>
List-Post: <mailto:hybi@ietf.org>
List-Help: <mailto:hybi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 29 Nov 2010 17:43:17 -0000

Adam Barth wrote:
> On Sat, Nov 27, 2010 at 10:00 PM, Scott Ferguson <ferg@caucho.com> wrote:
>   
>> Ian Fette (イアンフェッティ) wrote:
>>     
>>> On Sat, Nov 27, 2010 at 8:24 AM, Adam Barth <ietf@adambarth.com
>>> <mailto:ietf@adambarth.com>> wrote:
>>>
>>>    On Sat, Nov 27, 2010 at 8:16 AM, Willy Tarreau <w@1wt.eu
>>>    <mailto:w@1wt.eu>> wrote:
>>>    > On Sat, Nov 27, 2010 at 07:51:17AM -0800, Eric Rescorla wrote:
>>>    >> What's the argument *for* having an insecure handshake?
>>>    >
>>>    > There's no argument *for* having an insecure handshake, there
>>>    are arguments
>>>    > for having a safe HTTP-compliant handshake.
>>>
>>>    The handshake we're proposing is both safe and HTTP compliant.
>>>
>>>    Kind regards,
>>>    Adam
>>>
>>>
>>> I really appreciate all the work you and others have done with this paper.
>>> I have a few questions I'd like to ask if you wouldn't mind.
>>>
>>> #1, if we changed the non-bogus Host header to be the real host, do you
>>> believe that would have any substantial negative impact?
>>> #2 Is there anything else that is in the handshake proposal that is
>>> perhaps HTTP compliant by the letter but not the spirit? (Other than CONNECT
>>> vs UPGRADE -- I think you've made that case.)
>>>
>>> I personally don't care strongly enough about the above to call them a
>>> requirement, but a number of people on this list have raised the HTTP compat
>>> issue so I would like to better understand what that would imply with the
>>> proposal this paper suggests the group move forward with.
>>>       
>> The change of the CONNECT URI to the known host "websocket.invalid" makes a
>> difference, because a server can dispatch the known "websocket.invalid" host
>> to a websocket handler. (The earlier scrambling of the URI was unworkable.)
>>     
>
> This change is already incorporated in the current version of
> draft-abarth-websocket-handshake.
>   

This really shows the disadvantage of the "procedural" style of spec
writing. By obfuscating the intention of the spec, you make it difficult
to see changes or to evaluate what the proposal is doing.

And, bluntly, not many people have the time to wade through and decode
the obfuscating junk.

-- Scott

>   
>> In other words, there's a difference between a well-known
>> "websocket.invalid" host and a bogus host. A truly bogus host would be a
>> problem (and wouldn't be HTTP in any meaningful way).
>>
>> That's from the end-server perspective. I don't know about proxies, although
>> I'd think a websocket-aware proxy could unpack the embedded URL and forward
>> based on it.
>>     
>
> Great.  I'm glad it works for you.
>
> Adam
>
>
>
>