Компания Google решила отказаться от использования, поддержки и развития пакета Octane, созданного в 2012 году в качестве инструмента для тестирования производительности JavaScript-движков, оперирующего кодом реальных популярных web-проектов вместо синтетического стресс-тестирования возможностей, которые мало влияют на производительность работы с реальными сайтами. В последние годы технологии разработки сильно изменились, появился стандарт ECMAScript 2015, получили распространение новые web-фреймворки и библиотеки. По мнению Google, пакет Octane исчерпал себя, больше не отражает реальную производительность и не может служить меркой для оценки браузерных движков и выбора направлений оптимизации. Показатели браузеров в Octane достигли примерно одного уровня. Аргументом против синтетических тестов также выступает то, что производители браузеров не брезгуют внесением специальных оптимизаций, не влияющих на работу в реальных условиях, но позволяющих добиться улучшения показателей при прохождении тестов
Компания Google представила новый сайт opensource.google.com, в рамках которого объединены разрозненные информационные ресурсы, рассказывающие о процессах разработки, использования и поддержки СПО в компании. На сайте также собраны ссылки на все открытые проекты Google (более 2000), поддерживаемые компанией организации, а также подробности о том, как Google участвует в разработке открытого ПО и использует его в своей инфраструктуре. Из впервые опубликованных новинок, можно отметить размещение внутренней документации Google, содержащей инструкции по организации процессов разработки открытых проектов. Рассматриваются такие особенности как подготовка релизов новых проектов, приём сторонних патчей, передача патчей внешним проектам, выбор лицензии, размещение анонсов и управление открытым кодом, который также применяется внутри компании.
Компания Google намерена применить в Chrome блокировку для достаточно большой порции HTTPS-сертификатов, выданных удостоверяющим центром Symantec. Причиной блокировки стали выявленные злоупотребления при выдаче сертификатов уровня EV (Extended Validation). В итоге, под сомнение поставлена валидность более 30 тысяч EV-сертификатов Symantec, выданных за последние несколько лет. EV-сертификаты подтверждают заявленные параметры идентификации и по правилам для их получения требуется проведение проверки документов о принадлежности домена и физическое присутствие владельца ресурса. В случае Symantec подобная проверка не проводилась должным образом, т.е. нет гарантии, что полномочия владельца всегда проверялись. Google обращает внимание на то, что Symantec предоставил доступ к инфраструктуре удостоверяющего центра как минимум четырём сторонним организациям, которым предоставлены полномочия по выдаче сертификатов. При этом компания Symantec не обеспечила должный уровень надзора за ними и допустила несоблюдение ими
Компания Google объявила об открытии кода высококачественного JPEG-кодировщика Guetzli с реализацией нового алгоритма кодирования, позволяющего добиться существенного сокращения размера изображения без потери качестве, с сохранением совместимости со всеми штатными декодировщиками JPEG и полностью соответствуя стандарту JPEG. Например, по сравнению с эталонной библиотекой libjpeg предложенный алгоритм позволяет сократить размер изображений на 20-30% c сохранением идентичного качества. Код библиотеки и базовых утилит с реализацией Guetzli написан на языке С++ и распространяется под лицензией Apache 2.0. Guetzli близок по своему назначению к алгоритму Zopfli, позволяющему добиться повышения уровня сжатия файлов PNG и gzip, без потери совместимости. В отличие от WebP, RAISR (Rapid and Accurate Image Super-Resolution) и алгоритмов упаковки изображения на базе нейронных сетей, требующих специальных декодировщиков, Guetzli нацелен на достижение максимального уровня сжатия без нарушения совместимости с уже
Компания Google объявила об открытии кодовой базы редакции web-браузера Chrome для платформы iOS. По историческим причинам Chrome для iOS развивался как обособленный продукт, его разработка была отделена от проекта Chromium из-за необходимости учёта некоторых особенностей и ограничений платформы iOS, которые приводили к значительным усложнениям в разработке. Например, из-за невозможности использования собственного JIT-компилятора на платформе iOS в браузере применялся штатный для данной платформы движок WebKit, вместо собственного движка Blink. После нескольких лет переработки кодовой базы, весь код, созданный при разработке Chrome для платформы iOS, был аккуратно воссоединён с Chromium и перенесён в основной открытый репозиторий проекта. Слияние кодовых баз отразилось на проекте Chromium добавлением средств для сборки поверх движка WebKit, помимо штатного движка Blink. Вчера работа по слиянию кодовых баз была заверешена и разработчики получили возможность сборки версии Chromium для iOS из общей кодовой
Компания Google опубликовала обзор мер, предпринимаемых для обеспечения безопасности серверной инфраструктуры. Некоторые интересные особенности: Во всех серверах используются собственные материнские платы и компоненты, разработанные инженерами Google и произведённые под контролем представителем компании. Оборудование, включая периферийные устройства, оснащены специальным чипом, отвечающим за безопасную идентификацию и аутентификацию устройства на низком уровне. Программные компоненты, включая прошивки, загрузчики, ядро и базовые образы систем проверяются по цифровой подписи. Таким образом в инфраструктуре могут применяться только проверенные аппаратные и программные элементы, содержащие корректную цифровую подпись. В ситуациях, когда серверное оборудование приходится размещать в чужих датацентрах, оборудование Google отгораживается в собственный периметр физической безопасности, в котором для доступа применяются независимые биометрические датчики, камеры наблюдения и металлодетекторы. Данные
Компания Google анонсировала проект Wycheproof, в рамках которого подготовлен инструментарий для выявления в различных реализациях алгоритмов шифрования известных недоработок и несоответствий с ожидаемым поведением, открывающих двери для проведения атак. Мелкие ошибки при реализации алгоритмов шифрования часто могут привести к катастрофическим последствиям, оставаясь слишком долго необнаруженными. Wycheproof рассчитан на оперативное определение подобных ошибок, которые встречаются значительно чаще, чем хотелось бы. Набор тестов написан на языке Java и распространяется под лицензией Apache 2.0. В настоящее время в Wycheproof реализовано более 80 тестов, проверяющих на наличие более 40 видов ошибок в реализациях алгоритмов RSA, DSA, ECDH и Diffie-Hellman, таких как некорректный выбор констант для построения эллиптической кривой, повторное использование параметров в схемах формирования цифровых подписей, различные виды атак на AES-EAX, AES-GCM, DH, DHIES, DSA, ECDH, ECDSA, ECIES и RSA. Для некоторых тестов
Компания Google объявила о проведении ежегодного мероприятия "Google Summer of Code 2017", направленного на финансирование работы в летний период студентов и аспирантов над задачами, поставленными различными open source проектами. Мероприятие проводится в двенадцатый раз, в предыдущие годы с выполнением поставленных задач успешно справились 15 тысяч студентов из более, чем 100 стран. В формировании заданий приняли участие 560 открытых проектов. За успешно выполненную работу студент получит $5500, а его наставник из открытого проекта - $500. До 19 января организаторы мероприятия принимают заявки от представителей открытых проектов, 27 февраля будет объявлен список заданий. До 20 марта студенты должны выбрать себе проект по душе и обсудить возможность его выполнения с представителями подавших заявку проектов, заявки будут приниматься до 3 апреля. До 1 мая представители открытых проектов выберут студентов, которые займутся выполнением работ. C 30 мая по 29 августа отводится время на написание кода. 6 сентября
Компания Google представила патчи для ряда открытых проектов, обеспечивающие поддержку технологии OpenType Font Variations, разработанной совместно с компаниями Microsoft, Apple и Adobe, и включённой в состав спецификации OpenType 1.8. Технология OpenType Font Variations позволяет создавать изменчивые шрифты, в которых толщина, ширина и другие стилистические характеристики глифа могут произвольно меняться. Вместо отдельного описания каждого представления, комбинации возможных вариантов определяются в одном шрифтовом ресурсе через определения возможных delta-отклонений от базового глифа с получением результата через применение интерполяции. Таким образом, вместо использования для каждого стиля своего файла со шрифтом, можно обойтись одним шрифтовым файлом, что значительно сокращает размер данных, необходимых для получения заданного результата. В рамках совместной работы компания Microsoft занималась подготовкой спецификаций, Apple передала некоторые существующие наработки и поделилась опытом, Adobe
Компания Google опубликовала наработки по созданию новой операционной системы Fuchsia, для которой развивается два новых ядра Magenta и LK. Ядра распространяются под лицензией MIT, а системные компоненты под лицензией Apache 2.0. В качестве поддерживаемых архитектур заявлены ARM, ARM64 и x86-64. Минимальное системное окружение уже может быть запущено в QEMU. Magenta является полнофункциональным ядром, ориентированным на применение на достаточно мощных устройствах, таких как смартфоны и персональные компьютеры. Ядро LK предназначено для систем с ограниченным размером ОЗУ и небольшой производительностью процессора, которые обычно применяются во встраиваемых решениях. LK может рассматриваться как открытая альтернатива таким коммерческим системам, как FreeRTOS и ThreadX. Ядро Magenta оформлено в виде надстройки над LK с реализацией дополнительных концепций. Например, в Magenta имеется поддержка процессов, а в LK нет, но реализация процессов в Magenta вовлекает компоненты LK для работы с памятью и потоками. В