Společnost Google zveřejnila verzi webového prohlížeče Chrome 120. Současně je k dispozici stabilní vydání otevřeného projektu Chromium, který tvoří základ Chrome. Prohlížeč Chrome se liší od Chromu používáním logotypů Google, systémem zasílání oznámení v případě pádu, moduly pro přehrávání chráněného videa (DRM), automatickým aktualizačním systémem, trvalým zapnutím Sandbox izolace, dodáváním klíčů pro Google API a přenosem RLZ parametrů při hledání. Pro ty, kdo potřebují více času na aktualizaci, je zvlášť podporována větev Extended Stable, která je doprovázena 8 týdny. Další vydání Chrome 121 je naplánováno na 23. ledna.
Hlavní změny v Chrome 120:
- Začal experiment s vypnutím podpory cookies třetích stran nastavovaných při návštěvě stránek odlišných od domény aktuální stránky. Takové cookies se používají k sledování pohybu uživatele mezi webovými stránkami v kódu reklamních sítí, widgetů sociálních sítí a systémů webové analytiky. V lednu 2024 budou cookies třetích stran vypnuty pro 1 % uživatelů prohlížeče. Změny jsou prosazovány v rámci iniciativy Privacy Sandbox, která se snaží najít kompromis mezi potřebou uživatelů chránit soukromí a přáním reklamních sítí a webových stránek sledovat preference návštěvníků.
Místo sledovacích cookies se navrhuje používat následující API:
- FedCM (Federated Credential Management), který umožňuje vytvářet sloučené identifikační služby, které zajišťují ochranu soukromí a fungují bez cookies třetích stran.
- Private State Tokens, který umožňuje rozlišovat různé uživatele bez použití meziwebových identifikátorů a předávat informace o autentizaci uživatele mezi různými kontexty.
- Témata (kritika) umožňují definovat kategorie zájmů uživatele, které lze použít k vymezení skupin uživatelů se podobnými zájmy, aniž by bylo nutné identifikovat jednotlivé uživatele pomocí sledovacích cookie. Zájmy se počítají na základě aktivity uživatele v prohlížeči a ukládají se na zařízení uživatele. Pomocí API Témata může reklamní síť získat obecné informace o jednotlivých zájmech, aniž by měla informace o konkrétní aktivitě uživatele.
- Chráněné publikum, řešení úkolů retargetingu a hodnocení vlastní audience (práce s uživateli, kteří již dříve navštívili webovou stránku).
- Reporting atribuce umožňuje hodnotit takové charakteristiky efektivity reklamy, jako jsou přechody a konverze (nákup na webu po přechodu).
- API pro přístup ke skladování může být použito k žádosti o oprávnění od uživatele k přístupu k úložišti cookie, pokud jsou ve výchozím nastavení blokovány cookies třetích stran.
- V souladu s požadavky zákona DMA (Zákon o digitálních trzích), přijatého v Evropské unii, se některým uživatelům zobrazí dialog pro výběr výchozího vyhledávače, jehož možnosti odpovídají nastavením chrome://settings/search. V Chrome 120 se dialog zobrazí 1 % uživatelů, a při vydání Chrome 122 bude rozšířen na 100 %.
- Byl zahájen proces ukončení podpory video kodeku Theora. V počáteční fázi je Theora zakázána pro 1 % uživatelů, ale do 16. ledna je plánováno, že bude zakázána pro všechny uživatele. Během přechodné fáze je pro návrat kodeku k dispozici nastavení „chrome://flags/#theora-video-codec“. Důvodem ukončení podpory Theora se zmiňují obavy, že v implementaci Theora, která obsahuje dostatečně složitou logiku pro analýzu binárních dat a dekódování потокů, mohou být zranitelnosti podobné nedávným kritickým problémům se enkodérem VP8.
- Design katalogu Chrome Web Store byl přepracován pro usnadnění vyhledávání a správy doplňků. Byly přidány nové kategorie doplňků (například byla přidána kategorie s doplňky založenými na strojovém učení a sekce „výběr redakce“). Do menu » ⋮ » byla přidána možnost vrátit se k předchozímu designu.

- Byla rozšířena funkčnost rozhraní „Kontrola bezpečnosti“ (Safety check), které zobrazuje shrnutí možných bezpečnostních problémů, jako je používání kompromitovaných hesel, stav kontroly škodlivých stránek (Safe Browsing), přítomnost neinstalovaných aktualizací a zjištění škodlivých doplňků. V nové verzi byl navržen proaktivní režim, který periodicky provádí příslušné kontroly bezpečnosti prohlížeče a informuje uživatele v případě zjištění problémů. Do nastavení byly přidány možnosti pro řízení akcí v proaktivním režimu.

