Re: Digests, signatures and chunk extensions

Lucas Pardue <lucaspardue.24.7@gmail.com> Fri, 02 December 2022 11:48 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 77928C14CEE2 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 2 Dec 2022 03:48:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.747
X-Spam-Level:
X-Spam-Status: No, score=-7.747 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.25, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, 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=gmail.com
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 rezvizls8eMA for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 2 Dec 2022 03:48:10 -0800 (PST)
Received: from lyra.w3.org (lyra.w3.org [128.30.52.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0DFBFC14F741 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Fri, 2 Dec 2022 03:48:09 -0800 (PST)
Received: from lists by lyra.w3.org with local (Exim 4.94.2) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1p14WJ-008uTO-MN for ietf-http-wg-dist@listhub.w3.org; Fri, 02 Dec 2022 11:47:55 +0000
Resent-Date: Fri, 02 Dec 2022 11:47:55 +0000
Resent-Message-Id: <E1p14WJ-008uTO-MN@lyra.w3.org>
Received: from titan.w3.org ([128.30.52.76]) by lyra.w3.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from <lucaspardue.24.7@gmail.com>) id 1p14WH-008uRw-Nd for ietf-http-wg@listhub.w3.org; Fri, 02 Dec 2022 11:47:53 +0000
Received: from mail-oi1-x22d.google.com ([2607:f8b0:4864:20::22d]) by titan.w3.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from <lucaspardue.24.7@gmail.com>) id 1p14WG-0047r7-6m for ietf-http-wg@w3.org; Fri, 02 Dec 2022 11:47:53 +0000
Received: by mail-oi1-x22d.google.com with SMTP id l127so5037267oia.8 for <ietf-http-wg@w3.org>; Fri, 02 Dec 2022 03:47:51 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=34lru366LBYBLYqxny2BUhBpaJOSj3ACsZGO00qYimU=; b=VjIKS3SsKYXhcGbrslOeY5ABFcXdPWXc49eR3i5+XgaCs7ypkkPZnUNYFA+6krZV3h CkFH+NTreiZig6uhCKumac56aMTNwjjaDWDGNBxupiAlCtgNgw6oR4TU2JQmaiNuyjpO 2t//ToTrCIE3dMWvFT2+yZQ3+Pt6i/HCc2ULIg0VYgHPOkH+7RUekWJ6G9Gkx1sLMg9f LNJuZ+IfWSwTeD22cMwJZcdYU8ZafbxL1wxFdqivhP7FXFekYBNlCbC4a9lyvC3+lalI 4KYhLoULwWx/2qAxsO5sJn4Xydd1sMXZtnjK9hreewSGVZj/p7gdBUSp4MX4gHxD6rN3 QXYA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=34lru366LBYBLYqxny2BUhBpaJOSj3ACsZGO00qYimU=; b=02yXhMyUM8DKfD5+U3z5vYv1DITKp7l8Lvtk+EVoXzRGDo38kDN9Rfu/bKJOTqHtTk 5d5VWeQ+sgr9ZbvaTsUFfwf2phETRXnWXp2ykVM/1WpgFzhsKRHW1iD/yP/f0X0SkjUX uENWtPhOeZi+CVKY9Af/DiIF3fidGAEPW2oq+gIiWhW8KaPx0K/blJwNc7QDdFti9XR/ S45utB6xO0GOfDQfoybbD3RbOikAsRkyKr7fHjybfK1EcVSvU+VR00LoDCVxvMggGrl0 P0kO14f/OERRXst3EfDWVFw5QcfC202zecNnCEY8810youjX+FVFhmLjkgJeMN1XknMO fhHA==
X-Gm-Message-State: ANoB5pn9NvryElgusmt57k/q6UNPj2dryib0SmXJr6gMQEWt4WU/hRqo U2ewryaSRXG5+YKo0c2zfAQItsJR17J4hyEYtwp6npfr
X-Google-Smtp-Source: AA0mqf6/Ike3eHYY7pQeb70raFG2thbWcqjcFtDj3atIW4H+UBYHpA16iGERup9z4Xpxqqo9o2OObdhJXt/mO0rVbvA=
X-Received: by 2002:a05:6808:14c9:b0:35b:d281:9064 with SMTP id f9-20020a05680814c900b0035bd2819064mr5993289oiw.51.1669981661278; Fri, 02 Dec 2022 03:47:41 -0800 (PST)
MIME-Version: 1.0
References: <cfacd6ca-4a9d-5df7-4d48-1925b503bc8c@rd.bbc.co.uk> <CALGR9ob8u3FwUuZZs+f=wdmWXTB4qzN_d2W7rYOc_pG_-n3eJQ@mail.gmail.com> <3d5d6f2c-5568-a48d-3f1b-57b56da42c8d@rd.bbc.co.uk> <Y4jcmt9a0C43zjbK@LK-Perkele-VII2.locald> <668733a2-6249-5c7a-1d91-7820cd9d58d6@gmx.de>
In-Reply-To: <668733a2-6249-5c7a-1d91-7820cd9d58d6@gmx.de>
From: Lucas Pardue <lucaspardue.24.7@gmail.com>
Date: Fri, 02 Dec 2022 11:47:29 +0000
Message-ID: <CALGR9obXEoQHaGG8H7Hjp_u6wA9NdK53kJh7g_Q6pOXqt9J4Tw@mail.gmail.com>
To: ietf-http-wg@w3.org
Content-Type: multipart/alternative; boundary="000000000000b3b49e05eed6e747"
Received-SPF: pass client-ip=2607:f8b0:4864:20::22d; envelope-from=lucaspardue.24.7@gmail.com; helo=mail-oi1-x22d.google.com
X-W3C-Hub-DKIM-Status: validation passed: (address=lucaspardue.24.7@gmail.com domain=gmail.com), signature is good
X-W3C-Hub-Spam-Status: No, score=-4.8
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_IRA=-1, W3C_WL=-1
X-W3C-Scan-Sig: titan.w3.org 1p14WG-0047r7-6m 2d187717aebac0d2e63f70651f09f0fd
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Digests, signatures and chunk extensions
Archived-At: <https://www.w3.org/mid/CALGR9obXEoQHaGG8H7Hjp_u6wA9NdK53kJh7g_Q6pOXqt9J4Tw@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/40613
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <https://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

