再現性のあるビルド

再現性のあるビルド（さいげんせいのあるビルド、、決定論的なビルド）とは、同じソースコードを用いてコンパイルした場合確実に同じバイナリデータを再現するビルド手法のことを指す。

再現性のあるビルドは、の一部を構成する。再現性のあるビルドによりバイナリが信頼できるソースコードからコンパイルされたことを証明できる。

方法 
再現性のあるビルドを実現するためには、使用するビルド環境に関係なく、コンパイラへ入力される情報が同じである必要がある。それには入力ファイルの順序、タイムスタンプ、ロケール、パスなど、変更される可能性のある変数の正規化が必要とされる。

また、コンパイラ自体が非決定論的な動作を用いてはならない。例えば、ランダムなハッシュシード値を持つハッシュテーブルを使用したり変数のアドレスを使用したりしてはならない。

脚注

外部リンク 
 reproducible-builds.org
 Debian再現性のあるビルド

ソフトウェア開発ツール
コンパイラ