Firma Google zaprezentowała wydanie przeglądarki internetowej Chrome 100. Jednocześnie dostępna jest stabilna wersja otwartego projektu Chromium, która stanowi podstawę Chrome. Przeglądarka Chrome różni się wykorzystaniem logo Google, systemem powiadamiania o awariach, modułami do odtwarzania treści wideo chronionych przed kopiowaniem (DRM), automatycznymi aktualizacjami oraz przesyłaniem parametrów RLZ podczas wyszukiwania. Następna wersja Chrome 101 planowana jest na 26 kwietnia.
Główne zmiany w Chrome 100:
- W związku z osiągnięciem przez przeglądarkę numeru wersji 100, składającego się z trzech cyfr zamiast dwóch, mogą wystąpić problemy z niektórymi stronami, które używają niepoprawnych bibliotek do analizy wartości User-Agent. W razie wystąpienia problemów przewidziano ustawienie „chrome://flags##force-major-version-to-minor”, umożliwiające przywrócenie wyjścia w nagłówku User-Agent wersji 99 przy faktycznym użyciu wersji 100.
- Chrome 100 została oznaczona jako ostatnia wersja z pełnym zawartością User-Agent. W następnym wydaniu rozpocznie się ograniczanie informacji w nagłówku User-Agent oraz parametrach JavaScript navigator.userAgent, navigator.appVersion i navigator.platform. W nagłówku pozostaną jedynie informacje o nazwie przeglądarki, istotnej wersji przeglądarki, platformie i typie urządzenia (telefon komórkowy, komputer, tablet). Aby uzyskać dodatkowe dane, takie jak dokładna wersja i rozszerzone dane o platformie, należy korzystać z API User Agent Client Hints. Dla stron, które nie mają wystarczających nowych informacji i które jeszcze nie są gotowe na przejście na User Agent Client Hints, do maja 2023 roku dostępna jest możliwość zwrócenia pełnego User-Agent.
- Dodano eksperymentalną możliwość wyświetlania w pasku adresu wskaźnika pobierania, po kliknięciu na który wyświetlane jest status pobieranych i załadowanych plików, analogicznie do strony chrome://downloads. Aby aktywować wskaźnik, przewidziano ustawienie „chrome://flags#download-bubble”.

- Przywrócono możliwość wyciszenia dźwięku po kliknięciu na wskaźnik odtwarzania, wyświetlany na przycisku zakładki (wcześniej dźwięk można było wyciszyć przez wywołanie menu kontekstowego). Aby włączyć tę funkcję, dodano ustawienie „chrome://flags#enable-tab-audio-muting.”

- Dodano ustawienie „chrome://flags/#enable-lens-standalone” do wyłączenia usługi Google Lens w celu wyszukiwania obrazów (punkt „Znajdź obraz” w menu kontekstowym).
- Podczas udostępniania zakładki (tab-sharing) nie jest już zaznaczana cała zakładka, a tylko część z treścią transmitowaną innemu użytkownikowi.
- Zmieniono logo przeglądarki. Nowe logo różni się od wersji z 2014 roku nieco większym okręgiem w środku, bardziej wyrazistymi kolorami i brakiem cieni na granicach między kolorami.