While MICE might require that a tree of parts constructed over a complete
resource, I'm not sure if Sam's use case requires that property. Instead a
similar but simpler "progressive integrity" content encoding (PrICE), where
the content self-describes part boundaries and their digests without
chaining, might fit the need. The benefit of including this type of thing
inside the content encoding is that it can pass across intermediaries and
HTTP versions without having to worry about re-encoding chunks or adding
new frames.

On Thu, Dec 1, 2022 at 5:08 PM Julian Reschke <julian.reschke@gmx.de> wrote:

> On 01.12.2022 17:55, Ilari Liusvaara wrote:
> > On Thu, Dec 01, 2022 at 04:30:18PM +0000, Samuel Hurst wrote:
> >> Hi Lucas,
> >>
> >> On 01/12/2022 16:20, Lucas Pardue wrote:
> >>> Hiya Sam,
> >>>
> >>> This sounds like something that the MICE (Merkle Integrity Content
> >>> Encoding( draft [1] might help you solve?
> >>>
> >>> Cheers,
> >>> Lucas
> >>>
> >>> [1] - https://datatracker.ietf.org/doc/draft-thomson-http-mice/
> >>
> >> Thanks for the quick response. At first glance, this looks like it
> >> could be what I'm after. Any pointers towards any implementations
> >> would be very gratefully received!
> >
> > Looking at the draft, I do not think it fits your usecase. Specifically,
> > it seemingly requires the entiere rest of response to be available to
> > even start sending, which is obviously not going to work for live
> > streaming.
> >
> > And with regards to chunk extensions, use of those is essentially
> > unspecified, and virtually all implementations just ignore those.
>
> You make it sound as if Martin's content coding uses chunk extensions -
> that is not the case.
>
> > Nominally, HTTP/2 has middlers (HEADERS that is not End of Stream
> > after initial request/final response) where one could stuff weird
> > out-of-band metadata, but sending those will probably make a lot of
> > implementations to either puke or become very confused.
> > I do not know if HTTP/3 can send middlers.
> >
> > Obviously, none of this will work through any forward or reverse
> > proxies.
>
> When we worked on RFC 9110, we tried to define the generic concept of
> middlers (for use in H/3), but were told to back them out :-(.
>
> Best regards, Julian
>
>
>