hulpmiddelen , waarmee een onafhankelijke verificatie van binaire pakketten van de distributie kan worden georganiseerd via de implementatie van een continu werkend buildproces dat de gedownloade pakketten vergelijkt met de pakketten die zijn verkregen uit een herbouw op het lokale systeem. De tool is geschreven in de programmeertaal Rust en wordt verspreid onder de GPLv3-licentie.
Momenteel biedt rebuilderd alleen experimentele ondersteuning voor het verifiƫren van pakketten uit Arch Linux, maar binnenkort beloven ze ook ondersteuning voor Debian toe te voegen. In de eenvoudigste gevallen om rebuilderd te starten installeert u het rebuilderd-pakket vanuit de standaardrepository, importeert u de GPG-sleutel voor het verifiƫren van de omgeving en activeert u de bijbehorende systeemservice. Het is ook mogelijk om een netwerk van verschillende instansen van rebuilderd op te zetten.
De service houdt de status van de pakkettenindex bij en start automatisch de herbouw van nieuwe pakketten in een referentieomgeving, waarvan de status is gesynchroniseerd met de instellingen van de primaire buildomgeving van Arch Linux. Bij de herbouw worden nuances zoals de exacte afhankelijkheidsverhoudingen, het gebruik van onveranderde samenstellingen en versies van buildtools, een identieke set opties en standaardinstellingen, en het behoud van de volgorde van bestandsopbouw (toepassing van dezelfde sorteermethoden) in acht genomen. De instellingen van het buildproces sluiten het toevoegen van variabele metadata door de compiler uit, zoals willekeurige waarden, verwijzingen naar bestandslocaties en gegevens over de datum en tijd van de build.
Momenteel zijn herhaalbare builds voor 84,1% van de pakketten uit de core-repository van Arch Linux, 83,8% uit de extras-repository en 76,9% uit de community-repository. Ter vergelijking, in Debian 10 is dit percentage 94,1%. Herhaalbare builds zijn een belangrijk onderdeel van het waarborgen van de veiligheid, omdat ze elke gebruiker de mogelijkheid bieden om ervoor te zorgen dat de door de distributie aangeboden builds byte voor byte overeenkomen met de builds die persoonlijk uit de broncode zijn samengesteld. Zonder de mogelijkheid om de identiteit van de binaire build te verifiƫren, moet de gebruiker blind vertrouwen op de build-infrastructuur van derden, waarvan een compromittering van de compiler of de buildtools kan leiden tot het invoegen van verborgen achterdeurtjes.
Bron: opennet.ru
