
Открываем твой цифровой клуб…
Игры и железо
В браузере Chrome, начиная с версии 155, возобновлена поддержка декодирования изображений формата JPEG XL (.jxl). По описанию разработчиков, этот формат может снижать размер файлов на 30–50 % по сравнению с JPEG и предлагает варианты сжатия без потерь, встроенную поддержку HDR и транскодирование JPEG без потерь, что позволяет гибко работать с фотографиями и прогрессивной загрузкой изображений. При этом у JPEG XL отмечается удобство для высокоточных и фотографических изображений, а также для случаев с мелкозернистым прогрессивным декодированием. Источники прямо подчеркивают такие преимущества и сферы применения.
Безопасность декодирования изображений в Chrome остаётся предметом внимания. В материалах указывается, что средства декодирования являются одной из мишеней веб-браузеров для атак, особенно если код написан на языках с низким уровнем абстракции, таких как C++. Однако для JPEG XL применены меры защиты: модель безопасности строится на песочнице и принципах «правило двух»; внедрена jxl-rs — реализация декодера на Rust, что важно для снижения рисков небезопасного кода. Также применяются технологии SIMD через target_feature_11 и абстракция jxl_simd на примере Highway, чтобы ограничить небезопасные операции небольшим числом проверенных локаций.
Разработчики подчеркивают, что новая реализация обеспечивает безопасность и сохраняет возможности оптимизации, а проверка реализации с помощью фаззинга и ИИ не выявила ошибок в области безопасности памяти. В публикациях также отмечают, что переход на JPEG XL в Chrome — это шаг к более быстрой, богатой контентом и безопасной работе веб-страниц. По словам создателей формата, веб-страницы становятся быстрее и богаче за счёт использования изображений и анимации в формате .jxl в проектах разработчиков и владельцев платформ.
Подробности выхода и контекст проекта приводят к выводу, что переход на JPEG XL в Chrome сопровождается целым набором технических решений, направленных на снижение риска и одновременное улучшение производительности. В материалах упоминаются конкретные технические блоки и разработки, такие как libjxl-основанные оптимизации, многоплатформенная библиотека и упор на безопасное использование SIMD, что позволяет сохранить производительность при ограничении уязвимостей памяти.