Go-компилятор стал доносчиком: Microsoft включила сбор данных по умолчанию

Метрики отправляются автоматически — без уведомлений и диалогов.


ptr83qb1yzga9sl57f65i68fp9y9llpx.jpg


Microsoft объявила о внедрении сбора телеметрии в собственную сборку компилятора и инструментов языка программирования Go, начиная с версии 1.25. Эта сборка используется внутри компании, включая дистрибутив Azure Linux, а также в проектах, где требуется соответствие требованиям FIPS 140-3 (стандарта криптографических модулей, принятого в США для госсектора и финансовых организаций). Официальные бинарные файлы Go, распространяемые через go.dev , изменений не затрагивают.

Как сообщил старший инженер Microsoft Джордж Адамс , телеметрия будет добавлена в Go 1.25 и выше, использоваться для определения приоритетов дорожной карты, выявления возможностей оптимизации и понимания рабочих процессов разработчиков. Данные будут анонимизированы, а сбор можно отключить, установив переменную окружения MS_GOTOOLCHAIN_TELEMETRY_ENABLED в значение 0.

Вне Microsoft основным стимулом для использования этой сборки Go до сих пор было требование FIPS-сертификации. До релиза Go 1.24 в феврале 2025 года разработчики могли выбрать один из двух путей: использовать модуль BoringCrypto на базе BoringSSL (хотя его поддержка в Go неофициальна), либо прибегнуть к Microsoft-сборке, модифицированной для вызова криптобиблиотек, предоставляемых системой.

С выходом Go 1.24 появилась родная реализация режима FIPS 140-3 , которая сейчас проходит сертификацию в NIST (Национальный институт стандартов и технологий США). После завершения этого процесса потребность в сборке Microsoft для соблюдения FIPS может снизиться — по крайней мере, за пределами компании.

Тем не менее, в блоге Microsoft уточняется, что компания провела анализ новой FIPS-реализации от Go, но пришла к выводу, что она не соответствует внутренней стратегии и политике криптографии. Поэтому Microsoft продолжит использовать собственный подход, но рекомендует другим компаниям использовать официальный FIPS-модуль после завершения сертификации, если он соответствует их задачам.

Среди технических обновлений — добавление поддержки macOS, которой раньше не было. Сейчас она доступна в preview-режиме, а финальная реализация ожидается в версии Go 1.25, запланированной на август.

Microsoft также использует свою сборку Go в Docker-образах, публикуемых в Microsoft Artifact Registry, а также в Azure Linux. По заявлению компании, этот дистрибутив «из коробки» соответствует требованиям FIPS 140-3.