sigstore : le Let’s Encrypt du code rejoint la Fondation Linux

La Fondation Linux héberge le projet sigstore, qui associe certificats éphémères et système de journalisation pour favoriser la signature de code.

sigstore est désormais officiellement sous l’aile de la Fondation Linux. Google et Red Hat emmènent ce projet communautaire. Leur promesse : sécuriser la supply chain logicielle en simplifiant la signature de code.

sigstore s’apparente à ce que Let’s Encrypt est pour les sites internet, au sens où il fournit des certificats gratuits. Mais ces certificats ont une particularité : ils sont éphémères. Pour leur donner une valeur potentiellement intemporelle, on les inscrit dans des « journaux de confiance » – au même titre que les clés dont ils dérivent.

Cette approche est censée éviter les inconvénients de la gestion de secrets à long terme… et les risques qui peuvent en découler. Notamment la modification indésirable de certains de ces secrets qui seraient stockés en des lieux insuffisamment sûrs.

La procédure d’émission de certificats s’appuie sur OpenID Connect pour assurer l’identification des utilisateurs. Dans un premier temps, sigstore permettra de signer des composants « génériques » : tarballs, binaires compilés, images de conteneurs… Les fichiers JAR et les manifestes font partie des cibles à plus longue échéance.

sigstore : Trillian en back-end

La plupart des briques du projet en sont encore au stade du prototype*. Exception faite du système de journalisation Rekor. On aurait pu penser qu’il reposerait sur une blockchain. Mais Google et consorts redoutent, entre autres, la fragilité des algorithmes de consensus face aux attaques par majorité. Autre argument brandi pour l’occasion contre ce type de technologie : elle finit par induire des points d’entrée centralisés, par exemple pour l’authentification ou la mise en forme canonique.

Dans l’absolu, Rekor est lui-même centralisé. Pour le moment en tout cas, puisque la mise en place d’un mécanisme de commérage (gossip ; communication entre nœuds) n’est pas exclue. Mais en l’état, on préfère nous assurer que toute entité intéressée peut alimenter les instances qu’elle désire.

En back-end à Rekor, il y a Trillian, que Let’s Encrypt utilise déjà. Ce datastore implémente les bases posées dans le cadre de l’initiative Certificate Transparency (et schématisées ci-dessous). Google avait lancé cette dernière voilà près de dix ans, en réponse à la compromission d’une autorité de certification néerlandaise.

Certificate Transparency

* Parmi ces briques, Cosign, destiné à signer les images de conteneurs.

Illustration principale © Maksim Kabakou – shutterstock.com