Chrome-Version 95

Google hat die Veröffentlichung des Webbrowsers Chrome 95 vorgestellt. Gleichzeitig ist eine stabile Version des kostenlosen Chromium-Projekts verfügbar, das die Basis von Chrome bildet. Der Chrome-Browser zeichnet sich durch die Verwendung von Google-Logos, das Vorhandensein eines Systems zum Versenden von Benachrichtigungen im Falle eines Absturzes, Module zum Abspielen geschützter Videoinhalte (DRM), ein automatisches Update-System und die Übertragung bei der Suche nach RLZ-Parametern aus. Gemäß dem neuen 4-wöchigen Entwicklungszyklus ist die nächste Veröffentlichung von Chrome 96 für den 16. November geplant. Für diejenigen, die mehr Zeit zum Aktualisieren benötigen, wird ein separater Extended Stable-Zweig verwaltet, gefolgt von 8 Wochen, der ein Update für die letzte Version von Chrome 94 generiert.

Wichtige Änderungen in Chrome 95:

  • Für Linux-, Windows-, macOS- und ChromeOS-Benutzer wird eine neue Seitenleiste angeboten, die rechts neben dem Inhalt angezeigt und durch Klicken auf ein spezielles Symbol in der Adressleiste aktiviert wird. Das Panel zeigt eine Zusammenfassung mit Lesezeichen und einer Leseliste an. Die Änderung ist nicht für alle Benutzer aktiviert. Sie können sie mit der Einstellung „chrome://flags/#side-panel“ aktivieren.
    Chrome-Version 95
  • Die Ausgabe einer expliziten Anfrage nach Berechtigungen zum Speichern von in Webformularen eingegebenen Adressen zur späteren Verwendung im System zum automatischen Ausfüllen von Formularen wurde implementiert. Beim Ermitteln des Vorhandenseins von Adressen in Formularen wird dem Benutzer nun ein Dialogfeld angezeigt, in dem er die Adresse speichern, bearbeiten, eine zuvor gespeicherte Adresse aktualisieren oder das Speichern verweigern kann.
  • Code zur Unterstützung des FTP-Protokolls entfernt. In Chrome 88 war die FTP-Unterstützung standardmäßig deaktiviert, es blieb jedoch ein Flag übrig, um sie zu aktivieren.
  • Die Unterstützung für URLs mit Hostnamen, die auf eine Zahl enden, die nicht mit IPv4-Adressen übereinstimmt, wurde eingestellt. Beispielsweise werden die URLs „http://127.1/“, „http://foo.127.1/“ und „http://127.0.0.0.1“ jetzt als ungültig betrachtet.
  • Für WebAssembly ist die Möglichkeit implementiert, Ausnahmehandler zu erstellen, die die Ausführung abfangen können, falls bei der Ausführung eines bestimmten Codes eine Ausnahme auftritt. Es unterstützt sowohl das Abfangen von Ausnahmen, die dem WebAssembly-Modul bekannt sind, als auch Ausnahmen beim Aufruf importierter Funktionen. Um Ausnahmen abzufangen, muss ein WebAssembly-Modul von einem ausnahmefähigen Compiler wie Emscripten erstellt werden.

    Es wird darauf hingewiesen, dass die Ausnahmebehandlung auf WebAssembly-Ebene die Größe des generierten Codes im Vergleich zur Ausnahmebehandlung durch JavaScript erheblich reduzieren kann. Beispielsweise führt die Erstellung des Binaryen-Optimierers mit Ausnahmebehandlung durch JavaScript zu einer Steigerung des Codes um 43 % und bei Verwendung von WebAssembly um 9 %. Darüber hinaus unterscheidet sich Code mit Ausnahmebehandlung durch WebAssembly bei Verwendung des Optimierungsmodus „-O3“ in der Leistung praktisch nicht von Code ohne Ausnahmehandler, während die Ausnahmebehandlung mit JavaScript zu einer Verlangsamung der Ausführung um 30 % führt.

  • Es ist verboten, WebAssembly-Module zwischen verschiedenen Domänen (Cross-Origin) zu teilen, wenn eine Site verarbeitet wird.
  • Dem Origin-Testmodus (experimentelle Funktionen, die eine separate Aktivierung erfordern) wurden mehrere neue APIs hinzugefügt. Die Origin-Testversion impliziert die Möglichkeit, mit der angegebenen API aus Anwendungen zu arbeiten, die von localhost oder 127.0.0.1 heruntergeladen wurden, oder nach der Registrierung und dem Erhalt eines speziellen Tokens, das für eine begrenzte Zeit für eine bestimmte Site gültig ist.
    • Das Trimmen von Informationen im User-Agent-HTTP-Header und in den JavaScript-Parametern navigator.userAgent, navigator.appVersion und navigator.platform wurde aktiviert. Der Header enthält nur Informationen über den Browsernamen, die Hauptversion des Browsers, die Plattform und den Gerätetyp (Mobiltelefon, PC, Tablet). Für zusätzliche Daten, wie etwa die genaue Version und erweiterte Plattformdaten, müssen Sie die User Agent Client Hints API verwenden. Der Beginn der User-Agent-Kürzungen auf Consumer-Systemen ist für die Veröffentlichung von Chrome 102 geplant, das in einem halben Jahr veröffentlicht wird.
    • Es wird die Möglichkeit vorgeschlagen, Zugriffshandles (Access Handles) für die File System Access API zu erstellen, die es Webanwendungen ermöglichen, Daten direkt in Dateien und Verzeichnisse auf dem Gerät des Benutzers zu lesen und zu schreiben. Um den Zugriff von Webanwendungen auf das Dateisystem zu reduzieren, plant Google, die APIs File System Access und Storage Foundation zusammenzuführen. Als Vorbereitungsstufe für eine solche Fusion wird die Unterstützung von Zugriffsdeskriptoren vorgeschlagen, die die auf Dateideskriptoren basierenden Arbeitsmethoden um erweiterte Funktionen ergänzt, wie etwa das Setzen einer Schreibsperre durch andere Prozesse und die Erstellung separater Streams für Schreiben und Lesen, inklusive Unterstützung zum Lesen und Schreiben von Workern im synchronen Modus.
  • Die API zur sicheren Zahlungsbestätigung wurde stabilisiert und standardmäßig mit der Implementierung einer neuen „Zahlungs“-Erweiterung vorgeschlagen, die eine zusätzliche Bestätigung des durchgeführten Zahlungsvorgangs bietet. Eine vertrauende Partei, beispielsweise eine Bank, hat die Möglichkeit, einen PublicKeyCredential zu generieren, der vom Händler für eine zusätzliche sichere Zahlungsbestätigung über die Payment Request API mithilfe der Zahlungsmethode „Secure-Payment-Confirmation“ angefordert werden kann.
  • Für über den PerformanceObserver-Konstruktor festgelegte Rückrufe wird jetzt die Eigenschaft „droppedEntriesCount“ übergeben, sodass Sie nachvollziehen können, wie viele Website-Leistungsmetriken gelöscht wurden, weil sie nicht in den bereitgestellten Puffer passten.
  • Es wurde die EyeDropper-API hinzugefügt, mit der Sie die vom Browser bereitgestellte Schnittstelle aufrufen können, um die Farbe beliebiger Pixel auf dem Bildschirm zu bestimmen, was beispielsweise in als Webanwendungen implementierten Grafikeditoren verwendet werden kann. const eyeDropper = new EyeDropper(); const result = Warten auf eyeDropper.open(); // result = {sRGBHex: '#160731'}
  • Die Funktion self.reportError() wurde hinzugefügt, um Skripten das Drucken von Fehlern auf der Konsole zu ermöglichen und so das Auftreten einer nicht abgefangenen Ausnahme zu emulieren.
  • Die URLPattern-API wurde hinzugefügt, um zu überprüfen, ob eine URL mit einem bestimmten Muster übereinstimmt. Dies kann beispielsweise zum Parsen von Links und zum Umleiten von Anforderungen an Handler in einem Service Worker verwendet werden. const p = new URLPattern({ Protokoll: 'https', Hostname: 'example.com', Pfadname: '/:folder/*/:fileName.jpg', });
  • Die Intl.DisplayNames-API wurde erweitert, über die Sie lokalisierte Namen von Sprachen, Ländern, Währungen, Datumselementen usw. erhalten können. Die neue Version fügt neue Namenstypen „calendar“ und „dateTimeField“ hinzu, über die Sie die lokalisierten Namen des Kalenders sowie Datums- und Uhrzeitfelder herausfinden können (z. B. den Namen der Monate). Unterstützung für die Verwendung von Sprachdialekten für den Typ „Sprache“ hinzugefügt.
  • Unterstützung für neue Werte des timeZoneName-Parameters in der API Intl.DateTimeFormat hinzugefügt: „shortGeneric“ zur Anzeige einer kurzen Zeitzonenkennung (z. B. „PT“, „ET“), „longGeneric“ – eine lange Zeitzone („ Pacific Time“, „Mountain Time“), „shortOffset“ – mit einem kurzen Offset relativ zu GMT („GMT+5“) und „longOffset“ mit einem langen Offset relativ zu GMT („GMT+0500“).
  • Die U2F-API (Cryptotoken) ist veraltet und sollte durch die Web-Authentifizierungs-API ersetzt werden. Die U2F-API wird in der Version von Chrome 98 standardmäßig deaktiviert und in Chrome 104 vollständig entfernt.
  • Es wurden Verbesserungen an den Tools für Webentwickler vorgenommen. Das Bedienfeld „Stile“ erleichtert das Anpassen größenbezogener CSS-Eigenschaften (Höhe, Abstand usw.). Die Registerkarte „Probleme“ bietet die Möglichkeit, einzelne Probleme auszublenden. Verbesserte Anzeige von Eigenschaften in der Webkonsole sowie in den Bedienfeldern „Quellen“ und „Eigenschaften“ (benutzerdefinierte Eigenschaften werden jetzt fett dargestellt und oben in der Liste angezeigt).
    Chrome-Version 95

Neben Neuerungen und Fehlerbehebungen wurden in der neuen Version 19 Schwachstellen behoben. Viele der Schwachstellen wurden durch automatisierte Testtools wie AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer und AFL identifiziert. Es wurden keine kritischen Probleme identifiziert, die das Umgehen aller Browser-Schutzstufen und die Ausführung von Code im System außerhalb der Sandbox-Umgebung ermöglichen. Im Rahmen des Schwachstellen-Bounty-Programms für die aktuelle Version hat Google 16 Auszeichnungen im Wert von 74 US-Dollar ausgezahlt (eine Auszeichnung in Höhe von 20000 US-Dollar, zwei Auszeichnungen in Höhe von 10000 US-Dollar, eine Auszeichnung in Höhe von 7500 US-Dollar, eine Auszeichnung in Höhe von 6000 US-Dollar, drei Auszeichnungen in Höhe von 5000 US-Dollar und eine Auszeichnung in Höhe von 3000 US-Dollar). 2000 $). Die Höhe der 1000 Belohnungen steht noch nicht fest.

Source: opennet.ru

Kommentar hinzufügen