Library to work with SSH public keys

Roy Smith roy at panix.com
Sat Apr 6 08:49:09 EDT 2013


In article <mailman.187.1365227369.3114.python-list at python.org>,
 Darren Spruell <phatbuckett at gmail.com> wrote:

> I'd like to work with user submitted/uploaded SSH public keys from
> Python. I'm trying to solve what I'd thought might be a simple need:
> given a user's OpenSSH formatted _public_ key (RSA, or DSA, or
> whatever), how do you obtain information about it such as: key type
> (e.g. ssh-rsa, etc.); bit length (e.g. 2048); key comment (e.g.
> user at hostname); key fingerprint? I've been fiddling with the Paramiko
> API and looked at PyCrypto (supports OpenSSH keys) and Twisted Conch
> but didn't see anything that looked like it did this.
> 
> I'm looking for the equivalent to this:
> 
> $ ssh-keygen -l -f tmp.key.pub
> 2048 9b:31:06:6a:a4:79:97:33:d7:20:15:1f:cd:b4:86:4d dspruell at Sydney.local 
> (RSA)
> 
> ...to get the attributes of the public key: key type, bit length,
> fingerprint and comment.
> 
> Is there an SSH library capable of doing this from Python? Can break
> out to shell commands to parse them but I'd prefer not to.

The first hit on googling "paramiko fingerprint" got me this:

http://www.lag.net/paramiko/docs/paramiko.PKey-class.html



More information about the Python-list mailing list