<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.23 (Ruby 3.3.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-schinazi-masque-proxy-05" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.27.0 -->
  <front>
    <title>The MASQUE Proxy</title>
    <seriesInfo name="Internet-Draft" value="draft-schinazi-masque-proxy-05"/>
    <author initials="D." surname="Schinazi" fullname="David Schinazi">
      <organization>Google LLC</organization>
      <address>
        <postal>
          <street>1600 Amphitheatre Parkway</street>
          <city>Mountain View</city>
          <region>CA</region>
          <code>94043</code>
          <country>United States of America</country>
        </postal>
        <email>dschinazi.ietf@gmail.com</email>
      </address>
    </author>
    <date year="2025" month="February" day="19"/>
    <keyword>masque</keyword>
    <keyword>proxy</keyword>
    <keyword>kuzh</keyword>
    <abstract>
      <?line 35?>

<t>MASQUE (Multiplexed Application Substrate over QUIC Encryption) is a set of
protocols and extensions to HTTP that allow proxying all kinds of Internet
traffic over HTTP. This document defines the concept of a "MASQUE Proxy", an
Internet-accessible node that can relay client traffic in order to provide
privacy guarantees.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://davidschinazi.github.io/masque-drafts/draft-schinazi-masque-proxy.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-schinazi-masque-proxy/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/DavidSchinazi/masque-drafts"/>.</t>
    </note>
  </front>
  <middle>
    <?line 43?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>In the early days of HTTP, requests and responses weren't encrypted. In order
to add features such as caching, HTTP proxies were developed to parse HTTP
requests from clients and forward them on to other HTTP servers. As SSL/TLS
became more common, the CONNECT method was introduced <xref target="CONNECT"/> to
allow proxying SSL/TLS over HTTP. That gave HTTP the ability to create tunnels
that allow proxying any TCP-based protocol. While non-TCP-based protocols were
always prevalent on the Internet, the large-scale deployment of QUIC
<xref target="QUIC"/> meant that TCP no longer represented the majority of Internet
traffic. Simultaneously, the creation of HTTP/3 <xref target="H3"/> allowed running HTTP
over a non-TCP-based protocol. In particular, QUIC allows disabling loss
recovery <xref target="DGRAM"/> and that can then be used in HTTP
<xref target="HTTP-DGRAM"/>. This confluence of events created both the possibility
and the necessity for new proxying technologies in HTTP.</t>
      <t>This led to the creation of MASQUE (Multiplexed Application Substrate over QUIC
Encryption). MASQUE allows proxying both UDP (<xref target="CONNECT-UDP"/>) and IP
(<xref target="CONNECT-IP"/>) over HTTP. While MASQUE has uses beyond improving
user privacy, its focus and design are best suited for protecting sensitive
information.</t>
    </section>
    <section anchor="privacy-protections">
      <name>Privacy Protections</name>
      <t>There are currently multiple usage scenarios that can benefit from using a
MASQUE Proxy.</t>
      <section anchor="protection-from-web-servers">
        <name>Protection from Web Servers</name>
        <t>Connecting directly to Web servers allows them to access the public IP address
of the user. There are many privacy concerns relating to user IP addresses
<xref target="IP-PRIVACY"/>. Because of
these, many user agents would rather not establish a direct connection to Web
servers. They can do that by running their traffic through a MASQUE Proxy. The
Web server will only see the IP address of the MASQUE Proxy, not that of the
client.</t>
      </section>
      <section anchor="protection-from-network-providers">
        <name>Protection from Network Providers</name>
        <t>Some users may wish to obfuscate the destination of their network traffic from
their network provider. This prevents network providers from using data
harvested from this network traffic in ways the user did not intend.</t>
      </section>
      <section anchor="partitioning">
        <name>Partitioning</name>
        <t>While routing traffic through a MASQUE proxy reduces the network provider's
ability to observe traffic, that information is transfered to the proxy
operator. This can be suitable for some threat models, but for the majority of
users transferring trust from their network provider to their proxy (or VPN)
provider is not a meaningful security improvement.</t>
        <t>There is a technical solution that allows resolving this issue: it is possible
to nest MASQUE tunnels such that traffic flows through multiple MASQUE proxies.
This has the advantage of partitioning sensitive information to prevent
correlation <xref target="PARTITION"/>.</t>
        <t>Though the idea of nested tunnels dates back decades <xref target="TODO"/>, MASQUE now
allows running HTTP/3 end-to-end from a user agent to an origin via multiple
nested CONNECT-UDP tunnels. The proxy closest to the user can see the user's IP
address but not the origin, whereas the other proxy can see the origin without
knowing the user's IP address. If the two proxies are operated by non-colluding
entities, this allows hiding the user's IP address from the origin without the
proxies knowing the user's browsing history.</t>
      </section>
      <section anchor="obfuscation">
        <name>Obfuscation</name>
        <t>The fact that MASQUE is layered over HTTP makes it much more resilient to
detection. To network observers, the unencrypted bits in a QUIC connection used
for MASQUE are indistinguishable from those of a regular Web browsing
connection. Separately, if paired with a non-probeable HTTP authentication
scheme <xref target="CONCEALED-AUTH"/>, any Web server can also become a MASQUE
proxy while remaining indistinguishable from a regular Web server. It might
still be possible to detect some level of MASQUE usage by analyzing encrypted
traffic patterns, however the cost of performing such an analysis at scale
makes it impractical.</t>
        <t>This allows MASQUE to operate on networks that disallow VPNs by using a
combination of protocol detection and blocklists.</t>
      </section>
    </section>
    <section anchor="related-technologies">
      <name>Related Technologies</name>
      <t>This section discusses how MASQUE fits in with other contemporary
privacy-focused IETF protocols.</t>
      <section anchor="ohttp">
        <name>OHTTP</name>
        <t>Oblivious HTTP <xref target="OHTTP"/> uses a cryptographic primitive
<xref target="HPKE"/> that is more lightweight than TLS <xref target="TLS"/>, making it
a great fit for decorrelating HTTP requests. In traditional Web browsing, the
user agent will often make many requests to the same origin (e.g., to load
HTML, style sheets, images, scripts) and those requests are correlatable since
the origin can include identifying query parameters to join separate requests.
In such scenarios, MASQUE is a better fit since it operates at the granularity
of a connection. However, there are scenarios where a user agent might want to
make non-correlatable requests (e.g., to anonymously report telemetry); for
those, OHTTP provides better efficiency than using MASQUE with a separate
connection per request. While OHTTP and MASQUE are separate technologies that
serve different use cases, they can be colocated on the same HTTP server that
acts as both a MASQUE Proxy and an OHTTP Relay.</t>
      </section>
      <section anchor="doh">
        <name>DoH</name>
        <t>DNS over HTTPS <xref target="DoH"/> allows encrypting DNS traffic by sending it
through an encrypted HTTP connection. Colocating a DoH server with a MASQUE IP
proxy provides better performance than using DNS over port 53 inside the
encrypted tunnel.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Implementers of a MASQUE proxy need to review the Security Considerations of
the documents referenced by this one.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <displayreference target="H3" to="HTTP/3"/>
    <references anchor="sec-informative-references">
      <name>Informative References</name>
      <reference anchor="H3">
        <front>
          <title>HTTP/3</title>
          <author fullname="M. Bishop" initials="M." role="editor" surname="Bishop"/>
          <date month="June" year="2022"/>
          <abstract>
            <t>The QUIC transport protocol has several features that are desirable in a transport for HTTP, such as stream multiplexing, per-stream flow control, and low-latency connection establishment. This document describes a mapping of HTTP semantics over QUIC. This document also identifies HTTP/2 features that are subsumed by QUIC and describes how HTTP/2 extensions can be ported to HTTP/3.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9114"/>
        <seriesInfo name="DOI" value="10.17487/RFC9114"/>
      </reference>
      <reference anchor="TODO">
        <front>
          <title>find that 20 year old email about using nested CONNECT tunnels with SSL to improve privacy</title>
          <author>
            <organization/>
          </author>
          <date/>
        </front>
      </reference>
      <reference anchor="CONNECT">
        <front>
          <title>Upgrading to TLS Within HTTP/1.1</title>
          <author fullname="R. Khare" initials="R." surname="Khare"/>
          <author fullname="S. Lawrence" initials="S." surname="Lawrence"/>
          <date month="May" year="2000"/>
          <abstract>
            <t>This memo explains how to use the Upgrade mechanism in HTTP/1.1 to initiate Transport Layer Security (TLS) over an existing TCP connection. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="2817"/>
        <seriesInfo name="DOI" value="10.17487/RFC2817"/>
      </reference>
      <reference anchor="QUIC">
        <front>
          <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
          <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
          <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
          <date month="May" year="2021"/>
          <abstract>
            <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9000"/>
        <seriesInfo name="DOI" value="10.17487/RFC9000"/>
      </reference>
      <reference anchor="DGRAM">
        <front>
          <title>An Unreliable Datagram Extension to QUIC</title>
          <author fullname="T. Pauly" initials="T." surname="Pauly"/>
          <author fullname="E. Kinnear" initials="E." surname="Kinnear"/>
          <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
          <date month="March" year="2022"/>
          <abstract>
            <t>This document defines an extension to the QUIC transport protocol to add support for sending and receiving unreliable datagrams over a QUIC connection.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9221"/>
        <seriesInfo name="DOI" value="10.17487/RFC9221"/>
      </reference>
      <reference anchor="HTTP-DGRAM">
        <front>
          <title>HTTP Datagrams and the Capsule Protocol</title>
          <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
          <author fullname="L. Pardue" initials="L." surname="Pardue"/>
          <date month="August" year="2022"/>
          <abstract>
            <t>This document describes HTTP Datagrams, a convention for conveying multiplexed, potentially unreliable datagrams inside an HTTP connection.</t>
            <t>In HTTP/3, HTTP Datagrams can be sent unreliably using the QUIC DATAGRAM extension. When the QUIC DATAGRAM frame is unavailable or undesirable, HTTP Datagrams can be sent using the Capsule Protocol, which is a more general convention for conveying data in HTTP connections.</t>
            <t>HTTP Datagrams and the Capsule Protocol are intended for use by HTTP extensions, not applications.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9297"/>
        <seriesInfo name="DOI" value="10.17487/RFC9297"/>
      </reference>
      <reference anchor="CONNECT-UDP">
        <front>
          <title>Proxying UDP in HTTP</title>
          <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
          <date month="August" year="2022"/>
          <abstract>
            <t>This document describes how to proxy UDP in HTTP, similar to how the HTTP CONNECT method allows proxying TCP in HTTP. More specifically, this document defines a protocol that allows an HTTP client to create a tunnel for UDP communications through an HTTP server that acts as a proxy.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9298"/>
        <seriesInfo name="DOI" value="10.17487/RFC9298"/>
      </reference>
      <reference anchor="CONNECT-IP">
        <front>
          <title>Proxying IP in HTTP</title>
          <author fullname="T. Pauly" initials="T." role="editor" surname="Pauly"/>
          <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
          <author fullname="A. Chernyakhovsky" initials="A." surname="Chernyakhovsky"/>
          <author fullname="M. Kühlewind" initials="M." surname="Kühlewind"/>
          <author fullname="M. Westerlund" initials="M." surname="Westerlund"/>
          <date month="October" year="2023"/>
          <abstract>
            <t>This document describes how to proxy IP packets in HTTP. This protocol is similar to UDP proxying in HTTP but allows transmitting arbitrary IP packets. More specifically, this document defines a protocol that allows an HTTP client to create an IP tunnel through an HTTP server that acts as an IP proxy. This document updates RFC 9298.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9484"/>
        <seriesInfo name="DOI" value="10.17487/RFC9484"/>
      </reference>
      <reference anchor="IP-PRIVACY">
        <front>
          <title>IP Address Privacy Considerations</title>
          <author fullname="Matthew Finkel" initials="M." surname="Finkel">
            <organization>Apple Inc.</organization>
          </author>
          <author fullname="Bradford Lassey" initials="B." surname="Lassey">
            <organization>Google</organization>
          </author>
          <author fullname="Luigi Iannone" initials="L." surname="Iannone">
            <organization>Huawei Technologies France S.A.S.U</organization>
          </author>
          <author fullname="Brad Chen" initials="B." surname="Chen">
            <organization>Google</organization>
          </author>
          <date day="23" month="October" year="2022"/>
          <abstract>
            <t>   This document provides an overview of privacy considerations related
   to user IP addresses.  It includes an analysis of some current use
   cases for tracking of user IP addresses, mainly in the context of
   anti-abuse.  It discusses the privacy issues associated with such
   tracking and provides input on mechanisms to improve the privacy of
   this existing model.  It then captures requirements for proposed
   'replacement signals' for IP addresses from this analysis.  In
   addition, existing and under-development techniques are evaluated for
   fulfilling these requirements.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-irtf-pearg-ip-address-privacy-considerations-01"/>
      </reference>
      <reference anchor="PARTITION">
        <front>
          <title>Partitioning as an Architecture for Privacy</title>
          <author fullname="M. Kühlewind" initials="M." surname="Kühlewind"/>
          <author fullname="T. Pauly" initials="T." surname="Pauly"/>
          <author fullname="C. A. Wood" initials="C. A." surname="Wood"/>
          <date month="July" year="2024"/>
          <abstract>
            <t>This document describes the principle of privacy partitioning, which selectively spreads data and communication across multiple parties as a means to improve privacy by separating user identity from user data. This document describes emerging patterns in protocols to partition what data and metadata is revealed through protocol interactions, provides common terminology, and discusses how to analyze such models.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9614"/>
        <seriesInfo name="DOI" value="10.17487/RFC9614"/>
      </reference>
      <reference anchor="CONCEALED-AUTH">
        <front>
          <title>The Concealed HTTP Authentication Scheme</title>
          <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
          <author fullname="D. Oliver" initials="D." surname="Oliver"/>
          <author fullname="J. Hoyland" initials="J." surname="Hoyland"/>
          <date month="February" year="2025"/>
          <abstract>
            <t>Most HTTP authentication schemes are probeable in the sense that it is possible for an unauthenticated client to probe whether an origin serves resources that require authentication. It is possible for an origin to hide the fact that it requires authentication by not generating Unauthorized status codes; however, that only works with non-cryptographic authentication schemes: cryptographic signatures require a fresh nonce to be signed. Prior to this document, there was no existing way for the origin to share such a nonce without exposing the fact that it serves resources that require authentication. This document defines a new non-probeable cryptographic authentication scheme.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9729"/>
        <seriesInfo name="DOI" value="10.17487/RFC9729"/>
      </reference>
      <reference anchor="OHTTP">
        <front>
          <title>Oblivious HTTP</title>
          <author fullname="M. Thomson" initials="M." surname="Thomson"/>
          <author fullname="C. A. Wood" initials="C. A." surname="Wood"/>
          <date month="January" year="2024"/>
          <abstract>
            <t>This document describes Oblivious HTTP, a protocol for forwarding encrypted HTTP messages. Oblivious HTTP allows a client to make multiple requests to an origin server without that server being able to link those requests to the client or to identify the requests as having come from the same client, while placing only limited trust in the nodes used to forward the messages.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9458"/>
        <seriesInfo name="DOI" value="10.17487/RFC9458"/>
      </reference>
      <reference anchor="HPKE">
        <front>
          <title>Hybrid Public Key Encryption</title>
          <author fullname="R. Barnes" initials="R." surname="Barnes"/>
          <author fullname="K. Bhargavan" initials="K." surname="Bhargavan"/>
          <author fullname="B. Lipp" initials="B." surname="Lipp"/>
          <author fullname="C. Wood" initials="C." surname="Wood"/>
          <date month="February" year="2022"/>
          <abstract>
            <t>This document describes a scheme for hybrid public key encryption (HPKE). This scheme provides a variant of public key encryption of arbitrary-sized plaintexts for a recipient public key. It also includes three authenticated variants, including one that authenticates possession of a pre-shared key and two optional ones that authenticate possession of a key encapsulation mechanism (KEM) private key. HPKE works for any combination of an asymmetric KEM, key derivation function (KDF), and authenticated encryption with additional data (AEAD) encryption function. Some authenticated variants may not be supported by all KEMs. We provide instantiations of the scheme using widely used and efficient primitives, such as Elliptic Curve Diffie-Hellman (ECDH) key agreement, HMAC-based key derivation function (HKDF), and SHA2.</t>
            <t>This document is a product of the Crypto Forum Research Group (CFRG) in the IRTF.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9180"/>
        <seriesInfo name="DOI" value="10.17487/RFC9180"/>
      </reference>
      <reference anchor="TLS">
        <front>
          <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
          <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
          <date month="August" year="2018"/>
          <abstract>
            <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
            <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8446"/>
        <seriesInfo name="DOI" value="10.17487/RFC8446"/>
      </reference>
      <reference anchor="DoH">
        <front>
          <title>DNS Queries over HTTPS (DoH)</title>
          <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
          <author fullname="P. McManus" initials="P." surname="McManus"/>
          <date month="October" year="2018"/>
          <abstract>
            <t>This document defines a protocol for sending DNS queries and getting DNS responses over HTTPS. Each DNS query-response pair is mapped into an HTTP exchange.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8484"/>
        <seriesInfo name="DOI" value="10.17487/RFC8484"/>
      </reference>
    </references>
    <?line 161?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>MASQUE was originally inspired directly or indirectly by prior work from many
people. The author would like to thank <contact fullname="Nick Harper"/>,
<contact fullname="Christian Huitema"/>, <contact fullname="Marcus Ihlar"/>, <contact fullname="Eric Kinnear"/>,
<contact fullname="Mirja Kuehlewind"/>, <contact fullname="Brendan Moran"/>, <contact fullname="Lucas Pardue"/>,
<contact fullname="Tommy Pauly"/>, <contact fullname="Zaheduzzaman Sarker"/> and <contact fullname="Ben Schwartz"/> for their
input.</t>
      <t>In particular, the probing resistance component of MASQUE came from a
conversation with <contact fullname="Chris A. Wood"/> as we were preparing a draft for an
upcoming Thursday evening BoF.</t>
      <t>All of the MASQUE enthusiasts and other contributors to the MASQUE working
group are to thank for the successful standardization of <xref target="HTTP-DGRAM"/>,
<xref target="CONNECT-UDP"/>, and <xref target="CONNECT-IP"/>.</t>
      <t>The author would like to express immense gratitude to Christophe A., an
inspiration and true leader of VPNs.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
