Verze Chrome 91

Společnost Google představila verzi webového prohlížeče Chrome 91. Současně je k dispozici stabilní vydání svobodného projektu Chromium, na kterém Chrome založen. Prohlížeč Chrome se vyznačuje používáním log za Google, systémem zasílání upozornění v případě pádu, moduly pro přehrávání chráněného video obsahu (DRM), automatickým aktualizačním systémem a přenosem parametrů RLZ při vyhledávání. Další vydání Chrome 92 je naplánováno na 20. července.

Hlavní změny v Chrome 91:

  • Byla zavedena možnost zastavit vykonávání JavaScriptu ve sbalené skupině karet. V Chrome 85 byla zavedena podpora slučování karet do skupin, které mohou být spojeny s určitou barvou a štítkem. Po kliknutí na štítek skupiny se příslušné karty sbalí a místo nich zůstane pouze jeden štítek (opakované kliknutí na štítek skupinu rozbalí). V novém vydání s cílem snížit zátěž CPU a šetřit energii byla zavedena pozastavení aktivity ve sbalených kartách. Výjimka byla učiněna pouze pro karty, ve kterých se reprodukuje zvuk, používá se API Web Locks nebo IndexedDB, je navázáno spojení s USB zařízením, probíhá zachytávání videa, zvuku nebo obsahu oken. Změna bude postupně zaváděna, počínaje malým procentem uživatelů.
  • Byla zavedena podpora metody vyjednávání klíčů, odolné vůči útokům kvantových počítačů. Kvantové počítače radikálně rychleji řeší úlohu rozkladu přirozeného čísla na prvočinitele, která leží v základu současných asymetrických šifrovacích algoritmů a efektivně není řešitelná na klasických procesorech. Pro použití v TLSv1.3 je dostupný plugin CECPQ2 (Combined Elliptic-Curve and Post-Quantum 2), který kombinuje klasický mechanismus výměny klíčů X25519 se schématem HRSS, založeným na algoritmu NTRU Prime, vyvinutém pro postkvantové kryptosystémy.
  • Byla plně ukončena podpora protokolů TLS 1.0 a TLS 1.1, které byly převedeny výborem IETF (Internet Engineering Task Force) do kategorie zastaralých. Mezi tím byla odstraněna možnost vrátit TLS 1.0/1.1 změnou politiky SSLVersionMin.
  • V sestavách pro platformu Linux je zahrnuto používání režimu „DNS over HTTPS“ (DoH), který byl dříve zpřístupněn uživatelům Windows, macOS, ChromeOS a Android. DNS-over-HTTPS bude automaticky aktivován pro uživatele, jejichž nastavení obsahují DNS poskytovatele podporující tuto technologii (pro DNS-over-HTTPS se používá stejný poskytovatel jako pro DNS). Například, pokud má uživatel v systémových nastaveních uvedeno DNS 8.8.8.8, pak v prohlížeči Chrome bude aktivována DNS-over-HTTPS služba Google („https://dns.google.com/dns-query“), pokud je DNS 1.1.1.1, pak služba DNS-over-HTTPS Cloudflare („https://cloudflare-dns.com/dns-query“) atd.
  • Na seznam zakázaných síťových portů byl přidán port 10080, který se používá v zálohování Amanda a VMWare vCenter. Dříve byly již zablokovány porty 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 a 6566. Pro porty na černé listině je blokováno odesílání HTTP, HTTPS a FTP požadavků s cílem ochrany před útokem NAT slipstreaming, který umožňuje při otevření speciálně připravené útočníkem webové stránky v prohlížeči navázat síťové spojení se serverem útočníka na libovolný UDP nebo TCP port v systému uživatele, a to i přes použití interního rozsahu adres (192.168.x.x, 10.x.x.x).
  • Byla poskytnuta možnost nastavení automatického spuštění samostatných webových aplikací (PWA — Progressive Web Apps) při přihlášení uživatele do systému (Windows a macOS). Automatické spuštění se nastavuje na stránce chrome://apps. Funkčnost je zatím testována na malém procentu uživatelů a pro ostatní vyžaduje aktivaci nastavení „chrome://flags/#enable-desktop-pwas-run-on-os-login“.
  • V rámci snahy o překlad prohlížeče na použití inkluzivní terminologie byl soubor „master_preferences“ přejmenován na „initial_preferences“. Pro zachování kompatibility bude podpora „master_preferences“ ještě nějakou dobu zachována v prohlížeči. Prohlížeč se již dříve zbavil používání výrazu „whitelist“, „blacklist“ a „native“.
  • V rozšířeném režimu ochrany před nebezpečnými weby (Enhanced Safe Browsing), který aktivuje další kontroly pro ochranu před phishingem, škodlivou aktivitou a dalšími hrozbami na webu, byla implementována možnost odesílání nahrávaných souborů k ověření na straně Google. Kromě toho se v Enhanced Safe Browsing zohledňují tokeny spojené s účtem Google při detekci pokusů o phishing a také se odesílají na servery Google hodnoty hlavičky Referrer pro kontrolu přesměrování z nebezpečné stránky.
  • Ve verzi pro platformu Android bylo vylepšeno vzhledové provedení webových formulářů, které byly optimalizovány pro použití na dotykových obrazovkách a systémech pro osoby se zdravotním postižením (u desktopových systémů bylo provedení přepracováno ve verzi Chrome 83). Cílem přepracování byla unifikace vzhledu prvků formulářů a odstranění nesrovnalostí ve stylech — dříve byla část prvků formulářů navržena podle prvků rozhraní operačních systémů a část podle nejpopulárnějších stylů. V důsledku toho různé prvky různého způsobem vyhovovaly dotykovým obrazovkám a systémům pro osoby se zdravotním postižením.
    Verze Chrome 91Verze Chrome 91
  • Bylo přidáno dotazování na názor uživatelů, které se zobrazuje při otevření nastavení Privacy Sandbox (chrome://settings/privacySandbox).
  • Při spuštění verze Chrome pro Android na tabletech s velkým displejem se nyní žádá o deskopovou verzi webu, nikoli o verzi pro mobilní zařízení. Chování lze změnit pomocí nastavení "chrome://flags/#request-desktop-site-for-tablets".
  • Byl přepracován kód pro vykreslování tabulek, což umožnilo vyřešit problémy s neshodou chování při výstupu tabulek v Chrome a ve Firefoxu/Safari.
  • Byla ukončena podpora serverových certifikátů španělského certifikačního úřadu Camerfirma kvůli opakovaným incidentům od roku 2017, které souvisely s porušováními při vydávání certifikátů. Podpora klientských certifikátů byla zachována, blokace se aplikuje pouze na certifikáty používané na webových stránkách pro HTTPS.
  • Byla pokračována realizace podpory segmentace sítě na ochranu proti metodám sledování pohybu uživatelů mezi weby, které jsou založeny na ukládání identifikátorů v oblastech, které nejsou určeny pro trvalé uchování informací („Supercookies“). Protože se prostředky v cache ukládají do společného jmenného prostoru, nezávisle na původní doméně, může jeden web zjistit načtení prostředků z jiného webu prostřednictvím kontroly existence tohoto prostředku v cache. Ochrana je založena na aplikaci segmentace sítě (Network Partitioning), jejíž podstatou je přidání další vazby záznamů do sdílených cache. domain, ze kterého byla otevřena hlavní stránka, což omezuje rozsah cache pro skripty sledování pohybu pouze na aktuální web (skript z iframe nebude moci zkontrolovat, zda byl prostředek načten z jiného webu).

    Cena segmentace spočívá ve snížení efektivity cachování, což vede k nepatrnému zvýšení doby načítání stránky (maximálně o 1,32 %, ale pro 80 % webů o 0,09-0,75 %). Pro testování režimu segmentace lze spustit prohlížeč s možností „—enable-features=PartitionConnectionsByNetworkIsolationKey, PartitionExpectCTStateByNetworkIsolationKey, PartitionHttpServerPropertiesByNetworkIsolationKey, PartitionNelAndReportingByNetworkIsolationKey, PartitionSSLSessionsByNetworkIsolationKey, SplitHostCacheByNetworkIsolationKey“.

  • Byl přidán externí REST API VersionHistory (https://versionhistory.googleapis.com/v1/chrome), pomocí kterého lze získat informace o verzích Chrome v vazbě k platformám a větvím, stejně jako historii aktualizace prohlížeče.
  • V iframe, načtených z domén odlišných od domény základní stránky, je zakázáno zobrazování JavaScriptových dialogů alert(), confirm() a prompt(), což ochrání uživatele před pokusy o zobrazení zpráv třetím skriptem, pod záminkou, že oznámení bylo zobrazeno hlavním webem.
  • Byl stabilizován a navržen jako výchozí API WebAssembly SIMD pro využití vektorových SIMD instrukcí v aplikacích ve formátu WebAssembly. Pro zajištění platformní nezávislosti jsou navrhovány nový 128bitový typ, který může reprezentovat různé typy zabalených dat, a několik základních vektorových operací pro zpracování zabalených dat. SIMD umožňuje zvýšit výkon díky paralelizaci zpracování dat a bude užitečné při kompilaci nativního kódu do WebAssembly.
  • V režimu Origin Trials (experimentální funkce vyžadující samostatnou aktivaci) bylo přidáno několik nových API. Origin Trial zahrnuje možnost práce se specifikovaným API z aplikací načítaných z localhost nebo 127.0.0.1, nebo po registraci a získání speciálního tokenu, který platí omezenou dobu pro konkrétní web.
    • WebTransport — protokol a související JavaScript API pro odesílání a příjem dat mezi prohlížečem a serverem. Komunikační kanál je organizován nad HTTP/3 s využitím protokolu QUIC jako transportu, který je sám o sobě nadstavbou nad protokolem UDP, podporující multiplexování více spojení a poskytující metody šifrování, ekvivalentní TLS/SSL.

      WebTransport může být používán místo mechanismů WebSockets a RTCDataChannel, nabízející takové další možnosti, jako je organizace přenosu ve více vláknech, jednosměrné toky, doručování bez ohledu na pořadí odesílání paketů (out-of-order), spolehlivé a nespolehlivé režimy doručování. Kromě toho může být WebTransport použit místo mechanismu Server Push, jehož použití v prohlížeči Chrome se vzdala společnost Google.

    • Deklarativní rozhraní pro definici odkazů na samostatné webové aplikace (PWA), aktivované pomocí parametru capture_links v manifestu webové aplikace, které umožňuje webům automaticky otevřít nové PWA okno při kliknutí na odkaz aplikace nebo přejít do režimu jednokenního zobrazení obdobně jako mobilní aplikace.
    • Byl přidán API WebXR Plane Detection, který poskytuje informace o plochých površích ve virtuálním 3D prostředí. Tento API umožňuje obejít se bez náročného zpracování dat získaných přes volání MediaDevices.getUserMedia, s využitím vlastních implementací algoritmů strojového vidění. Připomeňme, že API WebXR umožňuje zjednodušit práci s různými třídami zařízení virtuální reality, od stacionárních 3D headsetů po mobilní technologie.
  • Byla implementována podpora pro práci s WebSockets nad HTTP/2 (RFC 8441), která platí pouze pro zabezpečené dotazy na WebSockets a při existenci již navázaného spojení HTTP/2 se serverem, v němž byla oznámena podpora rozšíření „WebSockets over HTTP/2“.
  • Omezení přesnosti hodnot časovače, poskytovaných voláním performance.now(), jsou sjednocena pro všechny podporované platformy a přizpůsobena s ohledem na možnou izolaci zpracovatelů v jednotlivých procesech. Například na desktopových systémech byla přesnost ve zpracování v neizolovaných kontextech snížena z 5 na 100 mikrosekund.
  • V sestavách pro desktopové systémy byla zavedena možnost číst soubory z clipboardu (zápis souborů do clipboardu je nadále zakázán). async function onPaste(e) { let file = e.clipboardData.files[0]; let contents = await file.text(); }
  • V CSS bylo zavedeno pravidlo @counter-style, které umožňuje definovat vlastní styl čítačů a štítků v číslovaných seznamech.
  • V CSS byly k pseudo-klasám „:host()“ a „:host-context()“ přidány možnosti předávání jednotlivých hodnot složených selektorů () vedle seznamů selektorů ().
  • Byl přidán rozhraní GravitySensor pro detekci objemových (ve třech osách souřadnic) dat z gravitačního senzoru.
  • V API File System Access byla přidána možnost definovat doporučení pro výběr názvu souboru a adresáře, které jsou navrhovány v dialogu pro vytvoření nebo otevření souboru.
  • V iframe načtených z jiných domén je nyní povoleno přístup k API WebOTP, pokud uživatel poskytne příslušná oprávnění. WebOTP umožňuje číst jednorázové ověřovací kódy zasílané prostřednictvím SMS.
  • Je dovoleno poskytovat sdílení přihlašovacích údajů pro weby, které jsou propojeny pomocí mechanismu DAL (Digital Asset Links), což umožňuje asociovat aplikace Android s weby pro usnadnění přihlášení.
  • V Service workeru je povoleno používání JavaScript modulů. Při specifikaci typu ‘module’ při volání konstruktoru budou uvedené skripty načteny jako moduly a budou dostupné pro importování v kontextu workeru. Podpora modulů usnadňuje sdílení kódu na webových stránkách a v Service workerech.
  • V JavaScriptu byla přidána možnost kontrolovat existenci privátních polí v objektu pomocí syntaktického výrazu „#foo in obj“. class A { static test(obj) { console.log(#foo in obj); } #foo = 0; } A.test(new A()); // true A.test({}); // false
  • V JavaScript je ve výchozím nastavení povoleno používat klíčové slovo await na vrchní úrovni modulů, což umožňuje plynulejší integraci asynchronních volání do procesu načítání modulů a vyhýbá se nutnosti balení do „async function“. Například místo (async function() { await Promise.resolve(console.log('test')); }()); nyní můžete psát await Promise.resolve(console.log('test'));
  • V JavaScriptovém enginu V8 byla zvýšena efektivita cachování šablon, což vedlo k 4,5% zvýšení rychlosti při testu Speedometer2-FlightJS.
  • Byla provedena řada vylepšení v nástrojích pro webové vývojáře. Byl přidán nový režim inspekce paměti (Memory inspector), který poskytuje prostředky pro zkoumání dat ArrayBuffer a paměti Wasm.
    Verze Chrome 91

    Do panelu Výkon (Performance) byl přidán souhrnný indikátor výkonu, který umožňuje posoudit, zda vyžaduje web optimalizaci nebo ne.

    Verze Chrome 91

    Při náhledu obrázků v panelu prvků a v panelu analýzy síťových požadavků jsou k dispozici informace o poměru stran obrázku, parametrech zobrazení a velikosti souboru.

    Verze Chrome 91

    V panelu inspekce sítě byla přidána možnost změny přijatých hodnot hlavičky Content-Encoding.

    Verze Chrome 91

    V panelu stylů byla přidána možnost rychlého zobrazení vypočítané hodnoty při navigaci v parametrech CSS výběrem v kontextové nabídce „Zobrazit vypočítanou hodnotu“.

    Verze Chrome 91

Kromě novinek a oprav chyb byla v nové verzi odstraněna 32 zranitelností. Mnoho zranitelností bylo odhaleno pomocí automatizovaného testování nástroji AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer a AFL. Nebyly zjištěny žádné kritické problémy, které by umožnily obejít všechny úrovně ochrany prohlížeče a vykonat kód v systému mimo sandboxové prostředí. V rámci programu pro vyplácení finančních odměn za nalezení zranitelností bylo pro aktuální verzi společnosti Google vyplaceno 21 odměn v celkové výši 92000 dolarů (jedna odměna 20000 dolarů, jedna odměna 15000 dolarů, čtyři odměny 7500 dolarů, tři odměny 5000 dolarů, tři odměny 3000 dolarů, dvě odměny 1000 dolarů a dvě odměny 500 dolarů). Výše 5 odměn zatím nebyla určena.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster