Google は、Chrome 89 Web ブラウザのリリースを発表しました。同時に、Chrome の基盤となる無料の Chromium プロジェクトの安定版が利用可能になりました。 Chrome ブラウザは、Google ロゴの使用、クラッシュ時に通知を送信するシステムの存在、保護されたビデオ コンテンツ (DRM) を再生するモジュール、アップデートを自動的にインストールするシステム、および検索時の RLZ パラメータの送信によって区別されます。 Chrome 90 の次回リリースは 13 月 XNUMX 日に予定されています。
Chrome 89 の主な変更点:
- Версия Chrome для Android отныне сможет запускаться только на устройствах, сертифицированных в Play Protect. В 仮想マシン и эмуляторах Chrome для Android сможет использоваться если эмулируется допустимое устройство или эмулятор разработан в Google. Проверить сертифицировано устройство или нет можно в приложении Google Play в секции настроек (на странице с настройками в самом низу показан статус «Play Protect certification»). Для несертифицированных устройств, например при использовании сторонних прошивок, для запуска Chrome пользователям предлагается зарегистрировать свои устройства.
- 少数のユーザーは、アドレス バーにホスト名を入力するときに、デフォルトで HTTPS 経由でサイトを開くことができます。たとえば、ホスト example.com を入力すると、サイト https://example.com がデフォルトで開きます。開くときに問題が発生した場合は、http://example.com にロールバックされます。デフォルトの「https://」の使用を制御するために、設定「chrome://flags#omnibox-default-typed-navigations-to-https」が提案されています。
- プロファイルのサポートが含まれており、異なるユーザーが同じブラウザで作業するときにアカウントを分離できるようになります。たとえば、プロファイルを使用すると、家族間でのアクセスを整理したり、仕事用と個人的な興味に使用するセッションを分けたりできます。ユーザーは新しい Chrome プロファイルを作成し、特定の Google アカウントに接続したときにアクティブになるように構成でき、さまざまなユーザーがブックマーク、設定、閲覧履歴を共有できるようになります。別のプロファイルにリンクされているアカウントにログインしようとすると、ユーザーはそのプロファイルに切り替えるように求められます。ユーザーが複数のプロファイルにリンクされている場合、目的のプロファイルを選択する機会が与えられます。独自のカラースキームをさまざまなプロファイルに割り当てて、ユーザーを視覚的に区別することができます。

- トップバーのタブにマウスを置いたときにコンテンツのサムネイルが表示されるようになりました。以前は、タブの内容のプレビューはデフォルトで無効になっており、「chrome://flags/#tab-hover-cards」設定を変更する必要がありました。

