[secdir] Re: draft-ietf-httpbis-no-vary-search-06 ietf last call Secdir review

Nidhi Jaju <nidhijaju@chromium.org> Wed, 29 July 2026 23:30 UTC

Return-Path: <nidhijaju@chromium.org>
X-Original-To: secdir@mail2.ietf.org
Delivered-To: secdir@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 46C0D120C7593 for <secdir@mail2.ietf.org>; Wed, 29 Jul 2026 16:30:08 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1785367808; bh=UvAdfLSlck29tgxWlefQtTQ8ItYkLaAzyllWuqTYrsg=; h=References:In-Reply-To:From:Date:Subject:To:Cc; b=bpZz/H4ZUenbhcKZgwZXkPccM2zGOmP9QHjUHeKzrrQnf6kxnEmEPw0O1DD8NBzbC 4kcYF8pzBWVY6KxmXGHNotCVAWOG9oKTIfDGS7j7uDgEeF114YmKNms2327Vy60hLI DCR+yPb8qVBo67Z9qeqIBndIwcERDOVqzI206inI=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.09
X-Spam-Level:
X-Spam-Status: No, score=-2.09 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01] autolearn=unavailable autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (1024-bit key) header.d=chromium.org
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5QdE-jWTgrID for <secdir@mail2.ietf.org>; Wed, 29 Jul 2026 16:30:06 -0700 (PDT)
Received: from mail-pl1-x62e.google.com (mail-pl1-x62e.google.com [IPv6:2607:f8b0:4864:20::62e]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 9F53D120C7546 for <secdir@ietf.org>; Wed, 29 Jul 2026 16:30:06 -0700 (PDT)
Received: by mail-pl1-x62e.google.com with SMTP id d9443c01a7336-2ced3386430so15271295ad.1 for <secdir@ietf.org>; Wed, 29 Jul 2026 16:30:06 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1785367806; cv=none; d=google.com; s=arc-20260327; b=JqqWMb9huyQDGTN/AXwYukKZnuvE62rAgpf9aKVU7QT7xggh+a8lIm+rC3+/2HMk/3 WDvhhV2KzKflAih3UJfNcu/FDAKB8uEX11gwlCaItJT7Da8idQm7NrVN9Y1zCjBtXh57 a2f53wMdC6BLAZlg43rT/b95DOYty1DJ/u4lFvXOUlgETxUjBt0CqxIZCqKBJeHs2R7L yanpVky7SSGpS9pU4nKWK8l0TO8JTJXHLRLc2YWmPSoVk+U8VOSdSVnEtJkiJsdF3PCQ fVfJaFf6FsIjz78d7gZrInhaEek7P2gbOlPfiqiJ5OjaBYIRkv3Xsx5tANvRVGcCvHCT A+0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=3kCjDBo1LremKlZgdrcJ1uZTUPGvWTufr2/uixAZP7E=; fh=zAsrgsNUUhEM+h81IN6wVsf+PVxIoj8Mz8eACRzUAAE=; b=UdMuKNjOn23CQp0ltVgECl7BtAlNafRElSc3579eP0eG6vJVQn4zdvLr8RLb9VJ9F+ E8Xmo659vwWBvxuSQLVMqlKkplga81e5pkQSJBVR3P8+VUcamHQnjxrepOU3AkyCu9t0 JiBrek1PkjHVMp6Zl6qnW1hIYYHFtzjhmQ99OYjBB1i0gZkwaK9E/Rkeg1QI5xLTYCqS ISCZrSpDRXhmvYM0pgjG+XB/+R8gcF430Tlv8Q/nBSly22fcKWFGgIyF+NvUHrncrDv6 F8ehJUo7zKFqkp8x7jVHfYLmm2p3qAK7jkUvaFxxLZufzcPjpyQqV4+8OW2wV7pEYdI3 X0Og==; darn=ietf.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1785367806; x=1785972606; darn=ietf.org; h=content-type:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:from:to:cc:subject:date:message-id:reply-to :content-type; bh=3kCjDBo1LremKlZgdrcJ1uZTUPGvWTufr2/uixAZP7E=; b=BO4qnZTbIpXNukC5EkPKh9/McsNCvUKWg56O3+kdYydKkyyeFMwpRM3u+0hDFtS8XC Vecx/CqEQVqf2HfVksEhlSqp1bTMr3Zg6wkyErGxVGbmRy637Os18sXqpTILq7DGT/Xe QYEmnhUIKUzjRQ/mDE+MYdubgnj9HC/ikIilM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785367806; x=1785972606; h=content-type:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to:content-type; bh=3kCjDBo1LremKlZgdrcJ1uZTUPGvWTufr2/uixAZP7E=; b=qZv+IYmcXhmDwdFrN3UFb4av4VLXaoRSqmhAjiyeXDrTtEVd1bzTquCK347QBI+CeB dknmV23P6n/Jo6mzxTp1Z8rOzI/nRiHWrzyhescOptw9lH1jqcSKpjlYFm/TSI1a/BTp dCCm2xF2zY8ta4DtkIy2mrTwbhHrq7QRXApN29an9MlmhNQh16EPI+KZ4yfuiFslAsCY eJa+19ySqobbtczzXaONeueykFsTMkFjZrePtlA2XcrtSL8B3YYdembGtSj4Sligfaba Zd/U4amEXcmJHPZ1XkrSOu4A0KufsLjx7tdGnf/N5ry45xsCcwPzB5hbILryAikmWIFj 1WYw==
X-Forwarded-Encrypted: i=1; AHgh+RoUo3YuSvS2q+VC4PSglpyHE1pLAbJT1Pf1ZValdp6fH8r2DVKJnzj5qQqHy26lvlmX2p4GRa4=@ietf.org
X-Gm-Message-State: AOJu0YyuDY0n07dQm4kw44p8ffCHOEAi4e5SjgrzyjZ+oh0Fb1bV6QnO 2kmypYTl99M/HAkgs88Ultr+qWNmWcgU3rCL7jbFBgjhjE2bRAsOQlT6wUUVS9UBExUEKFahXGB 7ijGSjmYBx9DsXkKqvfsRePjB3mR/wz+M8uo9Z7wm
X-Gm-Gg: AR+sD11/wkjHx06EOsWt2GKZ2NqHZHyxfE/MeOKzTI/BeM6v1G9BQMDaTPRC/IEkeOA EV7vY0t+RpF9hGVE1O2xbWQ69K/BxNbr+upjEgJ5D1OpPYdP/rAzOcf9dCExTdyQMsPFCQWPyIk tsiZeUbgbXmkCBbORIi/pLD4gemO7gAku0t6PNDKwXkazeKt0SqQ5XeRAqYaa8mIIfc3nBM6x96 CHvV4OMT9dxW6xcY5RRn89WldX1Sqe0dDrb/H3DuiYc4YxTTiMwAimrZPJmRPt5fgidC4tKcl9/ BfvkoQazRMqjFkKRlixVEcVzTAFPxdm+JR3gEjM/JaDkqs83W1Ok+MOzwSFblCOR3xxunMFUH/P bA4c=
X-Received: by 2002:a05:6a21:99a3:b0:3bf:6237:b1b3 with SMTP id adf61e73a8af0-3c90066d59cmr116234637.42.1785367805663; Wed, 29 Jul 2026 16:30:05 -0700 (PDT)
MIME-Version: 1.0
References: <178474271640.543100.12196993780439829682@dt-datatracker-d4d6ff9d9-fsx7d> <e4c1497d-927b-48fc-b255-6302f6243ef3@gmx.de> <CAMZNYAN0CYeMUga7YFqRgPqPBdzSJAM_mCnbb=FuSB3MFyzbVQ@mail.gmail.com> <Oycw3wk--Z-9@cbonnell.com>
In-Reply-To: <Oycw3wk--Z-9@cbonnell.com>
From: Nidhi Jaju <nidhijaju@chromium.org>
Date: Thu, 30 Jul 2026 08:29:54 +0900
X-Gm-Features: AUfX_myDvE8cxkIDasoOa6bTykvHTw3EHpmVIh14sBC_orzIS7xRfk3wCaxv89g
Message-ID: <CAMZNYANM5fCGGrvHL585rhmzp4m-nYuYqsZ7P3CXxgOk4d4d1A@mail.gmail.com>
To: Corey Bonnell <dev@cbonnell.com>
Content-Type: multipart/alternative; boundary="000000000000d9a8cd0657c855e8"
Message-ID-Hash: KETKTMOPH46N2KGOWFTTQAKRZUOFEH5E
X-Message-ID-Hash: KETKTMOPH46N2KGOWFTTQAKRZUOFEH5E
X-MailFrom: nidhijaju@chromium.org
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-secdir.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: Ietf Http Wg <ietf-http-wg@w3.org>, Secdir <secdir@ietf.org>, Last Call <last-call@ietf.org>, Draft-ietf-httpbis-no-vary-search All <draft-ietf-httpbis-no-vary-search.all@ietf.org>, Julian Reschke <julian.reschke@gmx.de>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [secdir] Re: draft-ietf-httpbis-no-vary-search-06 ietf last call Secdir review
List-Id: Security Area Directorate <secdir.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/secdir/Bo9-HPrWjRdW6SdrOJjTNUxnxiI>
List-Archive: <https://mailarchive.ietf.org/arch/browse/secdir>
List-Help: <mailto:secdir-request@ietf.org?subject=help>
List-Owner: <mailto:secdir-owner@ietf.org>
List-Post: <mailto:secdir@ietf.org>
List-Subscribe: <mailto:secdir-join@ietf.org>
List-Unsubscribe: <mailto:secdir-leave@ietf.org>

On Tue, Jul 28, 2026 at 10:36 PM Corey Bonnell <dev@cbonnell.com> wrote:

> Hi Nidhi,
> Thanks for the PR. I reviewed and have two follow-up items for your
> consideration:
>
>
>    1. If a key name in No-Vary-Search is a percent-encoded string
>    normalized using NFD but the actual URI presents the query param as
>    normalized using NFC, what is behavior? I assume they will not match
>    (assuming there's at least one code point that encodes differently under
>    the two normalization forms), but it is worth being explicit on the
>    expectation here.
>
> Added a note in the PR clarifying that no Unicode normalization is
performed during comparison, so strings like ?a=é (NFC) and ?a=é (NFD)
will not match.

>
>    1. I think this draft needs to update RFC 9110 given the change in
>    normative guidance in section 7.
>
> Given that this document is using a well-established extension mechanism
for HTTP in the form of a new header field, I don't think that we usually
mark every new header field that adjusts implementation behaviors as
updating the main HTTP semantics document (RFC 9110).

This aligns with https://wiki.ietf.org/group/iesg/useofupdatestag, although
that draft didn't achieve sufficient consensus to ever be posted. The part
about "Normative updates that do not use a known extension point should
always include an “Updates” header. Extensions that do use known extension
points do not typically need to include the “Updates” header" seems to
align with current practice. This is an extension using an extremely
commonly used extension point that implementers of HTTP semantics don't
need to be aware of unless they also support the new extension indicated by
the header field.

In case you meant RFC 9111 (HTTP Caching): You're right that an earlier
draft of Section 7 explicitly "replaced" normative text from Section 4 of
RFC 9111. However, based on your earlier feedback, I actually rewrote
Section 7 in the PR to remove that normative replacement language. It now
simply states that if a cache chooses to implement this extension, the RFC
9111 matching requirement is also satisfied.

Best,
Nidhi


> Thanks,
> Corey
>
>
>
> Jul 28, 2026, 04:18 by nidhijaju@chromium.org:
>
> Hi Corey,
>
> Thank you for the review. I've uploaded a PR to address the comments here:
> https://github.com/httpwg/http-extensions/pull/3500.
> Please let me know if you have any additional feedback.
>
> Best regards,
> Nidhi Jaju
>
> On Thu, Jul 23, 2026 at 6:48 PM Julian Reschke <julian.reschke@gmx.de>
> wrote:
>
> Am 22.07.2026 um 19:51 schrieb Corey Bonnell via Datatracker:
> > ...
> > A few other comments outside the Security Considerations:
> > 1. Since Section 7 of this document replaces text in Section 4 of RFC
> 9111, I
> > would expect that this document updates RFC 9111. 2. Section 5.3 scopes
> the
> > algorithm to ASCII inputs ("To parse a key given an ASCII string
> keyString:"),
> > but the examples in 5.3.1 all contain non-ASCII code points.
> > ...
>
> 1) "Extends" would be less concerning. From this perspective, using an
> actual extension point would be great; but that point would be
> "Cache-Control". There are lots of components that fail for complex
> field values (right?), but maybe this would be a reason for developers
> to actually fix their code.
>
> Also, maybe it would be better if the change would be as self-contained
> as possible, such as just re-defining what "matching" means (that
> wouldn't require to patch the actual algorithm. Maybe a caching expert
> could chime in? Mark? Willy?
>
> 2. On the HTTP layer, this is all ASCII. Non-ASCII comes in only when
> things are passed up to the UA. Maybe this needs some clarification.
>
>
> Thanks for the suggestions, Julian. I've included these in the PR above.
>
>
>
> Best regards, Julian
>
>
>
>