Mozilla je napovedala vključitev podpore za uporabnike stabilne veje Firefoxa za mehanizem ECH (Encrypted Client Hello), ki nadaljuje razvoj tehnologije ESNI (Encrypted Server Name Indication) in je zasnovan za šifriranje informacij o parametrih sej TLS , kot je zahtevano ime domene. Koda za delo z ECH je bila prvotno dodana izdaji Firefoxa 85, vendar je bila privzeto onemogočena. Chrome je postopoma začel vključevati podporo za ECH, začenši z izdajo Chroma 115.
Ker poleg povezovanja z strežnik Zahtevani podatki o domeni so razkriti prek DNS-a. Za popolno zaščito morate poleg ECH-ja uporabiti tudi DNS prek HTTPS-ja ali DNS prek TLS-ja za šifriranje prometa DNS. Firefox ne bo uporabljal ECH-ja, če v nastavitvah ne omogočite DNS prek HTTPS-ja. Podporo za ECH v svojem brskalniku lahko preverite na tej strani.
Eden od dejavnikov, ki je privzeto omogočil podporo ECH v Firefoxu, je bila vključitev podpore ECH s strani Cloudflare v svoje omrežje za dostavo vsebine pred nekaj dnevi. S praktične strani, ker so podatki o zahtevanih gostiteljih pri uporabi ECH skriti pred analizo, bo filtriranje in blokiranje neželenih spletnih mest z uporabo Cloudflare CDN zdaj zahtevalo blokiranje celotnega omrežja Cloudflare, blokiranje vseh zahtev iz ECH ali organiziranje prestrezanja HTTPS z lažnimi korenskimi potrdili. na uporabniškem sistemu.
Sprva je bila za organizacijo dela na enem naslovu IP več spletnih mest HTTPS uporabljena razširitev TLS SNI, v kateri je bilo ime zahtevanega gostitelja navedeno v sporočilu ClientHello, poslanem pred vzpostavitvijo šifriranega komunikacijskega kanala. Ta funkcija je omogočila porazdelitev zahtev po virtualnih gostiteljih v zgodnji fazi obdelave povezave, hkrati pa je na strani ponudnika internetnih storitev omogočila selektivno filtriranje prometa HTTPS in analizo, katera spletna mesta uporabnik odpre, kar ni omogočilo doseganja popolne zaupnosti pri uporabi HTTPS.
Da bi rešili to težavo in preprečili uhajanje informacij o zahtevanem mestu, je bila kasneje predlagana razširitev ESNI, ki izvaja šifriranje podatkov z imenom gostitelja. Med implementacijo ESNI se je izkazalo, da predlagani mehanizem ne pokriva vseh možnih virov uhajanja podatkov gostitelja in njegova uporaba ne zadostuje za zagotovitev popolne zaupnosti sej HTTPS. Zlasti pri nadaljevanju predhodno vzpostavljene seje je ime domene v čistem besedilu še naprej navedeno med parametri razširitve TLS PSK (pre-Shared Key). Poleg tega so prizadevanja za implementacijo ESNI odkrila težave z združljivostjo in skaliranjem, ki so preprečile široko sprejetje ESNI.
Ob upoštevanju ugotovljenih pomanjkljivosti ESNI je bil razvit nov univerzalni mehanizem ECH, ki omogoča šifriranje parametrov katere koli razširitve TLS. Tehnično je glavna razlika med ECH in ESNI ta, da je namesto posameznih polj šifrirano celotno sporočilo ClientHello hkrati. ECH vključuje razdelitev ClientHello na dve ločeni sporočili – šifrirano sporočilo ClientHelloInner (SNI Inner) in nešifrirano osnovno sporočilo ClientHelloOuter (SNI Outer). Nešifrirani zunanji SNI nosi podatke, ki niso zasebni, kot je različica TLS in seznam uporabljenih šifer, kot tudi skupno ime domene, ki se ne prekriva z dejanskim imenom zahtevane domene. Na primer, za vse odjemalce Cloudflare nešifrirani SNI Outer določa skupnega gostitelja "cloudflare-ech.com", vendar se dejansko ime zahtevanega gostitelja prenaša v šifriranem SNI Inner in ni na voljo za analizo.

ECH uporablja tudi drugačno shemo distribucije šifrirnih ključev: informacije o javnem ključu se prenašajo v zapisih DNS HTTPSSVC in ne v zapisih TXT. Za pridobitev in šifriranje ključa se uporablja overjeno šifriranje od konca do konca, ki temelji na mehanizmu HPKE (Hybrid Public Key Encryption). ECH podpira tudi varno ponovno pošiljanje ključa s strežnika, kar se lahko uporabi v primeru rotacije ključa. strežnika in za odpravo težav s pridobivanjem zastarelih ključev iz predpomnilnika DNS.
Vir: opennet.ru