- 一部のユーザーでは、「ブックマークを追加」ボタンに加えて、アドレスバーのアスタリスクをクリックすると、「読書リスト」(「chrome://flags#read-later」)機能が有効になります。 2 番目のボタン「リーディング リストに追加」が表示され、ブックマーク バーの右隅に「リーディング リスト」メニューが表示され、以前にリストに追加されたすべてのページがリストされます。リストからページを開くと、既読としてマークされます。リスト内のページを手動で既読または未読としてマークしたり、リストから削除したりすることもできます。

- Chrome 同期を有効にせずに Google アカウントにログインしたユーザーは、Google アカウントに保存されている支払い方法とパスワードにアクセスできます。この機能は一部のユーザーに対して有効になっており、他のユーザーにも段階的に展開される予定です。
- クイック タブ検索のサポートが有効になりました。これまでは、「chrome://flags/#enable-tab-search」フラグを介してアクティブ化する必要がありました。ユーザーは、現在のウィンドウにあるか別のウィンドウにあるかに関係なく、開いているすべてのタブのリストを表示し、目的のタブをすばやくフィルタリングできます。

- すべてのユーザーに対して、内部サイトを開こうとするアドレス バー内の個々の単語の処理が停止されました。以前は、アドレス バーに 1 つの単語を入力すると、ブラウザはまずユーザーがサブドメインを開こうとしていると考えて、DNS 内にその名前のホストが存在するかどうかを確認しようとし、その後、リクエストを検索エンジンにリダイレクトしていました。したがって、ユーザーの設定で指定された DNS サーバーの所有者は、単一単語の検索クエリに関する情報を受信し、これは機密性の侵害と評価されました。サブドメインのないインターネット ホスト (例: 「https://helpdesk/」) を使用している企業の場合、古い動作に戻すオプションが提供されます。
- アドオンまたはアプリケーションのバージョンを固定することができます。たとえば、企業が信頼できるアドオンのみを使用するようにするには、管理者は新しい ExtensionSettings ポリシーを使用して、アップデートのダウンロードにアドオン マニフェストで指定された URL ではなく独自の URL を使用するように Chrome を構成できます。
- x86 システムでは、ブラウザーは SSE3 命令のプロセッサ サポートを必要とするようになりました。SSE2003 命令は、Intel プロセッサでは 2005 年からサポートされ、AMD では XNUMX 年からサポートされています。
- 広告ネットワーク、ソーシャル ネットワーク ウィジェット、および Web 分析システムのコード内でサイト間のユーザーの移動を追跡するために使用されるサードパーティ Cookie を置き換えることができる機能を提供することを目的とした追加の API が追加されました。次の API がテスト用に提案されています。
- トラストトークンは、クロスサイト識別子を使用せずにユーザーを分離します。
- ファースト パーティ セット - 関連ドメインが自身をプライマリとして宣言できるようにし、ブラウザがクロスサイト呼び出し中にこの接続を考慮できるようにします。
- Schemeful Same-Site は、同じサイトの概念を異なる URL スキームに拡張します。 http://website.example と https://website.example は、クロスサイト リクエストの場合は 1 つのサイトとして扱われます。
- Floc は、個人を特定することなく、特定のサイトへの訪問履歴を参照することなく、ユーザーの興味のカテゴリを決定します。
- 広告に切り替えた後のユーザーのアクティビティを評価するコンバージョン測定。
- ユーザー エージェント クライアント ヒントでユーザー エージェントを置き換え、特定のブラウザーおよびシステム パラメーター (バージョン、プラットフォームなど) に関するデータを選択的に返します。
- シリアル API が追加され、サイトがシリアル ポート経由でデータを読み書きできるようになります。このような API が登場した理由は、マイクロコントローラーや 3D プリンターなどのデバイスを直接制御するための Web アプリケーションを作成できるためです。周辺機器にアクセスするには、ユーザーの明示的な承認が必要です。
- HID デバイス (ヒューマン インターフェイス デバイス、キーボード、マウス、ゲームパッド、タッチパッド) への低レベル アクセス用の WebHID API を追加しました。これにより、JavaScript で HID デバイスを操作するためのロジックを実装し、まれな HID デバイスでの作業を整理できます。システム内に特定のドライバーが存在する。まず第一に、新しい API はゲームパッドのサポートを提供することを目的としています。
- Web NFC API が追加され、Web アプリケーションが NFC タグを読み書きできるようになります。 Web アプリケーションでの新しい API の使用例には、博物館の展示品に関する情報の提供、棚卸しの実施、会議参加者のバッジからの情報の取得などが含まれます。タグは、NDEFWriter オブジェクトと NDEFReader オブジェクトを使用して送信およびスキャンされます。
- API Web Share (объект navigator.share) выведен за рамки мобильных устройств и теперь доступен пользователям настольных браузеров (пока только для Windows и Chrome OS). API Web Share предоставляет средства для обмена информацией в социальных сетях, например, позволяет сгенерировать унифицированную кнопку для публикации в социальных сетях, которыми пользуется посетитель, или организовать отправку данных другим приложениям.
- バージョンでは Android и компоненте WebView включена поддержка декодирования формата изображений AVIF (AV1 Image Format), в котором задействованы технологии внутрикадрового сжатия из формата кодирования видео AV1 (в настольных версиях поддержка AVIF была включена ещё в Chrome 85). Контейнер для распространения сжатых данных в AVIF полностью аналогичен HEIF. AVIF поддерживает как изображения в HDR (High Dynamic Range) и цветовом пространстве Wide-gamut, так и в стандартном динамическом диапазоне (SDR).
- COOP (Cross-Origin-Opener-Policy) ヘッダーを通じて指定された特権操作のページで安全な使用のルールの違反に関する情報を取得するための新しいレポート API を追加しました。これにより、COOP をデバッグ モードにすることもでき、これが機能しますルール違反をブロックすることなく。
- ページの処理時に消費されるメモリ量を決定する、performance.measureUserAgentSpecificMemory() 関数を追加しました。
- Web 標準に準拠するために、すべての「data:」URL は潜在的に信頼できるものとして扱われるようになりました。保護されたコンテキストの一部です。
- Streams API には、バイト ストリームのサポートが追加されました。バイト ストリームは、任意のバイト セットを効率的に転送し、データ コピー操作の数を最小限に抑えるために特別に最適化されています。ストリームの出力は、文字列や ArrayBuffer などのプリミティブに書き込むことができます。
- SVG 要素は完全な「フィルター」プロパティ構文をサポートするようになり、blur()、sepia()、grayscale() などのフィルター関数を SVG 要素と非 SVG 要素に同時に適用できるようになりました。
- CSS は疑似要素「::target-text」を実装しています。これを使用すると、テキストの移動先のフラグメント (テキストへのスクロール) を、強調表示するときにブラウザーで使用されるスタイルとは異なるスタイルで強調表示できます。発見された。
- 角の丸みを制御する CSS プロパティを追加しました: border-start-start-radius、border-start-end-radius、border-end-start-radius、border-end-end-radius。
- ブラウザーがページ上でユーザー指定の制限されたカラー パレットを使用しているかどうかを判断する強制カラー CSS プロパティを追加しました。
- 個々の要素の強制的な色の制約を無効にし、CSS によるフルカラー制御を維持するために、forced-color-adjust CSS プロパティを追加しました。
- JavaScript では、トップレベルのモジュールで await キーワードを使用できるため、非同期呼び出しを「非同期関数」でラップすることなく、モジュールの読み込みプロセスにスムーズに統合できます。たとえば、 (async function() { await Promise.resolve(console.log('test')); }()); の代わりに、これで、 await Promise.resolve(console.log('test')); と書くことができます。
- V8 JavaScript エンジンでは、渡された引数の数が関数で定義されたパラメーターに対応しない状況では、関数呼び出しが高速化されます。引数の数が異なるため、非 JIT モードではパフォーマンスが 11.2% 向上し、JIT TurboFan を使用すると 40% 向上しました。
- Web 開発者向けのツールに小さな改善の大部分が加えられました。
技術革新とバグ修正に加えて、新しいバージョンでは 47 件の脆弱性が排除されています。脆弱性の多くは、AddressSanitizer、MemorySanitizer、Control Flow Integrity、LibFuzzer、および AFL ツールを使用した自動テストの結果として特定されました。すべてのレベルのブラウザー保護をバイパスし、サンドボックス環境外のシステム上でコードを実行できるような重大な問題は確認されていません。修正された脆弱性の 2021 つ (CVE-21166-0) は、サウンド サブシステム内のオブジェクトの有効期間に関連しており、ゼロデイ問題の性質があり、修正前のエクスプロイトの 33 つに使用されていたことに注意してください。現在のリリースの脆弱性を発見した場合に賞金を支払うプログラムの一環として、Google は 61000 件の 10000 ドル相当の賞を支払った (7500 ドルの賞が 5000 件、3000 ドルの賞が 1000 件、500 ドルの賞が 18 件、XNUMX ドルの賞が XNUMX 件、XNUMX ドルの賞が XNUMX 件、XNUMX ドルの賞が XNUMX 件)。 XNUMX 件の報酬の規模はまだ決定されていません。
出所: オープンネット.ru




