<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Encrypted Client Hello on Nalar</title>
    <link>https://nalar.dev/tags/encrypted-client-hello/</link>
    <description>Recent content in Encrypted Client Hello on Nalar</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Thu, 24 Sep 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://nalar.dev/tags/encrypted-client-hello/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Encrypted Client Hello Keeps Sensitive TLS Metadata Inside the Inner ClientHello</title>
      <link>https://nalar.dev/encrypted-client-hello-keeps-sensitive-tls-metadata-inside-the-inner-clienthello/</link>
      <pubDate>Thu, 24 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://nalar.dev/encrypted-client-hello-keeps-sensitive-tls-metadata-inside-the-inner-clienthello/</guid>
      <description>&lt;p&gt;TLS 1.3 encrypts most handshake messages after &lt;code&gt;ServerHello&lt;/code&gt;, but the initial &lt;code&gt;ClientHello&lt;/code&gt; is sent before those handshake keys exist. That leaves fields in the first flight visible to an observer on the network. Server Name Indication (SNI) is especially revealing because it can identify the requested service even when the later certificate and application traffic are encrypted.&lt;/p&gt;&#xA;&lt;p&gt;RFC 9849 defines Encrypted Client Hello (ECH) to narrow that exposure. ECH does not encrypt the entire first packet. It constructs two ClientHello messages with different roles: a private &lt;code&gt;ClientHelloInner&lt;/code&gt; containing the connection parameters intended for the backend, and a public &lt;code&gt;ClientHelloOuter&lt;/code&gt; that carries an encrypted representation of the inner message.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
