Closed
Description
Git supports signing pushes since 2.2.0, we should enable it server side if git is at least that version as it's a backwards-compatible feature. Essentially we need to configure each repo or git globally with:
[receive]
advertisePushOptions = true
certNonceSeed = "<uniquerandomstring>"
Maybe the UI can also indicate push signatures, but I guess that can come later.
certNonceSeed
could be set to a hash derived from security.SECRET_KEY
.
https://people.kernel.org/monsieuricon/signed-git-pushes
https://github.com/git/git/blob/7f7ebe054af6d831b999d6c2241b9227c4e4e08d/Documentation/RelNotes/2.2.0.txt#L81-L87