Выпуск web-браузера Chrome 56
26 января 2017 года
Компания Google представила релиз web-браузера Chrome 56. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome. Браузер Chrome отличается использованием логотипов Google, идущим в комплекте модулем Flash, наличием системы отправки уведомлений в случае краха, модулями для воспроизведения защищённого видеоконтента, системой автоматической установки обновлений и передачей при поиске RLZ-параметров.
Основные изменения в Chrome 56:
- Началось воплощение в жизнь инициативы по пометке незащищённых HTTP-соединений в адресной строке. При открытии по HTTP страниц, передающих пароли или номера платёжных карт, браузер теперь предупреждает пользователя о проблемах с безопасностью. Индикатор небезопасного HTTP-соединения аналогичен индикатору, информирующему о проблемах с HTTPS, за тем исключением, что первое время он не будет выделен красным цветом (цвет будет изменён на красный на одном из последних этапов инициативы). В дальнейшем планируется перейти к выводу предупреждения о небезопасности для всех сайтов, открываемых по HTTP, а не только для страниц с формами ввода конфиденциальных данных.
- Для всех пользователей введены ограничения по воспроизведению Flash-контента, по умолчанию теперь предлагается использовать HTML5. Поддержка Flash больше не объявляется сайтам в списках navigator.plugins и navigator.mimeTypes, а при желании воспроизведения Flash-контента от пользователя требуется явное включение поддержки Flash для каждого отдельного сайта;
- Добавлена поддержка API Web Bluetooth, предоставляющего средства для доступа web-приложений к внешним устройствам, связанным через протокол Bluetooth Low Energy (BLE). Например, при помощи нескольких строк код на JavaScript можно получить доступ к внешним сенсорам, принтерам или экранам. Web Bluetooth API использует протокол GATT (Архивная копия от 11 июля 2017 на Wayback Machine) и пока ограничен платформами Android, Chrome OS и macOS. Для обнаружения устройств предлагается использовать механизм Physical Web, позволяющий быстро получать ссылки на окружающие объекты при помощи Bluetooth-меток Eddystone. Для просмотра списка доступных Bluetooth-устройств и их параметров реализована специальная страница "chrome://bluetooth-internals";
- Добавлена встроенная поддержка звукового кодека FLAC (Free Lossless Audio Codec), развиваемого сообществом Xiph.Org и обеспечивающего уровень сжатия звукового потока в 50-60% без потери качества (lossless). FLAC поддерживается в контейнерах FLAC и Ogg в составе тега audio или при обработке потока через API decodeAudioData();
- Включена по умолчанию поддержка API WebGL 2.0, предоставляющего средства для рендеринга 3D-контента на уровне возможностей OpenGL ES 3.0 через элемент canvas. Включение WebGL 2.0 и FLAC синхронизировано с проектом Mozilla, который позавчера активировал данные возможности в выпуске Firefox 51;
- Прекращена поддержка алгоритма SHA-1, для которого выявлен ускоренный метод подбора коллизий. В частности, прекращена поддержка шифров
ECDHE_ECDSA_WITH_AES_128_CBC_SHA, ECDHE_ECDSA_WITH_AES_256_CBC_SHA, а также алгоритма ECDSA с SHA-1 и SHA-512. Сайты использующие выданные удостоверяющими центрами сертификаты, заверенные с использованием алгоритма хэширования SHA-1, теперь будут помечаться как незащищённые. Локально добавленные сертификаты на основе SHA-1 продолжат свою работу до выпуска Chrome 57, намеченного на март. Для корпоративных пользователей реализована настройка EnableSha1ForLocalAnchors, позволяющая обойти вводимые ограничения и продолжить использование SHA-1 в PKI. Сертификаты с SHA-1, используемые для аутентификации клиентов, а также директива EnableSha1ForLocalAnchors будут поддерживаться до 1 января 2019 года.
- Добавлена экспериментальная поддержка медиасеансов (Media Sessions, chrome://flags/#enable-default-media-session), позволяющих автоматически выбирать актуальный контент и предотвращать одновременное воспроизведение в нескольких вкладках. Например, при включенных медиасеансах, при открытии новой вкладки с роликом YouTube, проигрывание музыки в ранее открытой вкладке будет приостановлено;
- Реализована поддержка липкого позиционирования CSS - position:sticky, при которой можно определить, чтобы при скроллинге часть блока оставалась видимой, пока сам блок полностью не выйдет за пределы экрана. Например, теперь можно легко сделать так, чтобы заголовок с пояснениями по столбцам для длинной таблицы был виден, пока видна хоть одна ячейка таблицы, не прибегая к усложнениям в виде перехвата событий прокрутки и переключения позиции с "relative" на "fixed";
- Web-приложениям предоставлена возможность инициирования создания фотографий со встроенной камеры и изменения настроек камеры через API Image Capture. Добавлена спецстраница "chrome://media-internals", на которой представлен список всех подключенных web-камер, а также поддерживаемых ими форматов и разрешений;
- Переработана реализация всплывающей полосы прокрутки;
- При вылезании содержимого за пределы заданной в параметрах viewport области, браузер теперь автоматически подстраивает позицию прокрутки для оставления содержимого видимым, за исключением случаев явного применения CSS-свойства overflow-anchor;
- В API Notifications реализована поддержка включения изображений в состав уведомлений. Для определения изображений добавлено свойство "image";
- Обеспечена поддержка чернового варианта спецификации TLS 1.3, в том числе режима 1-RTT, устраняющего задержки при согласовании соединений;
- Добавлен новый HTTP-заголовок Referrer-Policy, позволяющий организовать перенаправление пользователя на другой URL без утечки идентификаторов сеансов и другой приватной информации. Поддержка CSP-директивы "referrer" прекращена (следует использовать заголовок Referrer-Policy);
- Расширены возможности API PaymentRequest, например, появилась поддержка запроса имени плательщика (requestPayerName) и сериализации JSON;
- Прекращена загрузка скриптов, в параметрах которых некорректно выставлены атрибуты type или language (например, type="python");
- Добавлен метод KeyboardEvent.isComposing(), позволяющий web-приложению определить факт того, что пользователь в настроящее время занят набором текста, без прямого мониторинга за событиями ввода;
- Для сокращения потребления памяти и накладных расходов на совмещение изображений добавлена возможность отрисовки пиксельных данных через ImageBitmapRenderingContext в форме ImageBitmap;
- В CSS-свойство "touch-action" добавлен параметр "pinch-zoom", позволяющий настроить обработку жеста "масштабирование щипком";
- Добавлен источник звука ConstantSourceNode, позволяющий генерировать постоянный звуковой фон, который можно смешивать при помощи AudioParam.
- В режим только для чтения переведены два атрибута интерфейса Web Audio ChannelSplitterNode - channelCount и channelCountMode;
- От префикса "webkit" избавлен API RTCPeerConnection (поддержка webkitRTCPeerConnection сохранена);
- В версии для платформы Android появилась поддержка API Remote Playback, позволяющего управлять воспроизведением контента через HTMLMediaElement на умных телевизорах или громкоговорителях;
- Добавлена поддержка API WebVR, предоставляющего средства для создания приложений виртуальной реальности. Поддержка API пока ограничена платформой Android;
- Скрытие или отображение адресной строки на мобильных устройствах более не приводит к изменению размеров содержимого и элементов, подогнанных под параметры viewport;
- На устройствах с платформой Android, имеющих как минимум 512 Мб ОЗУ, в формах ввода текста включена по умолчанию проверка орфографии, при наличии необходимых словарей в системе;
- Унифицировано базовое семейство шрифтов, используемое для элементов интерфейса, которое теперь на всех платформах поставляется под именем system-ui;
- На платформе Android параметры упреждающей загрузки по умолчанию установлены на получение только метаданных для видео (загружается эскиз картинки и данные о времени воспроизведения), в случае соединения через мобильную сеть.
Кроме нововведений и исправления ошибок, в новой версии устранена 51 уязвимость. Многие из уязвимостей выявлены в результате автоматизированного тестирования инструментами AddressSanitizer, MemorySanitizer, Control Flow Integrity и LibFuzzer. Критических проблем, которые позволяют обойти все уровни защиты браузера и выполнить код в системе, за пределами sandbox-окружения, не выявлено. В рамках программы по выплате денежного вознаграждения за обнаружение уязвимостей для текущего релиза компания Google выплатила 21 премию на сумму 50837 долларов США (одна премия $8837, две премии $8000, одна премия $7500, одна премия $5500, одна премия $3000, четыре премии $2000, одна премия $1000 и две премии $500). Сумма неокончательная, так как размер шести вознаграждений ещё не определён.
Источники
правитьЛюбой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.