WikiSort.ru - Программирование

ПОИСК ПО САЙТУ | о проекте

Детерминированная компиляция, также известная как воспроизводимая сборка — процесс компиляции программного обеспечения, который  гарантированно воспроизводим. Он позволяет удостовериться, что  результирующий двоичный код в точности соответствует исходному коду. Исходный код скомпилированный с использованием детерминированной компиляции будет всегда выводить один и тот же двоичный файл вплоть до бита.[1][2]

Детерминированная компиляция может выступать как часть цепочки доверия; исходный код может быть подписан цифровой подписью и детерминированная компиляция позволяет доказать, что компиляция двоичного кода была осуществлена из доверенного исходного кода.

Методика

Чтобы процесс компиляции, был детерминированным, входные данные для компилятора должны быть одинаковы, независимо от используемой среды сборки. Это, как правило, связана с очисткой переменных, которые могут меняться, такие как timestamp, локалей и путей.

Системы сборки, такие как Gitian[3], могут быть использованы для автоматизации воспроизводимости процесса сборки.

История

Одним из первых проектов по продвижению воспроизводимых сборок был биткоин проект с Gitian.

Позже, в 2013 году проект Тор (анонимная сеть) начал использовать Gitian для воспроизводимости своих сборок [4]

Список литературы

  1. reproducible-builds.org. reproducible-builds.org. — «Reproducible builds are a set of software development practices which create a verifiable path from human readable source code to the binary code used by computers....build system needs to be made entirely deterministic: transforming a given source must always create the same result.». Архивировано 20 мая 2016 года.
  2. Ratliff, Emily Establishing Correspondence Between an Application and its Source Code | SecurityWeek.com. www.securityweek.com. SecurityWeek (4 April 2016). Архивировано 20 сентября 2016 года.
  3. Gitian: a secure software distribution method (англ.). gitian.org.
  4. Deterministic Builds Part Two: Technical Details. October 04, 2013

Внешние ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии