PhD defense Solal Rapaport: The Impact of Repository Mutability for Software Integrity and Supply-Chain Security
Télécom Paris, 19 place Marguerite Perey F-91120 Palaiseau [getting there], amphi Thévenin and in videoconferencing
Jury
- Samia Bouzefrane, Professor, CNAM (Reviewer)
- Yvon Kermarrec, Professor, IMT-Atlantic (Reviewer)
- Christelle Urtado, Professor, IMT-Mines d’Alès (Examiner)
- Olivier Zendra, Research Scientist, INRIA (Examiner)
- Laurent Pautet, Professor, Télécom Paris (Thesis Director)
- Stefano Zacchiroli, Professor, Télécom Paris (Thesis Co-Supervisor)
- Samuel Tardieu, Associate Professor, Télécom Paris (Thesis Co-Supervisor)
- Gregory Blanc, Associate Professor, Télécom SudParis (Guest)
Abstract
Modern software combines many public projects maintained by different people. Reusing them saves time, but creates a chain of trust: users depend on work hosted elsewhere and often assume that a published version will always contain the same code. Software-sharing tools do not guarantee this. A version name can point to different content at different times, and a project’s visible history can be rewritten. These changes are often legitimate, but they can also prevent a program from being rebuilt, change what users receive without warning, erase useful evidence, or redirect automated systems towards malicious code. The project’s current page cannot prove that it remained unchanged.
The third study examines archived copies of removed files. About one in eleven contains patterns resembling secrets, and many apparent private keys do not have the structure of placeholders but of real keys. This does not show whether they still provide access, but proves that deleting a secret from visible history does not make every copy disappear.
The thesis proposes that linking software to an exact, verifiable copy, rather than only to a convenient name can solve some of these concerns. Independent archives should preserve evidence of changes, and tools should warn users when trusted names or histories move. A leaked key must also be cancelled by the service that accepts it, not merely deleted from a project. Not every change is harmful, but trust must rely on evidence that survives later edits.