On Mon, Jul 22, 2019 at 04:16:15PM +0200, Ibrahim El Rhezzali wrote: > I have been selected by the Linux Foundation to work on a summer > project. I would like to abstract the git signing interface and add > support for signatures using decentralized identifiers (DID). > Decentralized identifiers are an emerging standard [0] that allows > individuals to control their own digital identities, and is often > called self-sovereign identity (SSI). The SSIMeetup is a good place to > learn more about SSI [1] and DIDs [2]. > > The project’s current goal is to abstract the current GPG interface > into a more ‘generic’ API that supports the existing OpenPGP and X.509 > functionality while creating the ability to write additional signature > drivers. Neat. I'm always wary of supporting "emerging standards", because sometimes they turn out not to emerge and you are left with historical cruft. :) But if your changes to Git are mostly around making the signing config more generic, I think that is something people are interested in (signify has come up as a possibility before). You might find this discussion interesting (that patch and the sub-thread): https://public-inbox.org/git/20180409204129.43537-9-mastahyeti@xxxxxxxxx/ One of the points I think people didn't like was how Git would detect signatures embedded in objects (i.e., is matching PEM-like lines enough, or what would other signing systems want?). That patch was later dropped in favor of the work from Henning Schild: https://public-inbox.org/git/cover.1531208187.git.henning.schild@xxxxxxxxxxx/ which is much more geared at just adding gpgsm support. There were various discussions about how it could eventually be extended to new formats. I skimmed over the documentation from your branch and it looks like a pretty sane layout, with backwards compatibility. > I have implemented a prototype that works and passes all tests, and in > the coming weeks I plan to submit a series of patches for your review. > I first need to clean up the Git history to make it easy to follow. I > will also ensure that people using the current approach to GPG signing > can use the proposed approach with only minor changes. The flag > “--gpg-sign” would evolve to “---sign”, though I would like to > preserve an alias to the old flag if possible. Yes, this must not be "minor changes" but "no changes" to be accepted. It's OK to deprecate things, but old options cannot immediately stop working. From this email and looking at your config patches, it looks like that's the route you plan to take. Good. I look forward to seeing the cleaned-up patches. :) -Peff