-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Skip other people signatures only if they have thrown an error #65
base: master
Are you sure you want to change the base?
Conversation
Is it possible to take a look ? |
We did, way back when it was submitted. Sorry I didn't leave a comment. We typically consider signatures issued by 3rd party (i.e. "signatures by other people") there because we only look for signatures made by the primary key itself, to validate integrity of the PGP bundle. If you were to read 3rd party signatures, the internal representation would have to change and they should be handled separately from "regular" signatures, so they are never confused. Can you explain what issue were you trying to fix? Let me know if I misunderstood the intent here. Thank you |
We use it to establish a chain of trust. We have a KeySigningKey stored on an offline media which sign other gpg keys used in our system. On client side, applications only knows the public key of the KeySigningKey and can check that the incoming signature is signed by a key which is signed by the KSK. Except if I missed something, everything is already there in the lib. The only issue I have is that such signatures are just dropped when the key is loaded. Sample KSK:
Sample "Other Key" signed by KSK:
How the signature is made:
Simple parsing with github.com/keybase/go-crypto/openpgp
Without the patch:
I only have the self signature With the patch:
I also have the signature made by the KSK And in my model, I consider that a GPG PublicKey (k in the code below) is signed by the KSK GPG PublicKey (signerKey) if at least one Identity of this key have a signature done by the KSK:
That's why I need Identities.Signatures. And I extract also the signature CreationDate & signature SigLifetimeSecs to check signature expiration and revoke old signing keys. Hope it will give your more infos on what I try to do with your library |
Do not skip valid signatures of other people