Chrome-Version 75

Google präsentiert Webbrowser-Version Chrome 75. Gleichzeitig ist verfügbar stabile Veröffentlichung eines kostenlosen Projekts Chrom, die die Basis von Chrome ist. Chrome-Browser anders Verwendung von Google-Logos, die Möglichkeit, das Flash-Modul bei Bedarf zu laden, das Vorhandensein eines Systems zum Senden von Benachrichtigungen im Falle eines Absturzes, Module zum Abspielen geschützter Videoinhalte (DRM), ein automatisches Update-System und die Übertragung bei der Suche RLZ-Parameter. Die nächste Veröffentlichung von Chrome 76 ist für den 30. Juli geplant.

Haupt- Veränderungen в Chrome 75:

  • Zur Methode canvas.getContext() hinzugefügt Flag „desynchronisiert“ für die Verarbeitung von Canvas-Kontexten (2D oder WebGL) unter Verwendung eines alternativen Rendering-Systems, das minimale Verzögerungen durch Umgehung des standardmäßigen DOM-Aktualisierungsmechanismus und direkte Ausgabe über OpenGL bietet;
  • Erweiterte API Webfreigabe (Objekt navigator.share), mit dessen Hilfe Sie anstelle einer Liste einzelner Schaltflächen eine einheitliche Schaltfläche zur Veröffentlichung in sozialen Netzwerken generieren können, die für den Besucher relevant ist. In einer neuen Version in der API hinzugefügt die Möglichkeit, einen typischen Dialog zum Senden von Dateien an andere Anwendungen anzuzeigen (auf Android wird beispielsweise ein Block zum Senden per E-Mail, Bluetooth usw. angezeigt);
  • Umgesetzt die Fähigkeit, Zahlengruppen in digitalen Literalen durch einen Unterstrich zu trennen. Um beispielsweise die Lesbarkeit großer Zahlen im Code zu verbessern, können Sie 1_000_000_000 angeben. Diese Zahl wird dann als 1000000000 verarbeitet.
  • Standardmäßig für alle Desktop-Benutzer aktiviert Site-strikter Isolationsmodus, bei dem Seiten verschiedener Hosts immer im Speicher verschiedener Prozesse liegen, die jeweils ihre eigene Sandbox nutzen. Das Hauptmerkmal des strikten Isolationsmodus ist die Unterteilung nicht nach Tabs, sondern nach Domänen, d.h. Wenn früher der Inhalt von Skripten, Iframes und Popups, die von anderen Domänen geladen wurden, im selben Prozess wie die Basisseite ausgeführt wurde, werden sie jetzt in verschiedene Prozesse aufgeteilt;
  • Add-ons auf der schwarzen Liste werden jetzt vollständig entfernt, anstatt deaktiviert und in den inaktiven Modus versetzt zu werden.
  • Im integrierten Chrome-Task-Manager (Einstellungen > Weitere Tools > Task-Manager) gesichert Anzeige von Servicemitarbeitern;
  • Das Attribut „window.open()“ wurde zu „ hinzugefügt.noreferrer„So können Sie die Seite öffnen, ohne den Referrer-Header auszufüllen.
  • Hinzugefügt Richtlinien CSP (Inhaltssicherheitsrichtlinie) „script-src-attr“, „script-src-elem“, „style-src-attr“ und „style-src-elem“, die die Funktionalität der script- und style-Anweisungen bereitstellen, aber kann auf einzelne Event-Handler, Elemente oder Attribute angewendet werden;
  • In der Webauthentifizierungs-API hinzugefügt Unterstützung für FIDO CTAP2 PIN zur Verwendung einer benutzerdefinierten PIN zur Autorisierung von Vorgängen mit Schlüsseln, die das Protokoll unterstützen FIDO CTAP2. Im Konfigurator ist im Abschnitt „Erweitert“ der Punkt „Sicherheitsschlüssel verwalten“ erschienen, in dem Sie einen PIN-Code zum Schutz der auf einem USB-Laufwerk befindlichen Schlüssel sowie eine Option zum Zurücksetzen des Schlüssels (Alles löschen) zuweisen können Daten und PIN);
  • Zur Webanimations-API hinzugefügte Objekte
    AnimationEffect und KeyframeEffect, sodass Sie animierte Elemente und das Timing (Dauer, Verzögerungen) interaktiv steuern können.
    Darüber hinaus wurde ein neuer Konstruktor hinzugefügt Animation(), was eine umfassendere Animationssteuerung bietet. Bisher konnten Sie mit der Webanimations-API Animationen mithilfe der Methode Element.animate() erstellen, die ein bereits gebildetes Animationsobjekt zurückgibt. Jetzt kann der Entwickler seine Erstellung durch einen expliziten Konstruktoraufruf steuern, in dem Sie beispielsweise ein KeyframeEffect-Objekt angeben können;

  • Option hinzugefügt HTMLVideoElement.playsInlineA, das den Browser anweist, das Video im Wiedergabebereich des Elements anzuzeigen (z. B. um eine Vollbild-Wiedergabemethode bereitzustellen);
  • Die Methode MediaStreamTrack.getCapabilities() implementiert die Möglichkeit, den Bereich gültiger Werte für Eigenschaften abzurufen, die mit Audiogeräten verknüpft sind (Abtastrate, Verzögerungen, Anzahl der Kanäle usw.);
  • API zu WebRTC hinzugefügt RTCDtlsTransport um Informationen über aktive Transporte zu erhalten, beispielsweise die Verwendung von SCTP oder DTLS (Datagram Transport Layer Security), über die RTP- und RTCP-Pakete gesendet oder empfangen werden. Außerdem wurde die Schnittstelle RTCIceTransport hinzugefügt, um Informationen über den Status von Transporten bereitzustellen
    Im RTCPeerConnection-Objekt verwendete ICEs;

  • Der Cache-Control-Header implementiert die Direktive „Stale-while-revalidate„Dadurch können Sie ein zusätzliches Zeitfenster festlegen, in dem der Browser eine Ressource mit abgelaufener asynchroner Überprüfungszeit verwenden kann.
  • Funktion hinzugefügt Scroll Snap Stop, um die Bindung an Elemente während des Trägheitsscrollens zu bestimmen (z. B. führt eine breite Scrollgeste beim Auswählen in einer Liste von Bildern dazu, dass nicht das letzte, sondern das nächste Element ausgewählt wird);
  • In der Android-Version wurde die Schnittstelle zum automatischen Ausfüllen von Kontoparametern in Authentifizierungsformularen verbessert. Der Tooltip-Block wird nun direkt über der Bildschirmtastatur angezeigt und zeigt beim Anklicken mögliche gespeicherte Optionen anstelle der Bildschirmtastatur an, ohne die Eingabemaske zu verdecken;
  • Experimentelle Unterstützung für den Lesemodus hinzugefügt. Wenn diese Option aktiviert ist, wird nur aussagekräftiger Text angezeigt und alle zugehörigen Steuerelemente, Banner, Menüs, Navigationsleisten und andere nicht inhaltsbezogene Teile der Seite werden ausgeblendet. Die Aktivierung der Unterstützung für den neuen Modus erfolgt über die Option chrome://flags/#enable-reader-mode. Anschließend erscheint im Dropdown-Menü ein Element zur Verwendung;
  • Die V8-JavaScript-Engine implementiert die explizite Zwischenspeicherung von WebAssembly-Kompilierungsergebnissen (beim erneuten Öffnen der Seite werden zuvor verarbeitete WebAssembly-Komponenten aus dem Cache gestartet). IN
    WebAssembly hat außerdem die neuen Anweisungen „memory.copy“, „memory.fill“, „table.copy“, „memory.init“ und „table.init“ hinzugefügt, um große Speicherbereiche zu kopieren, zu füllen und zu initialisieren.

  • Es wurde Unterstützung für das direkte Parsen von Skripten hinzugefügt, wenn diese über das Netzwerk heruntergeladen werden, ohne den Haupt-Chrome-Thread einzubeziehen. Zuvor wurde der Thread zunächst im Hauptthread empfangen und von dort an den Parser weitergeleitet. Diese Anordnung bedeutete, dass die Weiterleitung durch andere Aufgaben blockiert werden konnte, die im Hauptthread ausgeführt wurden, wie z. B. das Parsen von HTML und das Ausführen von anderem JavaScript. Nun wird eine solche Umleitung abgeschafft;
  • Verbesserungen bei Tools für Webentwickler:
    • Der CSS-Inspektionsmodus bietet eine automatische Vervollständigung der Namen und Basiswerte von Funktionen, die in CSS-Eigenschaften verwendet werden können (z. B. „filter: Blur(1px)“). Vorgeschlagene Werte spiegeln sich sofort im angezeigten Seitenlayout wider;
      Chrome-Version 75

    • Das beim Drücken von Strg+Umschalt+P angezeigte Befehlsfeld implementiert den Befehl „Site-Daten löschen“, um alle mit der Seite verknüpften Daten zu löschen (ähnlich dem Aufruf des Menüs „Anwendung“ > „Speicher löschen“), einschließlich Service Worker, localStorage, sessionStorage, IndexedDB, Web SQL, Cookies, Cache und Anwendungscache;
    • Es wurde die Möglichkeit hinzugefügt, alle vorhandenen IndexedDB-Datenbanken anzuzeigen (zuvor konnte man unter Anwendung > IndexedDB die Datenbank für die aktuelle Domäne anzeigen, wodurch beispielsweise die Verwendung von IndexedDB in über Iframe geladenen Blöcken nicht überprüft werden konnte);

      Chrome-Version 75

    • In der Netzwerkinspektionsoberfläche zeigt der Tooltip, der angezeigt wird, wenn man mit der Maus über die Felder in der Spalte „Größe“ fährt, jetzt die Größe der Ressource in ihrer ursprünglichen Form ohne Komprimierung an;

      Chrome-Version 75

    • Die Debugger-Seitenleiste bietet eine separate Ausgabe von Informationen über den Status von Haltepunkten, die einzelnen Teilen komplexer Ausdrücke in einer Zeile (Inline-Haltepunkt) zugeordnet sind, beispielsweise denen, die in einer Methodenaufrufkette festgelegt sind.

      Chrome-Version 75

    • In den IndexedDB- und Cache-Inspektionspanels ist die Anzeige von Zählern für die Gesamtzahl der Ressourcen in der Datenbank oder im Cache implementiert;
      Chrome-Version 75

  • Zu experimentellen Canary-Builds hinzugefügt unterstützen
    Zugriff auf DNS über HTTPS (DoH, DNS über HTTPS), der in chrome://flags#dns-over-https aktiviert werden kann. DoH kann hilfreich sein, um das Durchsickern von Informationen über angeforderte Hostnamen über die DNS-Server von Anbietern zu verhindern, MITM-Angriffe und DNS-Traffic-Spoofing zu bekämpfen, Blockierungen auf DNS-Ebene zu widerstehen oder die Arbeit für den Fall zu organisieren, dass eine direkte Kontaktaufnahme mit DNS-Servern nicht möglich ist (z Beispiel, wenn über einen Proxy gearbeitet wird);

Neben Neuerungen und Fehlerbehebungen enthält die neue Version auch Beseitigungen 42 Schwachstellen. Viele der Schwachstellen wurden durch automatisierte Testtools identifiziert AddressSanitizer, MemorySanitizer, Kontrollflussintegrität, LibFuzzer и AFL. 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 Vulnerability Bounty-Programms für die aktuelle Version hat Google 13 Boni im Wert von 9000 US-Dollar ausgezahlt (ein 5000-Dollar-Bonus, zwei 1000-Dollar-Boni und vier 500-Dollar-Boni). Die Höhe der 7 Belohnungen steht noch nicht fest.

Source: opennet.ru

Kommentar hinzufügen