コンテンツへスキップ
uencoder

ESNI

ESNI(Encrypted SNI)は TLS ClientHello の SNI を暗号化し、経路上の観察者にアクセス先ホストが見えるのを防ぐ。

目的

TLS ハンドシェイクで対象ホスト名を隠し、受動的な盗聴者がユーザーの訪問ドメインを知れないようにしてプライバシーを強化する。

メカニズム

クライアントはサーバーの ESNI 公開鍵(DNS の HTTPS RR 経由で取得)で ClientHello の SNI 拡張を暗号化する。サーバーはそれを復号して証明書を選ぶ。後に標準化された ECH に取って代わられた。

ユースケース

  • TLS ハンドシェイクのプライバシー
  • SNI の暗号化
  • パッシブ監視への防御

関連ツール

References