Chrome 89-versie

Google heeft de release onthuld van de webbrowser Chrome 89. Tegelijkertijd is er een stabiele release van het gratis Chromium-project, dat als basis van Chrome dient, beschikbaar. De Chrome-browser onderscheidt zich door het gebruik van Google-logo's, de aanwezigheid van een systeem voor het verzenden van meldingen bij een crash, modules voor het afspelen van beschermde video-inhoud (DRM), een systeem voor het automatisch installeren van updates en het verzenden van RLZ-parameters tijdens het zoeken. De volgende release van Chrome 90 staat gepland voor 13 april.

Belangrijkste wijzigingen in Chrome 89:

  • De Android-versie van Chrome kan nu alleen worden uitgevoerd op Play Protect-gecertificeerde apparaten. In virtuele machines en emulators kan Chrome voor Android worden gebruikt als het geëmuleerde apparaat geldig is of als de emulator door Google is ontwikkeld. Of het apparaat al dan niet gecertificeerd is, kun je controleren in de Google Play-applicatie in het instellingengedeelte (op de instellingenpagina helemaal onderaan wordt de status “Play Protect-certificering” weergegeven). Voor niet-gecertificeerde apparaten, zoals apparaten die firmware van derden gebruiken, wordt gebruikers gevraagd hun apparaten te registreren zodat Chrome wordt uitgevoerd.
  • Een klein percentage van de gebruikers kan standaard sites openen via HTTPS wanneer ze hostnamen in de adresbalk typen. Wanneer u bijvoorbeeld de host example.com invoert, wordt de site https://example.com standaard geopend en als er problemen optreden bij het openen, wordt deze teruggedraaid naar http://example.com. Om het gebruik van de standaard “https://” te controleren, wordt de instelling “chrome://flags#omnibox-default-typed-navigations-to-https” voorgesteld.
  • Ondersteuning voor profielen is inbegrepen, waardoor verschillende gebruikers hun accounts kunnen scheiden wanneer ze via dezelfde browser werken. Met behulp van profielen kunt u bijvoorbeeld de toegang onder familieleden organiseren of afzonderlijke sessies gebruiken voor werk en persoonlijke interesses. De gebruiker kan een nieuw Chrome-profiel aanmaken en configureren om te activeren wanneer hij is verbonden met een specifiek Google-account, zodat verschillende gebruikers bladwijzers, instellingen en browsegeschiedenis kunnen delen. Wanneer u probeert in te loggen op een account dat aan een ander profiel is gekoppeld, wordt de gebruiker gevraagd naar dat profiel over te schakelen. Indien de gebruiker aan meerdere profielen is gekoppeld, krijgt hij de mogelijkheid om het gewenste profiel te selecteren. Het is mogelijk om uw eigen kleurenschema's aan verschillende profielen toe te wijzen om gebruikers visueel van elkaar te scheiden.
    Chrome 89-versie
  • Weergave van inhoudsminiaturen ingeschakeld wanneer u over tabbladen in de bovenste balk zweeft. Voorheen was het bekijken van de inhoud van tabbladen standaard uitgeschakeld en moest de instelling “chrome://flags/#tab-hover-cards” worden gewijzigd.
    Chrome 89-versie
  • Voor sommige gebruikers is de functie "Leeslijst" ("chrome://flags#read-later") ingeschakeld, indien geactiveerd, wanneer u op het sterretje in de adresbalk klikt, naast de knop "Bladwijzer toevoegen", er verschijnt een tweede knop "Toevoegen aan leeslijst" en in de rechterhoek van de bladwijzerbalk verschijnt het menu "Leeslijst", met alle pagina's die eerder aan de lijst zijn toegevoegd. Wanneer u een pagina uit de lijst opent, wordt deze gemarkeerd als gelezen. Pagina's in de lijst kunnen ook handmatig worden gemarkeerd als gelezen of ongelezen, of uit de lijst worden verwijderd.
    Chrome 89-versie
  • Gebruikers die zijn ingelogd op een Google-account zonder Chrome Sync in te schakelen, hebben toegang tot de betaalmethoden en wachtwoorden die zijn opgeslagen in het Google-account. De functie is voor sommige gebruikers ingeschakeld en zal geleidelijk aan voor anderen worden uitgerold.
  • Ondersteuning voor snel zoeken op tabbladen is ingeschakeld, waarvoor voorheen activering via de vlag “chrome://flags/#enable-tab-search” vereist was. De gebruiker kan een lijst met alle geopende tabbladen bekijken en snel het gewenste tabblad filteren, ongeacht of dit zich in het huidige of een ander venster bevindt.
    Chrome 89-versie
  • Voor alle gebruikers is de verwerking van individuele woorden in de adresbalk bij pogingen om interne sites te openen stopgezet. Voorheen probeerde de browser bij het invoeren van één woord in de adresbalk eerst de aanwezigheid van een host met die naam in DNS vast te stellen, in de overtuiging dat de gebruiker een subdomein probeerde te openen, en stuurde het verzoek pas daarna door naar de zoekmachine. Zo ontving de eigenaar van de DNS-server die in de gebruikersinstellingen was opgegeven informatie over zoekopdrachten die uit één woord bestonden, wat werd beoordeeld als een schending van de vertrouwelijkheid. Voor bedrijven die internethosts gebruiken zonder subdomein (bijvoorbeeld "https://helpdesk/") is er een optie om terug te keren naar het oude gedrag.
  • Het is mogelijk om de versie van een add-on of applicatie vast te zetten. Om er bijvoorbeeld voor te zorgen dat een onderneming alleen vertrouwde add-ons gebruikt, kan een beheerder het nieuwe ExtensionSettings-beleid gebruiken om Chrome zo te configureren dat deze zijn eigen URL gebruikt voor het downloaden van updates, in plaats van de URL die is opgegeven in het add-onmanifest.
  • Op x86-systemen heeft de browser nu processorondersteuning nodig voor SSE3-instructies, die sinds 2003 worden ondersteund door Intel-processors, en sinds 2005 door AMD.
  • Er zijn aanvullende API's toegevoegd die bedoeld zijn om functionaliteit te bieden die cookies van derden kan vervangen die worden gebruikt om gebruikersbewegingen tussen sites te volgen in de code van advertentienetwerken, sociale netwerkwidgets en webanalysesystemen. De volgende API's worden voorgesteld om te testen:
    • Trust Token om gebruikers te scheiden zonder gebruik te maken van cross-site-ID's.
    • First party sets - Hiermee kunnen gerelateerde domeinen zichzelf primair verklaren, zodat de browser rekening kan houden met deze verbinding tijdens oproepen tussen sites.
    • Schemeful Same-Site om het concept van dezelfde site uit te breiden naar verschillende URL-schema's, d.w.z. http://website.example en https://website.example worden behandeld als één site voor cross-site verzoeken.
    • Floc om de categorie van gebruikersinteresses te bepalen zonder individuele identificatie en zonder verwijzing naar de geschiedenis van het bezoeken van specifieke sites.
    • Conversiemeting om de gebruikersactiviteit te evalueren na het overstappen op adverteren.
    • User-Agent Client Tips om User-Agent te vervangen en selectief gegevens terug te sturen over specifieke browser- en systeemparameters (versie, platform, enz.).
  • Seriële API toegevoegd, waardoor sites gegevens via de seriële poort kunnen lezen en schrijven. De reden voor het verschijnen van een dergelijke API is de mogelijkheid om webapplicaties te maken voor directe besturing van apparaten zoals microcontrollers en 3D-printers. Om toegang te krijgen tot een randapparaat is expliciete toestemming van de gebruiker vereist.
  • De WebHID API toegevoegd voor toegang op laag niveau tot HID-apparaten (menselijke interface-apparaten, toetsenborden, muizen, gamepads, touchpads), waarmee u de logica voor het werken met een HID-apparaat in JavaScript kunt implementeren om het werk met zeldzame HID-apparaten te organiseren zonder de aanwezigheid van specifieke stuurprogramma's in het systeem. Allereerst is de nieuwe API gericht op het bieden van ondersteuning voor gamepads.
  • Web NFC API toegevoegd, waardoor webapplicaties NFC-tags kunnen lezen en schrijven. Voorbeelden van het gebruik van de nieuwe API in webapplicaties zijn onder meer het verstrekken van informatie over museumexposities, het uitvoeren van inventarissen, het verkrijgen van informatie uit badges van conferentiedeelnemers, enz. Tags worden verzonden en gescand met behulp van de NDEFWriter- en NDEFReader-objecten.
  • De Web Share API (navigator.share object) is uitgebreid tot buiten mobiele apparaten en is nu beschikbaar voor gebruikers van desktopbrowsers (momenteel alleen voor Windows en Chrome OS). De Web Share API biedt hulpmiddelen voor het delen van informatie op sociale netwerken. Hiermee kunt u bijvoorbeeld een uniforme knop genereren voor publicatie op de sociale netwerken die de bezoeker gebruikt, of het verzenden van gegevens naar andere applicaties organiseren.
  • De Android-versies en de WebView-component bieden ondersteuning voor het decoderen van het AVIF-beeldformaat (AV1 Image Format), dat gebruik maakt van intra-frame compressietechnologieën van het AV1-videocoderingsformaat (in desktopversies was AVIF-ondersteuning inbegrepen in Chrome 85). De container voor het distribueren van gecomprimeerde gegevens in AVIF is volledig vergelijkbaar met HEIF. AVIF ondersteunt zowel beelden in HDR (High Dynamic Range) en Wide-gamut kleurruimte, als in standaard dynamisch bereik (SDR).
  • Een nieuwe rapportage-API toegevoegd voor het verkrijgen van informatie over schendingen van de regels voor veilig gebruik op de pagina met bevoorrechte bewerkingen gespecificeerd via de COOP-header (Cross-Origin-Opener-Policy), waarmee u COOP ook in de debug-modus kunt zetten, wat werkt zonder regelovertredingen te blokkeren.
  • Functie performance.measureUserAgentSpecificMemory() toegevoegd, die de hoeveelheid geheugen bepaalt die wordt verbruikt bij het verwerken van een pagina.
  • Om te voldoen aan de webstandaarden worden alle "data:"-URL's nu behandeld als potentieel betrouwbaar, d.w.z. maken deel uit van een beschermde context.
  • De Streams API heeft ondersteuning toegevoegd voor Byte Streams, die speciaal zijn geoptimaliseerd voor efficiënte overdracht van willekeurige sets bytes en het minimaliseren van het aantal gegevenskopieerbewerkingen. De uitvoer van de stream kan worden geschreven naar primitieven zoals strings of ArrayBuffer.
  • SVG-elementen ondersteunen nu de volledige syntaxis van de eigenschap "filter", waardoor filterfuncties zoals blur(), sepia() en grijswaarden() gelijktijdig kunnen worden toegepast op SVG- en niet-SVG-elementen.
  • De CSS implementeert een pseudo-element “::target-text”, dat kan worden gebruikt om het fragment waarnaar de tekst is genavigeerd (scroll-naar-tekst) te markeren in een andere stijl dan de stijl die door de browser wordt gebruikt bij het markeren van wat was gevonden.
  • CSS-eigenschappen toegevoegd om de afronding van hoeken te regelen: grens-begin-begin-radius, grens-begin-eind-radius, grens-eind-begin-radius, grens-eind-eind-radius.
  • CSS-eigenschap met geforceerde kleuren toegevoegd om te bepalen of de browser een door de gebruiker opgegeven beperkt kleurenpalet op een pagina gebruikt.
  • CSS-eigenschap voor geforceerde kleuraanpassing toegevoegd om geforceerde kleurbeperkingen voor individuele elementen uit te schakelen, waardoor ze volledige CSS-kleurcontrole behouden.
  • JavaScript maakt het gebruik van het trefwoord await mogelijk in modules op het hoogste niveau, waardoor asynchrone oproepen soepeler kunnen worden geïntegreerd in het laadproces van de module en zonder dat ze in een “asynchrone functie” hoeven te worden verpakt. Bijvoorbeeld, in plaats van (async function() {wacht op Promise.resolve(console.log('test')); }()); nu kun je schrijven await Promise.resolve(console.log('test'));
  • In de V8 JavaScript-engine worden functieaanroepen versneld in situaties waarin het aantal doorgegeven argumenten niet overeenkomt met de parameters die in de functie zijn gedefinieerd. Met een verschil in het aantal argumenten stegen de prestaties met 11.2% in de niet-JIT-modus en met 40% bij gebruik van JIT TurboFan.
  • Er zijn een groot deel van de kleine verbeteringen aangebracht aan tools voor webontwikkelaars.

Naast innovaties en bugfixes elimineert de nieuwe versie 47 kwetsbaarheden. Veel van de kwetsbaarheden zijn geïdentificeerd als resultaat van geautomatiseerd testen met behulp van de tools AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer en AFL. Er zijn geen kritieke problemen geïdentificeerd die het mogelijk zouden maken om alle niveaus van browserbeveiliging te omzeilen en code op het systeem uit te voeren buiten de sandbox-omgeving. Opgemerkt wordt dat een van de gecorrigeerde kwetsbaarheden (CVE-2021-21166), gerelateerd aan de levensduur van objecten in het geluidssubsysteem, de aard heeft van een 0-day-probleem en werd gebruikt in een van de exploits vóór de oplossing. Als onderdeel van het programma om contante beloningen te betalen voor het ontdekken van kwetsbaarheden voor de huidige release, heeft Google 33 beloningen uitbetaald ter waarde van $61000 (twee $10000 awards, twee $7500 awards, drie $5000 awards, twee $3000 awards, vier $1000 awards en twee $500 awards). De omvang van de 18 beloningen is nog niet vastgesteld.

Bron: opennet.ru

Voeg een reactie