- Byla zrealizována adaptivní panel nástrojů, která se mění v závislosti na velikosti okna.
- V správci hesel bylo umožněno sdílení jednotlivých hesel pro členy rodinné skupiny Google Family Group, nastavené přes Google Account. Najednou lze poskytnout přístup pouze k jednomu heslu, přičemž sdílené heslo nebude možné aktualizovat nebo odvolat odesílatelem.
- Interakce s tiskárnami byla přesunuta do samostatného servisního procesu, což zvýšilo stabilitu prohlížeče a zlepšilo odezvu uživatelského rozhraní při náhledu stránky před tiskem.
- V TLS byla implementována realizace mechanismu enkapsulace klíčů (KEM, Key Encapsulation Mechanism), který využívá hybridní algoritmus X25519Kyber768, odolný vůči útokům na kvantových počítačích. Pro vytvoření session klíčů, které se používají k šifrování dat v rámci TLS spojení, může nyní být použita kombinace mechanismu výměny klíčů X25519, založeného na eliptických křivkách a v současnosti používaného v TLS, s algoritmem Kyber-768, který využívá metody kryptografie založené na řešení úloh teorie mřížek, kde čas řešení není odlišný na běžných a kvantových počítačích.
- Ve službě automatického podávání žádostí o potvrzení oprávnění (Permission Suggestions Service) bylo zajištěno zohlednění URL stránky, která žádá o oprávnění (na servery Google budou předávány hashe od žádajících URL o oprávnění).
- Ve verzi pro Android byla ukončena podpora platformy Android 7.0 „Nougat“.
- Byl přidán framework s implementací konceptu Close-requests, který umožňuje uživateli požadovat uzavření modálních a pop-up dialogů stisknutím klávesy Esc nebo pomocí gest na obrazovce či tlačítka „Zpět“ na smartphonech. Podpora Close-requests byla přidána pro dialogy vytvořené pomocí prvku
- Do prvku byla přidána podpora atributu „name“, který umožňuje vytvářet skupiny definováním série prvkůse stejným názvem.
- Do API Media Session byla přidána událost „enterpictureinpicture“, která umožňuje stránce registrovat obsluhu, jež se vyvolá při otevření obsahu v režimu „obraz v obraze“.
- Byla zjednodušena syntaxe vnořených CSS bloků — vnořená CSS pravidla nyní mohou začínat jakýmkoliv prvkem, bez nutnosti uvádět před vnořeným pravidlem znak ampersandu nebo používat funkci is(). dl { dt { /* styl pro dl dt */ } dd { /* styl pro dl dd */ } }
- Do CSS vlastnosti „background-clip“ byla přidána podpora parametru „text“ pro zobrazení vybraného pozadí pouze v oblasti omezené znaky textu. Například uvedení „background: linear-gradient(60deg, red, yellow, red, yellow, red); background-clip: text; color: rgba(0, 0, 0, 0.2)“ povede k zobrazení:

- Do CSS byl přidán mediální dotaz „scripting“, který lze použít k určení možnosti vykonávání skriptů, například v jazyce JavaScript, na aktuální stránce.
- Do CSS byl přidán pseudo-clas „:dir()“, který umožňuje vybrat prvky v závislosti na směru textu (například „:dir(ltr)“ zahrne prvky, v nichž je text zobrazen zleva doprava).
- Do CSS byly přidány exponenciální funkce pow(), sqrt(), hypot(), log() a exp().
- Do CSS byla přidána podpora vlastností mask, mask-image, mask-repeat, mask-position, mask-clip, mask-origin, mask-size, mask-composite a mask-mode pro skrytí prvku pomocí překrytí obrázkem na určitých bodech.
- Do API FontFaceSet byla přidána metoda check(), která umožňuje zkontrolovat, zda může být text zobrazen při vybraných písmenech bez použití ve FontFaceSet písem, jejichž načtení ještě nebylo dokončeno.
- V API WebGPU byla přidána možnost používat v shaderech 16bitový plovoucí typ f16.
- V API Media Capabilities byly do metody decodingInfo() přidány pole hdrMetadataType, colorGamut a transferFunction pro určení podpory HDR.
- V API MediaStreamTrack byla přidána možnost získat informace o počtech přijatých a zahozených videokader.
- Byla přidána možnost předat objekt ArrayBuffer do konstruktorů VideoFrame, AudioData, EncodedVideoChunk, EncodedAudioChunk a ImageDecoder pro přímé použití bajtového pole bez vytváření jeho kopie.
- Dle změněné specifikace pro zvýšení ochrany před útoky XSS a zlepšení přenositelnosti mezi prohlížeči byla v SVGUseElement ukončena podpora URL 'data:', která dosud nebyla podporována v enginu WebKit.
- Byla přidána experimentální (origin trial) podpora HTTP hlavičky 'Priority', pomocí které lze předat informace o prioritě zpracování žádosti (RFC 9218) během prvního přístupu k prostředku.
- Byla zlepšena nástroje pro webové vývojáře. Ve výchozím ladicím režimu je nyní ignorováno skripty umístěné v adresářích '/node_modules/' a '/bower_components/' obsahujících moduly Node.js. V režimu vzdáleného ladění byla přidána možnost přepínání mezi myší a dotykovou obrazovkou. Ladění animací bylo vylepšeno. Do panelu Elements byl přidán přepínač 'media' pro ladění prvků
Kromě novinek a oprav chyb byla v nové verzi odstraněna 10 zranitelností. Mnoho zranitelností bylo identifikováno pomocí automatizovaného testování nástroji AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer a AFL. Kritické problémy, které by umožnily obcházet všechny úrovně ochrany prohlížeče a vykonávat kód v systému mimo sandboxové prostředí, nebyly nalezeny. V rámci programu odměn za nalezení zranitelností společnost Google u vybraného vydání vyplatila 13 odměn v celkové výši 15 tisíc USD (jedna odměna 10 000 USD, jedna odměna 2 000 USD a tři odměny 1 000 USD).
Zdroj: opennet.ru


