
The power capacity Offering reproducible builds on Linux is a mark of transparency and security in which various distributions are currently working and that others already offer.
The importance of this lies in the fact that this allow both developers, researchers and users verify that the distributed binary has been created correctly from the source code provided and has not been altered.
consulted a little linux documentation, we can understand that:
It is generally desirable that building the same source code with the same set of tools is reproducible, that is, that the result is always exactly the same. This makes it possible to verify that the build infrastructure for a binary distribution or embedded system has not been subverted. This can also make it easier to verify that a source or tool change makes no difference to the resulting binaries.
And in the case of Linux and generally in all open source software, reproducible compilations are essential to ensure that the community can verify and audit the software In addition, this allows us to detect malicious changes.
openSUSE Factory now offers reproducible bit-by-bit builds
The reason for mentioning this is that the project openSUSE has introduced support for bit-by-bit reproducible builds in your repository open SUSE Factory, which is the basis for the openSUSE Tumbleweed distribution.
This update Ensures that distributed binaries in the packages are generated consistently from the provided source code, without including hidden changes and as we mentioned, the benefit of doing this is that any user can verify for themselves that the proposed builds exactly match the builds generated from the source codes.
A recent example is that reproducible builds allow the creation of proof, simply by rebuilding and comparing the result, that a GCC build whose source was pulled with a committed xz was not committed; This process was accomplished without the need to reverse engineer how the compromise occurred. Similarly, reproducible builds were reported to be useful during investigations of the xz compromise
Playable builds are achieved by taking into account details such as accuracy in dependencies, using the same build tools versions and configurations, an identical set of default options and settings, preserving the order of files in the build (using consistent sorting methods), and disabling information appending non-permanent by the compiler, such as random values, file path references, and compilation date and time details
The ability to verify a binary offers an additional layer of security by not relying solely on trust in the compiler infrastructure. This is crucial because compromising the compiler or build tools could lead to the insertion of malicious elements or hidden changes to the resulting binaries.
For example, the openSUSE developers used repeatable builds to ensure integrity of the binaries after the famous backdoor incident detected in the xz package. In this case, the compromised liblzma library, used to decompress files with GCC code, could have introduced malicious changes to the GCC code, which in turn could affect assembled applications.
It is important to note that the Factory repository is not intended for end users, but primarily for distribution developers. This is because its stability is not guaranteed at all times.
Packages added to Factory go through automated testing using openQA. Once these tests are completed and the consistency of the dependency state is checked, the contents of the repository are synchronized with the mirrors several times a week. The final result of this process is released as openSUSE Tumbleweed, which is the stable and reliable distribution that end users can use with confidence.
If you are interested in knowing more about it, you can check the details In the following link.