A verified directory for SSH public keys, connecting identities to keys without managing authentication. KeyPub.sh allows users to verify ownership of their email addresses and associate them with their SSH public keys, creating a trustworthy identity system focused on user privacy.
- Verified registry linking SSH public keys to email addresses
- Zero installation - works with your existing SSH setup
- Privacy-focused: you control what information is public
- Simple email verification process
- Free public service
- Perfect for SSH application developers - no need to build user verification systems
# Register your key with your email
ssh keypub.sh register [email protected]
# Verify your email with the code received
ssh keypub.sh confirm VERIFICATION-CODE
# Optional: Create an alias for easier usage
alias kp='ssh keypub.sh'
register <email>
- Register your SSH key with an email addressconfirm <code>
- Verify email with code from confirmation mailwhoami
- Show your registration detailsallow <email>
- Grant email visibility to another userdeny <email>
- Revoke email visibility from userget email from <fingerprint>
- Get email for key (if authorized)unregister
- Remove your key from registryhelp
- Show help message
- Single verified identity for SSH-based applications
- Lightweight alternative to OAuth for CLI applications
- Central identity system that respects privacy
- Perfect for developers building SSH-based tools
The project is built in Go and uses SQLite for data storage. Key components:
- SSH server implementation using
gliderlabs/ssh
- Email verification using Resend API
- Rate limiting with EWMA (Exponentially Weighted Moving Average)
- Privacy-focused permission system
MIT License - see LICENSE file for details
Visit keypub.sh for more information.
Built with ❤️ for the SSH community