- Zmiany w wersji na Androida:
- Wsparcie dla trybu oszczędzania danych „Lite” zostało zakończone, w którym zmniejszano bitrate podczas ładowania wideo i stosowano dodatkową kompresję obrazów. Zauważono, że tryb został usunięty z powodu obniżenia kosztów taryf w sieciach mobilnych oraz rozwoju innych metod redukcji danych.
- Dodano możliwość wykonywania działań z przeglądarką z paska adresu. Na przykład, można wpisać „usuń historię”, a przeglądarka zaproponuje przejście do formularza czyszczenia historii lub „edytuj hasła”, a przeglądarka otworzy menedżera haseł. Dla systemów desktopowych ta możliwość została wprowadzona w wersji Chrome 87.
- Wprowadzono możliwość logowania się do konta Google poprzez skanowanie kodu QR wyświetlanego na ekranie innego urządzenia.
- Zaimplementowano wyświetlanie dialogu potwierdzenia operacji przy próbie zamknięcia wszystkich kart jednocześnie.
- Na stronie otwierania nowej zakładki pojawił się przełącznik między przeglądaniem subskrypcji RSS (Following) a polecanymi treściami (Discover).
- Zakończono możliwość korzystania z protokołów TLS 1.0/1.1 w komponencie Android WebView. W samej przeglądarce wsparcie dla TLS 1.0/1.1 zostało usunięte w wersji Chrome 98. W bieżącej wersji zastosowano analogiczną zmianę w aplikacjach mobilnych korzystających z komponentu WebView, które teraz nie będą mogły łączyć się z serwerem, który nie obsługuje TLS 1.2 lub TLS 1.3.
- Podczas weryfikacji certyfikatów za pomocą mechanizmu Certificate Transparency do potwierdzenia certyfikatu wymagane jest teraz posiadanie podpisanych rekordów SCT (signed certificate timestamp) w dowolnych dwóch logach obsługiwanych przez różnych operatorów (wcześniej wymagano zapisu w logu Google i w logu dowolnego innego operatora). Certificate Transparency zapewnia prowadzenie niezależnych publicznych logów wszystkich wydanych i odwołanych certyfikatów, które umożliwiają przeprowadzanie niezależnych audytów wszystkich zmian i działań urzędów certyfikacji oraz pozwalają śledzić wszelkie próby ukrytego tworzenia fałszywych zapisów.
Dla użytkowników, którzy włączyli tryb Bezpiecznego przeglądania, domyślnie aktywowany jest audyt rekordów SCT używanych w logach Certificate Transparency. Zmiana ta spowoduje wysyłanie dodatkowych zapytań do Google w celu potwierdzenia poprawności działania logu. Zapytania weryfikacyjne są wysyłane bardzo rzadko, około raz na 10 000 połączeń TLS. W przypadku wykrycia problemów do Google zostaną przesłane dane o problematycznym łańcuchu certyfikatów i SCT (przesyłane są tylko już publicznie dostępne dane o certyfikatach i SCT).
- W przypadku włączenia rozszerzonego trybu ochrony przed niebezpiecznymi stronami (Enhanced Safe Browsing) i zalogowania się do konta Google, na wysyłane do serwery Google dane dotyczące incydentów teraz dołączane są tokeny związane z kontem w Google, co pozwala na wzmocnienie ochrony przed phishingiem, złośliwą aktywnością i innymi zagrożeniami w sieci. Dla sesji w trybie incognito takie dane nie są przesyłane.
- W wersji Chrome na komputery stacjonarne udostępniono możliwość odrzucania ostrzeżeń o używaniu skompromitowanych haseł.
- Dodano API Multi-Screen Window Placement, dzięki któremu można uzyskać informacje o podłączonych do komputera monitorach i zorganizować rozmieszczenie okien na wyznaczonych ekranach. Za pomocą nowego API można także dokładnie wybierać pozycję wyświetlanych okien i określać przejście w tryb pełnoekranowy, inicjowane za pomocą metody Element.requestFullscreen(). Jako przykłady wykorzystania nowego API wymieniane są aplikacje do prezentacji (wyświetlanie na projektorze i pokazywanie notatek na ekranie laptopa), aplikacje finansowe i systemy monitorowania (umieszczanie wykresów na różnych ekranach), aplikacje medyczne (wyświetlanie obrazów na oddzielnych ekranach o wysokiej rozdzielczości), gry, edytory graficzne i inne rodzaje aplikacji wieloekranowych.
- W trybie Origin Trials (eksperymentalne funkcjonalności wymagające osobnej aktywacji) wdrożono wsparcie dla dostępu do Media Source Extensions z dedykowanych workerów, co można wykorzystać, na przykład, do zwiększenia wydajności buforowanego odtwarzania danych multimedialnych poprzez tworzenie obiektu MediaSource w osobnym workerze i przesyłanie wyników jego pracy do HTMLMediaElement w głównym wątku. Origin Trial zakłada możliwość pracy z wskazanym API z aplikacji załadowanych z localhost lub 127.0.0.1, lub po zarejestrowaniu się i uzyskaniu specjalnego tokena, który działa przez ograniczony czas dla konkretnej strony.
- Ustabilizowano i udostępniono chętnym API Digital Goods, zaprojektowane w celu uproszczenia organizacji zakupów z aplikacji webowych. Zapewnia powiązanie z usługami dystrybucji towarów, w systemie Android zapewnia powłokę nad API Android Play Billing.
- Dodano metodę AbortSignal.throwIfAborted(), umożliwiającą obsługę przerwania wykonania sygnału z uwzględnieniem stanu sygnału i przyczyny jego przerwania.
- W obiekcie HIDDevice dodano metodę forget(), umożliwiającą cofnąć udzielone przez użytkownika uprawnienia dostępu do urządzenia wejściowego.
- W CSS-propriete mix-blend-mode, określające metodę mieszania przy nakładaniu elementów, dodano wsparcie dla wartości „plus-lighter” w celu podświetlenia przecięć dwóch elementów, mających wspólne piksele.
- W obiekcie NDEFReader dodano metodę makeReadOnly(), umożliwiającą korzystanie z tagów NFC w trybie tylko do odczytu.
- W API WebTransport, które służy do wysyłania i odbierania danych między przeglądarką a serwerem, dodano opcję serverCertificateHashes do uwierzytelniania połączenia z serwerem za pomocą hasha certyfikatu bez użycia Web PKI (na przykład, gdy nawiązywane jest połączenie z serwera lub maszyną wirtualną niezwiązaną z siecią publiczną).
- Wprowadzono ulepszenia w narzędziach dla programistów webowych. Rozszerzono możliwości panelu Recorder, który umożliwia nagrywanie, odtwarzanie i analizowanie działań użytkownika na stronie. Podczas przeglądania kodu w procesie debugowania zapewniono wyświetlanie wartości właściwości po najechaniu myszą na klasy lub funkcje. Lista emulowanych urządzeń User-Agent dla iPhone została zaktualizowana do wersji 13_2_3. W panelu nawigacji po stylach CSS wdrożono możliwość przeglądania i edytowania reguł „@supports”.

Oprócz nowości i poprawek błędów w nowej wersji usunięto 28 podatności. Wiele z tych podatności zostało wykrytych w wyniku automatyzowanego testowania za pomocą narzędzi AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. Nie wykryto krytycznych problemów, które mogłyby obejść wszelkie poziomy ochrony przeglądarki i wykonać kod w systemie poza środowiskiem sandbox. W ramach programu wypłacania nagród za wykrycie podatności dla bieżącej wersji firma Google przyznała 20 nagród o łącznej wartości 51 tysięcy dolarów amerykańskich (jedna nagroda 16 000 dolarów, dwie nagrody po 7 000 dolarów, trzy nagrody po 5 000 dolarów oraz jedna nagroda w wysokości 3 000, 2 000 i 1 000 dolarów. Wysokość 11 nagród nie została jeszcze określona.
Źródło: opennet.ru




