Die Firma Google hat das Release des Webbrowsers Chrome 99 vorgestellt. Gleichzeitig steht die stabile Version des Open-Source-Projekts Chromium zur VerfĂŒgung, das die Grundlage fĂŒr Chrome bildet. Der Browser Chrome unterscheidet sich durch das Branding von Google, die Möglichkeit zur Ăbermittlung von Benachrichtigungen im Falle eines Absturzes, Module zur Wiedergabe von kopiergeschĂŒtztem Videoinhalt (DRM), ein automatisches Update-System und die Ăbertragung von RLZ-Parametern bei Suchanfragen. Das nĂ€chste Release, Chrome 100, ist fĂŒr den 29. MĂ€rz geplant.
Die wichtigsten Ănderungen in Chrome 99:
- In Chrome fĂŒr Android wurde die Verwendung des Certificate Transparency-Mechanismus eingefĂŒhrt, der das FĂŒhren eines unabhĂ€ngigen öffentlichen Logs aller ausgestellten und widerrufenen Zertifikate gewĂ€hrleistet. Das öffentliche Log ermöglicht es, alle Ănderungen und Aktionen von Zertifizierungsstellen unabhĂ€ngig zu prĂŒfen und sofort mögliche Versuche zur heimlichen Erstellung gefĂ€lschter EintrĂ€ge zu verfolgen. Zertifikate, die nicht im Certificate Transparency verzeichnet sind, werden vom Browser automatisch abgelehnt, und es wird ein entsprechender Fehler angezeigt. Der oben genannte Mechanismus wurde zuvor nur fĂŒr die Desktop-Version und fĂŒr einen kleinen Prozentsatz von Android-Nutzern aktiviert.
- Aufgrund einer Vielzahl von Beschwerden wurde der zuvor im Testmodus angebotene Mechanismus fĂŒr den Private Network Access, der darauf abzielte, den Schutz vor Angriffen zu verstĂ€rken, die mit dem Zugriff auf Ressourcen im lokalen Netzwerk oder auf dem Computer des Benutzers (localhost) aus Skripten zusammenhĂ€ngen, deaktiviert. Um vor solchen Angriffen zu schĂŒtzen, wird vorgeschlagen, bei der Anfrage an interne Subressourcen einen ausdrĂŒcklichen Antrag auf die Berechtigung zum Laden solcher Subressourcen zu stellen. Google wird die Implementierung unter BerĂŒcksichtigung des erhaltenen Feedbacks ĂŒberarbeiten und in einem der zukĂŒnftigen Releases eine verbesserte Version anbieten.
- Die Möglichkeit, standardmĂ€Ăig vorgeschlagene Suchmaschinen zu entfernen, wurde wiederhergestellt. Wir erinnern daran, dass seit Chrome 97 die Möglichkeit, Elemente aus der Liste der standardmĂ€Ăigen Suchmaschinen (Google, Bing, Yahoo) im Konfigurator im Abschnitt âVerwaltung der Suchmaschinenâ (chrome://settings/searchEngines) zu entfernen und die Suchmaschinenparameter zu bearbeiten, eingestellt wurde, was bei vielen Nutzern Unmut ausgelöst hat.
- Auf der Plattform Windows wurde die Möglichkeit eingerichtet, selbstĂ€ndige Webanwendungen (PWA, Progressive Web App) ĂŒber die Systemeinstellungen zu entfernen oder Steuerungspanel analog zu der Entfernung von Windows-Anwendungen.
- Es wird ein abschlieĂender Test auf mögliche Störungen der Webseiten durchgefĂŒhrt, nachdem der Browser eine Version erreicht hat, die aus drei Ziffern statt zwei besteht (nach dem Erscheinen von Chrome 10 gab es viele Probleme in den User-Agent-Parser-Bibliotheken). Wenn die Option âchrome://flags#force-major-version-to-100â aktiviert wird, wird im User-Agent-Header die Version 100 ausgegeben.
- In CSS wurde die UnterstĂŒtzung fĂŒr kaskadierende Schichten implementiert, die mithilfe der Regel @layer definiert und ĂŒber die CSS-Regel @import importiert werden, wobei die Funktion layer() verwendet wird. CSS-Regeln innerhalb einer kaskadierenden Schicht werden gemeinsam kaskadiert, was die Verwaltung des gesamten Kaskades vereinfacht, flexible Möglichkeiten zur Ănderung der Reihenfolge der Schichten bietet und eine klarere Kontrolle ĂŒber CSS-Dateien ermöglicht, um Konflikte zu vermeiden. Kaskadierende Schichten eignen sich gut fĂŒr Design-Themen, das Festlegen von Standardstilen fĂŒr Elemente und das Auslagern der Gestaltung von Komponenten in externe Bibliotheken.
- In die Klasse HTMLInputElement wurde die Methode showPicker() eingefĂŒgt, die es ermöglicht, fertige Dialoge zum AusfĂŒllen typischer Werte in <input>-Feldern mit den Typen âdateâ, âmonthâ, âweekâ, âtimeâ, âdatetime-localâ, âcolorâ und âfileâ anzuzeigen, sowie fĂŒr Felder, die die automatische VervollstĂ€ndigung (autofill) und die Auswahl aus einer Liste (datalist) unterstĂŒtzen. Beispielsweise kann eine BenutzeroberflĂ€che in Form eines Kalenders zum AuswĂ€hlen eines Datums oder eine Farbpalette zum Eingeben einer Farbe angezeigt werden.

- Im Origin Trials-Modus (experimentelle Funktionen, die eine separate Aktivierung erfordern) wurde die Möglichkeit, den Dunkelmodus fĂŒr Webanwendungen zu aktivieren, implementiert. Farben und HintergrĂŒnde fĂŒr das Dunkel-Design werden ĂŒber das neue Feld color_scheme_dark in der Manifestdatei der Webanwendung ausgewĂ€hlt. Der Origin Trial sieht vor, dass mit der angegebenen API aus Anwendungen, die von localhost oder 127.0.0.1 geladen werden, oder nach Registrierung und Erhalt eines speziellen Tokens gearbeitet werden kann, das fĂŒr eine bestimmte Website zeitlich begrenzt gĂŒltig ist.
- Die API fĂŒr die Handschriftenerkennung wurde stabilisiert und allen Interessierten angeboten, die es ermöglichen, die Dienste zur Erkennung handschriftlicher Eingaben zu nutzen, die vom Betriebssystem bereitgestellt werden.
- FĂŒr installierte isolierte Webanwendungen (PWA, Progressive Web App) wurde die Komponente Window Controls Overlay stabilisiert, die den Anwendungsbereich auf das gesamte Fenster einschlieĂlich des Titelfeldes erweitert, auf das die Standardfenstersteuerelemente (SchlieĂen, Minimieren, Maximieren) ĂŒberlagert werden. Die Webanwendung kann die Darstellung und Eingabeverarbeitung im gesamten Fenster steuern, mit Ausnahme des ĂŒberlagerten Blocks mit den Fenstersteuerelementen.
- In der CSS-Funktion calc() sind die Angaben der Werte âinfinityâ, â-infinityâ und âNaNâ oder AusdrĂŒcke, die zu Ă€hnlichen Werten fĂŒhren, zum Beispiel âcalc(1/0)â, erlaubt.
- Im CSS-Eigenschaft color-scheme, die die Möglichkeit bietet, festzustellen, in welchen Farbschemata ein Element korrekt angezeigt werden kann (âlightâ, âdarkâ, âday modeâ und ânight modeâ), wurde der Parameter âonlyâ hinzugefĂŒgt, der das erzwungene Ăndern des Farbschemas fĂŒr bestimmte HTML-Elemente ausschlieĂt. Zum Beispiel, wenn angegeben wird âdiv { color-scheme: only light }â, wird fĂŒr das Element div nur das helle Thema verwendet, selbst wenn im Browser das dunkle Design erzwungen aktiviert ist.
- Zur Ănderung der Werte der Eigenschaft document.adoptedStyleSheets können jetzt die Operationen push() und pop() anstelle einer vollstĂ€ndigen Neuzuordnung der Eigenschaft angewendet werden. Zum Beispiel âdocument.adoptedStyleSheets.push(newSheet);â.
- Die Implementierung der Schnittstelle CanvasRenderingContext2D hat UnterstĂŒtzung fĂŒr die Ereignisse ContextLost und ContextRestored, die Methode reset(), die Option âwillReadFrequentlyâ, CSS-Textmodifikatoren, das Zeichnungsprimitive roundRect und konische VerlĂ€ufe hinzugefĂŒgt. Die UnterstĂŒtzung fĂŒr SVG-Filter wurde verbessert.
- Die Eigenschaften âtext-emphasisâ, âtext-emphasis-colorâ, âtext-emphasis-positionâ und âtext-emphasis-styleâ wurden vom PrĂ€fix â-webkit-â befreit.
- FĂŒr Seiten, die ohne HTTPS geöffnet werden, ist der Zugriff auf die API Battery Status, die Informationen ĂŒber den Akkuladestand liefert, verboten.
- In der Methode navigator.getGamepads() wird nun ein Array von Gamepad-Objekten anstelle von GamepadList ausgegeben. GamepadList wird in Chrome nicht mehr unterstĂŒtzt, was den Anforderungen des Standards und dem Verhalten von Gecko- und Webkit-Engines entspricht.
- Die API WebCodecs wurde an die Spezifikation angepasst. Insbesondere wurden die Methode EncodedVideoChunkOutputCallback() und der Konstruktor VideoFrame() geÀndert.
- Im JavaScript-Engine V8 wurden im API Intl.Locale neue Eigenschaften hinzugefĂŒgt: calendars, collations, hourCycles, numberingSystems, timeZones, textInfo und weekInfo, die Informationen ĂŒber unterstĂŒtzte Kalender, Zeitzonen sowie Zeit- und Texteinstellungen bereitstellen. const arabicEgyptLocale = new Intl.Locale(âar-EGâ) // ar-EG arabicEgyptLocale.calendars // [âgregoryâ, âcopticâ, âislamicâ, âislamic-civilâ, âislamic-tblaâ] arabicEgyptLocale.collations // [âcompatâ, âemojiâ, âeorâ] arabicEgyptLocale.hourCycles // [âh12â] arabicEgyptLocale.numberingSystems // [âarabâ] arabicEgyptLocale.timeZones // [âAfrica/Cairoâ] arabicEgyptLocale.textInfo // { direction: ârtlâ } japaneseLocale.textInfo // { direction: âltrâ } chineseTaiwanLocale.textInfo // { direction: âltrâ }
- Die Funktion Intl.supportedValuesOf(code) wurde hinzugefĂŒgt, die ein Array der unterstĂŒtzten Identifikatoren fĂŒr die API Intl fĂŒr die Eigenschaften calendar, collation, currency, numberingSystem, timeZone und unit zurĂŒckgibt. Intl.supportedValuesOf(âunitâ) // [âacreâ, âbitâ, âbyteâ, âcelsiusâ, âcentimeterâ, âŠ]
- Es wurden Verbesserungen an den Werkzeugen fĂŒr Web-Entwickler vorgenommen. Im Netzwerk-Panel gibt es jetzt die Möglichkeit, WebSocket-Anfragen zu verlangsamen, um das Arbeiten in einem langsamen Netzwerk zu debuggen. Zum Tab âApplicationâ wurde ein Panel hinzugefĂŒgt, um die ĂŒber die API Reporting generierten Berichte zu verfolgen. Im Recorder-Panel wurde vor der Wiedergabe des aufgezeichneten Kommandos die UnterstĂŒtzung implementiert, bis das Element sichtbar oder klickbar wird. Die Emulation des Dunkelmodus wurde vereinfacht. Die Verwaltung von Panels auf Touchscreens wurde verbessert. In der Web-Konsole wurde die UnterstĂŒtzung fĂŒr Escape-Sequenzen zur farblichen Hervorhebung von Text hinzugefĂŒgt, es wurde UnterstĂŒtzung fĂŒr Platzhalter %s, %d, %i und %f implementiert, und die Filterung von Nachrichten wurde optimiert.

Neben neuen Funktionen und Fehlerbehebungen wurden in der neuen Version 28 SicherheitsanfĂ€lligkeiten behoben. Viele dieser SicherheitsanfĂ€lligkeiten wurden durch automatisiertes Testen mit den Werkzeugen AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer und AFL entdeckt. Kritische Probleme, die es ermöglichen, alle Sicherheitsebenen des Browsers zu umgehen und Code auĂerhalb der Sandbox-Umgebung auszufĂŒhren, wurden nicht gefunden. Im Rahmen des Programms zur Belohnung fĂŒr die Entdeckung von SicherheitsanfĂ€lligkeiten hat Google fĂŒr das aktuelle Release 21 PrĂ€mien in Höhe von insgesamt 96.000 US-Dollar ausgezahlt (eine PrĂ€mie von 15.000 US-Dollar, zwei PrĂ€mien von 10.000 US-Dollar, sechs PrĂ€mien von 7.000 US-Dollar, zwei PrĂ€mien von 5.000 US-Dollar, zwei PrĂ€mien von 3.000 US-Dollar sowie eine PrĂ€mie von 2.000 und eine von 1.000 US-Dollar).
Quelle: opennet.ru


