Воспроизводимые сборки
Что такое Воспроизводимые сборки?
Воспроизводимые сборкиПрактики сборки, обеспечивающие, что компиляция одного и того же исходного кода с теми же инструкциями даёт побитно идентичный артефакт независимо от времени и места сборки.
Воспроизводимые сборки устраняют недетерминированность, чтобы любой, имея исходники и рецепт, мог независимо собрать тот же бинарник и побайтно сравнить его с выпуском. Для этого нужно контролировать метки времени, пути сборки, переменные окружения, случайность, локаль, порядок файлов и опции компилятора. Проект Reproducible Builds, Debian, NixOS, Arch Linux, Tor, F-Droid и Bazel активно работают в этой области. В сочетании с подписанным provenance они позволяют независимым ребилдерам убедиться, что бинарь действительно собран из опубликованного кода, что помогает выявлять компрометацию единичного сборщика (как в случае SolarWinds). Они необходимы для достижения высших уровней SLSA и поддерживают доверие к критичному open-source ПО.
● Примеры
- 01
Независимая пересборка релиза Tor Browser, побайтно совпадающая с официальным бинарником.
- 02
Bazel-сервис, выдающий одинаковый SHA-256 для одного коммита на любом воркере.
● Частые вопросы
Что такое Воспроизводимые сборки?
Практики сборки, обеспечивающие, что компиляция одного и того же исходного кода с теми же инструкциями даёт побитно идентичный артефакт независимо от времени и места сборки. Относится к категории Безопасность приложений в кибербезопасности.
Что означает Воспроизводимые сборки?
Практики сборки, обеспечивающие, что компиляция одного и того же исходного кода с теми же инструкциями даёт побитно идентичный артефакт независимо от времени и места сборки.
Как защититься от Воспроизводимые сборки?
Защита от Воспроизводимые сборки обычно сочетает технические меры и операционные практики, как описано в определении выше.
Какие есть другие названия Воспроизводимые сборки?
Распространённые альтернативные названия: Детерминированные сборки, Побитно идентичные сборки.