Understanding GitHub's implementation of GPG/SSH #144780
Replies: 3 comments 2 replies
-
Hey @abepolk, Great question!
The GitHub documentation states that GPG and SSH are supported for commit signing; however, it also describes GPG's advanced key management. This does not mean that Github doesn't recognize SSH's role in commit verification, however, it simply shows the difference in the capabilities between the two technologies. Let me know if you have any more questions :) |
Beta Was this translation helpful? Give feedback.
This comment was marked as off-topic.
This comment was marked as off-topic.
-
Hi @abepolk, Great question! The main difference is that GPG keys can expire or be revoked, so GitHub can recognize when they’re no longer valid. On the other hand, SSH keys don’t support revocation or expiry, so once verified, they stay valid until you manually remove them. This difference isn’t a GitHub limitation—it’s just how GPG and SSH were designed. GPG is better suited for commit signing because it’s built for cryptographic trust, while SSH is more about authentication and secure access. Hope that helps clarify things! |
Beta Was this translation helpful? Give feedback.
-
Select Topic Area
Question
Body
Hi, I'm trying to understand the difference between signing commits with SSH and GPG. From a GitHub docs article, it seems that GitHub still doesn't recognize the revocation or expiry of SSH keys, but it does for GPG keys. The article makes it sound like this is because of a conceptual difference between the two technologies, but this thread makes it seem like GPG is supported in this way just because that's how GitHub was historically set up. Am I missing something here, or perhaps misinterpreting the docs? Thanks!
Beta Was this translation helpful? Give feedback.
All reactions